From a7d16f65979064ad07fea2eab1d28290d45d5c74 Mon Sep 17 00:00:00 2001 From: Igor Loginov Date: Thu, 22 May 2025 14:51:14 +0300 Subject: [PATCH] processing further on trivial/entry recheck --- ui2abc/ui-plugins/src/component-transformer.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ui2abc/ui-plugins/src/component-transformer.ts b/ui2abc/ui-plugins/src/component-transformer.ts index ecc31ff5b..5a883aefa 100644 --- a/ui2abc/ui-plugins/src/component-transformer.ts +++ b/ui2abc/ui-plugins/src/component-transformer.ts @@ -52,6 +52,7 @@ class StructCallRewriter extends arkts.AbstractVisitor { currentStructRewritten: arkts.ETSStructDeclaration | undefined = undefined currentStructCalled: StructDescriptor | undefined = undefined + visitor(node: arkts.ClassDeclaration, options?: object): arkts.ClassDeclaration visitor(node: arkts.AstNode, options?: object): arkts.AstNode { if (arkts.isCallExpression(node) && arkts.isIdentifier(node.callee)) { const struct = this.structTable.findStruct(node.callee as arkts.Identifier) @@ -414,7 +415,12 @@ export class ComponentTransformer extends arkts.AbstractVisitor { private rewriteStruct(node: arkts.ETSStructDeclaration, result: arkts.Statement[]) { this.callRewriter.currentStructRewritten = node - result.push(this.callRewriter.visitor(arkts.factory.createClassDeclaration(this.rewriteStructToClass(node)))) + const classDeclaration = arkts.factory.createClassDeclaration(this.rewriteStructToClass(node)) + const updatedClassDeclaration = this.callRewriter.visitor(classDeclaration) + updatedClassDeclaration.modifierFlags |= arkts.Es2pandaModifierFlags.MODIFIER_FLAGS_EXPORT + // TODO: move this "addToExportedClasses" logic to libarkts + updatedClassDeclaration.definition?.addToExportedClasses(updatedClassDeclaration) + result.push(updatedClassDeclaration) result.push(this.rewriteStructToOptions(node)) this.callRewriter.currentStructRewritten = undefined } -- Gitee