diff --git a/arkoala-arkts/arkui/src/ContentModifierHooks.ets b/arkoala-arkts/arkui/src/ContentModifierHooks.ets index e21a9bd3a38c5d078905281a067156cf9077fa80..f937c976c6be12daaa07bc31746552d3dfe8d7a6 100644 --- a/arkoala-arkts/arkui/src/ContentModifierHooks.ets +++ b/arkoala-arkts/arkui/src/ContentModifierHooks.ets @@ -34,15 +34,15 @@ import { KPointer } from "@koalaui/interop" import { ContentModifier } from "./component/common" function memoWrapper( - // @memo + @memo builder: ((args: Args) => void), args: Args ): CustomBuilder { - // @memo + @memo const wrapper = () => { builder(args) } return wrapper } -// @memo +@memo export function hookButtonContentModifier( receiver: ArkButtonComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -63,7 +63,7 @@ export function hookButtonContentModifier( } } -// @memo +@memo export function hookCheckBoxContentModifier( receiver: ArkCheckboxComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -84,7 +84,7 @@ export function hookCheckBoxContentModifier( } } -// @memo +@memo export function hookDataPanelContentModifier( receiver: ArkDataPanelComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -105,7 +105,7 @@ export function hookDataPanelContentModifier( } } -// @memo +@memo export function hookGaugeContentModifier( receiver: ArkGaugeComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -126,7 +126,7 @@ export function hookGaugeContentModifier( } } -// @memo +@memo export function hookLoadingProgressContentModifier( receiver: ArkLoadingProgressComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -147,7 +147,7 @@ export function hookLoadingProgressContentModifier( } } -// @memo +@memo export function hookProgressContentModifier( receiver: ArkProgressComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -168,7 +168,7 @@ export function hookProgressContentModifier( } } -// @memo +@memo export function hookRadioContentModifier( receiver: ArkRadioComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -189,7 +189,7 @@ export function hookRadioContentModifier( } } -// @memo +@memo export function hookRatingContentModifier( receiver: ArkRatingComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -210,7 +210,7 @@ export function hookRatingContentModifier( } } -// @memo +@memo export function hookSelectContentModifier( receiver: ArkSelectComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -231,7 +231,7 @@ export function hookSelectContentModifier( } } -// @memo +@memo export function hookSliderContentModifier( receiver: ArkSliderComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -252,7 +252,7 @@ export function hookSliderContentModifier( } } -// @memo +@memo export function hookTextClockContentModifier( receiver: ArkTextClockComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -273,7 +273,7 @@ export function hookTextClockContentModifier( } } -// @memo +@memo export function hookTextTimerContentModifier( receiver: ArkTextTimerComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr @@ -294,7 +294,7 @@ export function hookTextTimerContentModifier( } } -// @memo +@memo export function hookToggleContentModifier( receiver: ArkToggleComponent, value?: ContentModifier) { const ptr = receiver.getPeer().peer.ptr diff --git a/arkoala/arkui/src/generated/tabContent.ts b/arkoala/arkui/src/generated/tabContent.ts index 333ce843ba5240f4ed0ae1a9f694c07bf5fdca6f..12c25d95ee4805091899129acfe9542fa5a7b019 100644 --- a/arkoala/arkui/src/generated/tabContent.ts +++ b/arkoala/arkui/src/generated/tabContent.ts @@ -105,7 +105,7 @@ export class TabBarSymbol implements MaterializedBase { const retval = ArkUIGeneratedNativeModule._TabBarSymbol_getSelected(this.peer!.ptr) let retvalDeserializer: DeserializerBase = new DeserializerBase(retval.buffer, retval.byteLength) const buffer_runtimeType = (retvalDeserializer.readInt8() as int32) - let buffer: SymbolGlyphModifier | undefined|undefined + let buffer: SymbolGlyphModifier | undefined|undefined if ((RuntimeType.UNDEFINED) != (buffer_runtimeType)) { buffer = SymbolGlyphModifier_serializer.read(retvalDeserializer) @@ -256,6 +256,7 @@ export interface TabContentAttribute extends CommonMethod { onWillHide(value: VoidCallback | undefined): this attributeModifier(value: AttributeModifier | AttributeModifier | undefined): this } + export class ArkTabContentStyle extends ArkCommonMethodStyle implements TabContentAttribute { tabBar_value?: ComponentContent | SubTabBarStyle | BottomTabBarStyle | string | Resource | CustomBuilder | TabBarOptions | undefined onWillShow_value?: VoidCallback | undefined @@ -345,7 +346,7 @@ export function ArkTabContent( style: ((attributes: TabContentAttribute) => void) | undefined, /** @memo */ content_: (() => void) | undefined, - + ) { const receiver = remember(() => { return new ArkTabContentComponent() @@ -433,11 +434,11 @@ export class TabBarIconStyle_serializer { public static read(buffer: DeserializerBase): TabBarIconStyle { let valueDeserializer: DeserializerBase = buffer const selectedColor_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let selectedColor_buf: ResourceColor | undefined|undefined + let selectedColor_buf: ResourceColor | undefined|undefined if ((RuntimeType.UNDEFINED) != (selectedColor_buf_runtimeType)) { const selectedColor_buf__selector: number = valueDeserializer.readInt8() - let selectedColor_buf_: Color | number | string | Resource | undefined|undefined + let selectedColor_buf_: Color | number | string | Resource | undefined|undefined if (selectedColor_buf__selector == 0) { selectedColor_buf_ = valueDeserializer.readInt32() } @@ -457,11 +458,11 @@ export class TabBarIconStyle_serializer { } const selectedColor_result: ResourceColor | undefined|undefined = selectedColor_buf const unselectedColor_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let unselectedColor_buf: ResourceColor | undefined|undefined + let unselectedColor_buf: ResourceColor | undefined|undefined if ((RuntimeType.UNDEFINED) != (unselectedColor_buf_runtimeType)) { const unselectedColor_buf__selector: number = valueDeserializer.readInt8() - let unselectedColor_buf_: Color | number | string | Resource | undefined|undefined + let unselectedColor_buf_: Color | number | string | Resource | undefined|undefined if (unselectedColor_buf__selector == 0) { unselectedColor_buf_ = valueDeserializer.readInt32() } @@ -529,11 +530,11 @@ export class TabBarOptions_serializer { public static read(buffer: DeserializerBase): TabBarOptions { let valueDeserializer: DeserializerBase = buffer const icon_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let icon_buf: string | Resource | undefined|undefined + let icon_buf: string | Resource | undefined|undefined if ((RuntimeType.UNDEFINED) != (icon_buf_runtimeType)) { const icon_buf__selector: number = valueDeserializer.readInt8() - let icon_buf_: string | Resource | undefined|undefined + let icon_buf_: string | Resource | undefined|undefined if (icon_buf__selector == 0) { icon_buf_ = (valueDeserializer.readString() as string) } @@ -547,11 +548,11 @@ export class TabBarOptions_serializer { } const icon_result: string | Resource | undefined|undefined = icon_buf const text_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let text_buf: string | Resource | undefined|undefined + let text_buf: string | Resource | undefined|undefined if ((RuntimeType.UNDEFINED) != (text_buf_runtimeType)) { const text_buf__selector: number = valueDeserializer.readInt8() - let text_buf_: string | Resource | undefined|undefined + let text_buf_: string | Resource | undefined|undefined if (text_buf__selector == 0) { text_buf_ = (valueDeserializer.readString() as string) } @@ -599,11 +600,11 @@ export class BoardStyle_serializer { public static read(buffer: DeserializerBase): BoardStyle { let valueDeserializer: DeserializerBase = buffer const borderRadius_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let borderRadius_buf: Length | undefined|undefined + let borderRadius_buf: Length | undefined|undefined if ((RuntimeType.UNDEFINED) != (borderRadius_buf_runtimeType)) { const borderRadius_buf__selector: number = valueDeserializer.readInt8() - let borderRadius_buf_: string | number | Resource | undefined|undefined + let borderRadius_buf_: string | number | Resource | undefined|undefined if (borderRadius_buf__selector == 0) { borderRadius_buf_ = (valueDeserializer.readString() as string) } @@ -755,11 +756,11 @@ export class SubTabBarIndicatorStyle_serializer { public static read(buffer: DeserializerBase): SubTabBarIndicatorStyle { let valueDeserializer: DeserializerBase = buffer const color_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let color_buf: ResourceColor | undefined|undefined + let color_buf: ResourceColor | undefined|undefined if ((RuntimeType.UNDEFINED) != (color_buf_runtimeType)) { const color_buf__selector: number = valueDeserializer.readInt8() - let color_buf_: Color | number | string | Resource | undefined|undefined + let color_buf_: Color | number | string | Resource | undefined|undefined if (color_buf__selector == 0) { color_buf_ = valueDeserializer.readInt32() } @@ -779,11 +780,11 @@ export class SubTabBarIndicatorStyle_serializer { } const color_result: ResourceColor | undefined|undefined = color_buf const height_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let height_buf: Length | undefined|undefined + let height_buf: Length | undefined|undefined if ((RuntimeType.UNDEFINED) != (height_buf_runtimeType)) { const height_buf__selector: number = valueDeserializer.readInt8() - let height_buf_: string | number | Resource | undefined|undefined + let height_buf_: string | number | Resource | undefined|undefined if (height_buf__selector == 0) { height_buf_ = (valueDeserializer.readString() as string) } @@ -800,11 +801,11 @@ export class SubTabBarIndicatorStyle_serializer { } const height_result: Length | undefined|undefined = height_buf const width_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let width_buf: Length | undefined|undefined + let width_buf: Length | undefined|undefined if ((RuntimeType.UNDEFINED) != (width_buf_runtimeType)) { const width_buf__selector: number = valueDeserializer.readInt8() - let width_buf_: string | number | Resource | undefined|undefined + let width_buf_: string | number | Resource | undefined|undefined if (width_buf__selector == 0) { width_buf_ = (valueDeserializer.readString() as string) } @@ -821,11 +822,11 @@ export class SubTabBarIndicatorStyle_serializer { } const width_result: Length | undefined|undefined = width_buf const borderRadius_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let borderRadius_buf: Length | undefined|undefined + let borderRadius_buf: Length | undefined|undefined if ((RuntimeType.UNDEFINED) != (borderRadius_buf_runtimeType)) { const borderRadius_buf__selector: number = valueDeserializer.readInt8() - let borderRadius_buf_: string | number | Resource | undefined|undefined + let borderRadius_buf_: string | number | Resource | undefined|undefined if (borderRadius_buf__selector == 0) { borderRadius_buf_ = (valueDeserializer.readString() as string) } @@ -842,11 +843,11 @@ export class SubTabBarIndicatorStyle_serializer { } const borderRadius_result: Length | undefined|undefined = borderRadius_buf const marginTop_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let marginTop_buf: Length | undefined|undefined + let marginTop_buf: Length | undefined|undefined if ((RuntimeType.UNDEFINED) != (marginTop_buf_runtimeType)) { const marginTop_buf__selector: number = valueDeserializer.readInt8() - let marginTop_buf_: string | number | Resource | undefined|undefined + let marginTop_buf_: string | number | Resource | undefined|undefined if (marginTop_buf__selector == 0) { marginTop_buf_ = (valueDeserializer.readString() as string) } @@ -1023,31 +1024,31 @@ export class TabBarLabelStyle_serializer { public static read(buffer: DeserializerBase): TabBarLabelStyle { let valueDeserializer: DeserializerBase = buffer const overflow_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let overflow_buf: TextOverflow | undefined|undefined + let overflow_buf: TextOverflow | undefined|undefined if ((RuntimeType.UNDEFINED) != (overflow_buf_runtimeType)) { overflow_buf = valueDeserializer.readInt32() } const overflow_result: TextOverflow | undefined|undefined = overflow_buf const maxLines_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let maxLines_buf: number | undefined|undefined + let maxLines_buf: number | undefined|undefined if ((RuntimeType.UNDEFINED) != (maxLines_buf_runtimeType)) { maxLines_buf = (valueDeserializer.readNumber() as number) } const maxLines_result: number | undefined|undefined = maxLines_buf const minFontSize_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let minFontSize_buf: number | ResourceStr | undefined|undefined + let minFontSize_buf: number | ResourceStr | undefined|undefined if ((RuntimeType.UNDEFINED) != (minFontSize_buf_runtimeType)) { const minFontSize_buf__selector: number = valueDeserializer.readInt8() - let minFontSize_buf_: number | ResourceStr | undefined|undefined + let minFontSize_buf_: number | ResourceStr | undefined|undefined if (minFontSize_buf__selector == 0) { minFontSize_buf_ = (valueDeserializer.readNumber() as number) } else if (minFontSize_buf__selector == 1) { const minFontSize_buf__u_selector: number = valueDeserializer.readInt8() - let minFontSize_buf__u: string | Resource | undefined|undefined + let minFontSize_buf__u: string | Resource | undefined|undefined if (minFontSize_buf__u_selector == 0) { minFontSize_buf__u = (valueDeserializer.readString() as string) } @@ -1066,17 +1067,17 @@ export class TabBarLabelStyle_serializer { } const minFontSize_result: number | ResourceStr | undefined|undefined = minFontSize_buf const maxFontSize_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let maxFontSize_buf: number | ResourceStr | undefined|undefined + let maxFontSize_buf: number | ResourceStr | undefined|undefined if ((RuntimeType.UNDEFINED) != (maxFontSize_buf_runtimeType)) { const maxFontSize_buf__selector: number = valueDeserializer.readInt8() - let maxFontSize_buf_: number | ResourceStr | undefined|undefined + let maxFontSize_buf_: number | ResourceStr | undefined|undefined if (maxFontSize_buf__selector == 0) { maxFontSize_buf_ = (valueDeserializer.readNumber() as number) } else if (maxFontSize_buf__selector == 1) { const maxFontSize_buf__u_selector: number = valueDeserializer.readInt8() - let maxFontSize_buf__u: string | Resource | undefined|undefined + let maxFontSize_buf__u: string | Resource | undefined|undefined if (maxFontSize_buf__u_selector == 0) { maxFontSize_buf__u = (valueDeserializer.readString() as string) } @@ -1095,25 +1096,25 @@ export class TabBarLabelStyle_serializer { } const maxFontSize_result: number | ResourceStr | undefined|undefined = maxFontSize_buf const heightAdaptivePolicy_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let heightAdaptivePolicy_buf: TextHeightAdaptivePolicy | undefined|undefined + let heightAdaptivePolicy_buf: TextHeightAdaptivePolicy | undefined|undefined if ((RuntimeType.UNDEFINED) != (heightAdaptivePolicy_buf_runtimeType)) { heightAdaptivePolicy_buf = valueDeserializer.readInt32() } const heightAdaptivePolicy_result: TextHeightAdaptivePolicy | undefined|undefined = heightAdaptivePolicy_buf const font_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let font_buf: Font | undefined|undefined + let font_buf: Font | undefined|undefined if ((RuntimeType.UNDEFINED) != (font_buf_runtimeType)) { font_buf = Font_serializer.read(valueDeserializer) } const font_result: Font | undefined|undefined = font_buf const selectedColor_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let selectedColor_buf: ResourceColor | undefined|undefined + let selectedColor_buf: ResourceColor | undefined|undefined if ((RuntimeType.UNDEFINED) != (selectedColor_buf_runtimeType)) { const selectedColor_buf__selector: number = valueDeserializer.readInt8() - let selectedColor_buf_: Color | number | string | Resource | undefined|undefined + let selectedColor_buf_: Color | number | string | Resource | undefined|undefined if (selectedColor_buf__selector == 0) { selectedColor_buf_ = valueDeserializer.readInt32() } @@ -1133,11 +1134,11 @@ export class TabBarLabelStyle_serializer { } const selectedColor_result: ResourceColor | undefined|undefined = selectedColor_buf const unselectedColor_buf_runtimeType = (valueDeserializer.readInt8() as int32) - let unselectedColor_buf: ResourceColor | undefined|undefined + let unselectedColor_buf: ResourceColor | undefined|undefined if ((RuntimeType.UNDEFINED) != (unselectedColor_buf_runtimeType)) { const unselectedColor_buf__selector: number = valueDeserializer.readInt8() - let unselectedColor_buf_: Color | number | string | Resource | undefined|undefined + let unselectedColor_buf_: Color | number | string | Resource | undefined|undefined if (unselectedColor_buf__selector == 0) { unselectedColor_buf_ = valueDeserializer.readInt32() } diff --git a/ui2abc/memo-plugin-ng/src/analysis/utils.ts b/ui2abc/memo-plugin-ng/src/analysis/utils.ts index edff08a73e2f80223e14570b7cbf50c394003f84..469d0fe803ca6e0283aa5c80fb9bbf399d48e6a3 100644 --- a/ui2abc/memo-plugin-ng/src/analysis/utils.ts +++ b/ui2abc/memo-plugin-ng/src/analysis/utils.ts @@ -55,6 +55,7 @@ export function readAnnotations(node: MemoAnnotatable): MemoFunctionKind { if (arkts.isIdentifier(expr)) { switch (expr.name) { case RuntimeNames.ANNOTATION: + case RuntimeNames.BUILDER: return prev | MemoFunctionKind.MEMO case RuntimeNames.ANNOTATION_INTRINSIC: return prev | MemoFunctionKind.INTRINSIC diff --git a/ui2abc/memo-plugin-ng/src/common.ts b/ui2abc/memo-plugin-ng/src/common.ts index d419c3d19b3badd7a69b35373d282d190eec734f..e76ece8f75609a1c7cecb0c58561acef34f4c751 100644 --- a/ui2abc/memo-plugin-ng/src/common.ts +++ b/ui2abc/memo-plugin-ng/src/common.ts @@ -62,6 +62,7 @@ export enum RuntimeNames { __ID = "__id", __KEY = "__key", ANNOTATION = "memo", + BUILDER = "Builder", ANNOTATION_ENTRY = "memo_entry", ANNOTATION_INTRINSIC = "memo_intrinsic", ANNOTATION_SKIP = "memo_skip",