• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023-2024 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 
17 #include "jsnapi_expo.h"
18 #include "core/components_ng/base/inspector.h"
19 #include "core/components_ng/base/observer_handler.h"
20 #include "core/components_ng/pattern/marquee/marquee_model_ng.h"
21 
22 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
23 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_badge_bridge.h"
24 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_blank_bridge.h"
25 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_button_bridge.h"
26 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkbox_bridge.h"
27 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkboxgroup_bridge.h"
28 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_bridge.h"
29 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_bridge.h"
30 #ifdef MODEL_COMPONENT_SUPPORTED
31 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_component3d_bridge.h"
32 #endif
33 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
34 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_animator_bridge.h"
35 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_counter_bridge.h"
36 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_divider_bridge.h"
37 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_flex_bridge.h"
38 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_bridge.h"
39 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_col_bridge.h"
40 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_row_bridge.h"
41 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_item_bridge.h"
42 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_hyperlink_bridge.h"
43 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_indicator_component_bridge.h"
44 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_bridge.h"
45 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_bridge.h"
46 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
47 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_span_bridge.h"
48 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_loading_progress_bridge.h"
49 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_bridge.h"
50 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_destination_bridge.h"
51 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_router_bridge.h"
52 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_item_bridge.h"
53 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_date_picker_bridge.h"
54 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigation_bridge.h"
55 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigator_bridge.h"
56 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_adapter_bridge.h"
57 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_panel_bridge.h"
58 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_container_bridge.h"
59 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_pattern_lock_bridge.h"
60 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_progress_bridge.h"
61 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_resource_bridge.h"
62 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_area_bridge.h"
63 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_clock_bridge.h"
64 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_swiper_bridge.h"
65 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_bridge.h"
66 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_input_bridge.h"
67 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_toggle_bridge.h"
68 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_radio_bridge.h"
69 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rating_bridge.h"
70 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
71 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_bridge.h"
72 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_split_bridge.h"
73 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_search_bridge.h"
74 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_select_bridge.h"
75 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stack_bridge.h"
76 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_folder_stack_bridge.h"
77 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_slider_bridge.h"
78 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_span_bridge.h"
79 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_glyph_bridge.h"
80 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_span_bridge.h"
81 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_textpicker_bridge.h"
82 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_theme_bridge.h"
83 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_timepicker_bridge.h"
84 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rich_editor_bridge.h"
85 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_video_bridge.h"
86 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stepper_item_bridge.h"
87 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
88 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabcontent_bridge.h"
89 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabs_bridge.h"
90 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_split_bridge.h"
91 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_line_bridge.h"
92 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_particle_bridge.h"
93 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_path_bridge.h"
94 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polygon_bridge.h"
95 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polyline_bridge.h"
96 #ifdef QRCODEGEN_SUPPORT
97 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_qrcode_bridge.h"
98 #endif
99 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_side_bar_container_bridge.h"
100 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_calendar_picker_bridge.h"
101 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_water_flow_bridge.h"
102 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_alphabet_indexer_bridge.h"
103 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_data_panel_bridge.h"
104 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_gauge_bridge.h"
105 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scroll_bridge.h"
106 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollable_bridge.h"
107 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
108 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_shape_bridge.h"
109 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_shape_bridge.h"
110 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rect_bridge.h"
111 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_group_bridge.h"
112 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_timer_bridge.h"
113 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_frame_node_bridge.h"
114 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_refresh_bridge.h"
115 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_relative_container_bridge.h"
116 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_container_span_bridge.h"
117 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_linear_indicator.h"
118 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_lazy_grid_layout_bridge.h"
119 #include "bridge/declarative_frontend/engine/js_converter.h"
120 #include "bridge/declarative_frontend/jsview/js_navigation_stack.h"
121 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollbar_bridge.h"
122 #ifdef PLUGIN_COMPONENT_SUPPORTED
123 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_plugin_bridge.h"
124 #endif
125 #ifdef XCOMPONENT_SUPPORTED
126 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_bridge.h"
127 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_node_bridge.h"
128 #endif
129 #ifdef FORM_SUPPORTED
130 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_form_component_bridge.h"
131 #endif
132 #ifdef WEB_SUPPORTED
133 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_web_bridge.h"
134 #endif
135 
136 namespace OHOS::Ace::NG {
137 namespace {
RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)138 void RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
139 {
140     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderStyle));
142     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderWidth));
144     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderColor));
146     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderRadius));
148     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectMask"),
149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectMask));
150     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleMask"),
151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleMask));
152     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectMask"),
153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectMask));
154     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalMask"),
155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalMask));
156     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPath"),
157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathMask));
158 }
RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)159 void RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
160 {
161     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectClip"),
162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectClip));
163     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleClip"),
164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleClip));
165     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectClip"),
166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectClip));
167     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalClip"),
168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalClip));
169     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathClip"),
170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathClip));
171 }
172 } // namespace
173 
PreviewMockComponent(ArkUIRuntimeCallInfo * runtimeCallInfo)174 ArkUINativeModuleValue ArkUINativeModule::PreviewMockComponent(ArkUIRuntimeCallInfo* runtimeCallInfo)
175 {
176     EcmaVM* vm = runtimeCallInfo->GetVM();
177     return panda::JSValueRef::Undefined(vm);
178 }
179 
GetFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)180 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
181 {
182     EcmaVM* vm = runtimeCallInfo->GetVM();
183     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
184     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
185     int nodeId = firstArg->ToNumber(vm)->Value();
186     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeById(nodeId);
187     return panda::NativePointerRef::New(vm, nodePtr);
188 }
189 
GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)190 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
191 {
192     EcmaVM* vm = runtimeCallInfo->GetVM();
193     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
194     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
195     int nodeId = firstArg->ToNumber(vm)->Value();
196     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByUniqueId(nodeId);
197     if (nodePtr) {
198         return panda::NativePointerRef::New(vm, nodePtr);
199     }
200 
201     return panda::JSValueRef::Undefined(vm);
202 }
203 
GetPageInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)204 ArkUINativeModuleValue ArkUINativeModule::GetPageInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
205 {
206     EcmaVM* vm = runtimeCallInfo->GetVM();
207     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
208     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
209     int nodeId = firstArg->ToNumber(vm)->Value();
210     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
211     auto pageInfo = panda::ObjectRef::New(vm);
212     CHECK_NULL_RETURN(nodePtr, pageInfo);
213 
214     auto routerPageResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetRouterPageState(nodePtr);
215     if (routerPageResult) {
216         auto jsContext = Framework::JsConverter::ConvertNapiValueToJsVal(routerPageResult->context);
217         Local<JSValueRef> routerPageValues[] = { jsContext->GetLocalHandle(),
218             panda::NumberRef::New(vm, routerPageResult->index),
219             panda::StringRef::NewFromUtf8(vm, routerPageResult->name.c_str()),
220             panda::StringRef::NewFromUtf8(vm, routerPageResult->path.c_str()),
221             panda::NumberRef::New(vm, static_cast<int32_t>(routerPageResult->state)),
222             panda::StringRef::NewFromUtf8(vm, routerPageResult->pageId.c_str()) };
223         const char* routerPageKeys[] = { "context", "index", "name", "path", "state", "pageId" };
224         auto routerPageObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(routerPageKeys), routerPageKeys,
225             routerPageValues);
226         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "routerPageInfo"), routerPageObj);
227     }
228 
229     auto navDestinationResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetNavigationState(nodePtr);
230     if (navDestinationResult) {
231         Local<JSValueRef> navDestinationValues[] = {
232             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navigationId.c_str()),
233             panda::StringRef::NewFromUtf8(vm, navDestinationResult->name.c_str()),
234             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->state)),
235             panda::NumberRef::New(vm, navDestinationResult->index),
236             Framework::JsConverter::ConvertNapiValueToJsVal(navDestinationResult->param)->GetLocalHandle(),
237             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navDestinationId.c_str()),
238             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->mode)),
239             panda::NumberRef::New(vm, navDestinationResult->uniqueId) };
240         const char* navDestinationKeys[] = { "navigationId", "name", "state", "index", "param", "navDestinationId",
241             "mode", "uniqueId" };
242         auto navDestinationObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(navDestinationKeys),
243             navDestinationKeys, navDestinationValues);
244         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestinationInfo"), navDestinationObj);
245     }
246 
247     return pageInfo;
248 }
249 
GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)250 ArkUINativeModuleValue ArkUINativeModule::GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
251 {
252     EcmaVM* vm = runtimeCallInfo->GetVM();
253     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
254     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
255     int nodeId = firstArg->ToNumber(vm)->Value();
256     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
257     auto defaultResult = panda::JSValueRef::Undefined(vm);
258     CHECK_NULL_RETURN(nodePtr, defaultResult);
259 
260     auto pipeline = NG::PipelineContext::GetCurrentContext();
261     CHECK_NULL_RETURN(pipeline, defaultResult);
262     auto navigationMgr = pipeline->GetNavigationManager();
263     CHECK_NULL_RETURN(navigationMgr, defaultResult);
264     auto result = navigationMgr->GetNavigationInfo(nodePtr);
265     CHECK_NULL_RETURN(result, defaultResult);
266     auto jsStack = AceType::DynamicCast<Framework::JSNavigationStack>(result->pathStack.Upgrade());
267     CHECK_NULL_RETURN(jsStack, defaultResult);
268     Framework::JSRef<Framework::JSObject> navPathStackObj = jsStack->GetDataSourceObj();
269     CHECK_NULL_RETURN(!navPathStackObj->IsEmpty(), defaultResult);
270     auto obj = panda::ObjectRef::New(vm);
271     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigationId"),
272         panda::StringRef::NewFromUtf8(vm, result->navigationId.c_str()));
273     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "pathStack"), navPathStackObj->GetLocalHandle());
274 
275     return obj;
276 }
277 
GetUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)278 ArkUINativeModuleValue ArkUINativeModule::GetUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
279 {
280     EcmaVM* vm = runtimeCallInfo->GetVM();
281     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
282     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
283     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
284     int64_t state = GetArkUINodeModifiers()->getUIStateModifier()->getUIState(nativeNode);
285     return panda::NumberRef::New(vm, state);
286 }
287 
SetSupportedUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)288 ArkUINativeModuleValue ArkUINativeModule::SetSupportedUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
289 {
290     EcmaVM* vm = runtimeCallInfo->GetVM();
291     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
292     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
293     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
294     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
295     auto state = secondArg->ToNumber(vm)->Value();
296     GetArkUINodeModifiers()->getUIStateModifier()->setSupportedUIState(nativeNode, state);
297     return panda::JSValueRef::Undefined(vm);
298 }
299 
GetFrameNodeByKey(ArkUIRuntimeCallInfo * runtimeCallInfo)300 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByKey(ArkUIRuntimeCallInfo* runtimeCallInfo)
301 {
302     EcmaVM* vm = runtimeCallInfo->GetVM();
303     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
304     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
305     auto key = firstArg->ToString(vm)->ToString(vm);
306     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByKey(key.c_str());
307     if (!nodePtr) {
308         return panda::JSValueRef::Undefined(vm);
309     }
310     return panda::NativePointerRef::New(vm, nodePtr);
311 }
312 
GetAttachedFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)313 ArkUINativeModuleValue ArkUINativeModule::GetAttachedFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
314 {
315     EcmaVM* vm = runtimeCallInfo->GetVM();
316     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
317     auto key = firstArg->ToString(vm)->ToString(vm);
318     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getAttachedFrameNodeById(key.c_str());
319     if (!nodePtr) {
320         return panda::JSValueRef::Undefined(vm);
321     }
322     return panda::NativePointerRef::New(vm, nodePtr);
323 }
324 
RequireDynamicSyncScene(ArkUIRuntimeCallInfo * runtimeCallInfo)325 ArkUINativeModuleValue ArkUINativeModule::RequireDynamicSyncScene(ArkUIRuntimeCallInfo* runtimeCallInfo)
326 {
327     EcmaVM* vm = runtimeCallInfo->GetVM();
328     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
329     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
330 
331     auto sceneId = firstArg->ToString(vm)->ToString(vm);
332     auto sceneNode = NG::Inspector::GetFrameNodeByKey(sceneId);
333 
334     if (!sceneNode) {
335         return panda::JSValueRef::Undefined(vm);
336     }
337 
338     auto sceneTag = sceneNode->GetTag();
339     auto nativeRef = NativeUtilsBridge::CreateWeakRef(vm, sceneNode);
340     const char* keys[] = { "nativeRef", "tag" };
341     Local<JSValueRef> values[] = { nativeRef, panda::StringRef::NewFromUtf8(vm, sceneTag.c_str()) };
342     return panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(keys), keys, values);
343 }
344 
SetFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)345 ArkUINativeModuleValue ArkUINativeModule::SetFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
346 {
347     EcmaVM* vm = runtimeCallInfo->GetVM();
348     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
349 
350     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
351     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
352     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2);
353     auto swiperNode = firstArg;
354     auto obj = secondArg->ToObject(vm);
355     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
356     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
357     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
358 
359     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
360     auto value = thirdArg->Int32Value(vm);
361     auto type = static_cast<SwiperDynamicSyncSceneType>(value);
362     if (type != SwiperDynamicSyncSceneType::ANIMATE) {
363         type = SwiperDynamicSyncSceneType::GESTURE;
364     }
365     auto nativePointer = swiperNode->ToNativePointer(vm);
366     if (nativePointer.IsEmpty()) {
367         return panda::JSValueRef::Undefined(vm);
368     }
369     auto nativeNode = nodePtr(nativePointer->Value());
370     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
371     auto* swiperFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
372     CHECK_NULL_RETURN(swiperFrameNode, panda::JSValueRef::Undefined(vm));
373     auto swiperPattern = swiperFrameNode->GetPattern();
374     CHECK_NULL_RETURN(swiperPattern, panda::JSValueRef::Undefined(vm));
375     swiperPattern->SetFrameRateRange(frameRateRange, type);
376 
377     return panda::JSValueRef::Undefined(vm);
378 }
379 
SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)380 ArkUINativeModuleValue ArkUINativeModule::SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
381 {
382     EcmaVM* vm = runtimeCallInfo->GetVM();
383     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
384 
385     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
386     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
387     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2); // 2: parameter index
388     auto marqueeNode = firstArg;
389     auto obj = secondArg->ToObject(vm);
390     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
391     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
392     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
393 
394     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
395     auto value = thirdArg->Int32Value(vm);
396     auto type = static_cast<MarqueeDynamicSyncSceneType>(value);
397     auto nativePointer = marqueeNode->ToNativePointer(vm);
398     if (nativePointer.IsEmpty()) {
399         return panda::JSValueRef::Undefined(vm);
400     }
401     auto nativeNode = nodePtr(nativePointer->Value());
402     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
403     auto* marqueeFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
404     CHECK_NULL_RETURN(marqueeFrameNode, panda::JSValueRef::Undefined(vm));
405     MarqueeModelNG::SetMarqueeFrameRateRange(marqueeFrameNode, frameRateRange, type);
406 
407     return panda::JSValueRef::Undefined(vm);
408 }
409 
GetArkUINativeModule(ArkUIRuntimeCallInfo * runtimeCallInfo)410 ArkUINativeModuleValue ArkUINativeModule::GetArkUINativeModule(ArkUIRuntimeCallInfo* runtimeCallInfo)
411 {
412     EcmaVM* vm = runtimeCallInfo->GetVM();
413     auto object = panda::ObjectRef::New(vm);
414     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeById"),
415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeById));
416     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByUniqueId"),
417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByUniqueId));
418     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPageInfoByUniqueId"),
419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetPageInfoByUniqueId));
420     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNavigationInfoByUniqueId"),
421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetNavigationInfoByUniqueId));
422     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getUIState"),
423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetUIState));
424     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportedUIState"),
425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetSupportedUIState));
426     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByKey"),
427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByKey));
428     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAttachedFrameNodeById"),
429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetAttachedFrameNodeById));
430     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "requireDynamicSyncScene"),
431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RequireDynamicSyncScene));
432     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrameRateRange"),
433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetFrameRateRange));
434     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeFrameRateRange"),
435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetMarqueeFrameRateRange));
436 
437     auto common = panda::ObjectRef::New(vm);
438     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundColor));
440     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundColor));
442     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetWidth));
444     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetWidth));
446     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHeight));
448     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHeight));
450     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderRadius));
452     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderRadius));
454     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWidth));
456     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderWidth));
458     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransform"),
459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransform));
460     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransform"),
461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransform));
462     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderColor));
464     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderColor));
466     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPosition));
468     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPosition"),
469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPosition));
470     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPointLightStyle"),
471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPointLightStyle));
472     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPointLightStyle"),
473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPointLightStyle));
474     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderStyle));
476     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderStyle));
478     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineColor"),
479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineColor));
480     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineColor"),
481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineColor));
482     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineRadius"),
483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineRadius));
484     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineRadius"),
485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineRadius));
486     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineStyle"),
487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineStyle));
488     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineStyle"),
489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineStyle));
490     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineWidth"),
491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineWidth));
492     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineWidth"),
493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineWidth));
494     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutline"),
495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutline));
496     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutline"),
497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutline));
498     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadow"),
499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShadow));
500     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShadow"),
501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShadow));
502     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHitTestBehavior"),
503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHitTestBehavior));
504     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHitTestBehavior"),
505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHitTestBehavior));
506     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZIndex"),
507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetZIndex));
508     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZIndex"),
509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetZIndex));
510     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOpacity));
512     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOpacity));
514     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlign"),
515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlign));
516     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlign"),
517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlign));
518     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackdropBlur));
520     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackdropBlur));
522     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHueRotate));
524     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHueRotate));
526     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetInvert));
528     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetInvert));
530     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSepia));
532     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSepia));
534     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSaturate));
536     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSaturate));
538     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetColorBlend));
540     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetColorBlend));
542     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGrayscale));
544     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGrayscale));
546     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetContrast));
548     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetContrast));
550     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBrightness));
552     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBrightness));
554     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlur));
556     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlur));
558     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradient"),
559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradient));
560     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradient"),
561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradient));
562     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSweepGradient"),
563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSweepGradient));
564     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSweepGradient"),
565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSweepGradient));
566     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadialGradient"),
567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRadialGradient));
568     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadialGradient"),
569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRadialGradient));
570     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOverlay"),
571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOverlay));
572     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOverlay"),
573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOverlay));
574     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderImage"),
575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderImage));
576     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderImage"),
577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderImage));
578     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBlurStyle"),
579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBlurStyle));
580     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBlurStyle"),
581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBlurStyle));
582     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradientBlur));
584     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradientBlur));
586     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBlurStyle"),
587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBlurStyle));
588     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBlurStyle"),
589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBlurStyle));
590     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorder));
592     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorder));
594     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImagePosition));
596     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImagePosition));
598     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageResizable"),
599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageResizable));
600     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageResizable"),
601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageResizable));
602     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageSize));
604     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageSize));
606     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImage));
608     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImage));
610     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTranslate));
612     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTranslate"),
613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTranslate));
614     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetScale));
616     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScale"),
617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetScale));
618     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotate"),
619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRotate));
620     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRotate"),
621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRotate));
622     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGeometryTransition"),
623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGeometryTransition));
624     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGeometryTransition"),
625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGeometryTransition));
626     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBindTips"),
627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBindTips));
628     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBindTips"),
629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBindTips));
630     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBindMenu"),
631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBindMenu));
632     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClip"),
633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClip));
634     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClip"),
635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClip));
636     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipShape"),
637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipShape));
638     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipShape"),
639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipShape));
640     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelStretchEffect));
642     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelStretchEffect));
644     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLightUpEffect));
646     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLightUpEffect));
648     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSphericalEffect));
650     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSphericalEffect));
652     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderGroup"),
653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderGroup));
654     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderGroup"),
655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderGroup));
656     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderFit));
658     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderFit));
660     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseEffect"),
661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseEffect));
662     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseEffect"),
663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseEffect));
664     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundColor));
666     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundColor));
668     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionPath"),
669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionPath));
670     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionPath"),
671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionPath));
672     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionBlur"),
673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionBlur));
674     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionBlur"),
675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionBlur));
676     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGroupDefaultFocus"),
677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGroupDefaultFocus));
678     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGroupDefaultFocus"),
679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGroupDefaultFocus));
680     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusOnTouch"),
681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusOnTouch));
682     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusOnTouch"),
683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusOnTouch));
684     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusable"),
685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusable));
686     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusable"),
687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusable));
688     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabStop"),
689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabStop));
690     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabStop"),
691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabStop));
692     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTouchable"),
693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTouchable));
694     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTouchable"),
695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTouchable));
696     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultFocus"),
697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDefaultFocus));
698     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultFocus"),
699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDefaultFocus));
700     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisplayPriority"),
701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDisplayPriority));
702     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisplayPriority"),
703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDisplayPriority));
704     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMask"),
705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMask));
706     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMask"),
707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMask));
708     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaskShape"),
709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMaskShape));
710     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaskShape"),
711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMaskShape));
712     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOffset"),
713         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetOffset));
714     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOffset"),
715         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetOffset));
716     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
717         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetPadding));
718     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
719         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetPadding));
720     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
721         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMargin));
722     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
723         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMargin));
724     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSafeAreaPadding"),
725         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetSafeAreaPadding));
726     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSafeAreaPadding"),
727         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetSafeAreaPadding));
728     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkAnchor"),
729         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMarkAnchor));
730     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarkAnchor"),
731         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMarkAnchor));
732     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
733         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetVisibility));
734     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
735         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetVisibility));
736     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityText));
738     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityText));
740     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowDrop"),
741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAllowDrop));
742     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowDrop"),
743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAllowDrop));
744     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityLevel));
746     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityLevel));
748     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityRoleType"),
749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityRoleType));
750     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityRoleType"),
751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityRoleType));
752     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityFocusCallback"),
753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityFocusCallback));
754     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityFocusCallback"),
755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityFocusCallback));
756     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDirection));
758     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDirection));
760     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutWeight"),
761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLayoutWeight));
762     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutWeight"),
763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLayoutWeight));
764     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSize));
766     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSize));
768     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignSelf"),
769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignSelf));
770     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignSelf"),
771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignSelf));
772     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAspectRatio"),
773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAspectRatio));
774     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAspectRatio"),
775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAspectRatio));
776     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexGrow"),
777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexGrow));
778     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexGrow"),
779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexGrow));
780     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexShrink"),
781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexShrink));
782     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexShrink"),
783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexShrink));
784     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setConstraintSize"),
785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetConstraintSize));
786     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetConstraintSize"),
787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetConstraintSize));
788     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridOffset"),
789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridOffset));
790     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridOffset"),
791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridOffset));
792     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridSpan"),
793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridSpan));
794     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridSpan"),
795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridSpan));
796     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setExpandSafeArea"),
797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetExpandSafeArea));
798     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetExpandSafeArea"),
799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetExpandSafeArea));
800     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignRules"),
801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignRules));
802     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignRules"),
803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignRules));
804     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexBasis"),
805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexBasis));
806     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexBasis"),
807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexBasis));
808     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDescription));
810     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDescription));
812     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetId));
814     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetId"),
815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetId));
816     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKey"),
817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKey));
818     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKey"),
819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKey));
820     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRestoreId"),
821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRestoreId));
822     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRestoreId"),
823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRestoreId));
824     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabIndex"),
825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabIndex));
826     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabIndex"),
827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabIndex));
828     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObscured"),
829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetObscured));
830     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObscured"),
831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetObscured));
832     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundEffect"),
833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundEffect));
834     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundEffect"),
835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundEffect));
836     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundEffect"),
837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundEffect));
838     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundEffect"),
839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundEffect));
840     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightness"),
841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightness));
842     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightness"),
843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightness));
844     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightnessInternal"),
845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightnessInternal));
846     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightnessInternal"),
847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightnessInternal));
848     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBrightness"),
849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBrightness));
850     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBrightness"),
851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBrightness));
852     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreviewOptions"),
853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreviewOptions));
854     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreviewOptions"),
855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreviewOptions));
856     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreview"),
857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreview));
858     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreview"),
859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreview));
860     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetResponseRegion));
862     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetResponseRegion));
864     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMouseResponseRegion"),
865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMouseResponseRegion));
866     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMouseResponseRegion"),
867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMouseResponseRegion));
868     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransition));
870     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransition));
872     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSharedTransition"),
873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSharedTransition));
874     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSharedTransition"),
875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSharedTransition));
876     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnabled"),
877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetEnabled));
878     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnabled"),
879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetEnabled));
880     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseShadowBatching"),
881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseShadowBatching));
882     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseShadowBatching"),
883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseShadowBatching));
884     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlendMode"),
885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlendMode));
886     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlendMode"),
887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlendMode));
888     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMonopolizeEvents"),
889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMonopolizeEvents));
890     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMonopolizeEvents"),
891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMonopolizeEvents));
892     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDraggable));
894     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDraggable));
896     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityGroup"),
897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityGroup));
898     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityGroup"),
899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityGroup));
900     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityNextFocusId"),
901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityNextFocusId));
902     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityNextFocusId"),
903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityNextFocusId));
904     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDefaultFocus"),
905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDefaultFocus));
906     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDefaultFocus"),
907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDefaultFocus));
908     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityUseSamePage"),
909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityUseSamePage));
910     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityUseSamePage"),
911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityUseSamePage));
912     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityScrollTriggerable"),
913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityScrollTriggerable));
914     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityScrollTriggerable"),
915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityScrollTriggerable));
916     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityFocusDrawLevel"),
917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityFocusDrawLevel));
918     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityFocusDrawLevel"),
919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityFocusDrawLevel));
920     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHoverEffect));
922     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHoverEffect));
924     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClickEffect"),
925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClickEffect));
926     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClickEffect"),
927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClickEffect));
928     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyBoardShortCut"),
929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKeyBoardShortCut));
930     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyBoardShortCut"),
931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKeyBoardShortCut));
932     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipWithEdge"),
933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipWithEdge));
934     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipWithEdge"),
935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipWithEdge));
936     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnClick));
938     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnClick));
940     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragStart"),
941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragStart));
942     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragStart"),
943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragStart));
944     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnter"),
945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnter));
946     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnter"),
947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnter));
948     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragMove"),
949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragMove));
950     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragMove"),
951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragMove));
952     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragLeave"),
953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragLeave));
954     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragLeave"),
955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragLeave));
956     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDrop"),
957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDrop));
958     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDrop"),
959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDrop));
960     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnd"),
961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnd));
962     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnd"),
963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnd));
964     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnTouch));
966     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTouch"),
967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnTouch));
968     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAppear));
970     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAppear"),
971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAppear));
972     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDisappear));
974     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDisappear"),
975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDisappear));
976     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAttach));
978     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAttach"),
979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAttach));
980     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDetach));
982     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDetach"),
983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDetach));
984     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyEvent));
986     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyEvent"),
987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyEvent));
988     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyPreIme"),
989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyPreIme));
990     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyPreIme"),
991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyPreIme));
992     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEventDispatch"),
993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyEventDispatch));
994     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyEventDispatch"),
995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyEventDispatch));
996     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocusAxisEvent"),
997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocusAxisEvent));
998     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocusAxisEvent"),
999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocusAxisEvent));
1000     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
1001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocus));
1002         common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocus"),
1003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocus));
1004     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
1005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnBlur));
1006     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBlur"),
1007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnBlur));
1008     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
1009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHover));
1010     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHover"),
1011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHover));
1012     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHoverMove"),
1013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHoverMove));
1014     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHoverMove"),
1015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHoverMove));
1016     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
1017         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnMouse));
1018     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnMouse"),
1019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnMouse));
1020     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAxisEvent"),
1021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAxisEvent));
1022     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAxisEvent"),
1023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAxisEvent));
1024     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
1025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnSizeChange));
1026     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSizeChange"),
1027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnSizeChange));
1028     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAreaChange"),
1029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAreaChange));
1030     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAreaChange"),
1031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAreaChange));
1032     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureJudgeBegin"),
1033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureJudgeBegin));
1034     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureJudgeBegin"),
1035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureJudgeBegin));
1036     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureRecognizerJudgeBegin"),
1037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureRecognizerJudgeBegin));
1038     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureRecognizerJudgeBegin"),
1039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureRecognizerJudgeBegin));
1040     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShouldBuiltInRecognizerParallelWith"),
1041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShouldBuiltInRecognizerParallelWith));
1042     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShouldBuiltInRecognizerParallelWith"),
1043         panda::FunctionRef::New(
1044             const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShouldBuiltInRecognizerParallelWith));
1045     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGesture"),
1046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGesture));
1047     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGesture"),
1048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGesture));
1049     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGesture"),
1050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGesture));
1051     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGesture"),
1052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGesture));
1053     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGesture"),
1054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGesture));
1055     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGesture"),
1056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGesture));
1057     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroup"),
1058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroup));
1059     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGestureToGroup"),
1060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGestureToGroup));
1061     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGestureToGroup"),
1062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGestureToGroup));
1063     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGestureToGroup"),
1064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGestureToGroup));
1065     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGestureToGroup"),
1066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGestureToGroup));
1067     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGestureToGroup"),
1068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGestureToGroup));
1069     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGestureToGroup"),
1070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGestureToGroup));
1071     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroupToGroup"),
1072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroupToGroup));
1073     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachGestureGroup"),
1074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AttachGestureGroup));
1075     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeGestureByTag"),
1076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RemoveGestureByTag));
1077     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearGestures"),
1078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ClearGestures));
1079     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowName"),
1080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowName));
1081     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowWidthBreakpoint"),
1082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowWidthBreakpoint));
1083     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowHeightBreakpoint"),
1084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowHeightBreakpoint));
1085     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "freezeUINodeById"),
1086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::FreezeUINodeById));
1087     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "freezeUINodeByUniqueId"),
1088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::FreezeUINodeByUniqueId));
1089     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemBarEffect"),
1090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSystemBarEffect));
1091     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "postFrameCallback"),
1092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::PostFrameCallback));
1093     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopeId"),
1094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopeId));
1095     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopeId"),
1096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopeId));
1097     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopePriority"),
1098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopePriority));
1099     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopePriority"),
1100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopePriority));
1101     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainMode"),
1102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetChainMode));
1103     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainMode"),
1104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetChainMode));
1105     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelRound"),
1106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelRound));
1107     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelRound"),
1108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelRound));
1109     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "greatOrEqualAPITargetVersion"),
1110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GreatOrEqualAPITargetVersion));
1111     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "lessThanAPITargetVersion"),
1112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::LessThanAPITargetVersion));
1113     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getApiTargetVersion"),
1114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetApiTargetVersion));
1115     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWithDashParams"),
1116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWithDashParams));
1117     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusBox"),
1118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusBox));
1119     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusBox"),
1120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusBox));
1121     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextFocus"),
1122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetNextFocus));
1123     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextFocus"),
1124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetNextFocus));
1125     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdvancedBlendMode"),
1126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAdvancedBlendMode));
1127     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdvancedBlendMode"),
1128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAdvancedBlendMode));
1129     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameNodeDestructorCallback"),
1130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RegisterFrameNodeDestructorCallback));
1131     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "common"), common);
1132 
1133     auto nativeUtils = panda::ObjectRef::New(vm);
1134     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeWeakRef"),
1135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeWeakRef));
1136     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeStrongRef"),
1137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeStrongRef));
1138     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "parseResourceColor"),
1139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ParseResourceColor));
1140     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "blendColor"),
1141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::BlendColor));
1142     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "resoureToLengthMetrics"),
1143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ResoureToLengthMetrics));
1144     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nativeUtils"), nativeUtils);
1145 
1146     auto nodeAdapter = panda::ObjectRef::New(vm);
1147     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "createAdapter"),
1148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::CreateNodeAdapter));
1149     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCallbacks"),
1150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetCallbacks));
1151     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTotalNodeCount"),
1152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetTotalNodeCount));
1153     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getTotalNodeCount"),
1154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetTotalNodeCount));
1155     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemReloaded"),
1156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemReloaded));
1157     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemChanged"),
1158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemChanged));
1159     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemRemoved"),
1160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemRemoved));
1161     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemInserted"),
1162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemInserted));
1163     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemMoved"),
1164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemMoved));
1165     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAllItems"),
1166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetAllItems));
1167     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachNodeAdapter"),
1168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::AttachNodeAdapter));
1169     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "detachNodeAdapter"),
1170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::DetachNodeAdapter));
1171     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeAdapter"), nodeAdapter);
1172 
1173     auto counter = panda::ObjectRef::New(vm);
1174     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableInc"),
1175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableInc));
1176     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableInc"),
1177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableInc));
1178     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDec"),
1179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableDec));
1180     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDec"),
1181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableDec));
1182     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterHeight"),
1183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterHeight));
1184     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterHeight"),
1185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterHeight));
1186     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterWidth"),
1187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterWidth));
1188     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterWidth"),
1189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterWidth));
1190     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterBackgroundColor"),
1191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterBackgroundColor));
1192     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterBackgroundColor"),
1193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterBackgroundColor));
1194     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterSize"),
1195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterSize));
1196     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterSize"),
1197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterSize));
1198     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterOnInc"),
1199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterOnInc));
1200     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterOnInc"),
1201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterOnInc));
1202     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterOnDec"),
1203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterOnDec));
1204     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterOnDec"),
1205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterOnDec));
1206     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "counter"), counter);
1207 
1208     auto checkboxgroup = panda::ObjectRef::New(vm);
1209     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectedColor"),
1210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectedColor));
1211     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectedColor"),
1212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectedColor));
1213     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupUnSelectedColor"),
1214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupUnSelectedColor));
1215     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupUnSelectedColor"),
1216         panda::FunctionRef::New(
1217             const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupUnSelectedColor));
1218     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectAll"),
1219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectAll));
1220     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectAll"),
1221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectAll));
1222     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupWidth"),
1223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupWidth));
1224     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupWidth"),
1225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupWidth));
1226     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupHeight"),
1227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupHeight));
1228     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupHeight"),
1229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupHeight));
1230     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupMark"),
1231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupMark));
1232     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupMark"),
1233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupMark));
1234     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSize"),
1235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSize));
1236     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSize"),
1237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSize));
1238     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupStyle"),
1239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupStyle));
1240     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupStyle"),
1241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupStyle));
1242     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupOptions"),
1243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupOptions));
1244     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupOnChange"),
1245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupOnChange));
1246     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupOnChange"),
1247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupOnChange));
1248     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkboxgroup"), checkboxgroup);
1249 
1250     auto panel = panda::ObjectRef::New(vm);
1251     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
1252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
1253     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
1254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
1255     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
1256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
1257     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
1258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
1259     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
1260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
1261     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
1262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
1263     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
1264 
1265     auto row = panda::ObjectRef::New(vm);
1266     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetAlignItems));
1268     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetAlignItems));
1270     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetJustifyContent));
1272     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetJustifyContent));
1274     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetSpace));
1276     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetSpace));
1278     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetReverse));
1280     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetReverse));
1282     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "row"), row);
1283 
1284 #ifndef ARKUI_WEARABLE
1285     auto rowSplit = panda::ObjectRef::New(vm);
1286     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
1287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::SetResizable));
1288     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
1289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::ResetResizable));
1290     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rowSplit"), rowSplit);
1291 #endif
1292 
1293     auto text = panda::ObjectRef::New(vm);
1294     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontColor));
1296     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontColor));
1298     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontSize));
1300     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontSize));
1302     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontStyle));
1304     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontStyle));
1306     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextAlign));
1308     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextAlign));
1310     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontWeight));
1312     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontWeight));
1314     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineHeight));
1316     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineHeight));
1318     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextOverflow));
1320     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextOverflow));
1322     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDecoration));
1324     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDecoration));
1326     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextCase));
1328     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextCase));
1330     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxLines));
1332     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxLines));
1334     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontSize));
1336     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ReSetMinFontSize));
1338     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
1339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDraggable));
1340     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
1341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDraggable));
1342     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
1343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetPrivacySensitive));
1344     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
1345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetPrivacySensitive));
1346     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontSize));
1348     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontSize));
1350     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
1351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontScale));
1352     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
1353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMinFontScale));
1354     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
1355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontScale));
1356     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
1357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontScale));
1358     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFamily));
1360     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFamily));
1362     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCopyOption));
1364     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCopyOption));
1366     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextShadow));
1368     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1370     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextController"),
1371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextController));
1372     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextShadow));
1374     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHeightAdaptivePolicy));
1376     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHeightAdaptivePolicy));
1378     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextIndent));
1380     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextIndent));
1382     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetBaselineOffset));
1384     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetBaselineOffset));
1386     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLetterSpacing));
1388     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLetterSpacing));
1390     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineSpacing));
1392     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineSpacing));
1394     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFont));
1396     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFont));
1398     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetWordBreak));
1400     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetWordBreak));
1402     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineBreakStrategy));
1404     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineBreakStrategy));
1406     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
1407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEllipsisMode));
1408     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
1409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEllipsisMode));
1410     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEnableDataDetector));
1412     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEnableDataDetector));
1414     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFeature));
1416     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFeature));
1418     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextForegroundColor"),
1419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetForegroundColor));
1420     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextForegroundColor"),
1421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetForegroundColor));
1422     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelection"),
1423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelection));
1424     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelection"),
1425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelection));
1426     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextSelectableMode"),
1427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextSelectableMode));
1428     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextSelectableMode"),
1429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextSelectableMode));
1430     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCaretColor));
1432     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCaretColor));
1434     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectedBackgroundColor));
1436     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectedBackgroundColor));
1438     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDataDetectorConfig));
1440     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDataDetectorConfig));
1442     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnCopy));
1444     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnCopy));
1446     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnTextSelectionChange));
1448     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnTextSelectionChange));
1450     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectionMenuOptions));
1452     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectionMenuOptions));
1454     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
1455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHalfLeading));
1456     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
1457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHalfLeading));
1458     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
1459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnClick));
1460     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
1461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnClick));
1462     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
1463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetResponseRegion));
1464     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
1465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetResponseRegion));
1466     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEnableHapticFeedback));
1468     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEnableHapticFeedback));
1470     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOptions"),
1471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMarqueeOptions));
1472     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOptions"),
1473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMarqueeOptions));
1474     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMarqueeStateChange"),
1475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnMarqueeStateChange));
1476     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnMarqueeStateChange"),
1477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnMarqueeStateChange));
1478     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "text"), text);
1479 
1480     auto search = panda::ObjectRef::New(vm);
1481     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInitialize"),
1482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInitialize));
1483     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInitialize"),
1484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInitialize));
1485     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextFont"),
1486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextFont));
1487     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextFont"),
1488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextFont));
1489     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderColor));
1491     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderColor));
1493     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuHidden));
1495     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuHidden));
1497     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCaretStyle));
1499     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCaretStyle));
1501     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchTextAlign));
1503     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchTextAlign));
1505     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
1506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCancelButton));
1507     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
1508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCancelButton));
1509     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableKeyboardOnFocus));
1511     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableKeyboardOnFocus));
1513     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderFont));
1515     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderFont));
1517     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchIcon"),
1518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchIcon));
1519     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchIcon"),
1520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchIcon));
1521     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchButton"),
1522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchButton));
1523     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchButton"),
1524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchButton));
1525     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontColor));
1527     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontColor));
1529     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCopyOption));
1531     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCopyOption));
1533     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchEnterKeyType"),
1534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchEnterKeyType));
1535     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchEnterKeyType"),
1536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchEnterKeyType));
1537     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchHeight"),
1538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchHeight));
1539     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchHeight"),
1540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchHeight));
1541     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInspectorId"),
1542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInspectorId));
1543     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInspectorId"),
1544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInspectorId));
1545     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetDecoration));
1547     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetDecoration));
1549     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLetterSpacing));
1551     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLetterSpacing));
1553     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLineHeight));
1555     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLineHeight));
1557     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
1558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetHalfLeading));
1559     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
1560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetHalfLeading));
1561     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontFeature));
1563     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontFeature));
1565     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMinFontSize"),
1566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMinFontSize));
1567     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMinFontSize"),
1568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMinFontSize));
1569     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMaxFontSize"),
1570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMaxFontSize));
1571     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMaxFontSize"),
1572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMaxFontSize));
1573     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
1574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMinFontScale));
1575     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
1576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMinFontScale));
1577     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
1578         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMaxFontScale));
1579     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
1580         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMaxFontScale));
1581     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1582         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectedBackgroundColor));
1583     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectedBackgroundColor));
1585     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextIndent));
1587     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextIndent));
1589     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetInputFilter));
1591     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetInputFilter));
1593     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMaxLength));
1595     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMaxLength));
1597     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1598         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetType));
1599     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1600         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetType));
1601     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnEditChange));
1603     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnEditChange));
1605     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1606         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnSubmit));
1607     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1608         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnSubmit));
1609     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1610         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCopy));
1611     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCopy));
1613     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCut));
1615     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCut));
1617     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnPaste));
1619     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnPaste));
1621     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnChange));
1623     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnChange));
1625     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnTextSelectionChange));
1627     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1628         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnTextSelectionChange));
1629     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1630         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnContentScroll));
1631     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1632         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnContentScroll));
1633     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetShowCounter));
1635     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetShowCounter));
1637     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
1638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillChange));
1639     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
1640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillChange));
1641     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
1642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillInsert));
1643     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
1644         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillInsert));
1645     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
1646         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidInsert));
1647     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
1648         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidInsert));
1649     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
1650         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillDelete));
1651     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
1652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillDelete));
1653     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
1654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidDelete));
1655     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
1656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidDelete));
1657     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnablePreviewText));
1659     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnablePreviewText));
1661     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuOptions));
1663     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1664         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuOptions));
1665     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1666         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableHapticFeedback));
1667     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1668         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableHapticFeedback));
1669     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
1670         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetStopBackPress));
1671     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
1672         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetStopBackPress));
1673     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
1674         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetKeyboardAppearance));
1675     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
1676         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetKeyboardAppearance));
1677     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "search"), search);
1678 
1679     auto stack = panda::ObjectRef::New(vm);
1680     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignContent"),
1681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::SetAlignContent));
1682     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignContent"),
1683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::ResetAlignContent));
1684     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stack"), stack);
1685 
1686 #ifndef ARKUI_WEARABLE
1687     auto folderStack = panda::ObjectRef::New(vm);
1688     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnimation"),
1689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetEnableAnimation));
1690     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnimation"),
1691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetEnableAnimation));
1692     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHalfFold"),
1693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetAutoHalfFold));
1694     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHalfFold"),
1695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetAutoHalfFold));
1696     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "folderStack"), folderStack);
1697 #endif
1698 
1699     auto imageSpan = panda::ObjectRef::New(vm);
1700     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVerticalAlign"),
1701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetVerticalAlign));
1702     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVerticalAlign"),
1703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetVerticalAlign));
1704     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetObjectFit));
1706     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetObjectFit));
1708     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1709         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetTextBackgroundStyle));
1710     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1711         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetTextBackgroundStyle));
1712     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1713         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetBaselineOffset));
1714     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1715         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetBaselineOffset));
1716     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
1717         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetAlt));
1718     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
1719         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetAlt));
1720     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
1721         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnComplete));
1722     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
1723         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnComplete));
1724     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
1725         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnError));
1726     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
1727         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnError));
1728     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
1729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetColorFilter));
1730     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
1731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetColorFilter));
1732     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetBorderRadius));
1734     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetBorderRadius));
1736     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageSpan"), imageSpan);
1737 
1738     auto blank = panda::ObjectRef::New(vm);
1739     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
1740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetColor));
1741     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
1742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetColor));
1743     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankHeight"),
1744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankHeight));
1745     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankHeight"),
1746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankHeight));
1747     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankMin"),
1748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankMin));
1749     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankMin"),
1750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankMin));
1751     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "blank"), blank);
1752 
1753     auto span = panda::ObjectRef::New(vm);
1754     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpanSrc"),
1755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SpanBridge::SetSpanSrc));
1756     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1757         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextCase));
1758     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1759         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextCase));
1760     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1761         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontWeight));
1762     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1763         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontWeight));
1764     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1765         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLineHeight));
1766     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1767         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLineHeight));
1768     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1769         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontStyle));
1770     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1771         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontStyle));
1772     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1773         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontSize));
1774     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1775         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontSize));
1776     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1777         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontFamily));
1778     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1779         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontFamily));
1780     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1781         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetDecoration));
1782     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1783         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetDecoration));
1784     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1785         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontColor));
1786     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1787         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontColor));
1788     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1789         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLetterSpacing));
1790     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1791         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLetterSpacing));
1792     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1793         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetBaselineOffset));
1794     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1795         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetBaselineOffset));
1796     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1797         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFont));
1798     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1799         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFont));
1800     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1801         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextBackgroundStyle));
1802     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1803         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextBackgroundStyle));
1804     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1805         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextShadow));
1806     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1807         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextShadow));
1808     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
1809         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityText));
1810     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
1811         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityText));
1812     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
1813         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityDescription));
1814     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
1815         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityDescription));
1816     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
1817         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityLevel));
1818     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
1819         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityLevel));
1820     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "span"), span);
1821 
1822     auto gridCol = panda::ObjectRef::New(vm);
1823     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpan"),
1824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetSpan));
1825     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpan"),
1826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetSpan));
1827     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridColOffset"),
1828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetGridColOffset));
1829     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridColOffset"),
1830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetGridColOffset));
1831     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrder"),
1832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetOrder));
1833     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrder"),
1834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetOrder));
1835     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridCol"), gridCol);
1836 
1837     auto column = panda::ObjectRef::New(vm);
1838     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetJustifyContent));
1840     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetJustifyContent));
1842     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetAlignItems));
1844     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetAlignItems));
1846     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetSpace));
1848     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetSpace));
1850     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetReverse));
1852     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetReverse));
1854     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "column"), column);
1855 
1856     auto gridRow = panda::ObjectRef::New(vm);
1857     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetAlignItems));
1859     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetAlignItems));
1861     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
1862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetDirection));
1863     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
1864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetDirection));
1865     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBreakpoints"),
1866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetBreakpoints));
1867     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBreakpoints"),
1868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetBreakpoints));
1869     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumns"),
1870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetColumns));
1871     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumns"),
1872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetColumns));
1873     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGutter"),
1874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetGutter));
1875     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGutter"),
1876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetGutter));
1877     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBreakpointChange"),
1878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetOnBreakpointChange));
1879     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBreakpointChange"),
1880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetOnBreakpointChange));
1881 
1882     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridRow"), gridRow);
1883 
1884     auto richEditor = panda::ObjectRef::New(vm);
1885     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnterKeyType));
1887     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1888         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnterKeyType));
1889     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1890         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetSelectedBackgroundColor));
1891     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1892         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetSelectedBackgroundColor));
1893     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCaretColor));
1895     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCaretColor));
1897     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelectionChange"),
1898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelectionChange));
1899     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelectionChange"),
1900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelectionChange));
1901     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnableDataDetector));
1903     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnableDataDetector));
1905     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetDataDetectorConfig));
1907     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetDataDetectorConfig));
1909     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnIMEInputComplete"),
1910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnIMEInputComplete));
1911     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnIMEInputComplete"),
1912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnIMEInputComplete));
1913     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
1914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnWillChange));
1915     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
1916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnWillChange));
1917     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidChange"),
1918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnDidChange));
1919     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidChange"),
1920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnDidChange));
1921     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholder"),
1922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetPlaceholder));
1923     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholder"),
1924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetPlaceholder));
1925     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAboutToDelete"),
1926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetAboutToDelete));
1927     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAboutToDelete"),
1928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetAboutToDelete));
1929     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSubmit));
1931     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSubmit));
1933     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAboutToIMEInput"),
1934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetAboutToIMEInput));
1935     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAboutToIMEInput"),
1936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetAboutToIMEInput));
1937     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOptions"),
1938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCopyOptions));
1939     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOptions"),
1940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCopyOptions));
1941     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelect"),
1942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelect));
1943     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelect"),
1944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelect));
1945     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReady"),
1946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnReady));
1947     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReady"),
1948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnReady));
1949     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDeleteComplete"),
1950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnDeleteComplete));
1951     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDeleteComplete"),
1952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnDeleteComplete));
1953     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditingChange"),
1954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnEditingChange));
1955     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditingChange"),
1956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnEditingChange));
1957     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnPaste));
1959     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnPaste));
1961     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCut));
1963     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCut));
1965     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCopy));
1967     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCopy));
1969     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnableKeyboardOnFocus));
1971     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnableKeyboardOnFocus));
1973     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnablePreviewText));
1975     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnablePreviewText));
1977     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMenuOptions"),
1978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEditMenuOptions));
1979     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMenuOptions"),
1980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEditMenuOptions));
1981     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
1982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetBarState));
1983     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
1984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetBarState));
1985     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetMaxLength));
1987     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetMaxLength));
1989     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetMaxLines));
1991     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetMaxLines));
1993     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
1994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetStopBackPress));
1995     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
1996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetStopBackPress));
1997     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
1998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetKeyboardAppearance));
1999     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
2000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetKeyboardAppearance));
2001     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "richEditor"), richEditor);
2002 
2003     auto linearIndicator = panda::ObjectRef::New(vm);
2004     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorStyle"),
2005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::SetIndicatorStyle));
2006     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorStyle"),
2007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::ResetIndicatorStyle));
2008     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorLoop"),
2009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::SetIndicatorLoop));
2010     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorLoop"),
2011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::ResetIndicatorLoop));
2012     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::SetOnChange));
2014     linearIndicator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LinearIndicatorBridge::ResetOnChange));
2016     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "linearIndicator"), linearIndicator);
2017 
2018     auto textArea = panda::ObjectRef::New(vm);
2019     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
2020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStyle));
2021     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
2022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStyle));
2023     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
2024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuHidden));
2025     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
2026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuHidden));
2027     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
2028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLines));
2029     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
2030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLines));
2031     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
2032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCopyOption));
2033     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
2034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCopyOption));
2035     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
2036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderColor));
2037     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
2038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderColor));
2039     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
2040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaTextAlign));
2041     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
2042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextAreaTextAlign));
2043     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
2044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderFont));
2045     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
2046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderFont));
2047     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
2048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBarState));
2049     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
2050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBarState));
2051     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
2052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableKeyboardOnFocus));
2053     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
2054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableKeyboardOnFocus));
2055     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFamily));
2057     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFamily));
2059     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetShowCounter));
2061     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetShowCounter));
2063     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
2064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretColor));
2065     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
2066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretColor));
2067     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
2068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLength));
2069     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
2070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLength));
2071     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontColor));
2073     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontColor));
2075     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
2076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontStyle));
2077     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
2078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontStyle));
2079     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontWeight));
2081     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontWeight));
2083     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontSize));
2085     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontSize));
2087     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
2088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetDecoration));
2089     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
2090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetDecoration));
2091     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
2092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLetterSpacing));
2093     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
2094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLetterSpacing));
2095     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
2096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineSpacing));
2097     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
2098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineSpacing));
2099     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
2100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineHeight));
2101     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
2102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineHeight));
2103     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
2104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetHalfLeading));
2105     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
2106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetHalfLeading));
2107     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
2108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFeature));
2109     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
2110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFeature));
2111     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
2112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWordBreak));
2113     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
2114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWordBreak));
2115     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
2116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineBreakStrategy));
2117     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
2118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineBreakStrategy));
2119     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
2120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMinFontSize));
2121     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
2122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMinFontSize));
2123     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
2124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxFontSize));
2125     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
2126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxFontSize));
2127     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
2128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMinFontScale));
2129     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
2130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMinFontScale));
2131     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
2132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxFontScale));
2133     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
2134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxFontScale));
2135     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
2136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetHeightAdaptivePolicy));
2137     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
2138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetHeightAdaptivePolicy));
2139     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectedBackgroundColor));
2141     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectedBackgroundColor));
2143     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
2144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretStyle));
2145     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
2146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretStyle));
2147     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
2148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextOverflow));
2149     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
2150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextOverflow));
2151     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
2152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextIndent));
2153     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
2154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextIndent));
2155     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetType));
2157     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetType));
2159     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
2160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPadding));
2161     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
2162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPadding));
2163     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnChange));
2165     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnChange));
2167     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
2168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnterKeyType));
2169     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
2170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnterKeyType));
2171     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetInputFilter));
2173     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetInputFilter));
2175     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnTextSelectionChange));
2177     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnTextSelectionChange));
2179     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnContentScroll));
2181     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnContentScroll));
2183     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnEditChange));
2185     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnEditChange));
2187     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCopy));
2189     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCopy));
2191     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCut));
2193     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCut));
2195     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnPaste));
2197     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnPaste));
2199     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnSubmit));
2201     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnSubmit));
2203     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetContentType));
2205     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetContentType));
2207     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableAutoFill));
2209     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableAutoFill));
2211     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2213     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2215     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2217     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2219     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2221     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2223     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2225     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2227     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2228         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2229     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2231     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBackgroundColor));
2233     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBackgroundColor));
2235     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMargin));
2237     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMargin));
2239     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
2240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillChange));
2241     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
2242         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillChange));
2243     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2244         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2245     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2246         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2247     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2248         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2249     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2251     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2253     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2255     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2257     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2259     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnablePreviewText));
2261     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnablePreviewText));
2263     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuOptions));
2265     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuOptions));
2267     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAreaInitialize"),
2268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaInitialize));
2269     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWidth));
2271     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWidth));
2273     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableHapticFeedback));
2275     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableHapticFeedback));
2277     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
2278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEllipsisMode));
2279     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
2280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEllipsisMode));
2281     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
2282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStopBackPress));
2283     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
2284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStopBackPress));
2285     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
2286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetKeyboardAppearance));
2287     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
2288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetKeyboardAppearance));
2289     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textArea"), textArea);
2290 
2291     auto video = panda::ObjectRef::New(vm);
2292 #ifdef PREVIEW
2293     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2295     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2297     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2299     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2301     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2303     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2305     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2307     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2309     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2311     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2313     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShortcutKeyEnabled"),
2314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2315     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShortcutKeyEnabled"),
2316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2317 #else
2318     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetAutoPlay));
2320     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetAutoPlay));
2322     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetControls));
2324     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetControls));
2326     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetObjectFit));
2328     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetObjectFit));
2330     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetLoop));
2332     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetLoop));
2334     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetMuted));
2336     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetMuted));
2338     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShortcutKeyEnabled"),
2339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetShortcutKeyEnabled));
2340     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShortcutKeyEnabled"),
2341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetShortcutKeyEnabled));
2342 #endif
2343     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
2344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetOpacity));
2345     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
2346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetOpacity));
2347     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVideoSurfaceBackgroundColor"),
2348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetVideoSurfaceBackgroundColor));
2349     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVideoSurfaceBackgroundColor"),
2350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetVideoSurfaceBackgroundColor));
2351     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
2352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetTransition));
2353     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
2354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetTransition));
2355     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "video"), video);
2356 
2357     auto patternLock = panda::ObjectRef::New(vm);
2358     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideLength"),
2359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetSideLength));
2360     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideLength"),
2361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetSideLength));
2362     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoReset"),
2363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetAutoReset));
2364     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoReset"),
2365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetAutoReset));
2366     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathStrokeWidth"),
2367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathStrokeWidth));
2368     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathStrokeWidth"),
2369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathStrokeWidth));
2370     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRegularColor"),
2371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetRegularColor));
2372     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRegularColor"),
2373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetRegularColor));
2374     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathColor"),
2375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathColor));
2376     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathColor"),
2377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathColor));
2378     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActiveColor"),
2379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActiveColor));
2380     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActiveColor"),
2381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActiveColor));
2382     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleRadius"),
2383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockCircleRadius));
2384     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCircleRadius"),
2385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockCircleRadius));
2386     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSelectedColor));
2388     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSelectedColor));
2390     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActivateCircleStyle"),
2391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActivateCircleStyle));
2392     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActivateCircleStyle"),
2393         panda::FunctionRef::New(
2394             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActivateCircleStyle));
2395     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSkipUnselectedPoint"),
2396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSkipUnselectedPoint));
2397     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSkipUnselectedPoint"),
2398         panda::FunctionRef::New(
2399             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSkipUnselectedPoint));
2400     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPatternLockOnPatternComplete"),
2401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockOnPatternComplete));
2402     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPatternLockOnPatternComplete"),
2403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockOnPatternComplete));
2404     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPatternLockOnDotConnect"),
2405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockOnDotConnect));
2406     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPatternLockOnDotConnect"),
2407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockOnDotConnect));
2408     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "patternLock"), patternLock);
2409 
2410 #ifndef ARKUI_WEARABLE
2411     auto columnSplit = panda::ObjectRef::New(vm);
2412     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2413         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetDivider));
2414     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2415         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetDivider));
2416     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
2417         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetResizable));
2418     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
2419         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetResizable));
2420     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "columnSplit"), columnSplit);
2421 #endif
2422 
2423     RegisterImageAnimatorAttributes(object, vm);
2424 
2425     auto textInput = panda::ObjectRef::New(vm);
2426     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
2427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretColor));
2428     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
2429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretColor));
2430     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetType));
2432     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetType));
2434     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
2435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLines));
2436     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
2437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLines));
2438     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
2439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderColor));
2440     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
2441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderColor));
2442     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretPosition"),
2443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretPosition));
2444     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretPosition"),
2445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretPosition));
2446     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
2447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCopyOption));
2448     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
2449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCopyOption));
2450     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPasswordIcon"),
2451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPasswordIcon));
2452     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPasswordIcon"),
2453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPasswordIcon));
2454     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPassword"),
2455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPassword));
2456     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPassword"),
2457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPassword));
2458     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordIcon"),
2459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordIcon));
2460     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordIcon"),
2461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordIcon));
2462     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
2463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextAlign));
2464     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
2465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextAlign));
2466     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
2467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStyle));
2468     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
2469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStyle));
2470     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
2471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuHidden));
2472     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
2473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuHidden));
2474     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowUnderline"),
2475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputShowUnderline));
2476     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowUnderline"),
2477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputShowUnderline));
2478     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordRules"),
2479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordRules));
2480     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordRules"),
2481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordRules));
2482     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableAutoFill));
2484     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableAutoFill));
2486     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
2487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretStyle));
2488     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
2489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretStyle));
2490     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
2491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableKeyboardOnFocus));
2492     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
2493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableKeyboardOnFocus));
2494     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
2495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBarState));
2496     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
2497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBarState));
2498     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
2499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputEnterKeyType));
2500     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
2501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputEnterKeyType));
2502     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputFontWeight));
2504     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputFontWeight));
2506     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontSize));
2508     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontSize));
2510     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
2511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLength));
2512     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
2513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLength));
2514     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectedBackgroundColor));
2516     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectedBackgroundColor));
2518     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowError"),
2519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowError));
2520     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowError"),
2521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowError));
2522     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
2523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderFont));
2524     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
2525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderFont));
2526     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontColor));
2528     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontColor));
2530     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
2531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontStyle));
2532     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
2533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontStyle));
2534     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFamily));
2536     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFamily));
2538     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
2539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetDecoration));
2540     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
2541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetDecoration));
2542     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
2543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLetterSpacing));
2544     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
2545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLetterSpacing));
2546     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
2547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineHeight));
2548     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
2549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineHeight));
2550     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
2551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetHalfLeading));
2552     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
2553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetHalfLeading));
2554     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnderlineColor"),
2555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetUnderlineColor));
2556     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnderlineColor"),
2557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetUnderlineColor));
2558     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
2559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFeature));
2560     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
2561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFeature));
2562     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
2563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWordBreak));
2564     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
2565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWordBreak));
2566     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
2567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineBreakStrategy));
2568     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
2569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineBreakStrategy));
2570     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
2571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCancelButton));
2572     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
2573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCancelButton));
2574     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectAll"),
2575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectAll));
2576     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectAll"),
2577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectAll));
2578     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2580     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2582     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2584     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2586     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnEditChange));
2588     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnEditChange));
2590     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetInputFilter));
2592     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetInputFilter));
2594     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnSubmit));
2596     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnSubmit));
2598     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnChange));
2600     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnChange));
2602     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnTextSelectionChange));
2604     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnTextSelectionChange));
2606     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnContentScroll));
2608     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnContentScroll));
2610     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCopy));
2612     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCopy));
2614     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCut));
2616     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCut));
2618     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnPaste));
2620     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnPaste));
2622     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
2623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMinFontSize));
2624     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
2625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMinFontSize));
2626     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
2627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxFontSize));
2628     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
2629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxFontSize));
2630     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
2631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMinFontScale));
2632     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
2633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMinFontScale));
2634     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
2635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxFontScale));
2636     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
2637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxFontScale));
2638     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
2639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetHeightAdaptivePolicy));
2640     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
2641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetHeightAdaptivePolicy));
2642     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
2643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextOverflow));
2644     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
2645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextOverflow));
2646     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
2647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextIndent));
2648     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
2649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextIndent));
2650     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
2651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPadding));
2652     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
2653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPadding));
2654     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetContentType));
2656     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetContentType));
2658     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2660     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2662     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2664     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2666     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2668     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2670     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2672     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2674     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2676     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2678     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBackgroundColor));
2680     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBackgroundColor));
2682     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMargin));
2684     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMargin));
2686     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetText"),
2687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetText));
2688     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setText"),
2689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetText));
2690     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetController"),
2691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetController));
2692     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setController"),
2693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetController));
2694     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholder"),
2695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholder));
2696     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholder"),
2697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholder));
2698     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
2699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillChange));
2700     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
2701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillChange));
2702     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2704     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2706     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2708     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2710     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2712     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2714     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2716     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2718     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnablePreviewText));
2720     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnablePreviewText));
2722     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuOptions));
2724     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuOptions));
2726     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWidth));
2728     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWidth));
2730     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableHapticFeedback));
2732     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableHapticFeedback));
2734     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
2735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEllipsisMode));
2736     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
2737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEllipsisMode));
2738     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
2739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStopBackPress));
2740     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
2741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStopBackPress));
2742     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
2743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetKeyboardAppearance));
2744     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
2745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetKeyboardAppearance));
2746     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textInput"), textInput);
2747 
2748     auto navDestination = panda::ObjectRef::New(vm);
2749     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
2750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideTitleBar));
2751     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
2752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideTitleBar));
2753     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
2754         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideToolBar));
2755     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
2756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideToolBar));
2757     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
2758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideBackButton));
2759     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
2760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideBackButton));
2761     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
2762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetBackButtonIcon));
2763     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
2764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetBackButtonIcon));
2765     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
2766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetNavDestinationMode));
2767     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
2768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetNavDestinationMode));
2769     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
2770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetIgnoreLayoutSafeArea));
2771     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
2772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetIgnoreLayoutSafeArea));
2773     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
2774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetTitle));
2775     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
2776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetTitle));
2777     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
2778         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetMenus));
2779     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
2780         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetMenus));
2781     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
2782         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetRecoverable));
2783     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
2784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetRecoverable));
2785     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemTransition"),
2786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2787         NavDestinationBridge::SetNavDestinationSystemTransition));
2788     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSystemTransition"),
2789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2790         NavDestinationBridge::ResetNavDestinationSystemTransition));
2791 
2792     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestination"), navDestination);
2793 
2794     auto particle = panda::ObjectRef::New(vm);
2795     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisturbanceField"),
2796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetDisturbanceField));
2797     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisturbanceField"),
2798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetDisturbanceField));
2799     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEmitter"),
2800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetEmitter));
2801     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEmitter"),
2802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetEmitter));
2803     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "particle"), particle);
2804 
2805     auto symbolGlyph = panda::ObjectRef::New(vm);
2806     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontColor));
2808     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontColor));
2810     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontSize));
2812     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontSize));
2814     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontWeight));
2816     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontWeight));
2818     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetRenderingStrategy));
2820     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetRenderingStrategy));
2822     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetEffectStrategy));
2824     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetEffectStrategy));
2826     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolEffectOptions"),
2827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolEffect));
2828     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolEffectOptions"),
2829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolEffect));
2830     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolGlyphInitialize"),
2831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolGlyphInitialize));
2832     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolGlyphInitialize"),
2833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolGlyphInitialize));
2834     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
2835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetMinFontScale));
2836     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
2837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetMinFontScale));
2838     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
2839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetMaxFontScale));
2840     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
2841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetMaxFontScale));
2842     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolGlyph"), symbolGlyph);
2843 
2844     auto symbolSpan = panda::ObjectRef::New(vm);
2845     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontColor));
2847     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontColor));
2849     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontSize));
2851     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontSize));
2853     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontWeight));
2855     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontWeight));
2857     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetEffectStrategy));
2859     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetEffectStrategy));
2861     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetRenderingStrategy));
2863     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetRenderingStrategy));
2865     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
2866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetId));
2867     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolSpan"), symbolSpan);
2868 
2869 #ifdef MODEL_COMPONENT_SUPPORTED
2870     auto component3D = panda::ObjectRef::New(vm);
2871     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShaderInputBuffer"),
2872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::SetShaderInputBuffer));
2873     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShaderInputBuffer"),
2874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::ResetShaderInputBuffer));
2875     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "component3D"), component3D);
2876 #endif
2877 
2878     auto containerSpan = panda::ObjectRef::New(vm);
2879     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
2880         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::SetTextBackgroundStyle));
2881     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
2882         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::ResetTextBackgroundStyle));
2883     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "containerSpan"), containerSpan);
2884 
2885     auto relativeContainer = panda::ObjectRef::New(vm);
2886     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGuideLine"),
2887         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetGuideLine));
2888     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGuideLine"),
2889         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetGuideLine));
2890     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarrier"),
2891         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetBarrier));
2892     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarrier"),
2893         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetBarrier));
2894     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "relativeContainer"), relativeContainer);
2895 
2896     RegisterButtonAttributes(object, vm);
2897     RegisterToggleAttributes(object, vm);
2898     RegisterDividerAttributes(object, vm);
2899     RegisterNavigationAttributes(object, vm);
2900     RegisterImageAttributes(object, vm);
2901     RegisterNavRouterAttributes(object, vm);
2902     RegisterNavigatorAttributes(object, vm);
2903     RegisterNodeContainerAttributes(object, vm);
2904     RegisterRenderNodeAttributes(object, vm);
2905     RegisterFrameNodeAttributes(object, vm);
2906     RegisterPanelAttributes(object, vm);
2907     RegisterLineAttributes(object, vm);
2908     RegisterPathAttributes(object, vm);
2909     RegisterPolygonAttributes(object, vm);
2910     RegisterPolylineAttributes(object, vm);
2911     RegisterSideBarContainerAttributes(object, vm);
2912     RegisterCalendarPickerAttributes(object, vm);
2913     RegisterTabAttributes(object, vm);
2914     RegisterTabContentAttributes(object, vm);
2915 #ifndef ARKUI_WEARABLE
2916     RegisterStepperItemAttributes(object, vm);
2917 #endif
2918     RegisterHyperlinkAttributes(object, vm);
2919     RegisterMenuItemAttributes(object, vm);
2920     RegisterMenuAttributes(object, vm);
2921     RegisterMarqueeAttributes(object, vm);
2922     RegisterDatePickerAttributes(object, vm);
2923     RegisterAlphabetIndexerAttributes(object, vm);
2924     RegisterGaugeAttributes(object, vm);
2925     RegisterSwiperAttributes(object, vm);
2926 #ifndef ARKUI_WEARABLE
2927     RegisterSelectAttributes(object, vm);
2928 #endif
2929     RegisterRadioAttributes(object, vm);
2930     RegisterSliderAttributes(object, vm);
2931     RegisterRatingAttributes(object, vm);
2932     RegisterTimepickerAttributes(object, vm);
2933     RegisterTextpickerAttributes(object, vm);
2934     RegisterThemeAttributes(object, vm);
2935     RegisterWaterFlowAttributes(object, vm);
2936     RegisterCheckboxAttributes(object, vm);
2937     RegisterDataPanelAttributes(object, vm);
2938     RegisterScrollAttributes(object, vm);
2939     RegisterScrollableAttributes(object, vm);
2940     RegisterGridItemAttributes(object, vm);
2941     RegisterMarqueeAttributes(object, vm);
2942     RegisterProgressAttributes(object, vm);
2943     RegisterCommonShapeAttributes(object, vm);
2944     RegisterShapeAttributes(object, vm);
2945     RegisterRectAttributes(object, vm);
2946     RegisterListAttributes(object, vm);
2947     RegisterGridAttributes(object, vm);
2948     RegisterListItemGroupAttributes(object, vm);
2949 #ifdef QRCODEGEN_SUPPORT
2950     RegisterQRCodeAttributes(object, vm);
2951 #endif
2952     RegisterLoadingProgressAttributes(object, vm);
2953     RegisterTextClockAttributes(object, vm);
2954     RegisterListItemAttributes(object, vm);
2955     RegisterTextTimerAttributes(object, vm);
2956     RegisterRefreshAttributes(object, vm);
2957 #ifdef PLUGIN_COMPONENT_SUPPORTED
2958     RegisterPluginAttributes(object, vm);
2959 #endif
2960 #ifdef XCOMPONENT_SUPPORTED
2961     RegisterXComponentAttributes(object, vm);
2962     RegisterXComponentNodeAttributes(object, vm);
2963 #endif
2964 
2965 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
2966     RegisterFormAttributes(object, vm);
2967 #endif
2968     RegisterResourceAttributes(object, vm);
2969     RegisterFlexAttributes(object, vm);
2970     RegisterBadgeAttributes(object, vm);
2971     RegisterScrollBarAttributes(object, vm);
2972     RegisterIndicatorComponentAttributes(object, vm);
2973 #ifdef WEB_SUPPORTED
2974     RegisterWebAttributes(object, vm);
2975 #endif
2976     RegisterLazyVGridLayoutAttributes(object, vm);
2977     return object;
2978 }
2979 
RegisterCheckboxAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2980 void ArkUINativeModule::RegisterCheckboxAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2981 {
2982     auto checkbox = panda::ObjectRef::New(vm);
2983     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMark"),
2984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetMark));
2985     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMark"),
2986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetMark));
2987     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnSelectedColor"),
2988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetUnSelectedColor));
2989     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnSelectedColor"),
2990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetUnSelectedColor));
2991     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelect"),
2992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelect));
2993     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelect"),
2994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelect));
2995     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelectedColor));
2997     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelectedColor));
2999     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxWidth));
3001     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxWidth));
3003     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxHeight));
3005     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxHeight));
3007     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxSize"),
3008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxSize));
3009     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxSize"),
3010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxSize));
3011     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxShape"),
3012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxShape));
3013     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxShape"),
3014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxShape));
3015     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxResponseRegion"),
3016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxResponseRegion));
3017     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxResponseRegion"),
3018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxResponseRegion));
3019     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxPadding"),
3020         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxPadding));
3021     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetContentModifierBuilder));
3023     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxPadding"),
3024         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxPadding));
3025     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxOptions"),
3026         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxOptions));
3027     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxOnChange"),
3028         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxOnChange));
3029     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxOnChange"),
3030         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxOnChange));
3031 
3032     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkbox"), checkbox);
3033 }
3034 
RegisterTextpickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3035 void ArkUINativeModule::RegisterTextpickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3036 {
3037     auto textpicker = panda::ObjectRef::New(vm);
3038     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCanLoop"),
3039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetCanLoop));
3040     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedIndex"),
3041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedIndex));
3042     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
3043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetTextStyle));
3044     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
3045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedTextStyle));
3046     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
3047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisappearTextStyle));
3048     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultPickerItemHeight"),
3049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultPickerItemHeight));
3050     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetBackgroundColor));
3052     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCanLoop"),
3053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetCanLoop));
3054     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedIndex"),
3055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedIndex));
3056     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
3057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetTextStyle));
3058     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
3059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedTextStyle));
3060     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
3061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisappearTextStyle));
3062     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultPickerItemHeight"),
3063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultPickerItemHeight));
3064     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetBackgroundColor));
3066     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDivider));
3068     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDivider));
3070     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGradientHeight"),
3071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetGradientHeight));
3072     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGradientHeight"),
3073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetGradientHeight));
3074     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisableTextStyleAnimation"),
3075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisableTextStyleAnimation));
3076     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisableTextStyleAnimation"),
3077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisableTextStyleAnimation));
3078     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultTextStyle"),
3079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultTextStyle));
3080     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultTextStyle"),
3081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultTextStyle));
3082     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextpickerEnableHapticFeedback"),
3083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetTextPickerEnableHapticFeedback));
3084     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextpickerEnableHapticFeedback"),
3085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetTextPickerEnableHapticFeedback));
3086     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
3087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetOnChange));
3088     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
3089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetOnChange));
3090     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
3091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetOnScrollStop));
3092     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
3093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetOnScrollStop));
3094     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textpicker"), textpicker);
3095     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDigitalCrownSensitivity"),
3096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDigitalCrownSensitivity));
3097     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDigitalCrownSensitivity"),
3098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDigitalCrownSensitivity));
3099 }
3100 
RegisterThemeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3101 void ArkUINativeModule::RegisterThemeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3102 {
3103     auto theme = panda::ObjectRef::New(vm);
3104     theme->Set(vm, panda::StringRef::NewFromUtf8(vm, "createAndBindTheme"),
3105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ThemeBridge::Create));
3106     theme->Set(vm, panda::StringRef::NewFromUtf8(vm, "pop"),
3107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ThemeBridge::Pop));
3108     theme->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultTheme"),
3109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ThemeBridge::SetDefaultTheme));
3110     theme->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeFromCache"),
3111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ThemeBridge::RemoveFromCache));
3112     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "theme"), theme);
3113 }
3114 
RegisterTimepickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3115 void ArkUINativeModule::RegisterTimepickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3116 {
3117     auto timepicker = panda::ObjectRef::New(vm);
3118     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
3119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTextStyle));
3120     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
3121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetSelectedTextStyle));
3122     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
3123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDisappearTextStyle));
3124     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
3125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTextStyle));
3126     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
3127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetSelectedTextStyle));
3128     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
3129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDisappearTextStyle));
3130     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerBackgroundColor));
3132     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerBackgroundColor));
3134     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerUseMilitaryTime"),
3135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerUseMilitaryTime));
3136     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerUseMilitaryTime"),
3137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerUseMilitaryTime));
3138     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerLoop"),
3139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerLoop));
3140     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerLoop"),
3141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerLoop));
3142     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerDateTimeOptions"),
3143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerDateTimeOptions));
3144     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerDateTimeOptions"),
3145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerDateTimeOptions));
3146     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerEnableHapticFeedback"),
3147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerEnableHapticFeedback));
3148     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerEnableHapticFeedback"),
3149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerEnableHapticFeedback));
3150     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerEnableCascade"),
3151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerEnableCascade));
3152     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerEnableCascade"),
3153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerEnableCascade));
3154     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerOnChange"),
3155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerOnChange));
3156     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerOnChange"),
3157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerOnChange));
3158     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "timepicker"), timepicker);
3159     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDigitalCrownSensitivity"),
3160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDigitalCrownSensitivity));
3161     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDigitalCrownSensitivity"),
3162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDigitalCrownSensitivity));
3163 }
3164 
RegisterRatingAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3165 void ArkUINativeModule::RegisterRatingAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3166 {
3167     auto rating = panda::ObjectRef::New(vm);
3168     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStars"),
3169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStars));
3170     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStars"),
3171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStars));
3172     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
3173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingStepSize));
3174     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
3175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetRatingStepSize));
3176     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStarStyle"),
3177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStarStyle));
3178     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStarStyle"),
3179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStarStyle));
3180     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetContentModifierBuilder));
3182     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRatingOptions"),
3183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingOptions));
3184     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
3185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetOnChange));
3186     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
3187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetOnChange));
3188     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rating"), rating);
3189 }
3190 
RegisterSliderAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3191 void ArkUINativeModule::RegisterSliderAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3192 {
3193     auto slider = panda::ObjectRef::New(vm);
3194     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowTips"),
3195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowTips));
3196     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowTips"),
3197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowTips));
3198     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
3199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderStepSize));
3200     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
3201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSliderStepSize));
3202     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockSize"),
3203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockSize));
3204     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockSize"),
3205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockSize));
3206     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBorderRadius"),
3207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBorderRadius));
3208     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBorderRadius"),
3209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBorderRadius));
3210     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepColor"),
3211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetStepColor));
3212     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepColor"),
3213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetStepColor));
3214     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderColor"),
3215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderColor));
3216     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderColor"),
3217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderColor));
3218     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderWidth"),
3219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderWidth));
3220     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderWidth"),
3221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderWidth));
3222     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockColor"),
3223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockColor));
3224     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockColor"),
3225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockColor));
3226     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBackgroundColor"),
3227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBackgroundColor));
3228     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBackgroundColor"),
3229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBackgroundColor));
3230     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectColor"),
3231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectColor));
3232     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectColor"),
3233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectColor));
3234     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSteps"),
3235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowSteps));
3236     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSteps"),
3237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowSteps));
3238     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setThickness"),
3239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetThickness));
3240     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetThickness"),
3241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetThickness));
3242     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockStyle"),
3243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockStyle));
3244     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockStyle"),
3245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockStyle));
3246     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValidSlideRange"),
3247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetValidSlideRange));
3248     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValidSlideRange"),
3249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetValidSlideRange));
3250     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBorderRadius"),
3251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectedBorderRadius));
3252     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBorderRadius"),
3253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectedBorderRadius));
3254     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInteractionMode"),
3255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetInteractionMode));
3256     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInteractionMode"),
3257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetInteractionMode));
3258     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinResponsiveDistance"),
3259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetMinResponsiveDistance));
3260     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinResponsiveDistance"),
3261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetMinResponsiveDistance));
3262     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetContentModifierBuilder));
3264     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSliderOptions"),
3265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderOptions));
3266     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
3267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetEnableHapticFeedback));
3268     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
3269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetEnableHapticFeedback));
3270     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
3271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetOnChange));
3272     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
3273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetOnChange));
3274     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "slider"), slider);
3275 }
3276 
RegisterRadioAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3277 void ArkUINativeModule::RegisterRadioAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3278 {
3279     auto radio = panda::ObjectRef::New(vm);
3280     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioChecked"),
3281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioChecked));
3282     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioChecked"),
3283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioChecked));
3284     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioStyle"),
3285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioStyle));
3286     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioStyle"),
3287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioStyle));
3288     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioWidth"),
3289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioWidth));
3290     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioWidth"),
3291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioWidth));
3292     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHeight"),
3293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHeight));
3294     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHeight"),
3295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHeight));
3296     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioSize"),
3297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioSize));
3298     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioSize"),
3299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioSize));
3300     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHoverEffect"),
3301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHoverEffect));
3302     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHoverEffect"),
3303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHoverEffect));
3304     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioPadding"),
3305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioPadding));
3306     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioPadding"),
3307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioPadding));
3308     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioResponseRegion"),
3309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioResponseRegion));
3310     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioResponseRegion"),
3311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioResponseRegion));
3312     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetContentModifierBuilder));
3314     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioOptions"),
3315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioOptions));
3316     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioOnChange"),
3317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioOnChange));
3318     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioOnChange"),
3319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioOnChange));
3320     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "radio"), radio);
3321 }
3322 
3323 #ifndef ARKUI_WEARABLE
RegisterSelectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3324 void ArkUINativeModule::RegisterSelectAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3325 {
3326     auto select = panda::ObjectRef::New(vm);
3327     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
3328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSpace));
3329     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValue"),
3330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetValue));
3331     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
3332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelected));
3333     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFontColor));
3335     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionBgColor"),
3336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionBgColor));
3337     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionBgColor"),
3338         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionBgColor));
3339     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFontColor"),
3340         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFontColor));
3341     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFontColor"),
3342         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFontColor));
3343     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setArrowPosition"),
3344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetArrowPosition));
3345     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuAlign"),
3346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuAlign));
3347     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAvoidance"),
3348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetAvoidance));
3349     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
3350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFont));
3351     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFont"),
3352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFont));
3353     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFont"),
3354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFont));
3355     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetArrowPosition"),
3356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetArrowPosition));
3357     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuAlign"),
3358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuAlign));
3359     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAvoidance"),
3360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetAvoidance));
3361     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
3362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFont));
3363     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFont"),
3364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFont));
3365     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFont"),
3366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFont));
3367     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
3368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSpace));
3369     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValue"),
3370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetValue));
3371     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
3372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelected));
3373     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFontColor));
3375     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionBgColor"),
3376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionBgColor));
3377     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionBgColor"),
3378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionBgColor));
3379     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFontColor"),
3380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFontColor));
3381     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFontColor"),
3382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFontColor));
3383     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionWidth"),
3384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionWidth));
3385     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionWidth"),
3386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionWidth));
3387     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionHeight"),
3388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionHeight));
3389     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionHeight"),
3390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionHeight));
3391     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetWidth));
3393     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetWidth));
3395     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetHeight));
3397     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetHeight));
3399     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSize));
3401     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
3402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSize));
3403     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlSize"),
3404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetControlSize));
3405     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlSize"),
3406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetControlSize));
3407     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetContentModifierBuilder));
3409     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundColor"),
3410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundColor));
3411     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundColor"),
3412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundColor));
3413     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundBlurStyle"),
3414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundBlurStyle));
3415     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundBlurStyle"),
3416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundBlurStyle));
3417     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetDivider));
3419     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetDivider));
3421     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDividerStyle"),
3422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetDividerStyle));
3423     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDividerStyle"),
3424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetDividerStyle));
3425     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptions"),
3426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptions));
3427     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectDirection"),
3428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectDirection));
3429     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectDirection"),
3430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectDirection));
3431     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "select"), select);
3432 }
3433 #endif
3434 
RegisterPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3435 void ArkUINativeModule::RegisterPanelAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3436 {
3437     auto panel = panda::ObjectRef::New(vm);
3438     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMode"),
3439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMode));
3440     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMode"),
3441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMode));
3442     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelFullHeight"),
3443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelFullHeight));
3444     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelFullHeight"),
3445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelFullHeight));
3446     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelHalfHeight"),
3447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelHalfHeight));
3448     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelHalfHeight"),
3449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelHalfHeight));
3450     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMiniHeight"),
3451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMiniHeight));
3452     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMiniHeight"),
3453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMiniHeight));
3454     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelBackgroundMask"),
3455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelBackgroundMask));
3456     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelBackgroundMask"),
3457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelBackgroundMask));
3458     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelType"),
3459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelType));
3460     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelType"),
3461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelType));
3462     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelCustomHeight"),
3463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelCustomHeight));
3464     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelCustomHeight"),
3465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelCustomHeight));
3466     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
3467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
3468     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
3469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
3470     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
3471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
3472     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
3473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
3474     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
3475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
3476     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
3477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
3478     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
3479 }
3480 
RegisterButtonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3481 void ArkUINativeModule::RegisterButtonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3482 {
3483     auto button = panda::ObjectRef::New(vm);
3484     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCreateWithLabel"),
3485         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetCreateWithLabel));
3486     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3487         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabel));
3488     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabel"),
3489         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabel));
3490     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptions"),
3491         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetOptions));
3492     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptions"),
3493         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetOptions));
3494     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3495         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetType));
3496     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3497         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetType));
3498     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStateEffect"),
3499         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetStateEffect));
3500     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStateEffect"),
3501         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetStateEffect));
3502     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3503         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontColor));
3504     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3505         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontColor));
3506     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3507         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontSize));
3508     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3509         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontSize));
3510     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3511         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontWeight));
3512     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3513         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontWeight));
3514     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3515         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontStyle));
3516     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3517         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontStyle));
3518     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3519         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontFamily));
3520     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3521         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontFamily));
3522     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelStyle"),
3523         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabelStyle));
3524     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelStyle"),
3525         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabelStyle));
3526     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetBackgroundColor));
3528     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetBackgroundColor));
3530     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorderRadius"),
3531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorderRadius));
3532     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorderRadius"),
3533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorderRadius));
3534     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorder"),
3535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorder));
3536     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorder"),
3537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorder));
3538     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonSize"),
3539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonSize));
3540     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonSize"),
3541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonSize));
3542     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonRole"),
3543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonRole));
3544     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonRole"),
3545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonRole));
3546     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonStyle"),
3547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonStyle));
3548     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonStyle"),
3549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonStyle));
3550     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonControlSize"),
3551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonControlSize));
3552     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetContentModifierBuilder));
3554     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonControlSize"),
3555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonControlSize));
3556     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
3557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetMinFontScale));
3558     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
3559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetMinFontScale));
3560     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
3561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetMaxFontScale));
3562     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
3563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetMaxFontScale));
3564     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "button"), button);
3565 }
3566 
RegisterToggleAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3567 void ArkUINativeModule::RegisterToggleAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3568 {
3569     auto toggle = panda::ObjectRef::New(vm);
3570     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
3571         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSelectedColor));
3572     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
3573         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSelectedColor));
3574     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
3575         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetOnChange));
3576     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
3577         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetOnChange));
3578     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchPointColor"),
3579         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchPointColor));
3580     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchPointColor"),
3581         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchPointColor));
3582     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3583         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHeight));
3584     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3585         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHeight));
3586     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
3587         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetResponseRegion));
3588     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
3589         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetResponseRegion));
3590     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
3591         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetPadding));
3592     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
3593         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetPadding));
3594     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3595         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetBackgroundColor));
3596     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3597         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetBackgroundColor));
3598     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
3599         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHoverEffect));
3600     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
3601         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHoverEffect));
3602     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchStyle"),
3603         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchStyle));
3604     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchStyle"),
3605         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchStyle));
3606     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3607         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetContentModifierBuilder));
3608     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setToggleOptions"),
3609         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetToggleOptions));
3610     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "toggle"), toggle);
3611 }
3612 
RegisterDividerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3613 void ArkUINativeModule::RegisterDividerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3614 {
3615     auto divider = panda::ObjectRef::New(vm);
3616     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
3617         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetStrokeWidth));
3618     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
3619         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetStrokeWidth));
3620     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineCap"),
3621         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetLineCap));
3622     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineCap"),
3623         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetLineCap));
3624     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
3625         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetColor));
3626     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
3627         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetColor));
3628     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
3629         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetVertical));
3630     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
3631         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetVertical));
3632     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "divider"), divider);
3633 }
3634 
RegisterGridAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3635 void ArkUINativeModule::RegisterGridAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3636 {
3637     auto grid = panda::ObjectRef::New(vm);
3638     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
3639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsTemplate));
3640     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
3641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsTemplate));
3642     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
3643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsTemplate));
3644     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
3645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsTemplate));
3646     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
3647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsGap));
3648     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
3649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsGap));
3650     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
3651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsGap));
3652     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
3653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsGap));
3654     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
3655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBar));
3656     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
3657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBar));
3658     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
3659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarWidth));
3660     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
3661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarWidth));
3662     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
3663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarColor));
3664     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
3665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarColor));
3666     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
3667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCachedCount));
3668     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
3669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCachedCount));
3670     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
3671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEditMode));
3672     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
3673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEditMode));
3674     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
3675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMultiSelectable));
3676     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
3677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMultiSelectable));
3678     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxCount"),
3679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMaxCount));
3680     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxCount"),
3681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMaxCount));
3682     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinCount"),
3683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMinCount));
3684     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinCount"),
3685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMinCount));
3686     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCellLength"),
3687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCellLength));
3688     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCellLength"),
3689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCellLength));
3690     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
3691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetLayoutDirection));
3692     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
3693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetLayoutDirection));
3694     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportAnimation"),
3695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetSupportAnimation));
3696     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSupportAnimation"),
3697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetSupportAnimation));
3698     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
3699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetNestedScroll));
3700     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
3701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetNestedScroll));
3702     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
3703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEnableScroll));
3704     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
3705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEnableScroll));
3706     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
3707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFriction));
3708     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
3709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFriction));
3710     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
3711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetAlignItems));
3712     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
3713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetAlignItems));
3714     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridScroller"),
3715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridScroller));
3716     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridLayoutOptions"),
3717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridLayoutOptions));
3718     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollFrameBegin"),
3719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollFrameBegin));
3720     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollFrameBegin"),
3721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollFrameBegin));
3722     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillScroll"),
3723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnWillScroll));
3724     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillScroll"),
3725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnWillScroll));
3726     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidScroll"),
3727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnDidScroll));
3728     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidScroll"),
3729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnDidScroll));
3730     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
3731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachStart));
3732     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
3733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachStart));
3734     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
3735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachEnd));
3736     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
3737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachEnd));
3738     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStart"),
3739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollStart));
3740     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStart"),
3741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollStart));
3742     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
3743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollStop));
3744     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
3745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollStop));
3746     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollIndex"),
3747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridScrollIndex));
3748     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollIndex"),
3749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridScrollIndex));
3750     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollBarUpdate"),
3751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridScrollBarUpdate));
3752     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollBarUpdate"),
3753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridScrollBarUpdate));
3754     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragStart"),
3755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridItemDragStart));
3756     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragStart"),
3757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridItemDragStart));
3758     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragEnter"),
3759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridItemDragEnter));
3760     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragEnter"),
3761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridItemDragEnter));
3762     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragMove"),
3763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridItemDragMove));
3764     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragMove"),
3765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridItemDragMove));
3766     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragLeave"),
3767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridItemDragLeave));
3768     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragLeave"),
3769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridItemDragLeave));
3770     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDrop"),
3771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetOnGridItemDrop));
3772     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDrop"),
3773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetOnGridItemDrop));
3774     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "grid"), grid);
3775 }
3776 
RegisterNavigationAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3777 void ArkUINativeModule::RegisterNavigationAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3778 {
3779     auto navigation = panda::ObjectRef::New(vm);
3780     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
3781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideToolBar));
3782     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
3783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideToolBar));
3784     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitleMode"),
3785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitleMode));
3786     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitleMode"),
3787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitleMode));
3788     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
3789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideBackButton));
3790     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
3791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideBackButton));
3792     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubTitle"),
3793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetSubtitle));
3794     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubTitle"),
3795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetSubtitle));
3796     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideNavBar"),
3797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideNavBar));
3798     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideNavBar"),
3799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideNavBar));
3800     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetUsrNavigationMode));
3802     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetUsrNavigationMode));
3804     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarPosition"),
3805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarPosition));
3806     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarPosition"),
3807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarPosition));
3808     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidth"),
3809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidth));
3810     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidth"),
3811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidth));
3812     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidthRange"),
3813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidthRange));
3814     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidthRange"),
3815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidthRange));
3816     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMinContentWidth));
3818     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMinContentWidth));
3820     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableModeChangeAnimation"),
3821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableModeChangeAnimation));
3822     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableModeChangeAnimation"),
3823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableModeChangeAnimation));
3824     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
3825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideTitleBar));
3826     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
3827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideTitleBar));
3828     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
3829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetBackButtonIcon));
3830     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
3831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetBackButtonIcon));
3832     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
3833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetIgnoreLayoutSafeArea));
3834     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
3835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetIgnoreLayoutSafeArea));
3836     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
3837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitle));
3838     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
3839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitle));
3840     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
3841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMenus));
3842     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
3843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMenus));
3844     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
3845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetRecoverable));
3846     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
3847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetRecoverable));
3848     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDragBar"),
3849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableDragBar));
3850     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDragBar"),
3851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableDragBar));
3852     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableToolBarAdaptation"),
3853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableToolBarAdaptation));
3854     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableToolBarAdaptation"),
3855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableToolBarAdaptation));
3856     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigation"), navigation);
3857 }
3858 
RegisterImageAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3859 void ArkUINativeModule::RegisterImageAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3860 {
3861     auto image = panda::ObjectRef::New(vm);
3862     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageShowSrc"),
3863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageShowSrc));
3864     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
3865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetCopyOption));
3866     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
3867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetCopyOption));
3868     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoResize"),
3869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAutoResize));
3870     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoResize"),
3871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAutoResize));
3872     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectRepeat"),
3873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectRepeat));
3874     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectRepeat"),
3875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectRepeat));
3876     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderMode"),
3877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetRenderMode));
3878     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderMode"),
3879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetRenderMode));
3880     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3882     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3884     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageMatrix"),
3885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageMatrix));
3886     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageMatrix"),
3887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageMatrix));
3888     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3890     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3892     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3894     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3896     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSourceSize"),
3897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSourceSize));
3898     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSourceSize"),
3899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSourceSize));
3900     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMatchTextDirection"),
3901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetMatchTextDirection));
3902     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMatchTextDirection"),
3903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetMatchTextDirection));
3904     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillColor"),
3905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFillColor));
3906     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillColor"),
3907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFillColor));
3908     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
3909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAlt));
3910     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
3911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAlt));
3912     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageInterpolation"),
3913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageInterpolation));
3914     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageInterpolation"),
3915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageInterpolation));
3916     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
3917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetColorFilter));
3918     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
3919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetColorFilter));
3920     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3922     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3924     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3926     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3928     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3930     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3932     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
3933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDraggable));
3934     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
3935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDraggable));
3936     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
3937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetBorderRadius));
3938     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
3939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetBorderRadius));
3940     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageBorder"),
3941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageBorder));
3942     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageBorder"),
3943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageBorder));
3944     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageOpacity"),
3945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageOpacity));
3946     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageOpacity"),
3947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageOpacity));
3948     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageTransition"),
3949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageTransition));
3950     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageTransition"),
3951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageTransition));
3952     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAntialiasing"),
3953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEdgeAntialiasing));
3954     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAntialiasing"),
3955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEdgeAntialiasing));
3956     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizableLattice"),
3957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizableLattice));
3958     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizable"),
3959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizable));
3960     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizable"),
3961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetResizable));
3962     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDynamicRangeMode"),
3963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDynamicRangeMode));
3964     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDynamicRangeMode"),
3965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDynamicRangeMode));
3966     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrientation"),
3967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetOrientation));
3968     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrientation"),
3969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetOrientation));
3970     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnhancedImageQuality"),
3971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEnhancedImageQuality));
3972     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnhancedImageQuality"),
3973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEnhancedImageQuality));
3974     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
3975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetPrivacySensitive));
3976     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
3977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetPrivacySensitive));
3978     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "enableAnalyzer"),
3979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::EnableAnalyzer));
3980     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "analyzerConfig"),
3981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::AnalyzerConfig));
3982     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
3983         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnComplete));
3984     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
3985         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnComplete));
3986     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
3987         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnError));
3988     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
3989         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnError));
3990     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFinish"),
3991         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnFinish));
3992     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFinish"),
3993         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnFinish));
3994     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "image"), image);
3995 }
3996 
RegisterNavRouterAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3997 void ArkUINativeModule::RegisterNavRouterAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3998 {
3999     auto navRouter = panda::ObjectRef::New(vm);
4000     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
4001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::SetMode));
4002     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
4003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::ResetMode));
4004     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navRouter"), navRouter);
4005 }
4006 
RegisterNavigatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4007 void ArkUINativeModule::RegisterNavigatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4008 {
4009     auto navigator = panda::ObjectRef::New(vm);
4010     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTarget"),
4011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetTarget));
4012     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTarget"),
4013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetTarget));
4014     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
4015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetType));
4016     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
4017         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetType));
4018     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActive"),
4019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetActive));
4020     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActive"),
4021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetActive));
4022     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setParams"),
4023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetParams));
4024     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetParams"),
4025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetParams));
4026     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigator"), navigator);
4027 }
4028 
RegisterNodeContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4029 void ArkUINativeModule::RegisterNodeContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4030 {
4031     auto nodeContainer = panda::ObjectRef::New(vm);
4032     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "rebuild"),
4033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Rebuild));
4034     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "clean"),
4035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Clean));
4036     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeContainer"), nodeContainer);
4037 }
4038 
RegisterRenderNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4039 void ArkUINativeModule::RegisterRenderNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4040 {
4041     auto renderNode = panda::ObjectRef::New(vm);
4042     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createRenderNode"),
4043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::CreateRenderNode));
4044     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
4045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::AppendChild));
4046     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
4047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::InsertChildAfter));
4048     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
4049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::RemoveChild));
4050     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
4051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::ClearChildren));
4052     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipToFrame"),
4053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetClipToFrame));
4054     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotation"),
4055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRotation));
4056     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowColor"),
4057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowColor));
4058     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowOffset"),
4059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowOffset));
4060     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
4061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetLabel));
4062     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowAlpha"),
4063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowAlpha));
4064     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowElevation"),
4065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowElevation));
4066     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowRadius"),
4067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowRadius));
4068     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
4069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::Invalidate));
4070     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
4071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetScale));
4072     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
4073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBackgroundColor));
4074     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPivot"),
4075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPivot));
4076     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrame"),
4077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetFrame));
4078     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetSize));
4080     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
4081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOpacity));
4082     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
4083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetTranslate));
4084     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
4085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPosition));
4086     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkNodeGroup"),
4087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetMarkNodeGroup));
4088     RegisterRenderNodeBorderAndMaskAttributes(renderNode, vm);
4089     RegisterRenderNodeShapeClipAttributes(renderNode, vm);
4090     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "renderNode"), renderNode);
4091 }
4092 
RegisterFrameNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4093 void ArkUINativeModule::RegisterFrameNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4094 {
4095     auto frameNode = panda::ObjectRef::New(vm);
4096     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isModifiable"),
4097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsModifiable));
4098     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createFrameNode"),
4099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateFrameNode));
4100         frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createTypedFrameNode"),
4101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateTypedFrameNode));
4102     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
4103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::Invalidate));
4104     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
4105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AppendChild));
4106     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
4107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::InsertChildAfter));
4108     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
4109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveChild));
4110     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
4111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::ClearChildren));
4112     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChildrenCount"),
4113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChildrenCount));
4114     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChild"),
4115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChild));
4116     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstChildIndexWithoutExpand"),
4117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstChildIndexWithoutExpand));
4118     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLastChildIndexWithoutExpand"),
4119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLastChildIndexWithoutExpand));
4120     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirst"),
4121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirst));
4122     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNextSibling"),
4123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNextSibling));
4124     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPreviousSibling"),
4125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPreviousSibling));
4126     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getParent"),
4127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetParent));
4128     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "moveTo"),
4129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MoveTo));
4130     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getIdByNodePtr"),
4131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetIdByNodePtr));
4132     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParent"),
4133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParent));
4134     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreen"),
4135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreen));
4136     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindow"),
4137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindow));
4138     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParentWithTransform"),
4139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParentWithTransform));
4140     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreenWithTransform"),
4141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreenWithTransform));
4142     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindowWithTransform"),
4143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindowWithTransform));
4144     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getMeasuredSize"),
4145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetMeasuredSize));
4146     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLayoutPosition"),
4147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLayoutPosition));
4148     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigBorderWidth"),
4149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigBorderWidth));
4150     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigPadding"),
4151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigPadding));
4152     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigMargin"),
4153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigMargin));
4154     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigSize"),
4155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigSize));
4156     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getId"),
4157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetId));
4158     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNodeType"),
4159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNodeType));
4160     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getOpacity"),
4161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetOpacity));
4162     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isVisible"),
4163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsVisible));
4164     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isClipToFrame"),
4165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsClipToFrame));
4166     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isAttached"),
4167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsAttached));
4168     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getInspectorInfo"),
4169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetInspectorInfo));
4170     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMeasuredSize"),
4171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetMeasuredSize));
4172     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutPosition"),
4173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetLayoutPosition));
4174     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "measureNode"),
4175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MeasureNode));
4176     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "layoutNode"),
4177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::LayoutNode));
4178     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNeedsLayout"),
4179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetNeedsLayout));
4180     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
4181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnClick));
4182     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
4183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnTouch));
4184     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
4185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAppear));
4186     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
4187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDisappear));
4188     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
4189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAttach));
4190     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
4191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDetach));
4192     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
4193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnKeyEvent));
4194     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
4195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnFocus));
4196     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
4197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnBlur));
4198     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
4199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHover));
4200     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHoverMove"),
4201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHoverMove));
4202     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
4203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnMouse));
4204     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
4205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnSizeChange));
4206     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnVisibleAreaApproximateChange"),
4207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnVisibleAreaApproximateChange));
4208     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "propertyUpdate"),
4209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::PropertyUpdate));
4210     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameCallback"),
4211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RegisterFrameCallback));
4212     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "markDirty"),
4213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MarkDirty));
4214     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCrossLanguageOptions"),
4215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCrossLanguageOptions));
4216     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCrossLanguageOptions"),
4217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCrossLanguageOptions));
4218     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkIfCanCrossLanguageAttributeSetting"),
4219         panda::FunctionRef::New(
4220             const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CheckIfCanCrossLanguageAttributeSetting));
4221 
4222     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNodeContent"),
4223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateNodeContent));
4224     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "addFrameNodeToNodeContent"),
4225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AddFrameNodeToNodeContent));
4226     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeFrameNodeFromNodeContent"),
4227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveFrameNodeFromNodeContent));
4228 
4229     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstUINode"),
4230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstUINode));
4231     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCustomPropertyCapiByKey"),
4232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCustomPropertyCapiByKey));
4233     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCustomPropertyModiferByKey"),
4234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCustomPropertyModiferByKey));
4235     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRemoveCustomProperties"),
4236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetRemoveCustomProperties));
4237     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "triggerOnReuse"),
4238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::TriggerOnReuse));
4239     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "triggerOnRecycle"),
4240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::TriggerOnRecycle));
4241     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "frameNode"), frameNode);
4242 }
4243 
RegisterLineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4244 void ArkUINativeModule::RegisterLineAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4245 {
4246     auto line = panda::ObjectRef::New(vm);
4247     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStartPoint"),
4248         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetStartPoint));
4249     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStartPoint"),
4250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetStartPoint));
4251     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEndPoint"),
4252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetEndPoint));
4253     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEndPoint"),
4254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetEndPoint));
4255     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "line"), line);
4256 }
4257 
RegisterPathAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4258 void ArkUINativeModule::RegisterPathAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4259 {
4260     auto path = panda::ObjectRef::New(vm);
4261     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathCommands"),
4262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::SetPathCommands));
4263     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathCommands"),
4264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::ResetPathCommands));
4265     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "path"), path);
4266 }
4267 
RegisterPolygonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4268 void ArkUINativeModule::RegisterPolygonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4269 {
4270     auto polygon = panda::ObjectRef::New(vm);
4271     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPolygonPoints"),
4272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::SetPolygonPoints));
4273     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPolygonPoints"),
4274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::ResetPolygonPoints));
4275     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polygon"), polygon);
4276 }
4277 
RegisterPolylineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4278 void ArkUINativeModule::RegisterPolylineAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4279 {
4280     auto polyline = panda::ObjectRef::New(vm);
4281     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPoints"),
4282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::SetPoints));
4283     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPoints"),
4284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::ResetPoints));
4285     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polyline"), polyline);
4286 }
4287 
RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4288 void ArkUINativeModule::RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4289 {
4290     auto sideBarContainer = panda::ObjectRef::New(vm);
4291     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarWidth"),
4292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarWidth));
4293     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarWidth"),
4294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarWidth));
4295     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinSideBarWidth"),
4296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinSideBarWidth));
4297     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinSideBarWidth"),
4298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinSideBarWidth));
4299     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlButton"),
4300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetControlButton));
4301     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlButton"),
4302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetControlButton));
4303     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowControlButton"),
4304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowControlButton));
4305     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowControlButton"),
4306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowControlButton));
4307     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHide"),
4308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetAutoHide));
4309     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHide"),
4310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetAutoHide));
4311     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxSideBarWidth"),
4312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMaxSideBarWidth));
4313     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxSideBarWidth"),
4314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMaxSideBarWidth));
4315     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
4316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinContentWidth));
4317     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
4318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinContentWidth));
4319     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarPosition"),
4320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarPosition));
4321     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarPosition"),
4322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarPosition));
4323     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSideBar"),
4324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowSideBar));
4325     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSideBar"),
4326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowSideBar));
4327     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
4328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetDivider));
4329     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
4330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetDivider));
4331     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "sideBarContainer"), sideBarContainer);
4332 }
4333 
RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4334 void ArkUINativeModule::RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4335 {
4336 #ifndef ARKUI_WEARABLE
4337     auto calendarPicker = panda::ObjectRef::New(vm);
4338     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
4339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetTextStyle));
4340     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
4341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetTextStyle));
4342     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAlign"),
4343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetEdgeAlign));
4344     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAlign"),
4345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetEdgeAlign));
4346     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerPadding"),
4347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerPadding));
4348     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerPadding"),
4349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerPadding));
4350     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorder"),
4351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorder));
4352     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorder"),
4353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorder));
4354     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerHeight"),
4355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerHeight));
4356     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerHeight"),
4357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerHeight));
4358     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderColor"),
4359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderColor));
4360     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderColor"),
4361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderColor));
4362     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderRadius"),
4363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderRadius));
4364     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderRadius"),
4365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderRadius));
4366     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerMarkToday"),
4367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerMarkToday));
4368     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerMarkToday"),
4369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerMarkToday));
4370     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerOnChange"),
4371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerOnChange));
4372     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerOnChange"),
4373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerOnChange));
4374     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "calendarPicker"), calendarPicker);
4375 #endif
4376 }
4377 
RegisterMenuItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4378 void ArkUINativeModule::RegisterMenuItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4379 {
4380     auto menuitem = panda::ObjectRef::New(vm);
4381     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemSelected"),
4382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetMenuItemSelected));
4383     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemSelected"),
4384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetMenuItemSelected));
4385     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFontColor"),
4386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFontColor));
4387     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFontColor"),
4388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFontColor));
4389     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFontColor"),
4390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFontColor));
4391     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFontColor"),
4392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFontColor));
4393     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFont"),
4394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFont));
4395     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFont"),
4396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFont));
4397     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectIcon"),
4398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetSelectIcon));
4399     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectIcon"),
4400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetSelectIcon));
4401     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
4402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetOnChange));
4403     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
4404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetOnChange));
4405     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFont"),
4406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFont));
4407     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFont"),
4408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFont));
4409     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menuitem"), menuitem);
4410 }
4411 
RegisterMenuAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4412 void ArkUINativeModule::RegisterMenuAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4413 {
4414     auto menu = panda::ObjectRef::New(vm);
4415     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuFontColor"),
4416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuFontColor));
4417     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuFontColor"),
4418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuFontColor));
4419     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFont));
4421     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFont));
4423     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadius"),
4424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetRadius));
4425     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadius"),
4426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetRadius));
4427     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetWidth));
4429     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetWidth));
4431     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemDivider"),
4432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemDivider));
4433     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemDivider"),
4434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemDivider));
4435     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemGroupDivider"),
4436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemGroupDivider));
4437     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemGroupDivider"),
4438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemGroupDivider));
4439     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubMenuExpandingMode"),
4440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetSubMenuExpandingMode));
4441     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubMenuExpandingMode"),
4442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetSubMenuExpandingMode));
4443     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFontSize));
4445     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFontSize));
4447     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menu"), menu);
4448 }
4449 
RegisterTabAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4450 void ArkUINativeModule::RegisterTabAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4451 {
4452     auto tabs = panda::ObjectRef::New(vm);
4453     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarMode"),
4454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarMode));
4455     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarMode"),
4456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarMode));
4457     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollableBarModeOptions"),
4458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollableBarModeOptions));
4459     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollableBarModeOptions"),
4460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollableBarModeOptions));
4461     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarGridAlign"),
4462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarGridAlign));
4463     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarGridAlign"),
4464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarGridAlign));
4465     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
4466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetDivider));
4467     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
4468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetDivider));
4469     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetFadingEdge));
4471     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetFadingEdge));
4473     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabOnUnselected"),
4474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabOnUnselected));
4475     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabOnUnselected"),
4476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabOnUnselected));
4477     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundColor"),
4478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundColor));
4479     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundColor"),
4480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundColor));
4481     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundBlurStyle"),
4482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundBlurStyle));
4483     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundBlurStyle"),
4484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundBlurStyle));
4485     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundEffect"),
4486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundEffect));
4487     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundEffect"),
4488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundEffect));
4489     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarOverlap"),
4490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarOverlap));
4491     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarOverlap"),
4492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarOverlap));
4493     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIsVertical"),
4494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetIsVertical));
4495     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIsVertical"),
4496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetIsVertical));
4497     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarWidth"),
4498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarWidth));
4499     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarWidth"),
4500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarWidth));
4501     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarPosition"),
4502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarPosition));
4503     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarPosition"),
4504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarPosition));
4505     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabsOptionsIndex"),
4506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabsOptionsIndex));
4507     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabsOptionsIndex"),
4508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabsOptionsIndex));
4509     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabsOptionsController"),
4510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabsOptionsController));
4511     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabsOptionsController"),
4512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabsOptionsController));
4513     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollable));
4515     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollable));
4517     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarHeight"),
4518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarHeight));
4519     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarHeight"),
4520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarHeight));
4521     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarAdaptiveHeight"),
4522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarAdaptiveHeight));
4523     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarAdaptiveHeight"),
4524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarAdaptiveHeight));
4525     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimationDuration"),
4526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimationDuration));
4527     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimationDuration"),
4528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimationDuration));
4529     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarPosition"),
4530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarPosition));
4531     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarPosition"),
4532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarPosition));
4533     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabClip"),
4534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabClip));
4535     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabClip"),
4536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabClip));
4537     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabEdgeEffect"),
4538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabEdgeEffect));
4539     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabEdgeEffect"),
4540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabEdgeEffect));
4541     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabPageFlipMode"),
4542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabPageFlipMode));
4543     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabPageFlipMode"),
4544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabPageFlipMode));
4545     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabWidth"),
4546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetWidthAuto));
4547     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabWidth"),
4548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetWidthAuto));
4549     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabHeight"),
4550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetHeightAuto));
4551     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabHeight"),
4552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetHeightAuto));
4553     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimateMode"),
4554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimateMode));
4555     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimateMode"),
4556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimateMode));
4557     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabsOnSelected"),
4558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabsOnSelected));
4559     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabsOnSelected"),
4560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabsOnSelected));
4561     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedMaxCount"),
4562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetCachedMaxCount));
4563     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedMaxCount"),
4564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetCachedMaxCount));
4565     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabs"), tabs);
4566 }
4567 
4568 #ifndef ARKUI_WEARABLE
RegisterStepperItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4569 void ArkUINativeModule::RegisterStepperItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4570 {
4571     auto stepperItem = panda::ObjectRef::New(vm);
4572     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextLabel"),
4573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetNextLabel));
4574     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextLabel"),
4575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetNextLabel));
4576     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrevLabel"),
4577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetPrevLabel));
4578     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrevLabel"),
4579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetPrevLabel));
4580     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStatus"),
4581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetStatus));
4582     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStatus"),
4583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetStatus));
4584     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stepperItem"), stepperItem);
4585 }
4586 #endif
4587 
RegisterTabContentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4588 void ArkUINativeModule::RegisterTabContentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4589 {
4590     auto tabContent = panda::ObjectRef::New(vm);
4591     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBar"),
4592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabBar));
4593     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBar"),
4594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabBar));
4595     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentWidth"),
4596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentWidth));
4597     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentHeight"),
4598         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentHeight));
4599     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentSize"),
4600         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentSize));
4601     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentWidth"),
4602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentWidth));
4603     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentHeight"),
4604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentHeight));
4605     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentSize"),
4606         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentSize));
4607     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabContent"), tabContent);
4608 }
4609 
RegisterRefreshAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4610 void ArkUINativeModule::RegisterRefreshAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4611 {
4612     auto refresh = panda::ObjectRef::New(vm);
4613     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRefreshOffset"),
4614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetRefreshOffset));
4615     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRefreshOffset"),
4616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetRefreshOffset));
4617     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullToRefresh"),
4618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullToRefresh));
4619     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullToRefresh"),
4620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullToRefresh));
4621     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullDownRatio"),
4622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullDownRatio));
4623     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullDownRatio"),
4624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullDownRatio));
4625     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "refresh"), refresh);
4626 }
4627 
RegisterHyperlinkAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4628 void ArkUINativeModule::RegisterHyperlinkAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4629 {
4630     auto hyperlink = panda::ObjectRef::New(vm);
4631     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4632         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetColor));
4633     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetColor));
4635     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
4636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetDraggable));
4637     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
4638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetDraggable));
4639     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
4640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetResponseRegion));
4641     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
4642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetResponseRegion));
4643     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "hyperlink"), hyperlink);
4644 }
4645 
4646 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
RegisterFormAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4647 void ArkUINativeModule::RegisterFormAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4648 {
4649     auto formComponent = panda::ObjectRef::New(vm);
4650 #ifdef PREVIEW
4651     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4653     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4655     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4657     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4659     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4661     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4663     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4664         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4665     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4666         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4667     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4668         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4669     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4670         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4671 #else
4672     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetVisibility));
4674     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetVisibility));
4676     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::AllowUpdate));
4678     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::DisallowUpdate));
4680     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetDimension));
4682     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetDimension));
4684     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetModuleName));
4686     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetModuleName));
4688     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetSize));
4690     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetSize));
4692 #endif
4693     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "formComponent"), formComponent);
4694 }
4695 #endif
4696 
RegisterDatePickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4697 void ArkUINativeModule::RegisterDatePickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4698 {
4699     auto datePicker = panda::ObjectRef::New(vm);
4700     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
4701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetSelectedTextStyle));
4702     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
4703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetSelectedTextStyle));
4704     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
4705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetTextStyle));
4706     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
4707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetTextStyle));
4708     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
4709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDisappearTextStyle));
4710     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
4711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDisappearTextStyle));
4712     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLunar"),
4713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetLunar));
4714     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLunar"),
4715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetLunar));
4716     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
4717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetBackgroundColor));
4718     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
4719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetBackgroundColor));
4720     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
4721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetEnableHapticFeedback));
4722     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
4723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetEnableHapticFeedback));
4724     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDatePickerOnChange"),
4725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDatePickerOnChange));
4726     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDatePickerOnChange"),
4727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDatePickerOnChange));
4728     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDatePickerOnDateChange"),
4729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDatePickerOnDateChange));
4730     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDatePickerOnDateChange"),
4731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDatePickerOnDateChange));
4732     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "datePicker"), datePicker);
4733     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDigitalCrownSensitivity"),
4734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDigitalCrownSensitivity));
4735     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDigitalCrownSensitivity"),
4736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDigitalCrownSensitivity));
4737 }
4738 
RegisterWaterFlowAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4739 void ArkUINativeModule::RegisterWaterFlowAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4740 {
4741     auto waterflow = panda::ObjectRef::New(vm);
4742     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
4743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsTemplate));
4744     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
4745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsTemplate));
4746     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
4747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsTemplate));
4748     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
4749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsTemplate));
4750     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEnableScrollInteraction));
4752     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEnableScrollInteraction));
4754     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
4755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsGap));
4756     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
4757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsGap));
4758     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
4759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsGap));
4760     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
4761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsGap));
4762     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemConstraintSize"),
4763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetItemConstraintSize));
4764     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemConstraintSize"),
4765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetItemConstraintSize));
4766     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
4767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetLayoutDirection));
4768     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
4769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetLayoutDirection));
4770     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetNestedScroll));
4772     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetNestedScroll));
4774     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFriction));
4776     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFriction));
4778     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBar));
4780     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBar));
4782     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarWidth));
4784     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarWidth));
4786     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarColor));
4788     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarColor));
4790     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetCachedCount));
4792     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetCachedCount));
4794     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWaterFlowInitialize"),
4795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetWaterFlowInitialize));
4796     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWaterFlowInitialize"),
4797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetWaterFlowInitialize));
4798     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollFrameBegin"),
4799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollFrameBegin));
4800     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollFrameBegin"),
4801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollFrameBegin));
4802     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillScroll"),
4803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnWillScroll));
4804     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillScroll"),
4805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnWillScroll));
4806     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidScroll"),
4807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnDidScroll));
4808     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidScroll"),
4809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnDidScroll));
4810     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
4811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachStart));
4812     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
4813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachStart));
4814     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
4815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachEnd));
4816     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
4817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachEnd));
4818     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStart"),
4819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollStart));
4820     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStart"),
4821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollStart));
4822     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
4823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnScrollStop));
4824     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
4825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnScrollStop));
4826     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollIndex"),
4827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetOnWaterFlowScrollIndex));
4828     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollIndex"),
4829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetOnWaterFlowScrollIndex));
4830     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "waterFlow"), waterflow);
4831 }
4832 
RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4833 void ArkUINativeModule::RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4834 {
4835     auto alphabetIndexer = panda::ObjectRef::New(vm);
4836     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemFont"),
4837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemFont));
4838     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemFont"),
4839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemFont));
4840     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedFont"),
4841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedFont));
4842     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedFont"),
4843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedFont));
4844     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupFont"),
4845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupFont));
4846     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupFont"),
4847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupFont));
4848     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetFont));
4850     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetFont));
4852     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBackgroundColor"),
4853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBackgroundColor));
4854     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBackgroundColor"),
4855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBackgroundColor));
4856     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetColor));
4858     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetColor));
4860     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupColor"),
4861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupColor));
4862     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupColor"),
4863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupColor));
4864     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
4865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedColor));
4866     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
4867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedColor));
4868     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackground"),
4869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackground));
4870     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackground"),
4871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackground));
4872     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
4873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedBackgroundColor));
4874     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
4875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedBackgroundColor));
4876     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupUnselectedColor"),
4877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupUnselectedColor));
4878     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupUnselectedColor"),
4879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupUnselectedColor));
4880     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupSelectedColor"),
4881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupSelectedColor));
4882     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupSelectedColor"),
4883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupSelectedColor));
4884     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignStyle"),
4885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAlignStyle));
4886     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignStyle"),
4887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAlignStyle));
4888     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUsingPopup"),
4889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetUsingPopup));
4890     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUsingPopup"),
4891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetUsingPopup));
4892     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
4893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelected));
4894     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
4895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelected));
4896     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemSize"),
4897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemSize));
4898     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemSize"),
4899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemSize));
4900     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupPosition"),
4901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupPosition));
4902     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupPosition"),
4903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupPosition));
4904     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBorderRadius"),
4905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBorderRadius));
4906     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBorderRadius"),
4907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBorderRadius));
4908     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemBorderRadius"),
4909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemBorderRadius));
4910     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemBorderRadius"),
4911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemBorderRadius));
4912     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackgroundBlurStyle"),
4913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackgroundBlurStyle));
4914     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackgroundBlurStyle"),
4915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackgroundBlurStyle));
4916     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupTitleBackground"),
4917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupTitleBackground));
4918     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupTitleBackground"),
4919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupTitleBackground));
4920     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdaptiveWidth"),
4921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAdaptiveWidth));
4922     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdaptiveWidth"),
4923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAdaptiveWidth));
4924     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoCollapse"),
4925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAutoCollapse));
4926     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoCollapse"),
4927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAutoCollapse));
4928     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
4929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetEnableHapticFeedback));
4930     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
4931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetEnableHapticFeedback));
4932     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "alphabetIndexer"), alphabetIndexer);
4933 }
4934 
RegisterGaugeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4935 void ArkUINativeModule::RegisterGaugeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4936 {
4937     auto gauge = panda::ObjectRef::New(vm);
4938     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeVaule"),
4939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeValue));
4940     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeVaule"),
4941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeValue));
4942     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStartAngle"),
4943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStartAngle));
4944     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStartAngle"),
4945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStartAngle));
4946     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeEndAngle"),
4947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeEndAngle));
4948     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeEndAngle"),
4949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeEndAngle));
4950     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStrokeWidth"),
4951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStrokeWidth));
4952     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStrokeWidth"),
4953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStrokeWidth));
4954     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeTrackShadow"),
4955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeTrackShadow));
4956     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeTrackShadow"),
4957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeTrackShadow));
4958     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeIndicator"),
4959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeIndicator));
4960     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeIndicator"),
4961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeIndicator));
4962     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeColors"),
4963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetColors));
4964     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeColors"),
4965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetColors));
4966     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetContentModifierBuilder));
4968     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugePrivacySensitive"),
4969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugePrivacySensitive));
4970     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugePrivacySensitive"),
4971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugePrivacySensitive));
4972     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gauge"), gauge);
4973 }
RegisterMarqueeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4974 void ArkUINativeModule::RegisterMarqueeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4975 {
4976     auto marquee = panda::ObjectRef::New(vm);
4977     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowScale"),
4978         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetAllowScale));
4979     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowScale"),
4980         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetAllowScale));
4981     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4982         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontWeight));
4983     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4984         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontWeight));
4985     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
4986         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontFamily));
4987     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
4988         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontFamily));
4989     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontSize));
4991     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontSize));
4993     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontColor));
4995     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontColor));
4997     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeUpdateStrategy"),
4998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeUpdateStrategy));
4999     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeUpdateStrategy"),
5000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeUpdateStrategy));
5001     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnStart"),
5002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnStart));
5003     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnStart"),
5004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnStart));
5005     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnBounce"),
5006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnBounce));
5007     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnBounce"),
5008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnBounce));
5009     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnFinish"),
5010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnFinish));
5011     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnFinish"),
5012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnFinish));
5013     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialize"),
5014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetInitialize));
5015     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "marquee"), marquee);
5016 }
5017 
RegisterDataPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5018 void ArkUINativeModule::RegisterDataPanelAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5019 {
5020     auto dataPanel = panda::ObjectRef::New(vm);
5021     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCloseEffect"),
5022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetCloseEffect));
5023     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCloseEffect"),
5024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetCloseEffect));
5025     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackBackgroundColor"),
5026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelTrackBackgroundColor));
5027     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackBackgroundColor"),
5028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelTrackBackgroundColor));
5029     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelStrokeWidth"),
5030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelStrokeWidth));
5031     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelStrokeWidth"),
5032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelStrokeWidth));
5033     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelValueColors"),
5034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetValueColors));
5035     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelValueColors"),
5036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetValueColors));
5037     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackShadow"),
5038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetTrackShadow));
5039     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackShadow"),
5040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetTrackShadow));
5041     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetContentModifierBuilder));
5043     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "dataPanel"), dataPanel);
5044 }
5045 
RegisterScrollableAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5046 void ArkUINativeModule::RegisterScrollableAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5047 {
5048     auto scrollable = panda::ObjectRef::New(vm);
5049     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentClip"),
5050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetContentClip));
5051     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentClip"),
5052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetContentClip));
5053     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
5054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetEdgeEffect));
5055     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
5056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetEdgeEffect));
5057     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
5058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetFadingEdge));
5059     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
5060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetFadingEdge));
5061     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
5062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachStart));
5063     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
5064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachStart));
5065     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
5066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachEnd));
5067     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
5068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachEnd));
5069     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
5070         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollableBridge::SetFlingSpeedLimit));
5071     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
5072         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollableBridge::ResetFlingSpeedLimit));
5073     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackToTop"),
5074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetBackToTop));
5075     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackToTop"),
5076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetBackToTop));
5077     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scrollable"), scrollable);
5078 }
5079 
RegisterScrollAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5080 void ArkUINativeModule::RegisterScrollAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5081 {
5082     auto scroll = panda::ObjectRef::New(vm);
5083     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollInitialize"),
5084         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollInitialize));
5085     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollInitialize"),
5086         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollInitialize));
5087     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
5088         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetNestedScroll));
5089     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
5090         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetNestedScroll));
5091     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
5092         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnableScroll));
5093     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
5094         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnableScroll));
5095     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
5096         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFriction));
5097     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
5098         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFriction));
5099     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnap"),
5100         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollSnap));
5101     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnap"),
5102         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollSnap));
5103     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
5104         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBar));
5105     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
5106         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBar));
5107     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
5108         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollable));
5109     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
5110         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollable));
5111     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
5112         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarColor));
5113     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
5114         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarColor));
5115     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
5116         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarWidth));
5117     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
5118         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarWidth));
5119     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePaging"),
5120         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnablePaging));
5121     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePaging"),
5122         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnablePaging));
5123     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialOffset"),
5124         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetInitialOffset));
5125     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialOffset"),
5126         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetInitialOffset));
5127     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStart"),
5128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStart));
5129     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStart"),
5130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStart));
5131     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEnd"),
5132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEnd));
5133     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEnd"),
5134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEnd));
5135     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStop"),
5136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStop));
5137     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStop"),
5138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStop));
5139     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScroll"),
5140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScroll));
5141     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScroll"),
5142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScroll));
5143     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEdge"),
5144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEdge));
5145     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEdge"),
5146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEdge));
5147     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnDidScroll"),
5148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnDidScroll));
5149     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnDidScroll"),
5150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnDidScroll));
5151     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnWillScroll"),
5152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnWillScroll));
5153     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnWillScroll"),
5154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnWillScroll));
5155     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollFrameBegin"),
5156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollFrameBegin));
5157     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollFrameBegin"),
5158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollFrameBegin));
5159     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scroll"), scroll);
5160 }
5161 
RegisterGridItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5162 void ArkUINativeModule::RegisterGridItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5163 {
5164     auto gridItem = panda::ObjectRef::New(vm);
5165     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelectable"),
5166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelectable));
5167     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelectable"),
5168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelectable));
5169     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelected"),
5170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelected));
5171     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelected"),
5172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelected));
5173     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowStart"),
5174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowStart));
5175     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowStart"),
5176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowStart));
5177     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowEnd"),
5178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowEnd));
5179     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowEnd"),
5180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowEnd));
5181     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnStart"),
5182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnStart));
5183     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnStart"),
5184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnStart));
5185     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnEnd"),
5186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnEnd));
5187     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnEnd"),
5188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnEnd));
5189     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemOptions"),
5190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemOptions));
5191     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridItem"), gridItem);
5192 }
5193 
RegisterProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5194 void ArkUINativeModule::RegisterProgressAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5195 {
5196     auto progress = panda::ObjectRef::New(vm);
5197     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressInitialize"),
5198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressInitialize));
5199     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressInitialize"),
5200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressInitialize));
5201     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressValue"),
5202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressValue));
5203     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressValue"),
5204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressValue));
5205     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressColor"),
5206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressColor));
5207     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressColor"),
5208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressColor));
5209     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressStyle"),
5210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressStyle));
5211     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressStyle"),
5212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressStyle));
5213     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressBackgroundColor"),
5214         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::SetProgressBackgroundColor));
5215     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressBackgroundColor"),
5216         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::ResetProgressBackgroundColor));
5217     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetContentModifierBuilder));
5219     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressPrivacySensitive"),
5220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressPrivacySensitive));
5221     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressPrivacySensitive"),
5222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressPrivacySensitive));
5223     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "progress"), progress);
5224 }
5225 
5226 #ifdef PLUGIN_COMPONENT_SUPPORTED
RegisterPluginAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5227 void ArkUINativeModule::RegisterPluginAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5228 {
5229     auto plugin = panda::ObjectRef::New(vm);
5230     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
5231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetSize));
5232     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
5233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetSize));
5234     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
5235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetWidth));
5236     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
5237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetWidth));
5238     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
5239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetHeight));
5240     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
5241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetHeight));
5242     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "plugin"), plugin);
5243 }
5244 #endif
5245 
RegisterCommonShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5246 void ArkUINativeModule::RegisterCommonShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5247 {
5248     auto commonShape = panda::ObjectRef::New(vm);
5249     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashArray"),
5250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashArray));
5251     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashArray"),
5252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashArray));
5253     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeMiterLimit"),
5254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeMiterLimit));
5255     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeMiterLimit"),
5256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeMiterLimit));
5257     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillOpacity"),
5258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFillOpacity));
5259     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillOpacity"),
5260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFillOpacity));
5261     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeOpacity"),
5262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeOpacity));
5263     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeOpacity"),
5264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeOpacity));
5265     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
5266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeWidth));
5267     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
5268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeWidth));
5269     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAntiAlias"),
5270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetAntiAlias));
5271     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAntiAlias"),
5272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetAntiAlias));
5273     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStroke"),
5274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStroke));
5275     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStroke"),
5276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStroke));
5277     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFill"),
5278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFill));
5279     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFill"),
5280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFill));
5281     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashOffset"),
5282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashOffset));
5283     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashOffset"),
5284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashOffset));
5285     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineCap"),
5286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineCap));
5287     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineCap"),
5288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineCap));
5289     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineJoin"),
5290         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineJoin));
5291     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineJoin"),
5292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineJoin));
5293     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
5294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetHeight));
5295     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
5296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetHeight));
5297     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
5298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetWidth));
5299     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
5300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetWidth));
5301     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
5302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetForegroundColor));
5303     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
5304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetForegroundColor));
5305     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "commonShape"), commonShape);
5306 }
5307 
RegisterShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5308 void ArkUINativeModule::RegisterShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5309 {
5310     auto shape = panda::ObjectRef::New(vm);
5311     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeViewPort"),
5312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetViewPort));
5313     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeViewPort"),
5314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetViewPort));
5315     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeMesh"),
5316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetMesh));
5317     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeMesh"),
5318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetMesh));
5319     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "shape"), shape);
5320 }
5321 
RegisterRectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5322 void ArkUINativeModule::RegisterRectAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5323 {
5324     auto rect = panda::ObjectRef::New(vm);
5325     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusWidth"),
5326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusWidth));
5327     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusWidth"),
5328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusWidth));
5329     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusHeight"),
5330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusHeight));
5331     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusHeight"),
5332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusHeight));
5333     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadius"),
5334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadius));
5335     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadius"),
5336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadius));
5337     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rect"), rect);
5338 }
5339 
RegisterSwiperAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5340 void ArkUINativeModule::RegisterSwiperAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5341 {
5342     auto swiper = panda::ObjectRef::New(vm);
5343     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInitialize"),
5344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInitialize));
5345     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInitialize"),
5346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInitialize));
5347     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperNextMargin"),
5348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperNextMargin));
5349     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperNextMargin"),
5350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperNextMargin));
5351     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPrevMargin"),
5352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPrevMargin));
5353     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPrevMargin"),
5354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPrevMargin));
5355     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayCount"),
5356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayCount));
5357     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayCount"),
5358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayCount));
5359     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperSwipeByGroup"),
5360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperSwipeByGroup));
5361     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperSwipeByGroup"),
5362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperSwipeByGroup));
5363     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayArrow"),
5364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayArrow));
5365     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayArrow"),
5366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayArrow));
5367     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCurve"),
5368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCurve));
5369     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCurve"),
5370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCurve));
5371     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnChange"),
5372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnChange));
5373     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnChange"),
5374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnChange));
5375     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnSelected"),
5376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnSelected));
5377     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnSelected"),
5378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnSelected));
5379     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisableSwipe"),
5380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisableSwipe));
5381     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisableSwipe"),
5382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisableSwipe));
5383     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEffectMode"),
5384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEffectMode));
5385     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEffectMode"),
5386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEffectMode));
5387     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCachedCount"),
5388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCachedCount));
5389     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCachedCount"),
5390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCachedCount));
5391     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIsShown"),
5392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIsShown));
5393     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIsShown"),
5394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIsShown));
5395     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayMode"),
5396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayMode));
5397     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayMode"),
5398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayMode));
5399     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperItemSpace"),
5400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperItemSpace));
5401     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperItemSpace"),
5402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperItemSpace));
5403     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperVertical"),
5404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperVertical));
5405     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperVertical"),
5406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperVertical));
5407     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperLoop"),
5408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperLoop));
5409     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperLoop"),
5410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperLoop));
5411     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInterval"),
5412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInterval));
5413     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInterval"),
5414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInterval));
5415     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperAutoPlay"),
5416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperAutoPlay));
5417     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperAutoPlay"),
5418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperAutoPlay));
5419     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndex"),
5420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndex));
5421     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndex"),
5422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndex));
5423     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndicator"),
5424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndicator));
5425     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndicator"),
5426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndicator));
5427     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDuration"),
5428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDuration));
5429     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDuration"),
5430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDuration));
5431     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEnabled"),
5432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEnabled));
5433     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEnabled"),
5434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEnabled));
5435     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
5436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetNestedScroll));
5437     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
5438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetNestedScroll));
5439     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationStart"),
5440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationStart));
5441     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationStart"),
5442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationStart));
5443     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationEnd"),
5444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationEnd));
5445     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationEnd"),
5446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationEnd));
5447     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnGestureSwipe"),
5448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnGestureSwipe));
5449     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnGestureSwipe"),
5450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnGestureSwipe));
5451     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnUnselected"),
5452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnUnselected));
5453     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnUnselected"),
5454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnUnselected));
5455     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorInteractive"),
5456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetIndicatorInteractive));
5457     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorInteractive"),
5458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetIndicatorInteractive));
5459     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCustomContentTransition"),
5460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCustomContentTransition));
5461     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCustomContentTransition"),
5462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCustomContentTransition));
5463     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentDidScroll"),
5464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetOnContentDidScroll));
5465     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentDidScroll"),
5466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetOnContentDidScroll));
5467     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPageFlipMode"),
5468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPageFlipMode));
5469     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPageFlipMode"),
5470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPageFlipMode));
5471     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentWillScroll"),
5472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnContentWillScroll));
5473     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentWillScroll"),
5474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnContentWillScroll));
5475     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "swiper"), swiper);
5476 }
5477 
RegisterListItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5478 void ArkUINativeModule::RegisterListItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5479 {
5480     auto listItem = panda::ObjectRef::New(vm);
5481     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemSelected"),
5482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetListItemSelected));
5483     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemSelected"),
5484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetListItemSelected));
5485     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectable"),
5486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSelectable));
5487     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectable"),
5488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSelectable));
5489     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwipeAction"),
5490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSwipeAction));
5491     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwipeAction"),
5492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSwipeAction));
5493     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItem"), listItem);
5494 }
5495 
RegisterListAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5496 void ArkUINativeModule::RegisterListAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5497 {
5498     auto list = panda::ObjectRef::New(vm);
5499     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
5500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEditMode));
5501     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
5502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEditMode));
5503     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
5504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetMultiSelectable));
5505     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
5506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetMultiSelectable));
5507     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimation"),
5508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimation));
5509     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimation"),
5510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimation));
5511     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
5512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetCachedCount));
5513     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
5514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetCachedCount));
5515     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
5516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEnableScrollInteraction));
5517     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
5518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEnableScrollInteraction));
5519     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
5520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
5521     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
5522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
5523     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
5524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
5525     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
5526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
5527     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListDirection"),
5528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListDirection));
5529     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListDirection"),
5530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListDirection));
5531     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListFriction"),
5532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListFriction));
5533     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListFriction"),
5534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListFriction));
5535     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListMaintainVisibleContentPosition"),
5536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListMaintainVisibleContentPosition));
5537     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListMaintainVisibleContentPosition"),
5538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListMaintainVisibleContentPosition));
5539     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListStackFromEnd"),
5540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListStackFromEnd));
5541     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListStackFromEnd"),
5542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListStackFromEnd));
5543     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListNestedScroll"),
5544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListNestedScroll));
5545     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListNestedScroll"),
5546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListNestedScroll));
5547     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBar"),
5548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBar));
5549     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBar"),
5550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBar));
5551     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarWidth"),
5552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarWidth));
5553     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarWidth"),
5554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarWidth));
5555     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarColor"),
5556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarColor));
5557     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarColor"),
5558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarColor));
5559     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignListItem"),
5560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetAlignListItem));
5561     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignListItem"),
5562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetAlignListItem));
5563     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnapAlign"),
5564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetScrollSnapAlign));
5565     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnapAlign"),
5566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetScrollSnapAlign));
5567     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentStartOffset"),
5568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentStartOffset));
5569     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentStartOffset"),
5570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentStartOffset));
5571     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentEndOffset"),
5572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentEndOffset));
5573     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentEndOffset"),
5574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentEndOffset));
5575     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetDivider));
5577     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5578         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetDivider));
5579     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimationOptions"),
5580         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimationOptions));
5581     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimationOptions"),
5582         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimationOptions));
5583     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListLanes"),
5584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListLanes));
5585     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListLanes"),
5586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListLanes));
5587     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListChildrenMainSize"),
5588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListChildrenMainSize));
5589     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListChildrenMainSize"),
5590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListChildrenMainSize));
5591     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
5592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSpace));
5593     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
5594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSpace));
5595     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
5596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialIndex));
5597     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
5598         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialIndex));
5599     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialScroller"),
5600         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialScroller));
5601     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialScroller"),
5602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialScroller));
5603     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollIndex"),
5604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollIndex));
5605     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollIndex"),
5606         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollIndex));
5607     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollVisibleContentChange"),
5608         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollVisibleContentChange));
5609     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollVisibleContentChange"),
5610         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollVisibleContentChange));
5611     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemMove"),
5612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemMove));
5613     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemMove"),
5614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemMove));
5615     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragStart"),
5616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragStart));
5617     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragStart"),
5618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragStart));
5619     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragEnter"),
5620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragEnter));
5621     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragEnter"),
5622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragEnter));
5623     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragMove"),
5624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragMove));
5625     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragMove"),
5626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragMove));
5627     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragLeave"),
5628         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragLeave));
5629     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragLeave"),
5630         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragLeave));
5631     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDrop"),
5632         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDrop));
5633     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDrop"),
5634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDrop));
5635     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStart"),
5636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStart));
5637     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStart"),
5638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStart));
5639     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
5640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStop));
5641     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
5642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStop));
5643     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollFrameBegin"),
5644         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollFrameBegin));
5645     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollFrameBegin"),
5646         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollFrameBegin));
5647     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillScroll"),
5648         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListWillScroll));
5649     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillScroll"),
5650         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListWillScroll));
5651     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidScroll"),
5652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListDidScroll));
5653     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidScroll"),
5654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListDidScroll));
5655     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
5656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachStart));
5657     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
5658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachStart));
5659     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
5660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachEnd));
5661     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
5662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachEnd));
5663     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "list"), list);
5664 }
5665 
RegisterListItemGroupAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5666 void ArkUINativeModule::RegisterListItemGroupAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5667 {
5668     auto listItemGroup = panda::ObjectRef::New(vm);
5669     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5670         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetDivider));
5671     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5672         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetDivider));
5673     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupChildrenMainSize"),
5674         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetChildrenMainSize));
5675     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupChildrenMainSize"),
5676         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetChildrenMainSize));
5677     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupInitialize"),
5678         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetListItemGroupInitialize));
5679     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupInitialize"),
5680         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetListItemGroupInitialize));
5681     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItemGroup"), listItemGroup);
5682 }
5683 
5684 #ifdef QRCODEGEN_SUPPORT
RegisterQRCodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5685 void ArkUINativeModule::RegisterQRCodeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5686 {
5687     auto qrcode = panda::ObjectRef::New(vm);
5688     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRColor"),
5689         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRColor));
5690     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRColor"),
5691         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRColor));
5692     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRBackgroundColor"),
5693         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRBackgroundColor));
5694     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRBackgroundColor"),
5695         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRBackgroundColor));
5696     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentOpacity"),
5697         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetContentOpacity));
5698     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentOpacity"),
5699         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetContentOpacity));
5700     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRValue"),
5701         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRValue));
5702     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "qrcode"), qrcode);
5703 }
5704 #endif
5705 
RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5706 void ArkUINativeModule::RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5707 {
5708     auto loadingProgress = panda::ObjectRef::New(vm);
5709     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
5710         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetColor));
5711     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
5712         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetColor));
5713     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableLoading"),
5714         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetEnableLoading));
5715     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableLoading"),
5716         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetEnableLoading));
5717     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
5718         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetForegroundColor));
5719     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
5720         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetForegroundColor));
5721     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5722         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetContentModifierBuilder));
5723     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "loadingProgress"), loadingProgress);
5724 }
5725 
RegisterTextClockAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5726 void ArkUINativeModule::RegisterTextClockAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5727 {
5728     auto textClock = panda::ObjectRef::New(vm);
5729     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5730         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFormat));
5731     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFormat));
5733     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontColor));
5735     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontColor));
5737     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5738         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontSize));
5739     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontSize));
5741     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontStyle));
5743     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontStyle));
5745     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontWeight));
5747     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontWeight));
5749     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFamily));
5751     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFamily));
5753     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5754         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextShadow));
5755     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetTextShadow));
5757     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
5758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFeature));
5759     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
5760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFeature));
5761     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetContentModifierBuilder));
5763     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDateTimeOptions"),
5764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetDateTimeOptions));
5765     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDateTimeOptions"),
5766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetDateTimeOptions));
5767     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockTimeZoneOffset"),
5768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockTimeZoneOffset));
5769     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockController"),
5770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockController));
5771     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockOnDateChange"),
5772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockOnDateChange));
5773     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextClockOnDateChange"),
5774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetTextClockOnDateChange));
5775     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textClock"), textClock);
5776 }
5777 
RegisterTextTimerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5778 void ArkUINativeModule::RegisterTextTimerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5779 {
5780     auto textTimer = panda::ObjectRef::New(vm);
5781     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5782         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontColor));
5783     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5784         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontColor));
5785     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5786         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontSize));
5787     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5788         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontSize));
5789     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5790         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontWeight));
5791     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5792         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontWeight));
5793     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5794         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontStyle));
5795     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5796         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontStyle));
5797     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5798         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontFamily));
5799     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5800         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontFamily));
5801     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5802         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFormat));
5803     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5804         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFormat));
5805     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5806         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetTextShadow));
5807     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5808         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetTextShadow));
5809     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetContentModifierBuilder));
5811     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextTimerOptions"),
5812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetTextTimerOptions));
5813     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextTimerOnTimer"),
5814         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetTextTimerOnTimer));
5815     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextTimerOnTimer"),
5816         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetTextTimerOnTimer));
5817     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textTimer"), textTimer);
5818 }
5819 #ifdef XCOMPONENT_SUPPORTED
RegisterXComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5820 void ArkUINativeModule::RegisterXComponentAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5821 {
5822     auto xComponent = panda::ObjectRef::New(vm);
5823     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setXComponentInitialize"),
5824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetXComponentInitialize));
5825     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetXComponentInitialize"),
5826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetXComponentInitialize));
5827     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
5828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundColor));
5829     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
5830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundColor));
5831     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
5832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOpacity));
5833     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
5834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOpacity));
5835     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
5836         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetGrayscale));
5837     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
5838         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetGrayscale));
5839     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnLoad"),
5840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnLoad));
5841     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnLoad"),
5842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnLoad));
5843     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDestroy"),
5844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnDestroy));
5845     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDestroy"),
5846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnDestroy));
5847     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnalyzer"),
5848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableAnalyzer));
5849     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnalyzer"),
5850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableAnalyzer));
5851     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableSecure"),
5852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableSecure));
5853     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableSecure"),
5854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableSecure));
5855     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHdrBrightness"),
5856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetHdrBrightness));
5857     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHdrBrightness"),
5858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetHdrBrightness));
5859     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableTransparentLayer"),
5860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableTransparentLayer));
5861     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableTransparentLayer"),
5862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableTransparentLayer));
5863     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
5864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetRenderFit));
5865     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
5866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetRenderFit));
5867     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xComponent"), xComponent);
5868 }
5869 
RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5870 void ArkUINativeModule::RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5871 {
5872     auto xcomponentNode = panda::ObjectRef::New(vm);
5873     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "create"),
5874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::Create));
5875     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNode"),
5876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::GetFrameNode));
5877     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnCreateCallback"),
5878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnCreateCallback));
5879     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnDestroyCallback"),
5880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnDestroyCallback));
5881     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "changeRenderType"),
5882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::ChangeRenderType));
5883     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xcomponentNode"), xcomponentNode);
5884 }
5885 #endif
5886 
RegisterResourceAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5887 void ArkUINativeModule::RegisterResourceAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5888 {
5889     auto resource = panda::ObjectRef::New(vm);
5890     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "updateColorMode"),
5891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::UpdateColorMode));
5892     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "restore"),
5893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::Restore));
5894     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getColorValue"),
5895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetColorValue));
5896     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getStringValue"),
5897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetStringValue));
5898     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNumberValue"),
5899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetNumberValue));
5900     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearCache"),
5901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::ClearCache));
5902     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "resource"), resource);
5903 }
5904 
RegisterFlexAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5905 void ArkUINativeModule::RegisterFlexAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5906 {
5907     auto flex = panda::ObjectRef::New(vm);
5908     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexInitialize"),
5909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::SetFlexInitialize));
5910     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexInitialize"),
5911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::ResetFlexInitialize));
5912     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "flex"), flex);
5913 }
5914 
RegisterBadgeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5915 void ArkUINativeModule::RegisterBadgeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5916 {
5917     auto badge = panda::ObjectRef::New(vm);
5918     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithNumber"),
5919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithNumber));
5920     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithString"),
5921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithString));
5922     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "badge"), badge);
5923 }
5924 
RegisterScrollBarAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5925 void ArkUINativeModule::RegisterScrollBarAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5926 {
5927     auto ScrollBar = panda::ObjectRef::New(vm);
5928     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarEnableNestedScroll"),
5929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::SetScrollBarEnableNestedScroll));
5930     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarEnableNestedScroll"),
5931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::ResetScrollBarEnableNestedScroll));
5932     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "ScrollBar"), ScrollBar);
5933 }
5934 
RegisterIndicatorComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5935 void ArkUINativeModule::RegisterIndicatorComponentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5936 {
5937     auto indicatorComponent = panda::ObjectRef::New(vm);
5938     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
5939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetInitialIndex));
5940     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
5941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetInitialIndex));
5942 
5943     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCount"),
5944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetCount));
5945     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCount"),
5946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetCount));
5947 
5948     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
5949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetStyle));
5950     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
5951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetStyle));
5952 
5953     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
5954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetLoop));
5955     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
5956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetLoop));
5957 
5958     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
5959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetVertical));
5960     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
5961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetVertical));
5962 
5963     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
5964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetOnChange));
5965     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
5966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetOnChange));
5967 
5968     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "indicatorComponent"), indicatorComponent);
5969 }
5970 
5971 #ifdef WEB_SUPPORTED
RegisterWebAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5972 void ArkUINativeModule::RegisterWebAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5973 {
5974     auto web = panda::ObjectRef::New(vm);
5975     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJavaScriptAccess"),
5976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetJavaScriptAccess));
5977     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJavaScriptAccess"),
5978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetJavaScriptAccess));
5979     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFileAccess"),
5980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetFileAccessEnabled));
5981     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFileAccess"),
5982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetFileAccessEnabled));
5983     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDomStorageAccess"),
5984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetDomStorageAccessEnabled));
5985     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDomStorageAccess"),
5986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetDomStorageAccessEnabled));
5987     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMixedMode"),
5988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetMixedMode));
5989     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMixedMode"),
5990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetMixedMode));
5991     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZoomAccess"),
5992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetZoomAccessEnabled));
5993     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZoomAccess"),
5994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetZoomAccessEnabled));
5995     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCacheMode"),
5996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetCacheMode));
5997     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCacheMode"),
5998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetCacheMode));
5999     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDarkMode"),
6000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetDarkMode));
6001     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDarkMode"),
6002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetDarkMode));
6003     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiWindowAccess"),
6004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetMultiWindowAccessEnabled));
6005     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiWindowAccess"),
6006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetMultiWindowAccessEnabled));
6007     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowWindowOpenMethod"),
6008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::SetAllowWindowOpenMethod));
6009     web->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowWindowOpenMethod"),
6010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WebBridge::ResetAllowWindowOpenMethod));
6011     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "web"), web);
6012 }
6013 #endif
6014 
RegisterImageAnimatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)6015 void ArkUINativeModule::RegisterImageAnimatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
6016 {
6017     auto imageAnimator = panda::ObjectRef::New(vm);
6018     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setState"),
6019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetState));
6020     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetState"),
6021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetState));
6022     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDuration"),
6023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetDuration));
6024     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDuration"),
6025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetDuration));
6026     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFixedSize"),
6027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFixedSize));
6028     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFixedSize"),
6029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFixedSize));
6030     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillMode"),
6031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFillMode));
6032     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillMode"),
6033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFillMode));
6034     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
6035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetReverse));
6036     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
6037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetReverse));
6038     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImages"),
6039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImages));
6040     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImages"),
6041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImages));
6042     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIterations"),
6043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetIteration));
6044     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIterations"),
6045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetIteration));
6046     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoMonitorInvisibleArea"),
6047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetAutoMonitorInvisibleArea));
6048     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageAnimatorOnStart"),
6049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImageAnimatorOnStart));
6050     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageAnimatorOnStart"),
6051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImageAnimatorOnStart));
6052     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageAnimatorOnPause"),
6053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImageAnimatorOnPause));
6054     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageAnimatorOnPause"),
6055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImageAnimatorOnPause));
6056     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageAnimatorOnRepeat"),
6057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImageAnimatorOnRepeat));
6058     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageAnimatorOnRepeat"),
6059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImageAnimatorOnRepeat));
6060     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageAnimatorOnCancel"),
6061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImageAnimatorOnCancel));
6062     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageAnimatorOnCancel"),
6063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImageAnimatorOnCancel));
6064     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageAnimatorOnFinish"),
6065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImageAnimatorOnFinish));
6066     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageAnimatorOnFinish"),
6067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImageAnimatorOnFinish));
6068     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageAnimator"), imageAnimator);
6069 }
6070 
RegisterLazyVGridLayoutAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)6071 void ArkUINativeModule::RegisterLazyVGridLayoutAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
6072 {
6073     auto lazyGridLayout = panda::ObjectRef::New(vm);
6074     lazyGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
6075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyGridLayoutBridge::SetColumnsGap));
6076     lazyGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
6077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyGridLayoutBridge::ResetColumnsGap));
6078     lazyGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
6079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyGridLayoutBridge::SetRowsGap));
6080     lazyGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
6081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyGridLayoutBridge::ResetRowsGap));
6082     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "lazyGridLayout"), lazyGridLayout);
6083 
6084     auto lazyVGridLayout = panda::ObjectRef::New(vm);
6085     lazyVGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
6086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyVGridLayoutBridge::SetColumnsTemplate));
6087     lazyVGridLayout->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
6088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LazyVGridLayoutBridge::ResetColumnsTemplate));
6089     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "lazyVGridLayout"), lazyVGridLayout);
6090 }
6091 } // namespace OHOS::Ace::NG
6092