• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #include <cstdint>
16 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
17 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_blank_bridge.h"
18 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_button_bridge.h"
19 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkbox_bridge.h"
20 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkboxgroup_bridge.h"
21 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_bridge.h"
22 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_bridge.h"
23 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
24 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_animator_bridge.h"
25 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_counter_bridge.h"
26 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_divider_bridge.h"
27 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_bridge.h"
28 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_col_bridge.h"
29 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_row_bridge.h"
30 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_item_bridge.h"
31 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_hyperlink_bridge.h"
32 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_bridge.h"
33 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_bridge.h"
34 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
35 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_span_bridge.h"
36 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_loading_progress_bridge.h"
37 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_bridge.h"
38 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_destination_bridge.h"
39 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_router_bridge.h"
40 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_item_bridge.h"
41 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_date_picker_bridge.h"
42 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigation_bridge.h"
43 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigator_bridge.h"
44 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_panel_bridge.h"
45 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_container_bridge.h"
46 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_pattern_lock_bridge.h"
47 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_progress_bridge.h"
48 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_area_bridge.h"
49 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_clock_bridge.h"
50 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_swiper_bridge.h"
51 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_bridge.h"
52 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_input_bridge.h"
53 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_toggle_bridge.h"
54 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_radio_bridge.h"
55 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rating_bridge.h"
56 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
57 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_bridge.h"
58 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_split_bridge.h"
59 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_search_bridge.h"
60 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_select_bridge.h"
61 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stack_bridge.h"
62 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_slider_bridge.h"
63 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_span_bridge.h"
64 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_textpicker_bridge.h"
65 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_timepicker_bridge.h"
66 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rich_editor_bridge.h"
67 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_video_bridge.h"
68 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stepper_item_bridge.h"
69 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
70 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabcontent_bridge.h"
71 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabs_bridge.h"
72 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_split_bridge.h"
73 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_line_bridge.h"
74 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_path_bridge.h"
75 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polygon_bridge.h"
76 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polyline_bridge.h"
77 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_qrcode_bridge.h"
78 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_side_bar_container_bridge.h"
79 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_calendar_picker_bridge.h"
80 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_water_flow_bridge.h"
81 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_alphabet_indexer_bridge.h"
82 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_data_panel_bridge.h"
83 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_gauge_bridge.h"
84 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scroll_bridge.h"
85 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
86 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_shape_bridge.h"
87 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_shape_bridge.h"
88 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rect_bridge.h"
89 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_group_bridge.h"
90 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_timer_bridge.h"
91 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
92 #ifdef PLUGIN_COMPONENT_SUPPORTED
93 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_plugin_bridge.h"
94 #endif
95 #ifdef XCOMPONENT_SUPPORTED
96 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_bridge.h"
97 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_node_bridge.h"
98 #endif
99 #ifdef FORM_SUPPORTED
100 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_form_component_bridge.h"
101 #endif
102 namespace OHOS::Ace::NG {
103 namespace {
RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)104 void RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
105 {
106     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderStyle));
108     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderWidth));
110     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderColor));
112     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderRadius));
114     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectMask"),
115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectMask));
116     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleMask"),
117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleMask));
118     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectMask"),
119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectMask));
120     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalMask"),
121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalMask));
122     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPath"),
123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathMask));
124 }
125 } // namespace
126 
GetFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)127 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
128 {
129     EcmaVM* vm = runtimeCallInfo->GetVM();
130     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
131     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
132     int nodeId = firstArg->ToNumber(vm)->Value();
133     auto nodePtr = GetArkUIInternalNodeAPI()->GetFrameNodeById(nodeId);
134     return panda::NativePointerRef::New(vm, nodePtr);
135 }
136 
GetUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)137 ArkUINativeModuleValue ArkUINativeModule::GetUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
138 {
139     EcmaVM* vm = runtimeCallInfo->GetVM();
140     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
141     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
142     void* nativeNode = firstArg->ToNativePointer(vm)->Value();
143     int64_t state = GetArkUIInternalNodeAPI()->GetUIState(nativeNode);
144     return panda::NumberRef::New(vm, state);
145 }
146 
SetSupportedUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)147 ArkUINativeModuleValue ArkUINativeModule::SetSupportedUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
148 {
149     EcmaVM* vm = runtimeCallInfo->GetVM();
150     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
151     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
152     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
153     void* nativeNode = firstArg->ToNativePointer(vm)->Value();
154     auto state = secondArg->ToNumber(vm)->Value();
155     GetArkUIInternalNodeAPI()->SetSupportedUIState(nativeNode, state);
156     return panda::JSValueRef::Undefined(vm);
157 }
158 
GetArkUINativeModule(ArkUIRuntimeCallInfo * runtimeCallInfo)159 ArkUINativeModuleValue ArkUINativeModule::GetArkUINativeModule(ArkUIRuntimeCallInfo* runtimeCallInfo)
160 {
161     EcmaVM* vm = runtimeCallInfo->GetVM();
162     auto object = panda::ObjectRef::New(vm);
163     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeById"),
164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeById));
165     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getUIState"),
166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetUIState));
167     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportedUIState"),
168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetSupportedUIState));
169 
170     auto common = panda::ObjectRef::New(vm);
171     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundColor));
173     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundColor));
175     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetWidth));
177     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetWidth));
179     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHeight));
181     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHeight));
183     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderRadius));
185     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderRadius));
187     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWidth));
189     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderWidth));
191     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransform"),
192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransform));
193     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransform"),
194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransform));
195     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderColor));
197     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderColor));
199     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPosition));
201     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPosition"),
202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPosition));
203     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderStyle));
205     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderStyle));
207     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineColor"),
208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineColor));
209     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineColor"),
210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineColor));
211     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineRadius"),
212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineRadius));
213     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineRadius"),
214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineRadius));
215     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineStyle"),
216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineStyle));
217     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineStyle"),
218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineStyle));
219     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineWidth"),
220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineWidth));
221     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineWidth"),
222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineWidth));
223     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutline"),
224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutline));
225     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutline"),
226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutline));
227     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadow"),
228         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShadow));
229     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShadow"),
230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShadow));
231     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHitTestBehavior"),
232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHitTestBehavior));
233     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHitTestBehavior"),
234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHitTestBehavior));
235     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZIndex"),
236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetZIndex));
237     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZIndex"),
238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetZIndex));
239     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOpacity));
241     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
242         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOpacity));
243     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlign"),
244         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlign));
245     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlign"),
246         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlign));
247     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
248         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackdropBlur));
249     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackdropBlur));
251     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHueRotate));
253     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHueRotate));
255     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetInvert));
257     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetInvert));
259     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSepia));
261     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSepia));
263     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSaturate));
265     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSaturate));
267     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetColorBlend));
269     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetColorBlend));
271     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGrayscale));
273     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGrayscale));
275     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetContrast));
277     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetContrast));
279     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBrightness));
281     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBrightness));
283     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlur));
285     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlur));
287     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradient"),
288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradient));
289     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradient"),
290         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradient));
291     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSweepGradient"),
292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSweepGradient));
293     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSweepGradient"),
294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSweepGradient));
295     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadialGradient"),
296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRadialGradient));
297     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadialGradient"),
298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRadialGradient));
299     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOverlay"),
300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOverlay));
301     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOverlay"),
302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOverlay));
303     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderImage"),
304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderImage));
305     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderImage"),
306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderImage));
307     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBlurStyle"),
308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBlurStyle));
309     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBlurStyle"),
310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBlurStyle));
311     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradientBlur));
313     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradientBlur));
315     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBlurStyle"),
316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBlurStyle));
317     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBlurStyle"),
318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBlurStyle));
319     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorder));
321     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorder));
323     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImagePosition));
325     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImagePosition));
327     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageSize));
329     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageSize));
331     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImage));
333     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImage));
335     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTranslate));
337     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTranslate"),
338         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTranslate));
339     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
340         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetScale));
341     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScale"),
342         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetScale));
343     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotate"),
344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRotate));
345     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRotate"),
346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRotate));
347     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGeometryTransition"),
348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGeometryTransition));
349     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGeometryTransition"),
350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGeometryTransition));
351     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClip"),
352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClip));
353     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClip"),
354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClip));
355     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelStretchEffect));
357     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelStretchEffect));
359     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLightUpEffect));
361     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLightUpEffect));
363     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSphericalEffect));
365     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSphericalEffect));
367     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderGroup"),
368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderGroup));
369     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderGroup"),
370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderGroup));
371     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderFit));
373     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderFit));
375     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseEffect"),
376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseEffect));
377     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseEffect"),
378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseEffect));
379     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundColor));
381     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundColor));
383     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionPath"),
384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionPath));
385     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionPath"),
386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionPath));
387     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGroupDefaultFocus"),
388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGroupDefaultFocus));
389     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGroupDefaultFocus"),
390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGroupDefaultFocus));
391     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusOnTouch"),
392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusOnTouch));
393     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusOnTouch"),
394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusOnTouch));
395     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusable"),
396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusable));
397     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusable"),
398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusable));
399     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTouchable"),
400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTouchable));
401     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTouchable"),
402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTouchable));
403     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultFocus"),
404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDefaultFocus));
405     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultFocus"),
406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDefaultFocus));
407     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisplayPriority"),
408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDisplayPriority));
409     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisplayPriority"),
410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDisplayPriority));
411     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMask"),
412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMask));
413     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMask"),
414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMask));
415     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOffset"),
416         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetOffset));
417     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOffset"),
418         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetOffset));
419     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
420         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetPadding));
421     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
422         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetPadding));
423     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
424         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMargin));
425     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
426         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMargin));
427     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkAnchor"),
428         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMarkAnchor));
429     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarkAnchor"),
430         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMarkAnchor));
431     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
432         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetVisibility));
433     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
434         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetVisibility));
435     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityText));
437     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityText));
439     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowDrop"),
440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAllowDrop));
441     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowDrop"),
442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAllowDrop));
443     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityLevel));
445     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityLevel));
447     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDirection));
449     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDirection));
451     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutWeight"),
452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLayoutWeight));
453     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutWeight"),
454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLayoutWeight));
455     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSize));
457     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSize));
459     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignSelf"),
460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignSelf));
461     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignSelf"),
462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignSelf));
463     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAspectRatio"),
464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAspectRatio));
465     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAspectRatio"),
466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAspectRatio));
467     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexGrow"),
468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexGrow));
469     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexGrow"),
470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexGrow));
471     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexShrink"),
472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexShrink));
473     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexShrink"),
474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexShrink));
475     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setConstraintSize"),
476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetConstraintSize));
477     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetConstraintSize"),
478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetConstraintSize));
479     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridOffset"),
480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridOffset));
481     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridOffset"),
482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridOffset));
483     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridSpan"),
484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridSpan));
485     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridSpan"),
486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridSpan));
487     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setExpandSafeArea"),
488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetExpandSafeArea));
489     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetExpandSafeArea"),
490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetExpandSafeArea));
491     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignRules"),
492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignRules));
493     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignRules"),
494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignRules));
495     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexBasis"),
496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexBasis));
497     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexBasis"),
498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexBasis));
499     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDescription));
501     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDescription));
503     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetId));
505     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetId"),
506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetId));
507     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKey"),
508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKey));
509     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKey"),
510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKey));
511     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRestoreId"),
512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRestoreId));
513     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRestoreId"),
514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRestoreId));
515     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabIndex"),
516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabIndex));
517     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabIndex"),
518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabIndex));
519     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObscured"),
520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetObscured));
521     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObscured"),
522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetObscured));
523     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundEffect"),
524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundEffect));
525     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundEffect"),
526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundEffect));
527     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightness"),
528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightness));
529     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightness"),
530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightness));
531     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreviewOptions"),
532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreviewOptions));
533     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreviewOptions"),
534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreviewOptions));
535     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetResponseRegion));
537     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetResponseRegion));
539     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMouseResponseRegion"),
540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMouseResponseRegion));
541     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMouseResponseRegion"),
542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMouseResponseRegion));
543     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransition));
545     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransition));
547     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSharedTransition"),
548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSharedTransition));
549     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSharedTransition"),
550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSharedTransition));
551     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnabled"),
552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetEnabled));
553     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnabled"),
554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetEnabled));
555     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseShadowBatching"),
556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseShadowBatching));
557     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseShadowBatching"),
558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseShadowBatching));
559     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlendMode"),
560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlendMode));
561     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlendMode"),
562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlendMode));
563     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMonopolizeEvents"),
564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMonopolizeEvents));
565     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMonopolizeEvents"),
566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMonopolizeEvents));
567     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDraggable));
569     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDraggable));
571     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityGroup"),
572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityGroup));
573     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityGroup"),
574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityGroup));
575     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHoverEffect));
577     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
578         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHoverEffect));
579     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClickEffect"),
580         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClickEffect));
581     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClickEffect"),
582         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClickEffect));
583     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyBoardShortCut"),
584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKeyBoardShortCut));
585     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyBoardShortCut"),
586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKeyBoardShortCut));
587     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipWithEdge"),
588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipWithEdge));
589     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipWithEdge"),
590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipWithEdge));
591     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "common"), common);
592 
593     auto counter = panda::ObjectRef::New(vm);
594     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableInc"),
595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableInc));
596     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableInc"),
597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableInc));
598     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDec"),
599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableDec));
600     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDec"),
601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableDec));
602     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterHeight"),
603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterHeight));
604     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterHeight"),
605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterHeight));
606     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterWidth"),
607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterWidth));
608     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterWidth"),
609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterWidth));
610     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterBackgroundColor"),
611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterBackgroundColor));
612     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterBackgroundColor"),
613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterBackgroundColor));
614     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterSize"),
615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterSize));
616     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterSize"),
617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterSize));
618     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "counter"), counter);
619 
620     auto checkboxgroup = panda::ObjectRef::New(vm);
621     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectedColor"),
622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectedColor));
623     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectedColor"),
624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectedColor));
625     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupUnSelectedColor"),
626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupUnSelectedColor));
627     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupUnSelectedColor"),
628         panda::FunctionRef::New(
629             const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupUnSelectedColor));
630     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectAll"),
631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectAll));
632     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectAll"),
633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectAll));
634     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupWidth"),
635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupWidth));
636     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupWidth"),
637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupWidth));
638     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupHeight"),
639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupHeight));
640     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupHeight"),
641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupHeight));
642     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupMark"),
643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupMark));
644     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupMark"),
645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupMark));
646     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSize"),
647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSize));
648     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSize"),
649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSize));
650     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkboxgroup"), checkboxgroup);
651 
652     auto panel = panda::ObjectRef::New(vm);
653     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
655     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
657     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
659     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
661     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
663     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
664         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
665     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
666 
667     auto row = panda::ObjectRef::New(vm);
668     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetAlignItems));
670     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetAlignItems));
672     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetJustifyContent));
674     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetJustifyContent));
676     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "row"), row);
677 
678     auto rowSplit = panda::ObjectRef::New(vm);
679     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
680         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::SetResizeable));
681     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
682         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::ResetResizeable));
683     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rowSplit"), rowSplit);
684 
685     auto text = panda::ObjectRef::New(vm);
686     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontColor));
688     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontColor));
690     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontSize));
692     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontSize));
694     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontStyle));
696     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontStyle));
698     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextAlign));
700     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextAlign));
702     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontWeight));
704     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontWeight));
706     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineHeight));
708     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineHeight));
710     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextOverflow));
712     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextOverflow));
714     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDecoration));
716     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDecoration));
718     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextCase));
720     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextCase));
722     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxLines));
724     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxLines));
726     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontSize));
728     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ReSetMinFontSize));
730     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDraggable));
732     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDraggable));
734     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontSize));
736     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontSize));
738     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFamily));
740     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFamily));
742     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCopyOption));
744     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCopyOption));
746     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextShadow));
748     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextShadow));
750     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHeightAdaptivePolicy));
752     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHeightAdaptivePolicy));
754     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextIndent));
756     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextIndent));
758     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetBaselineOffset));
760     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetBaselineOffset));
762     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLetterSpacing));
764     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLetterSpacing));
766     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFont));
768     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFont));
770     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetWordBreak));
772     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetWordBreak));
774     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEllipsisMode));
776     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEllipsisMode));
778     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "text"), text);
779 
780     auto search = panda::ObjectRef::New(vm);
781     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextFont"),
782         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextFont));
783     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextFont"),
784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextFont));
785     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderColor));
787     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
788         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderColor));
789     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
790         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuHidden));
791     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
792         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuHidden));
793     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
794         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCaretStyle));
795     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCaretStyle));
797     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchTextAlign));
799     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchTextAlign));
801     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCancelButton));
803     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
804         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCancelButton));
805     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
806         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableKeyboardOnFocus));
807     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableKeyboardOnFocus));
809     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderFont));
811     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderFont));
813     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchIcon"),
814         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchIcon));
815     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchIcon"),
816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchIcon));
817     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchButton"),
818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchButton));
819     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchButton"),
820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchButton));
821     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontColor));
823     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontColor));
825     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCopyOption));
827     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCopyOption));
829     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchHeight"),
830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchHeight));
831     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchHeight"),
832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchHeight));
833     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "search"), search);
834 
835     auto stack = panda::ObjectRef::New(vm);
836     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignContent"),
837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::SetAlignContent));
838     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignContent"),
839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::ResetAlignContent));
840     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stack"), stack);
841 
842     auto imageSpan = panda::ObjectRef::New(vm);
843     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVerticalAlign"),
844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetVerticalAlign));
845     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVerticalAlign"),
846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetVerticalAlign));
847     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetObjectFit));
849     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetObjectFit));
851     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageSpan"), imageSpan);
852 
853     auto blank = panda::ObjectRef::New(vm);
854     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetColor));
856     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetColor));
858     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankHeight"),
859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankHeight));
860     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankHeight"),
861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankHeight));
862     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "blank"), blank);
863 
864     auto span = panda::ObjectRef::New(vm);
865     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
866         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextCase));
867     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
868         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextCase));
869     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
870         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontWeight));
871     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
872         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontWeight));
873     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
874         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLineHeight));
875     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
876         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ReSetLineHeight));
877     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
878         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontStyle));
879     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
880         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ReSetFontStyle));
881     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
882         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontSize));
883     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
884         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontSize));
885     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
886         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontFamily));
887     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
888         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontFamily));
889     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
890         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetDecoration));
891     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
892         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetDecoration));
893     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
894         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontColor));
895     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
896         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontColor));
897     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
898         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLetterSpacing));
899     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
900         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLetterSpacing));
901     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
902         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFont));
903     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
904         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFont));
905     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "span"), span);
906 
907     auto gridCol = panda::ObjectRef::New(vm);
908     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpan"),
909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetSpan));
910     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpan"),
911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetSpan));
912     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridColOffset"),
913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetGridColOffset));
914     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridColOffset"),
915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetGridColOffset));
916     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrder"),
917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetOrder));
918     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrder"),
919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetOrder));
920     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridCol"), gridCol);
921 
922     auto column = panda::ObjectRef::New(vm);
923     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetJustifyContent));
925     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetJustifyContent));
927     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetAlignItems));
929     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetAlignItems));
931     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "column"), column);
932 
933     auto gridRow = panda::ObjectRef::New(vm);
934     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetAlignItems));
936     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetAlignItems));
938     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridRow"), gridRow);
939 
940     auto richEditor = panda::ObjectRef::New(vm);
941     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOptions"),
942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCopyOptions));
943     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOptions"),
944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCopyOptions));
945     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "richEditor"), richEditor);
946 
947     auto textArea = panda::ObjectRef::New(vm);
948     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStyle));
950     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStyle));
952     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuHidden));
954     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuHidden));
956     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLines));
958     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLines));
960     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCopyOption));
962     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCopyOption));
964     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderColor));
966     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderColor));
968     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaTextAlign));
970     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextAreaTextAlign));
972     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderFont));
974     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderFont));
976     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBarState));
978     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBarState));
980     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableKeyboardOnFocus));
982     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableKeyboardOnFocus));
984     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFamily));
986     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFamily));
988     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetShowCounter));
990     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetShowCounter));
992     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretColor));
994     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretColor));
996     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLength));
998     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLength));
1000     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontColor));
1002     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontColor));
1004     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontStyle));
1006     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontStyle));
1008     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontWeight));
1010     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontWeight));
1012     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontSize));
1014     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontSize));
1016     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textArea"), textArea);
1017 
1018     auto video = panda::ObjectRef::New(vm);
1019     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
1020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetAutoPlay));
1021     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
1022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetAutoPlay));
1023     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
1024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetControls));
1025     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
1026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetControls));
1027     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetObjectFit));
1029     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetObjectFit));
1031     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
1032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetLoop));
1033     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
1034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetLoop));
1035     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
1036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetMuted));
1037     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
1038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetMuted));
1039     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
1040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetOpacity));
1041     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
1042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetOpacity));
1043     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
1044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetTransition));
1045     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
1046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetTransition));
1047     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "video"), video);
1048 
1049     auto patternLock = panda::ObjectRef::New(vm);
1050     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideLength"),
1051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetSideLength));
1052     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideLength"),
1053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetSideLength));
1054     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoReset"),
1055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetAutoReset));
1056     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoReset"),
1057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetAutoReset));
1058     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathStrokeWidth"),
1059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathStrokeWidth));
1060     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathStrokeWidth"),
1061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathStrokeWidth));
1062     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRegularColor"),
1063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetRegularColor));
1064     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRegularColor"),
1065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetRegularColor));
1066     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathColor"),
1067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathColor));
1068     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathColor"),
1069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathColor));
1070     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActiveColor"),
1071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActiveColor));
1072     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActiveColor"),
1073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActiveColor));
1074     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleRadius"),
1075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockCircleRadius));
1076     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCircleRadius"),
1077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockCircleRadius));
1078     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
1079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSelectedColor));
1080     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
1081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSelectedColor));
1082     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "patternLock"), patternLock);
1083 
1084     auto columnSplit = panda::ObjectRef::New(vm);
1085     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
1086         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetDivider));
1087     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
1088         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetDivider));
1089     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
1090         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetResizeable));
1091     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
1092         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetResizeable));
1093     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "columnSplit"), columnSplit);
1094 
1095     auto imageAnimator = panda::ObjectRef::New(vm);
1096     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setState"),
1097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetState));
1098     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetState"),
1099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetState));
1100     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDuration"),
1101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetDuration));
1102     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDuration"),
1103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetDuration));
1104     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFixedSize"),
1105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFixedSize));
1106     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFixedSize"),
1107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFixedSize));
1108     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillMode"),
1109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFillMode));
1110     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillMode"),
1111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFillMode));
1112     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetReverse));
1114     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetReverse));
1116     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImages"),
1117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImages));
1118     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImages"),
1119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImages));
1120     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIterations"),
1121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetIteration));
1122     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIterations"),
1123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetIteration));
1124     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageAnimator"), imageAnimator);
1125 
1126     auto textInput = panda::ObjectRef::New(vm);
1127     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretColor));
1129     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretColor));
1131     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetType));
1133     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetType));
1135     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLines));
1137     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLines));
1139     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderColor));
1141     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderColor));
1143     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretPosition"),
1144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretPosition));
1145     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretPosition"),
1146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretPosition));
1147     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCopyOption));
1149     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCopyOption));
1151     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPasswordIcon"),
1152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPasswordIcon));
1153     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPasswordIcon"),
1154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPasswordIcon));
1155     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordIcon"),
1156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordIcon));
1157     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordIcon"),
1158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordIcon));
1159     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextAlign));
1161     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextAlign));
1163     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
1164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStyle));
1165     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
1166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStyle));
1167     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuHidden));
1169     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuHidden));
1171     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowUnderline"),
1172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputShowUnderline));
1173     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowUnderline"),
1174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputShowUnderline));
1175     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretStyle));
1177     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretStyle));
1179     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableKeyboardOnFocus));
1181     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableKeyboardOnFocus));
1183     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
1184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBarState));
1185     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
1186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBarState));
1187     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputEnterKeyType));
1189     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputEnterKeyType));
1191     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputFontWeight));
1193     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputFontWeight));
1195     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontSize));
1197     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontSize));
1199     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLength));
1201     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLength));
1203     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectedBackgroundColor));
1205     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectedBackgroundColor));
1207     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowError"),
1208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowError));
1209     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowError"),
1210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowError));
1211     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderFont));
1213     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderFont));
1215     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontColor));
1217     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontColor));
1219     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontStyle));
1221     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontStyle));
1223     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFamily));
1225     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFamily));
1227     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textInput"), textInput);
1228 
1229     auto navDestination = panda::ObjectRef::New(vm);
1230     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
1231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideTitleBar));
1232     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
1233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideTitleBar));
1234     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestination"), navDestination);
1235 
1236     RegisterButtonAttributes(object, vm);
1237     RegisterToggleAttributes(object, vm);
1238     RegisterDividerAttributes(object, vm);
1239     RegisterNavigationAttributes(object, vm);
1240     RegisterImageAttributes(object, vm);
1241     RegisterNavRouterAttributes(object, vm);
1242     RegisterNavigatorAttributes(object, vm);
1243     RegisterNodeContainerAttributes(object, vm);
1244     RegisterRenderNodeAttributes(object, vm);
1245     RegisterPanelAttributes(object, vm);
1246     RegisterLineAttributes(object, vm);
1247     RegisterPathAttributes(object, vm);
1248     RegisterPolygonAttributes(object, vm);
1249     RegisterPolylineAttributes(object, vm);
1250     RegisterSideBarContainerAttributes(object, vm);
1251     RegisterCalendarPickerAttributes(object, vm);
1252     RegisterTabAttributes(object, vm);
1253     RegisterTabContentAttributes(object, vm);
1254     RegisterStepperItemAttributes(object, vm);
1255     RegisterHyperlinkAttributes(object, vm);
1256     RegisterMenuItemAttributes(object, vm);
1257     RegisterMenuAttributes(object, vm);
1258     RegisterMarqueeAttributes(object, vm);
1259     RegisterDatePickerAttributes(object, vm);
1260     RegisterAlphabetIndexerAttributes(object, vm);
1261     RegisterGaugeAttributes(object, vm);
1262     RegisterSwiperAttributes(object, vm);
1263     RegisterSelectAttributes(object, vm);
1264     RegisterRadioAttributes(object, vm);
1265     RegisterSliderAttributes(object, vm);
1266     RegisterRatingAttributes(object, vm);
1267     RegisterTimepickerAttributes(object, vm);
1268     RegisterTextpickerAttributes(object, vm);
1269     RegisterWaterFlowAttributes(object, vm);
1270     RegisterCheckboxAttributes(object, vm);
1271     RegisterDataPanelAttributes(object, vm);
1272     RegisterScrollAttributes(object, vm);
1273     RegisterGridItemAttributes(object, vm);
1274     RegisterMarqueeAttributes(object, vm);
1275     RegisterProgressAttributes(object, vm);
1276     RegisterCommonShapeAttributes(object, vm);
1277     RegisterShapeAttributes(object, vm);
1278     RegisterRectAttributes(object, vm);
1279     RegisterListAttributes(object, vm);
1280     RegisterGridAttributes(object, vm);
1281     RegisterLisitItemGroupAttributes(object, vm);
1282     RegisterQRCodeAttributes(object, vm);
1283     RegisterLoadingProgressAttributes(object, vm);
1284     RegisterTextClockAttributes(object, vm);
1285     RegisterListItemAttributes(object, vm);
1286     RegisterTextTimerAttributes(object, vm);
1287     RegisterRenderNodeAttributes(object, vm);
1288 #ifdef PLUGIN_COMPONENT_SUPPORTED
1289     RegisterPluginAttributes(object, vm);
1290 #endif
1291 #ifdef XCOMPONENT_SUPPORTED
1292     RegisterXComponentAttributes(object, vm);
1293     RegisterXComponentNodeAttributes(object, vm);
1294 #endif
1295 
1296 #ifdef FORM_SUPPORTED
1297     RegisterFormAttributes(object, vm);
1298 #endif
1299 
1300     return object;
1301 }
1302 
RegisterCheckboxAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1303 void ArkUINativeModule::RegisterCheckboxAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1304 {
1305     auto checkbox = panda::ObjectRef::New(vm);
1306     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMark"),
1307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetMark));
1308     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMark"),
1309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetMark));
1310     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnSelectedColor"),
1311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetUnSelectedColor));
1312     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnSelectedColor"),
1313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetUnSelectedColor));
1314     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelect"),
1315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelect));
1316     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelect"),
1317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelect));
1318     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
1319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelectedColor));
1320     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
1321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelectedColor));
1322     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
1323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxWidth));
1324     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
1325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxWidth));
1326     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
1327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxHeight));
1328     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
1329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxHeight));
1330     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxSize"),
1331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxSize));
1332     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxSize"),
1333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxSize));
1334     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxResponseRegion"),
1335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxResponseRegion));
1336     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxResponseRegion"),
1337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxResponseRegion));
1338     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxPadding"),
1339         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxPadding));
1340     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxPadding"),
1341         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxPadding));
1342 
1343     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkbox"), checkbox);
1344 }
1345 
RegisterTextpickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1346 void ArkUINativeModule::RegisterTextpickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1347 {
1348     auto textpicker = panda::ObjectRef::New(vm);
1349     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCanLoop"),
1350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetCanLoop));
1351     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedIndex"),
1352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetSelectedIndex));
1353     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
1354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetTextStyle));
1355     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
1356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetSelectedTextStyle));
1357     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
1358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetDisappearTextStyle));
1359     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultPickerItemHeight"),
1360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetDefaultPickerItemHeight));
1361     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
1362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::SetBackgroundColor));
1363     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCanLoop"),
1364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetCanLoop));
1365     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedIndex"),
1366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetSelectedIndex));
1367     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
1368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetTextStyle));
1369     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
1370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetSelectedTextStyle));
1371     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
1372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetDisappearTextStyle));
1373     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultPickerItemHeight"),
1374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetDefaultPickerItemHeight));
1375     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
1376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextpickerBridge::ResetBackgroundColor));
1377     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textpicker"), textpicker);
1378 }
1379 
RegisterTimepickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1380 void ArkUINativeModule::RegisterTimepickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1381 {
1382     auto timepicker = panda::ObjectRef::New(vm);
1383     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
1384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTextStyle));
1385     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
1386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetSelectedTextStyle));
1387     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
1388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDisappearTextStyle));
1389     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
1390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTextStyle));
1391     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
1392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetSelectedTextStyle));
1393     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
1394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDisappearTextStyle));
1395     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
1396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerBackgroundColor));
1397     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
1398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerBackgroundColor));
1399     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerUseMilitaryTime"),
1400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerUseMilitaryTime));
1401     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerUseMilitaryTime"),
1402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerUseMilitaryTime));
1403     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "timepicker"), timepicker);
1404 }
1405 
RegisterRatingAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1406 void ArkUINativeModule::RegisterRatingAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1407 {
1408     auto rating = panda::ObjectRef::New(vm);
1409     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStars"),
1410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStars));
1411     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStars"),
1412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStars));
1413     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
1414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingStepSize));
1415     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
1416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetRatingStepSize));
1417     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStarStyle"),
1418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStarStyle));
1419     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStarStyle"),
1420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStarStyle));
1421     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rating"), rating);
1422 }
1423 
RegisterSliderAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1424 void ArkUINativeModule::RegisterSliderAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1425 {
1426     auto slider = panda::ObjectRef::New(vm);
1427     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowTips"),
1428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowTips));
1429     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowTips"),
1430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowTips));
1431     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
1432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderStepSize));
1433     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
1434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSliderStepSize));
1435     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockSize"),
1436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockSize));
1437     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockSize"),
1438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockSize));
1439     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBorderRadius"),
1440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBorderRadius));
1441     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBorderRadius"),
1442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBorderRadius));
1443     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepColor"),
1444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetStepColor));
1445     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepColor"),
1446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetStepColor));
1447     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderColor"),
1448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderColor));
1449     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderColor"),
1450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderColor));
1451     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderWidth"),
1452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderWidth));
1453     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderWidth"),
1454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderWidth));
1455     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockColor"),
1456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockColor));
1457     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockColor"),
1458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockColor));
1459     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBackgroundColor"),
1460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBackgroundColor));
1461     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBackgroundColor"),
1462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBackgroundColor));
1463     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectColor"),
1464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectColor));
1465     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectColor"),
1466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectColor));
1467     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSteps"),
1468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowSteps));
1469     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSteps"),
1470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowSteps));
1471     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setThickness"),
1472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetThickness));
1473     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetThickness"),
1474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetThickness));
1475     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockStyle"),
1476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockStyle));
1477     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockStyle"),
1478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockStyle));
1479     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "slider"), slider);
1480 }
1481 
RegisterRadioAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1482 void ArkUINativeModule::RegisterRadioAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1483 {
1484     auto radio = panda::ObjectRef::New(vm);
1485     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioChecked"),
1486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioChecked));
1487     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioChecked"),
1488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioChecked));
1489     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioStyle"),
1490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioStyle));
1491     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioStyle"),
1492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioStyle));
1493     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioWidth"),
1494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioWidth));
1495     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioWidth"),
1496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioWidth));
1497     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHeight"),
1498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHeight));
1499     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHeight"),
1500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHeight));
1501     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioSize"),
1502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioSize));
1503     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioSize"),
1504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioSize));
1505     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHoverEffect"),
1506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHoverEffect));
1507     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHoverEffect"),
1508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHoverEffect));
1509     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioPadding"),
1510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioPadding));
1511     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioPadding"),
1512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioPadding));
1513     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioResponseRegion"),
1514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioResponseRegion));
1515     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioResponseRegion"),
1516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioResponseRegion));
1517     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "radio"), radio);
1518 }
1519 
RegisterSelectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1520 void ArkUINativeModule::RegisterSelectAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1521 {
1522     auto select = panda::ObjectRef::New(vm);
1523     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSpace));
1525     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValue"),
1526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetValue));
1527     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
1528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelected));
1529     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFontColor));
1531     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionBgColor"),
1532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionBgColor));
1533     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionBgColor"),
1534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionBgColor));
1535     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFontColor"),
1536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFontColor));
1537     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFontColor"),
1538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFontColor));
1539     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setArrowPosition"),
1540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetArrowPosition));
1541     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuAlign"),
1542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuAlign));
1543     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFont));
1545     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFont"),
1546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFont));
1547     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFont"),
1548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFont));
1549     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetArrowPosition"),
1550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetArrowPosition));
1551     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuAlign"),
1552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuAlign));
1553     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFont));
1555     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFont"),
1556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFont));
1557     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFont"),
1558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFont));
1559     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSpace));
1561     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValue"),
1562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetValue));
1563     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
1564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelected));
1565     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFontColor));
1567     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionBgColor"),
1568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionBgColor));
1569     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionBgColor"),
1570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionBgColor));
1571     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFontColor"),
1572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFontColor));
1573     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFontColor"),
1574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFontColor));
1575     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionWidth"),
1576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionWidth));
1577     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionWidth"),
1578         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionWidth));
1579     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionHeight"),
1580         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionHeight));
1581     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionHeight"),
1582         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionHeight));
1583     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
1584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetWidth));
1585     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
1586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetWidth));
1587     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
1588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetHeight));
1589     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
1590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetHeight));
1591     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
1592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSize));
1593     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
1594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSize));
1595     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "select"), select);
1596 }
1597 
RegisterPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1598 void ArkUINativeModule::RegisterPanelAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1599 {
1600     auto panel = panda::ObjectRef::New(vm);
1601     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMode"),
1602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMode));
1603     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMode"),
1604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMode));
1605     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelFullHeight"),
1606         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelFullHeight));
1607     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelFullHeight"),
1608         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelFullHeight));
1609     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelHalfHeight"),
1610         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelHalfHeight));
1611     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelHalfHeight"),
1612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelHalfHeight));
1613     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMiniHeight"),
1614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMiniHeight));
1615     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMiniHeight"),
1616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMiniHeight));
1617     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelBackgroundMask"),
1618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelBackgroundMask));
1619     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelBackgroundMask"),
1620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelBackgroundMask));
1621     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelType"),
1622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelType));
1623     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelType"),
1624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelType));
1625     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelCustomHeight"),
1626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelCustomHeight));
1627     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelCustomHeight"),
1628         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelCustomHeight));
1629     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
1630         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
1631     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
1632         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
1633     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
1634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
1635     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
1636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
1637     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
1638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
1639     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
1640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
1641     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
1642 }
1643 
RegisterButtonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1644 void ArkUINativeModule::RegisterButtonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1645 {
1646     auto button = panda::ObjectRef::New(vm);
1647     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1648         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetType));
1649     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1650         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetType));
1651     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStateEffect"),
1652         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetStateEffect));
1653     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStateEffect"),
1654         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetStateEffect));
1655     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1656         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontColor));
1657     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1658         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontColor));
1659     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1660         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontSize));
1661     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1662         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontSize));
1663     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1664         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontWeight));
1665     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1666         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontWeight));
1667     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1668         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontStyle));
1669     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1670         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontStyle));
1671     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1672         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontFamily));
1673     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1674         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontFamily));
1675     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelStyle"),
1676         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabelStyle));
1677     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelStyle"),
1678         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabelStyle));
1679     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
1680         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetBackgroundColor));
1681     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
1682         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetBackgroundColor));
1683     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorderRadius"),
1684         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorderRadius));
1685     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorderRadius"),
1686         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorderRadius));
1687     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorder"),
1688         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorder));
1689     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorder"),
1690         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorder));
1691     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonSize"),
1692         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonSize));
1693     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonSize"),
1694         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonSize));
1695     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "button"), button);
1696 }
1697 
RegisterToggleAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1698 void ArkUINativeModule::RegisterToggleAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1699 {
1700     auto toggle = panda::ObjectRef::New(vm);
1701     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
1702         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSelectedColor));
1703     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
1704         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSelectedColor));
1705     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchPointColor"),
1706         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchPointColor));
1707     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchPointColor"),
1708         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchPointColor));
1709     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
1710         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHeight));
1711     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
1712         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHeight));
1713     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
1714         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetResponseRegion));
1715     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
1716         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetResponseRegion));
1717     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
1718         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetPadding));
1719     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
1720         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetPadding));
1721     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
1722         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetBackgroundColor));
1723     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
1724         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetBackgroundColor));
1725     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
1726         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHoverEffect));
1727     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
1728         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHoverEffect));
1729     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "toggle"), toggle);
1730 }
1731 
RegisterDividerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1732 void ArkUINativeModule::RegisterDividerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
1733 {
1734     auto divider = panda::ObjectRef::New(vm);
1735     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
1736         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetStrokeWidth));
1737     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
1738         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetStrokeWidth));
1739     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineCap"),
1740         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetLineCap));
1741     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineCap"),
1742         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetLineCap));
1743     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
1744         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetColor));
1745     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
1746         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetColor));
1747     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
1748         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetVertical));
1749     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
1750         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetVertical));
1751     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "divider"), divider);
1752 }
1753 
RegisterGridAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1754 void ArkUINativeModule::RegisterGridAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
1755 {
1756     auto grid = panda::ObjectRef::New(vm);
1757     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
1758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsTemplate));
1759     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
1760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsTemplate));
1761     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
1762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsTemplate));
1763     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
1764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsTemplate));
1765     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
1766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsGap));
1767     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
1768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsGap));
1769     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
1770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsGap));
1771     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
1772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsGap));
1773     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
1774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBar));
1775     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
1776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBar));
1777     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
1778         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarWidth));
1779     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
1780         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarWidth));
1781     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
1782         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarColor));
1783     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
1784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarColor));
1785     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
1786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCachedCount));
1787     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
1788         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCachedCount));
1789     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
1790         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEditMode));
1791     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
1792         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEditMode));
1793     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
1794         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMultiSelectable));
1795     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
1796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMultiSelectable));
1797     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxCount"),
1798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMaxCount));
1799     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxCount"),
1800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMaxCount));
1801     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinCount"),
1802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMinCount));
1803     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinCount"),
1804         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMinCount));
1805     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCellLength"),
1806         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCellLength));
1807     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCellLength"),
1808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCellLength));
1809     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
1810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetLayoutDirection));
1811     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
1812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetLayoutDirection));
1813     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportAnimation"),
1814         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetSupportAnimation));
1815     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSupportAnimation"),
1816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetSupportAnimation));
1817     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
1818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEdgeEffect));
1819     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
1820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEdgeEffect));
1821     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
1822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetNestedScroll));
1823     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
1824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetNestedScroll));
1825     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
1826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEnableScroll));
1827     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
1828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEnableScroll));
1829     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
1830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFriction));
1831     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
1832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFriction));
1833     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "grid"), grid);
1834 }
1835 
RegisterNavigationAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1836 void ArkUINativeModule::RegisterNavigationAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
1837 {
1838     auto navigation = panda::ObjectRef::New(vm);
1839     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
1840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideToolBar));
1841     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
1842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideToolBar));
1843     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitleMode"),
1844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitleMode));
1845     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitleMode"),
1846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitleMode));
1847     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
1848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideBackButton));
1849     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
1850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideBackButton));
1851     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubTitle"),
1852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetSubtitle));
1853     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubTitle"),
1854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetSubtitle));
1855     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideNavBar"),
1856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideNavBar));
1857     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideNavBar"),
1858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideNavBar));
1859     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
1860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetUsrNavigationMode));
1861     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
1862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetUsrNavigationMode));
1863     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarPosition"),
1864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarPosition));
1865     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarPosition"),
1866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarPosition));
1867     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidth"),
1868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidth));
1869     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidth"),
1870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidth));
1871     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidthRange"),
1872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidthRange));
1873     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidthRange"),
1874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidthRange));
1875     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
1876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMinContentWidth));
1877     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
1878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMinContentWidth));
1879     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
1880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideTitleBar));
1881     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
1882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideTitleBar));
1883     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
1884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetBackButtonIcon));
1885     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
1886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetBackButtonIcon));
1887     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigation"), navigation);
1888 }
1889 
RegisterImageAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1890 void ArkUINativeModule::RegisterImageAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
1891 {
1892     auto image = panda::ObjectRef::New(vm);
1893     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetCopyOption));
1895     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetCopyOption));
1897     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoResize"),
1898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAutoResize));
1899     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoResize"),
1900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAutoResize));
1901     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectRepeat"),
1902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectRepeat));
1903     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectRepeat"),
1904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectRepeat));
1905     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderMode"),
1906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetRenderMode));
1907     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderMode"),
1908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetRenderMode));
1909     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
1910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
1911     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
1912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
1913     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
1915     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
1917     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
1918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
1919     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
1920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
1921     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSourceSize"),
1922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSourceSize));
1923     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSourceSize"),
1924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSourceSize));
1925     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMatchTextDirection"),
1926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetMatchTextDirection));
1927     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMatchTextDirection"),
1928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetMatchTextDirection));
1929     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillColor"),
1930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFillColor));
1931     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillColor"),
1932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFillColor));
1933     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
1934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAlt));
1935     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
1936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAlt));
1937     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageInterpolation"),
1938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageInterpolation));
1939     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageInterpolation"),
1940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageInterpolation));
1941     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
1942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetColorFilter));
1943     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
1944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetColorFilter));
1945     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
1946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
1947     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
1948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
1949     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
1951     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
1953     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
1954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
1955     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
1956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
1957     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
1958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDraggable));
1959     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
1960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDraggable));
1961     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetBorderRadius));
1963     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetBorderRadius));
1965     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageBorder"),
1966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageBorder));
1967     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageBorder"),
1968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageBorder));
1969     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageOpacity"),
1970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageOpacity));
1971     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageOpacity"),
1972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageOpacity));
1973     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageTransition"),
1974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageTransition));
1975     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageTransition"),
1976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageTransition));
1977     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAntialiasing"),
1978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEdgeAntialiasing));
1979     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAntialiasing"),
1980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEdgeAntialiasing));
1981     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "image"), image);
1982 }
1983 
RegisterNavRouterAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1984 void ArkUINativeModule::RegisterNavRouterAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
1985 {
1986     auto navRouter = panda::ObjectRef::New(vm);
1987     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
1988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::SetMode));
1989     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
1990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::ResetMode));
1991     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navRouter"), navRouter);
1992 }
1993 
RegisterNavigatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)1994 void ArkUINativeModule::RegisterNavigatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
1995 {
1996     auto navigator = panda::ObjectRef::New(vm);
1997     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTarget"),
1998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetTarget));
1999     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTarget"),
2000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetTarget));
2001     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetType));
2003     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetType));
2005     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActive"),
2006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetActive));
2007     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActive"),
2008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetActive));
2009     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setParams"),
2010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetParams));
2011     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetParams"),
2012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetParams));
2013     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigator"), navigator);
2014 }
2015 
RegisterNodeContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2016 void ArkUINativeModule::RegisterNodeContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2017 {
2018     auto nodeContainer = panda::ObjectRef::New(vm);
2019     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "rebuild"),
2020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Rebuild));
2021     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeContainer"), nodeContainer);
2022 }
2023 
RegisterRenderNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2024 void ArkUINativeModule::RegisterRenderNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2025 {
2026     auto renderNode = panda::ObjectRef::New(vm);
2027     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
2028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::AppendChild));
2029     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
2030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::InsertChildAfter));
2031     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
2032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::RemoveChild));
2033     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
2034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::ClearChildren));
2035     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipToFrame"),
2036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetClipToFrame));
2037     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotation"),
2038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRotation));
2039     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowColor"),
2040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowColor));
2041     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowOffset"),
2042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowOffset));
2043     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowAlpha"),
2044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowAlpha));
2045     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowElevation"),
2046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowElevation));
2047     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowRadius"),
2048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowRadius));
2049     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
2050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::Invalidate));
2051     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
2052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetScale));
2053     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBackgroundColor));
2055     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPivot"),
2056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPivot));
2057     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrame"),
2058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetFrame));
2059     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
2060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetSize));
2061     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
2062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOpacity));
2063     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
2064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetTranslate));
2065     RegisterRenderNodeBorderAndMaskAttributes(renderNode, vm);
2066     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "renderNode"), renderNode);
2067 }
2068 
RegisterLineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2069 void ArkUINativeModule::RegisterLineAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2070 {
2071     auto line = panda::ObjectRef::New(vm);
2072     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStartPoint"),
2073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetStartPoint));
2074     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStartPoint"),
2075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetStartPoint));
2076     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEndPoint"),
2077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetEndPoint));
2078     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEndPoint"),
2079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetEndPoint));
2080     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "line"), line);
2081 }
2082 
RegisterPathAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2083 void ArkUINativeModule::RegisterPathAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2084 {
2085     auto path = panda::ObjectRef::New(vm);
2086     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathCommands"),
2087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::SetPathCommands));
2088     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathCommands"),
2089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::ResetPathCommands));
2090     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "path"), path);
2091 }
2092 
RegisterPolygonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2093 void ArkUINativeModule::RegisterPolygonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2094 {
2095     auto polygon = panda::ObjectRef::New(vm);
2096     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPolygonPoints"),
2097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::SetPolygonPoints));
2098     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPolygonPoints"),
2099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::ResetPolygonPoints));
2100     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polygon"), polygon);
2101 }
2102 
RegisterPolylineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2103 void ArkUINativeModule::RegisterPolylineAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2104 {
2105     auto polyline = panda::ObjectRef::New(vm);
2106     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPoints"),
2107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::SetPoints));
2108     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPoints"),
2109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::ResetPoints));
2110     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polyline"), polyline);
2111 }
2112 
RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2113 void ArkUINativeModule::RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2114 {
2115     auto sideBarContainer = panda::ObjectRef::New(vm);
2116     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarWidth"),
2117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarWidth));
2118     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarWidth"),
2119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarWidth));
2120     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinSideBarWidth"),
2121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinSideBarWidth));
2122     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinSideBarWidth"),
2123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinSideBarWidth));
2124     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlButton"),
2125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetControlButton));
2126     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlButton"),
2127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetControlButton));
2128     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowControlButton"),
2129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowControlButton));
2130     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowControlButton"),
2131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowControlButton));
2132     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHide"),
2133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetAutoHide));
2134     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHide"),
2135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetAutoHide));
2136     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxSideBarWidth"),
2137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMaxSideBarWidth));
2138     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxSideBarWidth"),
2139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMaxSideBarWidth));
2140     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
2141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinContentWidth));
2142     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
2143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinContentWidth));
2144     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarPosition"),
2145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarPosition));
2146     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarPosition"),
2147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarPosition));
2148     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSideBar"),
2149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowSideBar));
2150     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSideBar"),
2151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowSideBar));
2152     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetDivider));
2154     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetDivider));
2156     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "sideBarContainer"), sideBarContainer);
2157 }
2158 
RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2159 void ArkUINativeModule::RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2160 {
2161     auto calendarPicker = panda::ObjectRef::New(vm);
2162     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetTextStyle));
2164     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetTextStyle));
2166     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAlign"),
2167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetEdgeAlign));
2168     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAlign"),
2169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetEdgeAlign));
2170     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerPadding"),
2171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerPadding));
2172     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerPadding"),
2173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerPadding));
2174         calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorder"),
2175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorder));
2176     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorder"),
2177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorder));
2178     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "calendarPicker"), calendarPicker);
2179 }
2180 
RegisterMenuItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2181 void ArkUINativeModule::RegisterMenuItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2182 {
2183     auto menuitem = panda::ObjectRef::New(vm);
2184     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemSelected"),
2185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetMenuItemSelected));
2186     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemSelected"),
2187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetMenuItemSelected));
2188     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFontColor"),
2189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFontColor));
2190     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFontColor"),
2191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFontColor));
2192     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFontColor"),
2193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFontColor));
2194     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFontColor"),
2195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFontColor));
2196     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFont"),
2197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFont));
2198     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFont"),
2199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFont));
2200     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectIcon"),
2201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetSelectIcon));
2202     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectIcon"),
2203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetSelectIcon));
2204     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFont"),
2205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFont));
2206     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFont"),
2207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFont));
2208     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menuitem"), menuitem);
2209 }
2210 
RegisterMenuAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2211 void ArkUINativeModule::RegisterMenuAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2212 {
2213     auto menu = panda::ObjectRef::New(vm);
2214     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuFontColor"),
2215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuFontColor));
2216     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuFontColor"),
2217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuFontColor));
2218     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
2219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFont));
2220     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
2221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFont));
2222     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadius"),
2223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetRadius));
2224     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadius"),
2225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetRadius));
2226     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetWidth));
2228     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetWidth));
2230     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menu"), menu);
2231 }
2232 
RegisterTabAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2233 void ArkUINativeModule::RegisterTabAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2234 {
2235     auto tabs = panda::ObjectRef::New(vm);
2236     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarMode"),
2237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarMode));
2238     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarMode"),
2239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarMode));
2240     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollableBarModeOptions"),
2241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollableBarModeOptions));
2242     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollableBarModeOptions"),
2243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollableBarModeOptions));
2244     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarGridAlign"),
2245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarGridAlign));
2246     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarGridAlign"),
2247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarGridAlign));
2248     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetDivider));
2250     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetDivider));
2252     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
2253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetFadingEdge));
2254     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
2255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetFadingEdge));
2256     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundColor"),
2257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundColor));
2258     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundColor"),
2259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundColor));
2260     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarOverlap"),
2261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarOverlap));
2262     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarOverlap"),
2263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarOverlap));
2264     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIsVertical"),
2265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetIsVertical));
2266     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIsVertical"),
2267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetIsVertical));
2268     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarWidth"),
2269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarWidth));
2270     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarWidth"),
2271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarWidth));
2272     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarPosition"),
2273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarPosition));
2274     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarPosition"),
2275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarPosition));
2276     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
2277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollable));
2278     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
2279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollable));
2280     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarHeight"),
2281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarHeight));
2282     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarHeight"),
2283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarHeight));
2284     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarAdaptiveHeight"),
2285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarAdaptiveHeight));
2286     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarAdaptiveHeight"),
2287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarAdaptiveHeight));
2288     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimationDuration"),
2289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimationDuration));
2290     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimationDuration"),
2291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimationDuration));
2292     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarPosition"),
2293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarPosition));
2294     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarPosition"),
2295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarPosition));
2296     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabClip"),
2297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabClip));
2298     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabClip"),
2299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabClip));
2300     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabs"), tabs);
2301 }
2302 
RegisterStepperItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2303 void ArkUINativeModule::RegisterStepperItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2304 {
2305     auto stepperItem = panda::ObjectRef::New(vm);
2306     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextLabel"),
2307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetNextLabel));
2308     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextLabel"),
2309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetNextLabel));
2310     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stepperItem"), stepperItem);
2311 }
2312 
RegisterTabContentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2313 void ArkUINativeModule::RegisterTabContentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2314 {
2315     auto tabContent = panda::ObjectRef::New(vm);
2316     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentWidth"),
2317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentWidth));
2318     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentHeight"),
2319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentHeight));
2320     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentSize"),
2321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentSize));
2322     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentWidth"),
2323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentWidth));
2324     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentHeight"),
2325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentHeight));
2326     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentSize"),
2327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentSize));
2328     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabContent"), tabContent);
2329 }
2330 
RegisterHyperlinkAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2331 void ArkUINativeModule::RegisterHyperlinkAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2332 {
2333     auto hyperlink = panda::ObjectRef::New(vm);
2334     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
2335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetColor));
2336     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
2337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetColor));
2338     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
2339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetDraggable));
2340     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
2341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetDraggable));
2342     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "hyperlink"), hyperlink);
2343 }
2344 
2345 #ifdef FORM_SUPPORTED
RegisterFormAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2346 void ArkUINativeModule::RegisterFormAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2347 {
2348     auto formComponent = panda::ObjectRef::New(vm);
2349     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
2350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetVisibility));
2351     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
2352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetVisibility));
2353     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
2354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::AllowUpdate));
2355     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
2356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::DisallowUpdate));
2357     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
2358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetDimension));
2359     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
2360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetDimension));
2361     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
2362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetModuleName));
2363     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
2364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetModuleName));
2365     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
2366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetSize));
2367     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
2368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetSize));
2369     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "formComponent"), formComponent);
2370 }
2371 #endif
2372 
RegisterDatePickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2373 void ArkUINativeModule::RegisterDatePickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2374 {
2375     auto datePicker = panda::ObjectRef::New(vm);
2376     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetSelectedTextStyle));
2378     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetSelectedTextStyle));
2380     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetTextStyle));
2382     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetTextStyle));
2384     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDisappearTextStyle));
2386     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDisappearTextStyle));
2388     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLunar"),
2389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetLunar));
2390     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLunar"),
2391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetLunar));
2392     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetBackgroundColor));
2394     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetBackgroundColor));
2396     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "datePicker"), datePicker);
2397 }
2398 
RegisterWaterFlowAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2399 void ArkUINativeModule::RegisterWaterFlowAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2400 {
2401     auto waterflow = panda::ObjectRef::New(vm);
2402     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
2403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsTemplate));
2404     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
2405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsTemplate));
2406     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
2407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsTemplate));
2408     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
2409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsTemplate));
2410     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
2411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEnableScrollInteraction));
2412     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
2413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEnableScrollInteraction));
2414     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
2415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsGap));
2416     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
2417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsGap));
2418     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
2419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsGap));
2420     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
2421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsGap));
2422     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemConstraintSize"),
2423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetItemConstraintSize));
2424     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemConstraintSize"),
2425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetItemConstraintSize));
2426     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
2427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetLayoutDirection));
2428     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
2429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetLayoutDirection));
2430     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
2431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetNestedScroll));
2432     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
2433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetNestedScroll));
2434     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
2435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFriction));
2436     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
2437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFriction));
2438     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "waterFlow"), waterflow);
2439 }
2440 
RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2441 void ArkUINativeModule::RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2442 {
2443     auto alphabetIndexer = panda::ObjectRef::New(vm);
2444     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemFont"),
2445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemFont));
2446     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemFont"),
2447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemFont));
2448     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedFont"),
2449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedFont));
2450     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedFont"),
2451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedFont));
2452     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupFont"),
2453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupFont));
2454     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupFont"),
2455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupFont));
2456     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
2457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetFont));
2458     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
2459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetFont));
2460     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBackgroundColor"),
2461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBackgroundColor));
2462     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBackgroundColor"),
2463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBackgroundColor));
2464     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
2465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetColor));
2466     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
2467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetColor));
2468     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupColor"),
2469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupColor));
2470     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupColor"),
2471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupColor));
2472     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedColor));
2474     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedColor));
2476     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackground"),
2477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackground));
2478     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackground"),
2479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackground));
2480     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedBackgroundColor));
2482     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedBackgroundColor));
2484     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupUnselectedColor"),
2485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupUnselectedColor));
2486     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupUnselectedColor"),
2487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupUnselectedColor));
2488     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupSelectedColor"),
2489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupSelectedColor));
2490     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupSelectedColor"),
2491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupSelectedColor));
2492     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignStyle"),
2493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAlignStyle));
2494     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignStyle"),
2495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAlignStyle));
2496     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUsingPopup"),
2497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetUsingPopup));
2498     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUsingPopup"),
2499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetUsingPopup));
2500     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
2501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelected));
2502     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
2503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelected));
2504     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemSize"),
2505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemSize));
2506     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemSize"),
2507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemSize));
2508     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupPosition"),
2509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupPosition));
2510     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupPosition"),
2511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupPosition));
2512     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "alphabetIndexer"), alphabetIndexer);
2513 }
2514 
RegisterGaugeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2515 void ArkUINativeModule::RegisterGaugeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2516 {
2517     auto gauge = panda::ObjectRef::New(vm);
2518     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeVaule"),
2519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeVaule));
2520     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeVaule"),
2521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeVaule));
2522     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStartAngle"),
2523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStartAngle));
2524     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStartAngle"),
2525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStartAngle));
2526     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeEndAngle"),
2527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeEndAngle));
2528     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeEndAngle"),
2529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeEndAngle));
2530     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStrokeWidth"),
2531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStrokeWidth));
2532     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStrokeWidth"),
2533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStrokeWidth));
2534     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeTrackShadow"),
2535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeTrackShadow));
2536     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeTrackShadow"),
2537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeTrackShadow));
2538     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeIndicator"),
2539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeIndicator));
2540     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeIndicator"),
2541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeIndicator));
2542     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeColors"),
2543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetColors));
2544     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeColors"),
2545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetColors));
2546     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gauge"), gauge);
2547 }
RegisterMarqueeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2548 void ArkUINativeModule::RegisterMarqueeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2549 {
2550     auto marquee = panda::ObjectRef::New(vm);
2551     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowScale"),
2552         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetAllowScale));
2553     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowScale"),
2554         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetAllowScale));
2555     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2556         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontWeight));
2557     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2558         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontWeight));
2559     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2560         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontFamily));
2561     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2562         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontFamily));
2563     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontSize));
2565     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontSize));
2567     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontColor));
2569     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontColor));
2571     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "marquee"), marquee);
2572 }
2573 
RegisterDataPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2574 void ArkUINativeModule::RegisterDataPanelAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2575 {
2576     auto dataPanel = panda::ObjectRef::New(vm);
2577     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCloseEffect"),
2578         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetCloseEffect));
2579     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCloseEffect"),
2580         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetCloseEffect));
2581     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackBackgroundColor"),
2582         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelTrackBackgroundColor));
2583     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackBackgroundColor"),
2584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelTrackBackgroundColor));
2585     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelStrokeWidth"),
2586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelStrokeWidth));
2587     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelStrokeWidth"),
2588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelStrokeWidth));
2589     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelValueColors"),
2590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetValueColors));
2591     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelValueColors"),
2592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetValueColors));
2593     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackShadow"),
2594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetTrackShadow));
2595     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackShadow"),
2596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetTrackShadow));
2597     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "dataPanel"), dataPanel);
2598 }
2599 
RegisterScrollAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2600 void ArkUINativeModule::RegisterScrollAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2601 {
2602     auto scroll = panda::ObjectRef::New(vm);
2603     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
2604         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetNestedScroll));
2605     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
2606         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetNestedScroll));
2607     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
2608         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnableScroll));
2609     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
2610         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnableScroll));
2611     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
2612         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFriction));
2613     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
2614         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFriction));
2615     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnap"),
2616         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollSnap));
2617     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnap"),
2618         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollSnap));
2619     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
2620         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBar));
2621     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
2622         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBar));
2623     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
2624         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollable));
2625     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
2626         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollable));
2627     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
2628         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarColor));
2629     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
2630         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarColor));
2631     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
2632         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarWidth));
2633     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
2634         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarWidth));
2635     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
2636         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEdgeEffect));
2637     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
2638         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEdgeEffect));
2639     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePaging"),
2640         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnablePaging));
2641     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePaging"),
2642         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnablePaging));
2643     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scroll"), scroll);
2644 }
2645 
RegisterGridItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2646 void ArkUINativeModule::RegisterGridItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2647 {
2648     auto gridItem = panda::ObjectRef::New(vm);
2649     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelectable"),
2650         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelectable));
2651     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelectable"),
2652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelectable));
2653     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelected"),
2654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelected));
2655     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelected"),
2656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelected));
2657     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowStart"),
2658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowStart));
2659     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowStart"),
2660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowStart));
2661     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowEnd"),
2662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowEnd));
2663     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowEnd"),
2664         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowEnd));
2665     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnStart"),
2666         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnStart));
2667     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnStart"),
2668         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnStart));
2669     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnEnd"),
2670         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnEnd));
2671     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnEnd"),
2672         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnEnd));
2673     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridItem"), gridItem);
2674 }
2675 
RegisterProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2676 void ArkUINativeModule::RegisterProgressAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2677 {
2678     auto progress = panda::ObjectRef::New(vm);
2679     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressValue"),
2680         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressValue));
2681     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressValue"),
2682         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressValue));
2683     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressColor"),
2684         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressColor));
2685     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressColor"),
2686         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressColor));
2687     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressStyle"),
2688         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressStyle));
2689     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressStyle"),
2690         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressStyle));
2691     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressBackgroundColor"),
2692         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::SetProgressBackgroundColor));
2693     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressBackgroundColor"),
2694         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::ResetProgressBackgroundColor));
2695     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "progress"), progress);
2696 }
2697 
2698 #ifdef PLUGIN_COMPONENT_SUPPORTED
RegisterPluginAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2699 void ArkUINativeModule::RegisterPluginAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2700 {
2701     auto plugin = panda::ObjectRef::New(vm);
2702     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
2703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetSize));
2704     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
2705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetSize));
2706     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetWidth));
2708     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetWidth));
2710     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetHeight));
2712     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetHeight));
2714     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "plugin"), plugin);
2715 }
2716 #endif
2717 
RegisterCommonShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2718 void ArkUINativeModule::RegisterCommonShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2719 {
2720     auto commonShape = panda::ObjectRef::New(vm);
2721     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashArray"),
2722         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashArray));
2723     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashArray"),
2724         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashArray));
2725     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeMiterLimit"),
2726         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeMiterLimit));
2727     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeMiterLimit"),
2728         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeMiterLimit));
2729     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillOpacity"),
2730         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFillOpacity));
2731     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillOpacity"),
2732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFillOpacity));
2733     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeOpacity"),
2734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeOpacity));
2735     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeOpacity"),
2736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeOpacity));
2737     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
2738         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeWidth));
2739     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
2740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeWidth));
2741     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAntiAlias"),
2742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetAntiAlias));
2743     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAntiAlias"),
2744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetAntiAlias));
2745     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStroke"),
2746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStroke));
2747     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStroke"),
2748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStroke));
2749     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFill"),
2750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFill));
2751     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFill"),
2752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFill));
2753     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashOffset"),
2754         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashOffset));
2755     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashOffset"),
2756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashOffset));
2757     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineCap"),
2758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineCap));
2759     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineCap"),
2760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineCap));
2761     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineJoin"),
2762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineJoin));
2763     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineJoin"),
2764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineJoin));
2765     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetHeight));
2767     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetHeight));
2769     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetWidth));
2771     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetWidth));
2773     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
2774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetForegroundColor));
2775     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
2776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetForegroundColor));
2777     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "commonShape"), commonShape);
2778 }
2779 
RegisterShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2780 void ArkUINativeModule::RegisterShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2781 {
2782     auto shape = panda::ObjectRef::New(vm);
2783     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeViewPort"),
2784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetViewPort));
2785     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeViewPort"),
2786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetViewPort));
2787     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeMesh"),
2788         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetMesh));
2789     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeMesh"),
2790         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetMesh));
2791     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "shape"), shape);
2792 }
2793 
RegisterRectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2794 void ArkUINativeModule::RegisterRectAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2795 {
2796     auto rect = panda::ObjectRef::New(vm);
2797     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusWidth"),
2798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusWidth));
2799     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusWidth"),
2800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusWidth));
2801     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusHeight"),
2802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusHeight));
2803     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusHeight"),
2804         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusHeight));
2805     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadius"),
2806         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadius));
2807     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadius"),
2808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadius));
2809     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rect"), rect);
2810 }
2811 
RegisterSwiperAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2812 void ArkUINativeModule::RegisterSwiperAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2813 {
2814     auto swiper = panda::ObjectRef::New(vm);
2815     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperNextMargin"),
2816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperNextMargin));
2817     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperNextMargin"),
2818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperNextMargin));
2819     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPrevMargin"),
2820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPrevMargin));
2821     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPrevMargin"),
2822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPrevMargin));
2823     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayCount"),
2824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayCount));
2825     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayCount"),
2826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayCount));
2827     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayArrow"),
2828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayArrow));
2829     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayArrow"),
2830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayArrow));
2831     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCurve"),
2832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCurve));
2833     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCurve"),
2834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCurve));
2835     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisableSwipe"),
2836         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisableSwipe));
2837     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisableSwipe"),
2838         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisableSwipe));
2839     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEffectMode"),
2840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEffectMode));
2841     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEffectMode"),
2842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEffectMode));
2843     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCachedCount"),
2844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCachedCount));
2845     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCachedCount"),
2846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCachedCount));
2847     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayMode"),
2848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayMode));
2849     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayMode"),
2850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayMode));
2851     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperItemSpace"),
2852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperItemSpace));
2853     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperItemSpace"),
2854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperItemSpace));
2855     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperVertical"),
2856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperVertical));
2857     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperVertical"),
2858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperVertical));
2859     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperLoop"),
2860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperLoop));
2861     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperLoop"),
2862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperLoop));
2863     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInterval"),
2864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInterval));
2865     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInterval"),
2866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInterval));
2867     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperAutoPlay"),
2868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperAutoPlay));
2869     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperAutoPlay"),
2870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperAutoPlay));
2871     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndex"),
2872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndex));
2873     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndex"),
2874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndex));
2875     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndicator"),
2876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndicator));
2877     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndicator"),
2878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndicator));
2879     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDuration"),
2880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDuration));
2881     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDuration"),
2882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDuration));
2883     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEnabled"),
2884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEnabled));
2885     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEnabled"),
2886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEnabled));
2887     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "swiper"), swiper);
2888 }
2889 
RegisterListItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2890 void ArkUINativeModule::RegisterListItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2891 {
2892     auto listItem = panda::ObjectRef::New(vm);
2893     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemSelected"),
2894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetListItemSelected));
2895     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemSelected"),
2896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetListItemSelected));
2897     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectable"),
2898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSelectable));
2899     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectable"),
2900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSelectable));
2901     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItem"), listItem);
2902 }
2903 
RegisterListAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2904 void ArkUINativeModule::RegisterListAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2905 {
2906     auto list = panda::ObjectRef::New(vm);
2907     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
2908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEditMode));
2909     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
2910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEditMode));
2911     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
2912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetMultiSelectable));
2913     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
2914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetMultiSelectable));
2915     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimation"),
2916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimation));
2917     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimation"),
2918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimation));
2919     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
2920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetCachedCount));
2921     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
2922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetCachedCount));
2923     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
2924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEnableScrollInteraction));
2925     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
2926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEnableScrollInteraction));
2927     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
2928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
2929     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
2930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
2931     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
2932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
2933     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
2934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
2935     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListEdgeEffect"),
2936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListEdgeEffect));
2937     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListEdgeEffect"),
2938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListEdgeEffect));
2939     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListDirection"),
2940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListDirection));
2941     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListDirection"),
2942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListDirection));
2943     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListFriction"),
2944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListFriction));
2945     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListFriction"),
2946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListFriction));
2947     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListNestedScroll"),
2948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListNestedScroll));
2949     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListNestedScroll"),
2950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListNestedScroll));
2951     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBar"),
2952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBar));
2953     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBar"),
2954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBar));
2955     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignListItem"),
2956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetAlignListItem));
2957     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignListItem"),
2958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetAlignListItem));
2959     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnapAlign"),
2960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetScrollSnapAlign));
2961     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnapAlign"),
2962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetScrollSnapAlign));
2963     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentStartOffset"),
2964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentStartOffset));
2965     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentStartOffset"),
2966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentStartOffset));
2967     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentEndOffset"),
2968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentEndOffset));
2969     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentEndOffset"),
2970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentEndOffset));
2971     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetDivider));
2973     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetDivider));
2975     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimationOptions"),
2976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimationOptions));
2977     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimationOptions"),
2978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimationOptions));
2979     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListLanes"),
2980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListLanes));
2981     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListLanes"),
2982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListLanes));
2983     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "list"), list);
2984 }
2985 
RegisterLisitItemGroupAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2986 void ArkUINativeModule::RegisterLisitItemGroupAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
2987 {
2988     auto listItemGroup = panda::ObjectRef::New(vm);
2989     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListeItemGroupBridege::SetDivider));
2991     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListeItemGroupBridege::ResetDivider));
2993     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItemGroup"), listItemGroup);
2994 }
2995 
RegisterQRCodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2996 void ArkUINativeModule::RegisterQRCodeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2997 {
2998     auto qrcode = panda::ObjectRef::New(vm);
2999     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRColor"),
3000         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRColor));
3001     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRColor"),
3002         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRColor));
3003     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRBackgroundColor"),
3004         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRBackgroundColor));
3005     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRBackgroundColor"),
3006         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRBackgroundColor));
3007     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentOpacity"),
3008         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetContentOpacity));
3009     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentOpacity"),
3010         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetContentOpacity));
3011     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "qrcode"), qrcode);
3012 }
3013 
RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3014 void ArkUINativeModule::RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3015 {
3016     auto loadingProgress = panda::ObjectRef::New(vm);
3017     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
3018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetColor));
3019     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
3020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetColor));
3021     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableLoading"),
3022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetEnableLoading));
3023     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableLoading"),
3024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetEnableLoading));
3025     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
3026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetForegroundColor));
3027     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
3028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetForegroundColor));
3029     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "loadingProgress"), loadingProgress);
3030 }
3031 
RegisterTextClockAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3032 void ArkUINativeModule::RegisterTextClockAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3033 {
3034     auto textClock = panda::ObjectRef::New(vm);
3035     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
3036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFormat));
3037     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
3038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFormat));
3039     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontColor));
3041     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontColor));
3043     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontSize));
3045     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontSize));
3047     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontStyle));
3049     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontStyle));
3051     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontWeight));
3053     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontWeight));
3055     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFamily));
3057     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFamily));
3059     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textClock"), textClock);
3060 }
3061 
RegisterTextTimerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3062 void ArkUINativeModule::RegisterTextTimerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3063 {
3064     auto textTimer = panda::ObjectRef::New(vm);
3065     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3066         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontColor));
3067     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3068         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontColor));
3069     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3070         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontSize));
3071     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3072         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontSize));
3073     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3074         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontWeight));
3075     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3076         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontWeight));
3077     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3078         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontStyle));
3079     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3080         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontStyle));
3081     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3082         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontFamily));
3083     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3084         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontFamily));
3085     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
3086         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFormat));
3087     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
3088         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFormat));
3089     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textTimer"), textTimer);
3090 }
3091 #ifdef XCOMPONENT_SUPPORTED
RegisterXComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3092 void ArkUINativeModule::RegisterXComponentAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3093 {
3094     auto xComponent = panda::ObjectRef::New(vm);
3095     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundColor));
3097     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundColor));
3099     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
3100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOpacity));
3101     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
3102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOpacity));
3103     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
3104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImage));
3105     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
3106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImage));
3107     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
3108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImageSize));
3109     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
3110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImageSize));
3111     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
3112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImagePosition));
3113     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
3114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImagePosition));
3115     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
3116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBlur));
3117     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
3118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBlur));
3119     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
3120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackdropBlur));
3121     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
3122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackdropBlur));
3123     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
3124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetGrayscale));
3125     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
3126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetGrayscale));
3127     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
3128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBrightness));
3129     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
3130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBrightness));
3131     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
3132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSaturate));
3133     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
3134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSaturate));
3135     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
3136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetContrast));
3137     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
3138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetContrast));
3139     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
3140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetInvert));
3141     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
3142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetInvert));
3143     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
3144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3145     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
3146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3147     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
3148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetHueRotate));
3149     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
3150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetHueRotate));
3151     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
3152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3153     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
3154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3155     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
3156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3157     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
3158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3159     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
3160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3161     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
3162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3163     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
3164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3165     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
3166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3167     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
3168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
3169     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
3170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
3171     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xComponent"), xComponent);
3172 }
3173 
RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3174 void ArkUINativeModule::RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3175 {
3176     auto xcomponentNode = panda::ObjectRef::New(vm);
3177     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "create"),
3178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::Create));
3179     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNode"),
3180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::GetFrameNode));
3181     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnCreateCallback"),
3182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnCreateCallback));
3183     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnDestroyCallback"),
3184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnDestroyCallback));
3185     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "changeRenderType"),
3186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::ChangeRenderType));
3187     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xcomponentNode"), xcomponentNode);
3188 }
3189 #endif
3190 } // namespace OHOS::Ace::NG
3191