• 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 
21 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
22 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_blank_bridge.h"
23 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_button_bridge.h"
24 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkbox_bridge.h"
25 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkboxgroup_bridge.h"
26 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_bridge.h"
27 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_bridge.h"
28 #ifdef MODEL_COMPONENT_SUPPORTED
29 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_component3d_bridge.h"
30 #endif
31 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
32 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_animator_bridge.h"
33 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_counter_bridge.h"
34 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_divider_bridge.h"
35 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_flex_bridge.h"
36 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_bridge.h"
37 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_col_bridge.h"
38 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_row_bridge.h"
39 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_item_bridge.h"
40 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_hyperlink_bridge.h"
41 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_bridge.h"
42 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_bridge.h"
43 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
44 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_span_bridge.h"
45 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_loading_progress_bridge.h"
46 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_bridge.h"
47 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_destination_bridge.h"
48 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_router_bridge.h"
49 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_item_bridge.h"
50 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_date_picker_bridge.h"
51 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigation_bridge.h"
52 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigator_bridge.h"
53 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_adapter_bridge.h"
54 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_panel_bridge.h"
55 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_container_bridge.h"
56 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_pattern_lock_bridge.h"
57 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_progress_bridge.h"
58 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_resource_bridge.h"
59 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_area_bridge.h"
60 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_clock_bridge.h"
61 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_swiper_bridge.h"
62 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_bridge.h"
63 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_input_bridge.h"
64 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_toggle_bridge.h"
65 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_radio_bridge.h"
66 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rating_bridge.h"
67 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
68 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_bridge.h"
69 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_split_bridge.h"
70 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_search_bridge.h"
71 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_select_bridge.h"
72 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stack_bridge.h"
73 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_folder_stack_bridge.h"
74 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_slider_bridge.h"
75 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_span_bridge.h"
76 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_glyph_bridge.h"
77 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_span_bridge.h"
78 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_textpicker_bridge.h"
79 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_timepicker_bridge.h"
80 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rich_editor_bridge.h"
81 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_utils_bridge.h"
82 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_video_bridge.h"
83 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stepper_item_bridge.h"
84 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
85 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabcontent_bridge.h"
86 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabs_bridge.h"
87 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_split_bridge.h"
88 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_line_bridge.h"
89 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_particle_bridge.h"
90 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_path_bridge.h"
91 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polygon_bridge.h"
92 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polyline_bridge.h"
93 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_qrcode_bridge.h"
94 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_side_bar_container_bridge.h"
95 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_calendar_picker_bridge.h"
96 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_water_flow_bridge.h"
97 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_alphabet_indexer_bridge.h"
98 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_data_panel_bridge.h"
99 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_gauge_bridge.h"
100 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scroll_bridge.h"
101 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
102 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_shape_bridge.h"
103 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_shape_bridge.h"
104 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rect_bridge.h"
105 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_group_bridge.h"
106 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_timer_bridge.h"
107 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_frame_node_bridge.h"
108 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_refresh_bridge.h"
109 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_relative_container_bridge.h"
110 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_container_span_bridge.h"
111 #include "bridge/declarative_frontend/engine/js_converter.h"
112 #include "bridge/declarative_frontend/jsview/js_navigation_stack.h"
113 #ifdef PLUGIN_COMPONENT_SUPPORTED
114 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_plugin_bridge.h"
115 #endif
116 #ifdef XCOMPONENT_SUPPORTED
117 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_bridge.h"
118 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_node_bridge.h"
119 #endif
120 #ifdef FORM_SUPPORTED
121 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_form_component_bridge.h"
122 #endif
123 namespace OHOS::Ace::NG {
124 namespace {
RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)125 void RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
126 {
127     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderStyle));
129     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderWidth));
131     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderColor));
133     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderRadius));
135     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectMask"),
136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectMask));
137     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleMask"),
138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleMask));
139     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectMask"),
140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectMask));
141     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalMask"),
142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalMask));
143     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPath"),
144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathMask));
145 }
RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)146 void RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
147 {
148     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectClip"),
149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectClip));
150     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleClip"),
151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleClip));
152     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectClip"),
153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectClip));
154     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalClip"),
155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalClip));
156     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathClip"),
157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathClip));
158 }
159 } // namespace
160 
PreviewMockComponent(ArkUIRuntimeCallInfo * runtimeCallInfo)161 ArkUINativeModuleValue ArkUINativeModule::PreviewMockComponent(ArkUIRuntimeCallInfo* runtimeCallInfo)
162 {
163     EcmaVM* vm = runtimeCallInfo->GetVM();
164     return panda::JSValueRef::Undefined(vm);
165 }
166 
GetFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)167 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
168 {
169     EcmaVM* vm = runtimeCallInfo->GetVM();
170     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
171     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
172     int nodeId = firstArg->ToNumber(vm)->Value();
173     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeById(nodeId);
174     return panda::NativePointerRef::New(vm, nodePtr);
175 }
176 
GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)177 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
178 {
179     EcmaVM* vm = runtimeCallInfo->GetVM();
180     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
181     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
182     int nodeId = firstArg->ToNumber(vm)->Value();
183     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByUniqueId(nodeId);
184     if (nodePtr) {
185         return panda::NativePointerRef::New(vm, nodePtr);
186     }
187 
188     return panda::JSValueRef::Undefined(vm);
189 }
190 
GetPageInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)191 ArkUINativeModuleValue ArkUINativeModule::GetPageInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
192 {
193     EcmaVM* vm = runtimeCallInfo->GetVM();
194     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
195     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
196     int nodeId = firstArg->ToNumber(vm)->Value();
197     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
198     auto pageInfo = panda::ObjectRef::New(vm);
199     CHECK_NULL_RETURN(nodePtr, pageInfo);
200 
201     auto routerPageResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetRouterPageState(nodePtr);
202     if (routerPageResult) {
203         auto jsContext = Framework::JsConverter::ConvertNapiValueToJsVal(routerPageResult->context);
204         Local<JSValueRef> routerPageValues[] = { jsContext->GetLocalHandle(),
205             panda::NumberRef::New(vm, routerPageResult->index),
206             panda::StringRef::NewFromUtf8(vm, routerPageResult->name.c_str()),
207             panda::StringRef::NewFromUtf8(vm, routerPageResult->path.c_str()),
208             panda::NumberRef::New(vm, static_cast<int32_t>(routerPageResult->state)),
209             panda::StringRef::NewFromUtf8(vm, routerPageResult->pageId.c_str()) };
210         const char* routerPageKeys[] = { "context", "index", "name", "path", "state", "pageId" };
211         auto routerPageObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(routerPageKeys), routerPageKeys,
212             routerPageValues);
213         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "routerPageInfo"), routerPageObj);
214     }
215 
216     auto navDestinationResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetNavigationState(nodePtr);
217     if (navDestinationResult) {
218         Local<JSValueRef> navDestinationValues[] = {
219             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navigationId.c_str()),
220             panda::StringRef::NewFromUtf8(vm, navDestinationResult->name.c_str()),
221             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->state)),
222             panda::NumberRef::New(vm, navDestinationResult->index),
223             Framework::JsConverter::ConvertNapiValueToJsVal(navDestinationResult->param)->GetLocalHandle(),
224             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navDestinationId.c_str()) };
225         const char* navDestinationKeys[] = { "navigationId", "name", "state", "index", "param", "navDestinationId" };
226         auto navDestinationObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(navDestinationKeys),
227             navDestinationKeys, navDestinationValues);
228         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestinationInfo"), navDestinationObj);
229     }
230 
231     return pageInfo;
232 }
233 
GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)234 ArkUINativeModuleValue ArkUINativeModule::GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
235 {
236     EcmaVM* vm = runtimeCallInfo->GetVM();
237     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
238     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
239     int nodeId = firstArg->ToNumber(vm)->Value();
240     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
241     auto defaultResult = panda::JSValueRef::Undefined(vm);
242     CHECK_NULL_RETURN(nodePtr, defaultResult);
243 
244     auto pipeline = NG::PipelineContext::GetCurrentContext();
245     CHECK_NULL_RETURN(pipeline, defaultResult);
246     auto navigationMgr = pipeline->GetNavigationManager();
247     CHECK_NULL_RETURN(navigationMgr, defaultResult);
248     auto result = navigationMgr->GetNavigationInfo(nodePtr);
249     CHECK_NULL_RETURN(result, defaultResult);
250     auto jsStack = AceType::DynamicCast<Framework::JSNavigationStack>(result->pathStack.Upgrade());
251     CHECK_NULL_RETURN(jsStack, defaultResult);
252     Framework::JSRef<Framework::JSObject> navPathStackObj = jsStack->GetDataSourceObj();
253     CHECK_NULL_RETURN(!navPathStackObj->IsEmpty(), defaultResult);
254     auto obj = panda::ObjectRef::New(vm);
255     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigationId"),
256         panda::StringRef::NewFromUtf8(vm, result->navigationId.c_str()));
257     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "pathStack"), navPathStackObj->GetLocalHandle());
258 
259     return obj;
260 }
261 
GetUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)262 ArkUINativeModuleValue ArkUINativeModule::GetUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
263 {
264     EcmaVM* vm = runtimeCallInfo->GetVM();
265     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
266     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
267     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
268     int64_t state = GetArkUINodeModifiers()->getUIStateModifier()->getUIState(nativeNode);
269     return panda::NumberRef::New(vm, state);
270 }
271 
SetSupportedUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)272 ArkUINativeModuleValue ArkUINativeModule::SetSupportedUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
273 {
274     EcmaVM* vm = runtimeCallInfo->GetVM();
275     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
276     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
277     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
278     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
279     auto state = secondArg->ToNumber(vm)->Value();
280     GetArkUINodeModifiers()->getUIStateModifier()->setSupportedUIState(nativeNode, state);
281     return panda::JSValueRef::Undefined(vm);
282 }
283 
GetFrameNodeByKey(ArkUIRuntimeCallInfo * runtimeCallInfo)284 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByKey(ArkUIRuntimeCallInfo* runtimeCallInfo)
285 {
286     EcmaVM* vm = runtimeCallInfo->GetVM();
287     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
288     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
289     auto key = firstArg->ToString(vm)->ToString(vm);
290     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByKey(key.c_str());
291     if (!nodePtr) {
292         return panda::JSValueRef::Undefined(vm);
293     }
294     return panda::NativePointerRef::New(vm, nodePtr);
295 }
296 
GetAttachedFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)297 ArkUINativeModuleValue ArkUINativeModule::GetAttachedFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
298 {
299     EcmaVM* vm = runtimeCallInfo->GetVM();
300     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
301     auto key = firstArg->ToString(vm)->ToString(vm);
302     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getAttachedFrameNodeById(key.c_str());
303     if (!nodePtr) {
304         return panda::JSValueRef::Undefined(vm);
305     }
306     return panda::NativePointerRef::New(vm, nodePtr);
307 }
308 
RequireDynamicSyncScene(ArkUIRuntimeCallInfo * runtimeCallInfo)309 ArkUINativeModuleValue ArkUINativeModule::RequireDynamicSyncScene(ArkUIRuntimeCallInfo* runtimeCallInfo)
310 {
311     EcmaVM* vm = runtimeCallInfo->GetVM();
312     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
313     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
314 
315     auto sceneId = firstArg->ToString(vm)->ToString(vm);
316     auto sceneNode = NG::Inspector::GetFrameNodeByKey(sceneId);
317 
318     if (!sceneNode) {
319         return panda::JSValueRef::Undefined(vm);
320     }
321 
322     auto sceneTag = sceneNode->GetTag();
323     auto nativeRef = NativeUtilsBridge::CreateWeakRef(vm, sceneNode);
324     const char* keys[] = { "nativeRef", "tag" };
325     Local<JSValueRef> values[] = { nativeRef, panda::StringRef::NewFromUtf8(vm, sceneTag.c_str()) };
326     return panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(keys), keys, values);
327 }
328 
SetFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)329 ArkUINativeModuleValue ArkUINativeModule::SetFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
330 {
331     EcmaVM* vm = runtimeCallInfo->GetVM();
332     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
333 
334     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
335     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
336     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2);
337     auto swiperNode = firstArg;
338     auto obj = secondArg->ToObject(vm);
339     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
340     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
341     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
342 
343     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
344     auto value = thirdArg->Int32Value(vm);
345     auto type = static_cast<SwiperDynamicSyncSceneType>(value);
346     if (type != SwiperDynamicSyncSceneType::ANIMATE) {
347         type = SwiperDynamicSyncSceneType::GESTURE;
348     }
349     auto nativePointer = swiperNode->ToNativePointer(vm);
350     if (nativePointer.IsEmpty()) {
351         return panda::JSValueRef::Undefined(vm);
352     }
353     auto nativeNode = nodePtr(nativePointer->Value());
354     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
355     auto* swiperFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
356     CHECK_NULL_RETURN(swiperFrameNode, panda::JSValueRef::Undefined(vm));
357     auto swiperPattern = swiperFrameNode->GetPattern();
358     CHECK_NULL_RETURN(swiperPattern, panda::JSValueRef::Undefined(vm));
359     swiperPattern->SetFrameRateRange(frameRateRange, type);
360 
361     return panda::JSValueRef::Undefined(vm);
362 }
363 
GetArkUINativeModule(ArkUIRuntimeCallInfo * runtimeCallInfo)364 ArkUINativeModuleValue ArkUINativeModule::GetArkUINativeModule(ArkUIRuntimeCallInfo* runtimeCallInfo)
365 {
366     EcmaVM* vm = runtimeCallInfo->GetVM();
367     auto object = panda::ObjectRef::New(vm);
368     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeById"),
369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeById));
370     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByUniqueId"),
371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByUniqueId));
372     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPageInfoByUniqueId"),
373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetPageInfoByUniqueId));
374     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNavigationInfoByUniqueId"),
375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetNavigationInfoByUniqueId));
376     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getUIState"),
377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetUIState));
378     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportedUIState"),
379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetSupportedUIState));
380     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByKey"),
381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByKey));
382     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAttachedFrameNodeById"),
383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetAttachedFrameNodeById));
384     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "requireDynamicSyncScene"),
385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RequireDynamicSyncScene));
386     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrameRateRange"),
387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetFrameRateRange));
388 
389     auto common = panda::ObjectRef::New(vm);
390     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundColor));
392     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundColor));
394     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetWidth));
396     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetWidth));
398     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHeight));
400     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHeight));
402     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderRadius));
404     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderRadius));
406     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWidth));
408     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderWidth));
410     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransform"),
411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransform));
412     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransform"),
413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransform));
414     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderColor));
416     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderColor));
418     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPosition));
420     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPosition"),
421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPosition));
422     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPointLightStyle"),
423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPointLightStyle));
424     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPointLightStyle"),
425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPointLightStyle));
426     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderStyle));
428     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderStyle));
430     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineColor"),
431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineColor));
432     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineColor"),
433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineColor));
434     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineRadius"),
435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineRadius));
436     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineRadius"),
437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineRadius));
438     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineStyle"),
439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineStyle));
440     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineStyle"),
441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineStyle));
442     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineWidth"),
443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineWidth));
444     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineWidth"),
445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineWidth));
446     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutline"),
447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutline));
448     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutline"),
449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutline));
450     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadow"),
451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShadow));
452     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShadow"),
453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShadow));
454     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHitTestBehavior"),
455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHitTestBehavior));
456     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHitTestBehavior"),
457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHitTestBehavior));
458     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZIndex"),
459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetZIndex));
460     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZIndex"),
461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetZIndex));
462     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOpacity));
464     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOpacity));
466     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlign"),
467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlign));
468     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlign"),
469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlign));
470     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackdropBlur));
472     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackdropBlur));
474     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHueRotate));
476     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHueRotate));
478     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetInvert));
480     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetInvert));
482     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSepia));
484     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSepia));
486     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSaturate));
488     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSaturate));
490     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetColorBlend));
492     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetColorBlend));
494     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGrayscale));
496     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGrayscale));
498     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetContrast));
500     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetContrast));
502     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBrightness));
504     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBrightness));
506     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlur));
508     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlur));
510     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradient"),
511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradient));
512     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradient"),
513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradient));
514     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSweepGradient"),
515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSweepGradient));
516     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSweepGradient"),
517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSweepGradient));
518     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadialGradient"),
519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRadialGradient));
520     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadialGradient"),
521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRadialGradient));
522     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOverlay"),
523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOverlay));
524     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOverlay"),
525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOverlay));
526     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderImage"),
527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderImage));
528     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderImage"),
529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderImage));
530     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBlurStyle"),
531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBlurStyle));
532     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBlurStyle"),
533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBlurStyle));
534     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradientBlur));
536     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradientBlur));
538     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBlurStyle"),
539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBlurStyle));
540     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBlurStyle"),
541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBlurStyle));
542     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorder));
544     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorder));
546     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImagePosition));
548     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImagePosition));
550     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageResizable"),
551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageResizable));
552     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageResizable"),
553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageResizable));
554     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageSize));
556     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageSize));
558     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImage));
560     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImage));
562     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTranslate));
564     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTranslate"),
565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTranslate));
566     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetScale));
568     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScale"),
569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetScale));
570     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotate"),
571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRotate));
572     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRotate"),
573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRotate));
574     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGeometryTransition"),
575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGeometryTransition));
576     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGeometryTransition"),
577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGeometryTransition));
578     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClip"),
579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClip));
580     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClip"),
581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClip));
582     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipShape"),
583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipShape));
584     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipShape"),
585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipShape));
586     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelStretchEffect));
588     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelStretchEffect));
590     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLightUpEffect));
592     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLightUpEffect));
594     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSphericalEffect));
596     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSphericalEffect));
598     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderGroup"),
599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderGroup));
600     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderGroup"),
601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderGroup));
602     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderFit));
604     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderFit));
606     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseEffect"),
607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseEffect));
608     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseEffect"),
609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseEffect));
610     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundColor));
612     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundColor));
614     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionPath"),
615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionPath));
616     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionPath"),
617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionPath));
618     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionBlur"),
619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionBlur));
620     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionBlur"),
621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionBlur));
622     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGroupDefaultFocus"),
623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGroupDefaultFocus));
624     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGroupDefaultFocus"),
625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGroupDefaultFocus));
626     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusOnTouch"),
627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusOnTouch));
628     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusOnTouch"),
629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusOnTouch));
630     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusable"),
631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusable));
632     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusable"),
633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusable));
634     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTouchable"),
635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTouchable));
636     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTouchable"),
637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTouchable));
638     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultFocus"),
639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDefaultFocus));
640     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultFocus"),
641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDefaultFocus));
642     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisplayPriority"),
643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDisplayPriority));
644     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisplayPriority"),
645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDisplayPriority));
646     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMask"),
647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMask));
648     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMask"),
649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMask));
650     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaskShape"),
651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMaskShape));
652     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaskShape"),
653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMaskShape));
654     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOffset"),
655         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetOffset));
656     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOffset"),
657         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetOffset));
658     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
659         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetPadding));
660     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
661         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetPadding));
662     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
663         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMargin));
664     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
665         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMargin));
666     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkAnchor"),
667         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMarkAnchor));
668     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarkAnchor"),
669         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMarkAnchor));
670     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
671         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetVisibility));
672     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
673         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetVisibility));
674     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityText));
676     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityText));
678     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowDrop"),
679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAllowDrop));
680     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowDrop"),
681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAllowDrop));
682     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityLevel));
684     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityLevel));
686     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDirection));
688     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDirection));
690     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutWeight"),
691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLayoutWeight));
692     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutWeight"),
693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLayoutWeight));
694     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSize));
696     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSize));
698     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignSelf"),
699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignSelf));
700     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignSelf"),
701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignSelf));
702     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAspectRatio"),
703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAspectRatio));
704     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAspectRatio"),
705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAspectRatio));
706     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexGrow"),
707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexGrow));
708     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexGrow"),
709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexGrow));
710     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexShrink"),
711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexShrink));
712     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexShrink"),
713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexShrink));
714     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setConstraintSize"),
715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetConstraintSize));
716     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetConstraintSize"),
717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetConstraintSize));
718     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridOffset"),
719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridOffset));
720     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridOffset"),
721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridOffset));
722     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridSpan"),
723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridSpan));
724     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridSpan"),
725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridSpan));
726     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setExpandSafeArea"),
727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetExpandSafeArea));
728     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetExpandSafeArea"),
729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetExpandSafeArea));
730     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignRules"),
731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignRules));
732     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignRules"),
733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignRules));
734     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexBasis"),
735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexBasis));
736     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexBasis"),
737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexBasis));
738     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDescription));
740     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDescription));
742     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetId));
744     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetId"),
745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetId));
746     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKey"),
747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKey));
748     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKey"),
749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKey));
750     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRestoreId"),
751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRestoreId));
752     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRestoreId"),
753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRestoreId));
754     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabIndex"),
755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabIndex));
756     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabIndex"),
757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabIndex));
758     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObscured"),
759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetObscured));
760     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObscured"),
761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetObscured));
762     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundEffect"),
763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundEffect));
764     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundEffect"),
765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundEffect));
766     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundEffect"),
767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundEffect));
768     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundEffect"),
769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundEffect));
770     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightness"),
771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightness));
772     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightness"),
773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightness));
774     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightnessInternal"),
775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightnessInternal));
776     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightnessInternal"),
777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightnessInternal));
778     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBrightness"),
779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBrightness));
780     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBrightness"),
781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBrightness));
782     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreviewOptions"),
783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreviewOptions));
784     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreviewOptions"),
785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreviewOptions));
786     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreview"),
787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreview));
788     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreview"),
789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreview));
790     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetResponseRegion));
792     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetResponseRegion));
794     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMouseResponseRegion"),
795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMouseResponseRegion));
796     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMouseResponseRegion"),
797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMouseResponseRegion));
798     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransition));
800     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransition));
802     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSharedTransition"),
803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSharedTransition));
804     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSharedTransition"),
805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSharedTransition));
806     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnabled"),
807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetEnabled));
808     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnabled"),
809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetEnabled));
810     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseShadowBatching"),
811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseShadowBatching));
812     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseShadowBatching"),
813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseShadowBatching));
814     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlendMode"),
815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlendMode));
816     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlendMode"),
817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlendMode));
818     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMonopolizeEvents"),
819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMonopolizeEvents));
820     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMonopolizeEvents"),
821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMonopolizeEvents));
822     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDraggable));
824     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDraggable));
826     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityGroup"),
827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityGroup));
828     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityGroup"),
829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityGroup));
830     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHoverEffect));
832     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHoverEffect));
834     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClickEffect"),
835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClickEffect));
836     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClickEffect"),
837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClickEffect));
838     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyBoardShortCut"),
839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKeyBoardShortCut));
840     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyBoardShortCut"),
841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKeyBoardShortCut));
842     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipWithEdge"),
843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipWithEdge));
844     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipWithEdge"),
845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipWithEdge));
846     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnClick));
848     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnClick));
850     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnTouch));
852     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTouch"),
853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnTouch));
854     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAppear));
856     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAppear"),
857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAppear));
858     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDisappear));
860     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDisappear"),
861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDisappear));
862     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAttach));
864     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAttach"),
865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAttach));
866     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDetach));
868     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDetach"),
869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDetach));
870     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyEvent));
872     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyEvent"),
873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyEvent));
874     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyPreIme"),
875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyPreIme));
876     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyPreIme"),
877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyPreIme));
878     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocus));
880         common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocus"),
881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocus));
882     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnBlur));
884     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBlur"),
885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnBlur));
886     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHover));
888     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHover"),
889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHover));
890     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnMouse));
892     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnMouse"),
893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnMouse));
894     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnSizeChange));
896     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSizeChange"),
897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnSizeChange));
898     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAreaChange"),
899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAreaChange));
900     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAreaChange"),
901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAreaChange));
902     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureJudgeBegin"),
903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureJudgeBegin));
904     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureJudgeBegin"),
905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureJudgeBegin));
906     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureRecognizerJudgeBegin"),
907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureRecognizerJudgeBegin));
908     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureRecognizerJudgeBegin"),
909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureRecognizerJudgeBegin));
910     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShouldBuiltInRecognizerParallelWith"),
911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShouldBuiltInRecognizerParallelWith));
912     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShouldBuiltInRecognizerParallelWith"),
913         panda::FunctionRef::New(
914             const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShouldBuiltInRecognizerParallelWith));
915     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGesture"),
916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGesture));
917     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGesture"),
918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGesture));
919     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGesture"),
920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGesture));
921     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGesture"),
922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGesture));
923     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGesture"),
924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGesture));
925     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGesture"),
926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGesture));
927     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroup"),
928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroup));
929     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGestureToGroup"),
930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGestureToGroup));
931     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGestureToGroup"),
932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGestureToGroup));
933     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGestureToGroup"),
934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGestureToGroup));
935     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGestureToGroup"),
936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGestureToGroup));
937     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGestureToGroup"),
938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGestureToGroup));
939     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGestureToGroup"),
940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGestureToGroup));
941     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroupToGroup"),
942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroupToGroup));
943     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachGestureGroup"),
944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AttachGestureGroup));
945     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeGestureByTag"),
946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RemoveGestureByTag));
947     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearGestures"),
948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ClearGestures));
949     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowName"),
950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowName));
951     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowWidthBreakpoint"),
952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowWidthBreakpoint));
953     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowHeightBreakpoint"),
954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowHeightBreakpoint));
955     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemBarEffect"),
956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSystemBarEffect));
957     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "postFrameCallback"),
958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::PostFrameCallback));
959     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopeId"),
960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopeId));
961     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopeId"),
962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopeId));
963     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopePriority"),
964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopePriority));
965     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopePriority"),
966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopePriority));
967     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelRound"),
968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelRound));
969     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelRound"),
970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelRound));
971     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainMode"),
972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetChainMode));
973     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainMode"),
974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetChainMode));
975     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWithDashParams"),
976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWithDashParams));
977     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "greatOrEqualAPITargetVersion"),
978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GreatOrEqualAPITargetVersion));
979     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "lessThanAPITargetVersion"),
980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::LessThanAPITargetVersion));
981     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getApiTargetVersion"),
982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetApiTargetVersion));
983     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusBox"),
984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusBox));
985     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusBox"),
986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusBox));
987     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdvancedBlendMode"),
988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAdvancedBlendMode));
989     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdvancedBlendMode"),
990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAdvancedBlendMode));
991     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "common"), common);
992 
993     auto nativeUtils = panda::ObjectRef::New(vm);
994     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeWeakRef"),
995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeWeakRef));
996     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeStrongRef"),
997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeStrongRef));
998     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "parseResourceColor"),
999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ParseResourceColor));
1000     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "blendColor"),
1001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::BlendColor));
1002     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "resoureToLengthMetrics"),
1003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ResoureToLengthMetrics));
1004     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nativeUtils"), nativeUtils);
1005 
1006     auto nodeAdapter = panda::ObjectRef::New(vm);
1007     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "createAdapter"),
1008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::CreateNodeAdapter));
1009     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCallbacks"),
1010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetCallbacks));
1011     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTotalNodeCount"),
1012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetTotalNodeCount));
1013     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getTotalNodeCount"),
1014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetTotalNodeCount));
1015     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemReloaded"),
1016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemReloaded));
1017     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemChanged"),
1018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemChanged));
1019     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemRemoved"),
1020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemRemoved));
1021     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemInserted"),
1022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemInserted));
1023     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemMoved"),
1024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemMoved));
1025     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAllItems"),
1026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetAllItems));
1027     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachNodeAdapter"),
1028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::AttachNodeAdapter));
1029     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "detachNodeAdapter"),
1030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::DetachNodeAdapter));
1031     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeAdapter"), nodeAdapter);
1032 
1033     auto counter = panda::ObjectRef::New(vm);
1034     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableInc"),
1035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableInc));
1036     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableInc"),
1037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableInc));
1038     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDec"),
1039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableDec));
1040     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDec"),
1041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableDec));
1042     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterHeight"),
1043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterHeight));
1044     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterHeight"),
1045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterHeight));
1046     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterWidth"),
1047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterWidth));
1048     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterWidth"),
1049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterWidth));
1050     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterBackgroundColor"),
1051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterBackgroundColor));
1052     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterBackgroundColor"),
1053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterBackgroundColor));
1054     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterSize"),
1055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterSize));
1056     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterSize"),
1057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterSize));
1058     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "counter"), counter);
1059 
1060     auto checkboxgroup = panda::ObjectRef::New(vm);
1061     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectedColor"),
1062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectedColor));
1063     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectedColor"),
1064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectedColor));
1065     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupUnSelectedColor"),
1066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupUnSelectedColor));
1067     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupUnSelectedColor"),
1068         panda::FunctionRef::New(
1069             const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupUnSelectedColor));
1070     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectAll"),
1071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectAll));
1072     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectAll"),
1073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectAll));
1074     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupWidth"),
1075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupWidth));
1076     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupWidth"),
1077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupWidth));
1078     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupHeight"),
1079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupHeight));
1080     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupHeight"),
1081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupHeight));
1082     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupMark"),
1083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupMark));
1084     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupMark"),
1085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupMark));
1086     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSize"),
1087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSize));
1088     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSize"),
1089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSize));
1090     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupStyle"),
1091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupStyle));
1092     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupStyle"),
1093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupStyle));
1094     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkboxgroup"), checkboxgroup);
1095 
1096     auto panel = panda::ObjectRef::New(vm);
1097     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
1098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
1099     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
1100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
1101     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
1102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
1103     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
1104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
1105     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
1106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
1107     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
1108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
1109     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
1110 
1111     auto row = panda::ObjectRef::New(vm);
1112     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetAlignItems));
1114     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetAlignItems));
1116     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetJustifyContent));
1118     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetJustifyContent));
1120     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetSpace));
1122     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetSpace));
1124     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetReverse));
1126     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetReverse));
1128     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "row"), row);
1129 
1130     auto rowSplit = panda::ObjectRef::New(vm);
1131     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
1132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::SetResizable));
1133     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
1134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::ResetResizable));
1135     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rowSplit"), rowSplit);
1136 
1137     auto text = panda::ObjectRef::New(vm);
1138     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontColor));
1140     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontColor));
1142     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontSize));
1144     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontSize));
1146     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontStyle));
1148     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontStyle));
1150     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextAlign));
1152     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextAlign));
1154     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontWeight));
1156     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontWeight));
1158     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineHeight));
1160     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineHeight));
1162     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextOverflow));
1164     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextOverflow));
1166     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDecoration));
1168     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDecoration));
1170     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextCase));
1172     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextCase));
1174     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxLines));
1176     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxLines));
1178     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontSize));
1180     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ReSetMinFontSize));
1182     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
1183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDraggable));
1184     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
1185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDraggable));
1186     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
1187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetPrivacySensitive));
1188     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
1189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetPrivacySensitive));
1190     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontSize));
1192     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontSize));
1194     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
1195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontScale));
1196     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
1197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMinFontScale));
1198     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
1199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontScale));
1200     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
1201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontScale));
1202     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFamily));
1204     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFamily));
1206     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCopyOption));
1208     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCopyOption));
1210     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextShadow));
1212     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1214     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextController"),
1215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextController));
1216     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextShadow));
1218     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHeightAdaptivePolicy));
1220     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHeightAdaptivePolicy));
1222     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextIndent));
1224     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextIndent));
1226     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetBaselineOffset));
1228     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetBaselineOffset));
1230     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLetterSpacing));
1232     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLetterSpacing));
1234     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineSpacing));
1236     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineSpacing));
1238     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFont));
1240     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFont));
1242     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetWordBreak));
1244     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetWordBreak));
1246     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineBreakStrategy));
1248     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineBreakStrategy));
1250     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
1251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEllipsisMode));
1252     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
1253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEllipsisMode));
1254     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEnableDataDetector));
1256     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEnableDataDetector));
1258     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextForegroundColor"),
1259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetForegroundColor));
1260     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextForegroundColor"),
1261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetForegroundColor));
1262     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFeature));
1264     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFeature));
1266     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1268     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelection"),
1269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelection));
1270     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelection"),
1271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelection));
1272     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextSelectableMode"),
1273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextSelectableMode));
1274     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextSelectableMode"),
1275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextSelectableMode));
1276     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDataDetectorConfig));
1278     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDataDetectorConfig));
1280     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnCopy));
1282     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnCopy));
1284     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnTextSelectionChange));
1286     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnTextSelectionChange));
1288     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectionMenuOptions));
1290     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectionMenuOptions));
1292     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
1293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHalfLeading));
1294     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
1295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHalfLeading));
1296     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
1297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnClick));
1298     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
1299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnClick));
1300     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
1301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetResponseRegion));
1302     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
1303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetResponseRegion));
1304     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "text"), text);
1305 
1306     auto search = panda::ObjectRef::New(vm);
1307     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInitialize"),
1308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInitialize));
1309     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInitialize"),
1310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInitialize));
1311     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextFont"),
1312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextFont));
1313     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextFont"),
1314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextFont));
1315     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderColor));
1317     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderColor));
1319     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuHidden));
1321     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuHidden));
1323     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCaretStyle));
1325     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCaretStyle));
1327     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchTextAlign));
1329     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchTextAlign));
1331     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
1332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCancelButton));
1333     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
1334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCancelButton));
1335     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableKeyboardOnFocus));
1337     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1338         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableKeyboardOnFocus));
1339     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1340         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderFont));
1341     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1342         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderFont));
1343     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchIcon"),
1344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchIcon));
1345     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchIcon"),
1346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchIcon));
1347     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchButton"),
1348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchButton));
1349     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchButton"),
1350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchButton));
1351     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontColor));
1353     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontColor));
1355     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCopyOption));
1357     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCopyOption));
1359     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchEnterKeyType"),
1360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchEnterKeyType));
1361     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchEnterKeyType"),
1362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchEnterKeyType));
1363     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchHeight"),
1364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchHeight));
1365     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchHeight"),
1366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchHeight));
1367     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontFeature));
1369     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontFeature));
1371     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetDecoration));
1373     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetDecoration));
1375     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLetterSpacing));
1377     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLetterSpacing));
1379     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLineHeight));
1381     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLineHeight));
1383     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMinFontSize"),
1384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMinFontSize));
1385     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMinFontSize"),
1386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMinFontSize));
1387     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMaxFontSize"),
1388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMaxFontSize));
1389     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMaxFontSize"),
1390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMaxFontSize));
1391     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetInputFilter));
1393     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetInputFilter));
1395     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectedBackgroundColor));
1397     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectedBackgroundColor));
1399     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextIndent));
1401     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextIndent));
1403     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMaxLength));
1405     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMaxLength));
1407     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetType));
1409     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetType));
1411     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnEditChange));
1413     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnEditChange));
1415     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnSubmit));
1417     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnSubmit));
1419     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCopy));
1421     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCopy));
1423     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCut));
1425     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCut));
1427     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnPaste));
1429     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnPaste));
1431     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnChange));
1433     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnChange));
1435     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnTextSelectionChange));
1437     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnTextSelectionChange));
1439     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnContentScroll));
1441     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnContentScroll));
1443     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetShowCounter));
1445     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetShowCounter));
1447     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
1448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillInsert));
1449     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
1450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillInsert));
1451     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
1452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidInsert));
1453     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
1454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidInsert));
1455     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
1456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillDelete));
1457     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
1458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillDelete));
1459     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
1460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidDelete));
1461     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
1462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidDelete));
1463     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnablePreviewText));
1465     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnablePreviewText));
1467     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuOptions));
1469     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuOptions));
1471     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInspectorId"),
1472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInspectorId));
1473     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInspectorId"),
1474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInspectorId));
1475     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableHapticFeedback));
1477     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableHapticFeedback));
1479     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "search"), search);
1480 
1481     auto stack = panda::ObjectRef::New(vm);
1482     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignContent"),
1483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::SetAlignContent));
1484     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignContent"),
1485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::ResetAlignContent));
1486     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stack"), stack);
1487 
1488     auto folderStack = panda::ObjectRef::New(vm);
1489     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnimation"),
1490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetEnableAnimation));
1491     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnimation"),
1492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetEnableAnimation));
1493     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHalfFold"),
1494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetAutoHalfFold));
1495     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHalfFold"),
1496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetAutoHalfFold));
1497     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "folderStack"), folderStack);
1498 
1499     auto imageSpan = panda::ObjectRef::New(vm);
1500     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVerticalAlign"),
1501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetVerticalAlign));
1502     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVerticalAlign"),
1503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetVerticalAlign));
1504     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetObjectFit));
1506     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetObjectFit));
1508     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1509         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetTextBackgroundStyle));
1510     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1511         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetTextBackgroundStyle));
1512     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1513         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetBaselineOffset));
1514     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1515         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetBaselineOffset));
1516     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
1517         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetAlt));
1518     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
1519         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetAlt));
1520     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
1521         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnComplete));
1522     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
1523         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnComplete));
1524     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
1525         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnError));
1526     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
1527         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnError));
1528     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetBorderRadius));
1530     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetBorderRadius));
1532     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageSpan"), imageSpan);
1533 
1534     auto blank = panda::ObjectRef::New(vm);
1535     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
1536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetColor));
1537     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
1538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetColor));
1539     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankHeight"),
1540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankHeight));
1541     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankHeight"),
1542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankHeight));
1543     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankMin"),
1544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankMin));
1545     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankMin"),
1546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankMin));
1547     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "blank"), blank);
1548 
1549     auto span = panda::ObjectRef::New(vm);
1550     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpanSrc"),
1551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SpanBridge::SetSpanSrc));
1552     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1553         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextCase));
1554     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1555         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextCase));
1556     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1557         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontWeight));
1558     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1559         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontWeight));
1560     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1561         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLineHeight));
1562     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1563         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLineHeight));
1564     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1565         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontStyle));
1566     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1567         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontStyle));
1568     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1569         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontSize));
1570     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1571         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontSize));
1572     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1573         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontFamily));
1574     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1575         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontFamily));
1576     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1577         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetDecoration));
1578     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1579         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetDecoration));
1580     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1581         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontColor));
1582     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1583         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontColor));
1584     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1585         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLetterSpacing));
1586     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1587         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLetterSpacing));
1588     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1589         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetBaselineOffset));
1590     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1591         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetBaselineOffset));
1592     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1593         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFont));
1594     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1595         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFont));
1596     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1597         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextBackgroundStyle));
1598     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1599         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextBackgroundStyle));
1600     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1601         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextShadow));
1602     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1603         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextShadow));
1604     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
1605         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityText));
1606     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
1607         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityText));
1608     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
1609         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityDescription));
1610     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
1611         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityDescription));
1612     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
1613         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityLevel));
1614     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
1615         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityLevel));
1616     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "span"), span);
1617 
1618     auto gridCol = panda::ObjectRef::New(vm);
1619     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpan"),
1620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetSpan));
1621     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpan"),
1622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetSpan));
1623     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridColOffset"),
1624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetGridColOffset));
1625     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridColOffset"),
1626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetGridColOffset));
1627     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrder"),
1628         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetOrder));
1629     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrder"),
1630         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetOrder));
1631     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridCol"), gridCol);
1632 
1633     auto column = panda::ObjectRef::New(vm);
1634     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetJustifyContent));
1636     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetJustifyContent));
1638     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetAlignItems));
1640     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetAlignItems));
1642     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetSpace));
1644     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetSpace));
1646     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetReverse));
1648     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetReverse));
1650     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "column"), column);
1651 
1652     auto gridRow = panda::ObjectRef::New(vm);
1653     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetAlignItems));
1655     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetAlignItems));
1657     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
1658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetDirection));
1659     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
1660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetDirection));
1661     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBreakpoints"),
1662         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetBreakpoints));
1663     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBreakpoints"),
1664         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetBreakpoints));
1665     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumns"),
1666         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetColumns));
1667     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumns"),
1668         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetColumns));
1669     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGutter"),
1670         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetGutter));
1671     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGutter"),
1672         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetGutter));
1673     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBreakpointChange"),
1674         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetOnBreakpointChange));
1675     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBreakpointChange"),
1676         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetOnBreakpointChange));
1677 
1678     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridRow"), gridRow);
1679 
1680     auto richEditor = panda::ObjectRef::New(vm);
1681     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1682         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnterKeyType));
1683     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1684         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnterKeyType));
1685     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1686         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetSelectedBackgroundColor));
1687     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1688         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetSelectedBackgroundColor));
1689     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1690         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCaretColor));
1691     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1692         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCaretColor));
1693     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelectionChange"),
1694         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelectionChange));
1695     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelectionChange"),
1696         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelectionChange));
1697     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1698         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnableDataDetector));
1699     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1700         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnableDataDetector));
1701 
1702     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetDataDetectorConfig));
1704     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetDataDetectorConfig));
1706     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnIMEInputComplete"),
1707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnIMEInputComplete));
1708     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnIMEInputComplete"),
1709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnIMEInputComplete));
1710     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSubmit));
1712     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSubmit));
1714     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAboutToIMEInput"),
1715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetAboutToIMEInput));
1716     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAboutToIMEInput"),
1717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetAboutToIMEInput));
1718     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOptions"),
1719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCopyOptions));
1720     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOptions"),
1721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCopyOptions));
1722     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelect"),
1723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelect));
1724     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelect"),
1725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelect));
1726     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReady"),
1727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnReady));
1728     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReady"),
1729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnReady));
1730     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDeleteComplete"),
1731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnDeleteComplete));
1732     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDeleteComplete"),
1733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnDeleteComplete));
1734     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditingChange"),
1735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnEditingChange));
1736     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditingChange"),
1737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnEditingChange));
1738     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnPaste));
1740     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnPaste));
1742     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCut));
1744     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCut));
1746     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCopy));
1748     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCopy));
1750     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "richEditor"), richEditor);
1751 
1752     auto textArea = panda::ObjectRef::New(vm);
1753     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
1754         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStyle));
1755     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
1756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStyle));
1757     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuHidden));
1759     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuHidden));
1761     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLines));
1763     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLines));
1765     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCopyOption));
1767     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCopyOption));
1769     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderColor));
1771     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderColor));
1773     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaTextAlign));
1775     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextAreaTextAlign));
1777     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1778         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderFont));
1779     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1780         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderFont));
1781     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
1782         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBarState));
1783     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
1784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBarState));
1785     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableKeyboardOnFocus));
1787     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1788         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableKeyboardOnFocus));
1789     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1790         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFamily));
1791     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1792         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFamily));
1793     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1794         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetShowCounter));
1795     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetShowCounter));
1797     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretColor));
1799     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretColor));
1801     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLength));
1803     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1804         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLength));
1805     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1806         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontColor));
1807     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontColor));
1809     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontStyle));
1811     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontStyle));
1813     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1814         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontWeight));
1815     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontWeight));
1817     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontSize));
1819     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontSize));
1821     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFeature));
1823     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFeature));
1825     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetDecoration));
1827     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetDecoration));
1829     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLetterSpacing));
1831     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLetterSpacing));
1833     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineSpacing));
1835     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1836         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineSpacing));
1837     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1838         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineHeight));
1839     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineHeight));
1841     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWordBreak));
1843     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWordBreak));
1845     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineBreakStrategy));
1847     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineBreakStrategy));
1849     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMinFontSize));
1851     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMinFontSize));
1853     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxFontSize));
1855     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxFontSize));
1857     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetHeightAdaptivePolicy));
1859     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetHeightAdaptivePolicy));
1861     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectedBackgroundColor));
1863     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectedBackgroundColor));
1865     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretStyle));
1867     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretStyle));
1869     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextOverflow));
1871     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextOverflow));
1873     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextIndent));
1875     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextIndent));
1877     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetType));
1879     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetType));
1881     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
1882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPadding));
1883     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
1884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPadding));
1885     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnChange));
1887     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1888         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnChange));
1889     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1890         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnterKeyType));
1891     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1892         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnterKeyType));
1893     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetInputFilter));
1895     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetInputFilter));
1897     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnTextSelectionChange));
1899     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnTextSelectionChange));
1901     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnContentScroll));
1903     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnContentScroll));
1905     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnEditChange));
1907     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnEditChange));
1909     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCopy));
1911     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCopy));
1913     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCut));
1915     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCut));
1917     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnPaste));
1919     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnPaste));
1921     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnSubmit));
1923     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnSubmit));
1925     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
1926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetContentType));
1927     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
1928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetContentType));
1929     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
1930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableAutoFill));
1931     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
1932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableAutoFill));
1933     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
1934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
1935     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
1936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
1937     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
1938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
1939     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
1940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
1941     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
1942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
1943     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
1944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
1945     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
1946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
1947     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
1948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
1949     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
1951     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
1953     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
1954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBackgroundColor));
1955     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
1956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBackgroundColor));
1957     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
1958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMargin));
1959     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
1960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMargin));
1961     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
1962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
1963     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
1964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
1965     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
1966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
1967     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
1968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
1969     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
1970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
1971     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
1972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
1973     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
1974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
1975     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
1976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
1977     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnablePreviewText));
1979     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnablePreviewText));
1981     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuOptions));
1983     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuOptions));
1985     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
1986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWidth));
1987     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
1988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWidth));
1989     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableHapticFeedback));
1991     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableHapticFeedback));
1993     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textArea"), textArea);
1994 
1995     auto video = panda::ObjectRef::New(vm);
1996 #ifdef PREVIEW
1997     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
1998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
1999     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2001     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2003     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2005     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2007     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2009     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2011     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2013     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2015     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2017 #else
2018     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetAutoPlay));
2020     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetAutoPlay));
2022     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetControls));
2024     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetControls));
2026     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetObjectFit));
2028     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetObjectFit));
2030     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetLoop));
2032     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetLoop));
2034     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetMuted));
2036     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetMuted));
2038 #endif
2039     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
2040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetOpacity));
2041     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
2042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetOpacity));
2043     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
2044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetTransition));
2045     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
2046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetTransition));
2047     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "video"), video);
2048 
2049     auto patternLock = panda::ObjectRef::New(vm);
2050     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideLength"),
2051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetSideLength));
2052     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideLength"),
2053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetSideLength));
2054     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoReset"),
2055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetAutoReset));
2056     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoReset"),
2057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetAutoReset));
2058     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathStrokeWidth"),
2059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathStrokeWidth));
2060     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathStrokeWidth"),
2061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathStrokeWidth));
2062     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRegularColor"),
2063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetRegularColor));
2064     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRegularColor"),
2065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetRegularColor));
2066     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathColor"),
2067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathColor));
2068     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathColor"),
2069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathColor));
2070     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActiveColor"),
2071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActiveColor));
2072     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActiveColor"),
2073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActiveColor));
2074     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleRadius"),
2075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockCircleRadius));
2076     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCircleRadius"),
2077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockCircleRadius));
2078     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSelectedColor));
2080     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSelectedColor));
2082     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActivateCircleStyle"),
2083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActivateCircleStyle));
2084     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActivateCircleStyle"),
2085         panda::FunctionRef::New(
2086             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActivateCircleStyle));
2087     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "patternLock"), patternLock);
2088 
2089     auto columnSplit = panda::ObjectRef::New(vm);
2090     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2091         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetDivider));
2092     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2093         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetDivider));
2094     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
2095         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetResizable));
2096     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
2097         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetResizable));
2098     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "columnSplit"), columnSplit);
2099 
2100     auto imageAnimator = panda::ObjectRef::New(vm);
2101     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setState"),
2102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetState));
2103     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetState"),
2104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetState));
2105     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDuration"),
2106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetDuration));
2107     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDuration"),
2108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetDuration));
2109     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFixedSize"),
2110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFixedSize));
2111     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFixedSize"),
2112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFixedSize));
2113     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillMode"),
2114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFillMode));
2115     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillMode"),
2116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFillMode));
2117     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
2118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetReverse));
2119     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
2120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetReverse));
2121     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImages"),
2122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImages));
2123     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImages"),
2124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImages));
2125     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIterations"),
2126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetIteration));
2127     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIterations"),
2128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetIteration));
2129     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageAnimator"), imageAnimator);
2130 
2131     auto textInput = panda::ObjectRef::New(vm);
2132     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
2133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretColor));
2134     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
2135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretColor));
2136     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetType));
2138     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetType));
2140     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
2141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLines));
2142     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
2143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLines));
2144     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
2145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderColor));
2146     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
2147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderColor));
2148     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretPosition"),
2149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretPosition));
2150     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretPosition"),
2151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretPosition));
2152     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
2153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCopyOption));
2154     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
2155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCopyOption));
2156     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPasswordIcon"),
2157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPasswordIcon));
2158     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPasswordIcon"),
2159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPasswordIcon));
2160     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPassword"),
2161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPassword));
2162     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPassword"),
2163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPassword));
2164     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordIcon"),
2165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordIcon));
2166     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordIcon"),
2167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordIcon));
2168     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
2169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextAlign));
2170     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
2171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextAlign));
2172     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
2173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStyle));
2174     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
2175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStyle));
2176     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
2177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuHidden));
2178     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
2179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuHidden));
2180     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowUnderline"),
2181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputShowUnderline));
2182     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowUnderline"),
2183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputShowUnderline));
2184     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordRules"),
2185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordRules));
2186     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordRules"),
2187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordRules));
2188     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableAutoFill));
2190     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableAutoFill));
2192     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
2193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretStyle));
2194     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
2195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretStyle));
2196     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
2197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableKeyboardOnFocus));
2198     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
2199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableKeyboardOnFocus));
2200     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
2201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBarState));
2202     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
2203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBarState));
2204     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
2205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputEnterKeyType));
2206     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
2207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputEnterKeyType));
2208     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputFontWeight));
2210     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputFontWeight));
2212     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontSize));
2214     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontSize));
2216     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
2217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLength));
2218     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
2219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLength));
2220     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectedBackgroundColor));
2222     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectedBackgroundColor));
2224     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowError"),
2225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowError));
2226     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowError"),
2227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowError));
2228     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
2229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderFont));
2230     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
2231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderFont));
2232     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontColor));
2234     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontColor));
2236     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
2237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontStyle));
2238     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
2239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontStyle));
2240     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFamily));
2242     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFamily));
2244     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
2245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFeature));
2246     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
2247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFeature));
2248     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnderlineColor"),
2249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetUnderlineColor));
2250     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnderlineColor"),
2251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetUnderlineColor));
2252     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
2253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetDecoration));
2254     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
2255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetDecoration));
2256     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
2257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLetterSpacing));
2258     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
2259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLetterSpacing));
2260     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
2261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineHeight));
2262     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
2263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineHeight));
2264     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
2265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWordBreak));
2266     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
2267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWordBreak));
2268     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
2269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineBreakStrategy));
2270     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
2271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineBreakStrategy));
2272     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
2273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCancelButton));
2274     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
2275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCancelButton));
2276     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectAll"),
2277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectAll));
2278     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectAll"),
2279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectAll));
2280     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2282     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2284     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2286     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2288     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnEditChange));
2290     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnEditChange));
2292     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetInputFilter));
2294     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetInputFilter));
2296     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnSubmit));
2298     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnSubmit));
2300     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnChange));
2302     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnChange));
2304     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnTextSelectionChange));
2306     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnTextSelectionChange));
2308     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnContentScroll));
2310     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnContentScroll));
2312     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCopy));
2314     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCopy));
2316     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCut));
2318     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCut));
2320     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnPaste));
2322     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnPaste));
2324     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
2325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMinFontSize));
2326     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
2327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMinFontSize));
2328     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
2329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxFontSize));
2330     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
2331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxFontSize));
2332     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
2333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetHeightAdaptivePolicy));
2334     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
2335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetHeightAdaptivePolicy));
2336     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
2337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextOverflow));
2338     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
2339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextOverflow));
2340     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
2341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextIndent));
2342     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
2343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextIndent));
2344     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
2345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPadding));
2346     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
2347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPadding));
2348     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetContentType));
2350     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetContentType));
2352     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2354     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2356     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2358     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2360     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2362     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2364     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2366     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2368     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2370     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2372     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBackgroundColor));
2374     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBackgroundColor));
2376     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMargin));
2378     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMargin));
2380     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetText"),
2381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetText));
2382     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setText"),
2383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetText));
2384     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetController"),
2385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetController));
2386     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setController"),
2387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetController));
2388     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholder"),
2389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholder));
2390     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholder"),
2391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholder));
2392     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2394     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2396     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2398     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2400     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2402     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2404     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2406     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2408     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnablePreviewText));
2410     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnablePreviewText));
2412     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuOptions));
2414     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuOptions));
2416     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWidth));
2418     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWidth));
2420     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableHapticFeedback));
2422     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableHapticFeedback));
2424     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textInput"), textInput);
2425 
2426     auto navDestination = panda::ObjectRef::New(vm);
2427     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
2428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideTitleBar));
2429     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
2430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideTitleBar));
2431     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
2432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideToolBar));
2433     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
2434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideToolBar));
2435     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
2436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetBackButtonIcon));
2437     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
2438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetBackButtonIcon));
2439     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
2440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetNavDestinationMode));
2441     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
2442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetNavDestinationMode));
2443     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
2444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetIgnoreLayoutSafeArea));
2445     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
2446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetIgnoreLayoutSafeArea));
2447     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
2448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetTitle));
2449     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
2450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetTitle));
2451     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestination"), navDestination);
2452 
2453     auto particle = panda::ObjectRef::New(vm);
2454     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisturbanceField"),
2455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetDisturbanceField));
2456     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisturbanceField"),
2457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetDisturbanceField));
2458     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEmitter"),
2459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetEmitter));
2460     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEmitter"),
2461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetEmitter));
2462     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "particle"), particle);
2463 
2464     auto symbolGlyph = panda::ObjectRef::New(vm);
2465     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontColor));
2467     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontColor));
2469     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontSize));
2471     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontSize));
2473     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontWeight));
2475     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontWeight));
2477     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetRenderingStrategy));
2479     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetRenderingStrategy));
2481         symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetEffectStrategy));
2483     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetEffectStrategy));
2485     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolId"),
2486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolId));
2487     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolEffectOptions"),
2488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolEffect));
2489     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolEffectOptions"),
2490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolEffect));
2491     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolGlyph"), symbolGlyph);
2492 
2493     auto symbolSpan = panda::ObjectRef::New(vm);
2494     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontColor));
2496     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontColor));
2498     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontSize));
2500     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontSize));
2502     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontWeight));
2504     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontWeight));
2506     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetEffectStrategy));
2508     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetEffectStrategy));
2510     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetRenderingStrategy));
2512     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetRenderingStrategy));
2514     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
2515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetId));
2516     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolSpan"), symbolSpan);
2517 
2518 #ifdef MODEL_COMPONENT_SUPPORTED
2519     auto component3D = panda::ObjectRef::New(vm);
2520     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShaderInputBuffer"),
2521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::SetShaderInputBuffer));
2522     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShaderInputBuffer"),
2523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::ResetShaderInputBuffer));
2524     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "component3D"), component3D);
2525 #endif
2526 
2527     auto relativeContainer = panda::ObjectRef::New(vm);
2528     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGuideLine"),
2529         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetGuideLine));
2530     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGuideLine"),
2531         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetGuideLine));
2532     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarrier"),
2533         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetBarrier));
2534     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarrier"),
2535         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetBarrier));
2536     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "relativeContainer"), relativeContainer);
2537 
2538     auto containerSpan = panda::ObjectRef::New(vm);
2539     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
2540         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::SetTextBackgroundStyle));
2541     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
2542         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::ResetTextBackgroundStyle));
2543     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "containerSpan"), containerSpan);
2544 
2545     RegisterButtonAttributes(object, vm);
2546     RegisterToggleAttributes(object, vm);
2547     RegisterDividerAttributes(object, vm);
2548     RegisterNavigationAttributes(object, vm);
2549     RegisterImageAttributes(object, vm);
2550     RegisterNavRouterAttributes(object, vm);
2551     RegisterNavigatorAttributes(object, vm);
2552     RegisterNodeContainerAttributes(object, vm);
2553     RegisterRenderNodeAttributes(object, vm);
2554     RegisterFrameNodeAttributes(object, vm);
2555     RegisterPanelAttributes(object, vm);
2556     RegisterLineAttributes(object, vm);
2557     RegisterPathAttributes(object, vm);
2558     RegisterPolygonAttributes(object, vm);
2559     RegisterPolylineAttributes(object, vm);
2560     RegisterSideBarContainerAttributes(object, vm);
2561     RegisterCalendarPickerAttributes(object, vm);
2562     RegisterTabAttributes(object, vm);
2563     RegisterTabContentAttributes(object, vm);
2564     RegisterStepperItemAttributes(object, vm);
2565     RegisterHyperlinkAttributes(object, vm);
2566     RegisterMenuItemAttributes(object, vm);
2567     RegisterMenuAttributes(object, vm);
2568     RegisterMarqueeAttributes(object, vm);
2569     RegisterDatePickerAttributes(object, vm);
2570     RegisterAlphabetIndexerAttributes(object, vm);
2571     RegisterGaugeAttributes(object, vm);
2572     RegisterSwiperAttributes(object, vm);
2573     RegisterSelectAttributes(object, vm);
2574     RegisterRadioAttributes(object, vm);
2575     RegisterSliderAttributes(object, vm);
2576     RegisterRatingAttributes(object, vm);
2577     RegisterTimepickerAttributes(object, vm);
2578     RegisterTextpickerAttributes(object, vm);
2579     RegisterWaterFlowAttributes(object, vm);
2580     RegisterCheckboxAttributes(object, vm);
2581     RegisterDataPanelAttributes(object, vm);
2582     RegisterScrollAttributes(object, vm);
2583     RegisterGridItemAttributes(object, vm);
2584     RegisterMarqueeAttributes(object, vm);
2585     RegisterProgressAttributes(object, vm);
2586     RegisterCommonShapeAttributes(object, vm);
2587     RegisterShapeAttributes(object, vm);
2588     RegisterRectAttributes(object, vm);
2589     RegisterListAttributes(object, vm);
2590     RegisterGridAttributes(object, vm);
2591     RegisterListItemGroupAttributes(object, vm);
2592     RegisterQRCodeAttributes(object, vm);
2593     RegisterLoadingProgressAttributes(object, vm);
2594     RegisterTextClockAttributes(object, vm);
2595     RegisterListItemAttributes(object, vm);
2596     RegisterTextTimerAttributes(object, vm);
2597     RegisterRefreshAttributes(object, vm);
2598 #ifdef PLUGIN_COMPONENT_SUPPORTED
2599     RegisterPluginAttributes(object, vm);
2600 #endif
2601 #ifdef XCOMPONENT_SUPPORTED
2602     RegisterXComponentAttributes(object, vm);
2603     RegisterXComponentNodeAttributes(object, vm);
2604 #endif
2605 
2606 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
2607     RegisterFormAttributes(object, vm);
2608 #endif
2609     RegisterFlexAttributes(object, vm);
2610     RegisterResourceAttributes(object, vm);
2611     return object;
2612 }
2613 
RegisterCheckboxAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2614 void ArkUINativeModule::RegisterCheckboxAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2615 {
2616     auto checkbox = panda::ObjectRef::New(vm);
2617     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMark"),
2618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetMark));
2619     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMark"),
2620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetMark));
2621     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnSelectedColor"),
2622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetUnSelectedColor));
2623     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnSelectedColor"),
2624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetUnSelectedColor));
2625     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelect"),
2626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelect));
2627     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelect"),
2628         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelect));
2629     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2630         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelectedColor));
2631     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2632         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelectedColor));
2633     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxWidth));
2635     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxWidth));
2637     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxHeight));
2639     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxHeight));
2641     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxSize"),
2642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxSize));
2643     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxSize"),
2644         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxSize));
2645     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxShape"),
2646         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxShape));
2647     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxShape"),
2648         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxShape));
2649     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxResponseRegion"),
2650         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxResponseRegion));
2651     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxResponseRegion"),
2652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxResponseRegion));
2653     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxPadding"),
2654         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxPadding));
2655     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetContentModifierBuilder));
2657     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxPadding"),
2658         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxPadding));
2659 
2660     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkbox"), checkbox);
2661 }
2662 
RegisterTextpickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2663 void ArkUINativeModule::RegisterTextpickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2664 {
2665     auto textpicker = panda::ObjectRef::New(vm);
2666     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCanLoop"),
2667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetCanLoop));
2668     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedIndex"),
2669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedIndex));
2670     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetTextStyle));
2672     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedTextStyle));
2674     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisappearTextStyle));
2676     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultPickerItemHeight"),
2677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultPickerItemHeight));
2678     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetBackgroundColor));
2680     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCanLoop"),
2681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetCanLoop));
2682     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedIndex"),
2683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedIndex));
2684     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetTextStyle));
2686     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedTextStyle));
2688     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisappearTextStyle));
2690     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultPickerItemHeight"),
2691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultPickerItemHeight));
2692     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetBackgroundColor));
2694     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDivider));
2696     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDivider));
2698     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGradientHeight"),
2699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetGradientHeight));
2700     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGradientHeight"),
2701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetGradientHeight));
2702     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textpicker"), textpicker);
2703 }
2704 
RegisterTimepickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2705 void ArkUINativeModule::RegisterTimepickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2706 {
2707     auto timepicker = panda::ObjectRef::New(vm);
2708     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTextStyle));
2710     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetSelectedTextStyle));
2712     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDisappearTextStyle));
2714     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTextStyle));
2716     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetSelectedTextStyle));
2718     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDisappearTextStyle));
2720     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerBackgroundColor));
2722     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerBackgroundColor));
2724     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerUseMilitaryTime"),
2725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerUseMilitaryTime));
2726     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerUseMilitaryTime"),
2727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerUseMilitaryTime));
2728     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerLoop"),
2729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerLoop));
2730     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerLoop"),
2731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerLoop));
2732     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerDateTimeOptions"),
2733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerDateTimeOptions));
2734     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerDateTimeOptions"),
2735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerDateTimeOptions));
2736     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "timepicker"), timepicker);
2737 }
2738 
RegisterRatingAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2739 void ArkUINativeModule::RegisterRatingAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2740 {
2741     auto rating = panda::ObjectRef::New(vm);
2742     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStars"),
2743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStars));
2744     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStars"),
2745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStars));
2746     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingStepSize));
2748     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetRatingStepSize));
2750     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStarStyle"),
2751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStarStyle));
2752     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStarStyle"),
2753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStarStyle));
2754     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetContentModifierBuilder));
2756     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rating"), rating);
2757 }
2758 
RegisterSliderAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2759 void ArkUINativeModule::RegisterSliderAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2760 {
2761     auto slider = panda::ObjectRef::New(vm);
2762     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowTips"),
2763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowTips));
2764     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowTips"),
2765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowTips));
2766     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderStepSize));
2768     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSliderStepSize));
2770     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockSize"),
2771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockSize));
2772     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockSize"),
2773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockSize));
2774     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBorderRadius"),
2775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBorderRadius));
2776     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBorderRadius"),
2777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBorderRadius));
2778     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepColor"),
2779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetStepColor));
2780     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepColor"),
2781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetStepColor));
2782     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderColor"),
2783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderColor));
2784     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderColor"),
2785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderColor));
2786     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderWidth"),
2787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderWidth));
2788     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderWidth"),
2789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderWidth));
2790     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockColor"),
2791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockColor));
2792     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockColor"),
2793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockColor));
2794     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBackgroundColor"),
2795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBackgroundColor));
2796     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBackgroundColor"),
2797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBackgroundColor));
2798     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectColor"),
2799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectColor));
2800     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectColor"),
2801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectColor));
2802     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSteps"),
2803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowSteps));
2804     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSteps"),
2805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowSteps));
2806     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setThickness"),
2807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetThickness));
2808     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetThickness"),
2809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetThickness));
2810     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockStyle"),
2811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockStyle));
2812     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockStyle"),
2813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockStyle));
2814     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValidSlideRange"),
2815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetValidSlideRange));
2816     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValidSlideRange"),
2817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetValidSlideRange));
2818     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBorderRadius"),
2819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectedBorderRadius));
2820     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBorderRadius"),
2821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectedBorderRadius));
2822     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInteractionMode"),
2823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetInteractionMode));
2824     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInteractionMode"),
2825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetInteractionMode));
2826     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinResponsiveDistance"),
2827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetMinResponsiveDistance));
2828     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinResponsiveDistance"),
2829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetMinResponsiveDistance));
2830     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetContentModifierBuilder));
2832     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "slider"), slider);
2833 }
2834 
RegisterRadioAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2835 void ArkUINativeModule::RegisterRadioAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2836 {
2837     auto radio = panda::ObjectRef::New(vm);
2838     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioChecked"),
2839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioChecked));
2840     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioChecked"),
2841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioChecked));
2842     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioStyle"),
2843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioStyle));
2844     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioStyle"),
2845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioStyle));
2846     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioWidth"),
2847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioWidth));
2848     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioWidth"),
2849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioWidth));
2850     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHeight"),
2851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHeight));
2852     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHeight"),
2853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHeight));
2854     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioSize"),
2855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioSize));
2856     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioSize"),
2857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioSize));
2858     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHoverEffect"),
2859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHoverEffect));
2860     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHoverEffect"),
2861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHoverEffect));
2862     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioPadding"),
2863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioPadding));
2864     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioPadding"),
2865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioPadding));
2866     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioResponseRegion"),
2867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioResponseRegion));
2868     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioResponseRegion"),
2869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioResponseRegion));
2870     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetContentModifierBuilder));
2872     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "radio"), radio);
2873 }
2874 
RegisterSelectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2875 void ArkUINativeModule::RegisterSelectAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2876 {
2877     auto select = panda::ObjectRef::New(vm);
2878     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
2879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSpace));
2880     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValue"),
2881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetValue));
2882     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
2883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelected));
2884     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFontColor));
2886     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionBgColor"),
2887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionBgColor));
2888     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionBgColor"),
2889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionBgColor));
2890     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFontColor"),
2891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFontColor));
2892     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFontColor"),
2893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFontColor));
2894     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setArrowPosition"),
2895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetArrowPosition));
2896     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuAlign"),
2897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuAlign));
2898     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
2899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFont));
2900     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFont"),
2901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFont));
2902     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFont"),
2903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFont));
2904     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetArrowPosition"),
2905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetArrowPosition));
2906     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuAlign"),
2907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuAlign));
2908     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
2909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFont));
2910     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFont"),
2911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFont));
2912     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFont"),
2913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFont));
2914     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
2915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSpace));
2916     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValue"),
2917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetValue));
2918     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
2919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelected));
2920     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFontColor));
2922     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionBgColor"),
2923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionBgColor));
2924     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionBgColor"),
2925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionBgColor));
2926     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFontColor"),
2927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFontColor));
2928     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFontColor"),
2929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFontColor));
2930     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionWidth"),
2931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionWidth));
2932     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionWidth"),
2933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionWidth));
2934     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionHeight"),
2935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionHeight));
2936     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionHeight"),
2937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionHeight));
2938     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetWidth));
2940     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetWidth));
2942     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetHeight));
2944     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetHeight));
2946     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
2947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSize));
2948     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
2949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSize));
2950     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlSize"),
2951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetControlSize));
2952     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlSize"),
2953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetControlSize));
2954     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetContentModifierBuilder));
2956     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundColor"),
2957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundColor));
2958     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundColor"),
2959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundColor));
2960     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundBlurStyle"),
2961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundBlurStyle));
2962     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundBlurStyle"),
2963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundBlurStyle));
2964     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetDivider));
2966     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetDivider));
2968     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "select"), select);
2969 }
2970 
RegisterPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2971 void ArkUINativeModule::RegisterPanelAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2972 {
2973     auto panel = panda::ObjectRef::New(vm);
2974     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMode"),
2975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMode));
2976     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMode"),
2977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMode));
2978     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelFullHeight"),
2979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelFullHeight));
2980     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelFullHeight"),
2981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelFullHeight));
2982     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelHalfHeight"),
2983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelHalfHeight));
2984     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelHalfHeight"),
2985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelHalfHeight));
2986     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMiniHeight"),
2987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMiniHeight));
2988     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMiniHeight"),
2989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMiniHeight));
2990     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelBackgroundMask"),
2991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelBackgroundMask));
2992     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelBackgroundMask"),
2993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelBackgroundMask));
2994     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelType"),
2995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelType));
2996     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelType"),
2997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelType));
2998     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelCustomHeight"),
2999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelCustomHeight));
3000     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelCustomHeight"),
3001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelCustomHeight));
3002     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
3003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
3004     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
3005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
3006     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
3007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
3008     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
3009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
3010     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
3011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
3012     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
3013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
3014     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
3015 }
3016 
RegisterButtonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3017 void ArkUINativeModule::RegisterButtonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3018 {
3019     auto button = panda::ObjectRef::New(vm);
3020     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCreateWithLabel"),
3021         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetCreateWithLabel));
3022     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3023         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabel));
3024     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabel"),
3025         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabel));
3026     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptions"),
3027         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetOptions));
3028     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptions"),
3029         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetOptions));
3030     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3031         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetType));
3032     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3033         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetType));
3034     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStateEffect"),
3035         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetStateEffect));
3036     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStateEffect"),
3037         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetStateEffect));
3038     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3039         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontColor));
3040     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3041         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontColor));
3042     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3043         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontSize));
3044     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3045         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontSize));
3046     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3047         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontWeight));
3048     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3049         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontWeight));
3050     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3051         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontStyle));
3052     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3053         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontStyle));
3054     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3055         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontFamily));
3056     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3057         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontFamily));
3058     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelStyle"),
3059         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabelStyle));
3060     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelStyle"),
3061         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabelStyle));
3062     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetBackgroundColor));
3064     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetBackgroundColor));
3066     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorderRadius"),
3067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorderRadius));
3068     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorderRadius"),
3069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorderRadius));
3070     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorder"),
3071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorder));
3072     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorder"),
3073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorder));
3074     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonSize"),
3075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonSize));
3076     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonSize"),
3077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonSize));
3078     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonRole"),
3079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonRole));
3080     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonRole"),
3081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonRole));
3082     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonStyle"),
3083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonStyle));
3084     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonStyle"),
3085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonStyle));
3086     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonControlSize"),
3087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonControlSize));
3088     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetContentModifierBuilder));
3090     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonControlSize"),
3091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonControlSize));
3092     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "button"), button);
3093 }
3094 
RegisterToggleAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3095 void ArkUINativeModule::RegisterToggleAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3096 {
3097     auto toggle = panda::ObjectRef::New(vm);
3098     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
3099         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSelectedColor));
3100     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
3101         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSelectedColor));
3102     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchPointColor"),
3103         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchPointColor));
3104     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchPointColor"),
3105         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchPointColor));
3106     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3107         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHeight));
3108     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3109         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHeight));
3110     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
3111         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetResponseRegion));
3112     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
3113         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetResponseRegion));
3114     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
3115         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetPadding));
3116     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
3117         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetPadding));
3118     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3119         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetBackgroundColor));
3120     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3121         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetBackgroundColor));
3122     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
3123         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHoverEffect));
3124     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
3125         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHoverEffect));
3126     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchStyle"),
3127         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchStyle));
3128     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchStyle"),
3129         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchStyle));
3130     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3131         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetContentModifierBuilder));
3132     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "toggle"), toggle);
3133 }
3134 
RegisterDividerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3135 void ArkUINativeModule::RegisterDividerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3136 {
3137     auto divider = panda::ObjectRef::New(vm);
3138     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
3139         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetStrokeWidth));
3140     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
3141         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetStrokeWidth));
3142     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineCap"),
3143         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetLineCap));
3144     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineCap"),
3145         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetLineCap));
3146     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
3147         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetColor));
3148     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
3149         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetColor));
3150     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
3151         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetVertical));
3152     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
3153         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetVertical));
3154     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "divider"), divider);
3155 }
3156 
RegisterGridAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3157 void ArkUINativeModule::RegisterGridAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3158 {
3159     auto grid = panda::ObjectRef::New(vm);
3160     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
3161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsTemplate));
3162     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
3163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsTemplate));
3164     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
3165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsTemplate));
3166     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
3167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsTemplate));
3168     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
3169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsGap));
3170     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
3171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsGap));
3172     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
3173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsGap));
3174     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
3175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsGap));
3176     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
3177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBar));
3178     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
3179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBar));
3180     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
3181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarWidth));
3182     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
3183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarWidth));
3184     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
3185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarColor));
3186     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
3187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarColor));
3188     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
3189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCachedCount));
3190     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
3191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCachedCount));
3192     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
3193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEditMode));
3194     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
3195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEditMode));
3196     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
3197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMultiSelectable));
3198     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
3199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMultiSelectable));
3200     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxCount"),
3201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMaxCount));
3202     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxCount"),
3203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMaxCount));
3204     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinCount"),
3205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMinCount));
3206     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinCount"),
3207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMinCount));
3208     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCellLength"),
3209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCellLength));
3210     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCellLength"),
3211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCellLength));
3212     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
3213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetLayoutDirection));
3214     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
3215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetLayoutDirection));
3216     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportAnimation"),
3217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetSupportAnimation));
3218     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSupportAnimation"),
3219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetSupportAnimation));
3220     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
3221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEdgeEffect));
3222     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
3223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEdgeEffect));
3224     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
3225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetNestedScroll));
3226     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
3227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetNestedScroll));
3228     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
3229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEnableScroll));
3230     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
3231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEnableScroll));
3232     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
3233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFriction));
3234     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
3235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFriction));
3236     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
3237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFlingSpeedLimit));
3238     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
3239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFlingSpeedLimit));
3240     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
3241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetAlignItems));
3242     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
3243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetAlignItems));
3244     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "grid"), grid);
3245 }
3246 
RegisterNavigationAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3247 void ArkUINativeModule::RegisterNavigationAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3248 {
3249     auto navigation = panda::ObjectRef::New(vm);
3250     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
3251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideToolBar));
3252     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
3253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideToolBar));
3254     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitleMode"),
3255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitleMode));
3256     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitleMode"),
3257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitleMode));
3258     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
3259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideBackButton));
3260     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
3261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideBackButton));
3262     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubTitle"),
3263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetSubtitle));
3264     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubTitle"),
3265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetSubtitle));
3266     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideNavBar"),
3267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideNavBar));
3268     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideNavBar"),
3269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideNavBar));
3270     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetUsrNavigationMode));
3272     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetUsrNavigationMode));
3274     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarPosition"),
3275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarPosition));
3276     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarPosition"),
3277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarPosition));
3278     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidth"),
3279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidth));
3280     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidth"),
3281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidth));
3282     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidthRange"),
3283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidthRange));
3284     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidthRange"),
3285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidthRange));
3286     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMinContentWidth));
3288     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMinContentWidth));
3290     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
3291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideTitleBar));
3292     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
3293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideTitleBar));
3294     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
3295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetBackButtonIcon));
3296     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
3297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetBackButtonIcon));
3298     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
3299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetIgnoreLayoutSafeArea));
3300     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
3301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetIgnoreLayoutSafeArea));
3302     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
3303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitle));
3304     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
3305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitle));
3306     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigation"), navigation);
3307 }
3308 
RegisterImageAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3309 void ArkUINativeModule::RegisterImageAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3310 {
3311     auto image = panda::ObjectRef::New(vm);
3312     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageShowSrc"),
3313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageShowSrc));
3314     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
3315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetCopyOption));
3316     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
3317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetCopyOption));
3318     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoResize"),
3319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAutoResize));
3320     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoResize"),
3321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAutoResize));
3322     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectRepeat"),
3323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectRepeat));
3324     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectRepeat"),
3325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectRepeat));
3326     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderMode"),
3327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetRenderMode));
3328     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderMode"),
3329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetRenderMode));
3330     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3332     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3334     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3336     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3338     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3340     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3342     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSourceSize"),
3343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSourceSize));
3344     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSourceSize"),
3345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSourceSize));
3346     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMatchTextDirection"),
3347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetMatchTextDirection));
3348     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMatchTextDirection"),
3349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetMatchTextDirection));
3350     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillColor"),
3351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFillColor));
3352     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillColor"),
3353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFillColor));
3354     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
3355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAlt));
3356     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
3357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAlt));
3358     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageInterpolation"),
3359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageInterpolation));
3360     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageInterpolation"),
3361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageInterpolation));
3362     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
3363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetColorFilter));
3364     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
3365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetColorFilter));
3366     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3368     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3370     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3372     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3374     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3376     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3378     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
3379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDraggable));
3380     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
3381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDraggable));
3382     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
3383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetBorderRadius));
3384     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
3385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetBorderRadius));
3386     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageBorder"),
3387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageBorder));
3388     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageBorder"),
3389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageBorder));
3390     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageOpacity"),
3391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageOpacity));
3392     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageOpacity"),
3393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageOpacity));
3394     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageTransition"),
3395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageTransition));
3396     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageTransition"),
3397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageTransition));
3398     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAntialiasing"),
3399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEdgeAntialiasing));
3400     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAntialiasing"),
3401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEdgeAntialiasing));
3402     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizableLattice"),
3403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizableLattice));
3404     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizable"),
3405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizable));
3406     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizable"),
3407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetResizable));
3408     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDynamicRangeMode"),
3409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDynamicRangeMode));
3410     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDynamicRangeMode"),
3411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDynamicRangeMode));
3412     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnhancedImageQuality"),
3413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEnhancedImageQuality));
3414     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnhancedImageQuality"),
3415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEnhancedImageQuality));
3416     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
3417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetPrivacySensitive));
3418     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
3419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetPrivacySensitive));
3420     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "enableAnalyzer"),
3421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::EnableAnalyzer));
3422     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "analyzerConfig"),
3423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::AnalyzerConfig));
3424     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
3425         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnComplete));
3426     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
3427         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnComplete));
3428     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
3429         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnError));
3430     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
3431         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnError));
3432     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFinish"),
3433         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnFinish));
3434     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFinish"),
3435         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnFinish));
3436     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "image"), image);
3437 }
3438 
RegisterNavRouterAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3439 void ArkUINativeModule::RegisterNavRouterAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3440 {
3441     auto navRouter = panda::ObjectRef::New(vm);
3442     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::SetMode));
3444     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::ResetMode));
3446     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navRouter"), navRouter);
3447 }
3448 
RegisterNavigatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3449 void ArkUINativeModule::RegisterNavigatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3450 {
3451     auto navigator = panda::ObjectRef::New(vm);
3452     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTarget"),
3453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetTarget));
3454     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTarget"),
3455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetTarget));
3456     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetType));
3458     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetType));
3460     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActive"),
3461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetActive));
3462     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActive"),
3463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetActive));
3464     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setParams"),
3465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetParams));
3466     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetParams"),
3467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetParams));
3468     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigator"), navigator);
3469 }
3470 
RegisterNodeContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3471 void ArkUINativeModule::RegisterNodeContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3472 {
3473     auto nodeContainer = panda::ObjectRef::New(vm);
3474     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "rebuild"),
3475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Rebuild));
3476     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "clean"),
3477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Clean));
3478     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeContainer"), nodeContainer);
3479 }
3480 
RegisterRenderNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3481 void ArkUINativeModule::RegisterRenderNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3482 {
3483     auto renderNode = panda::ObjectRef::New(vm);
3484     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createRenderNode"),
3485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::CreateRenderNode));
3486     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::AppendChild));
3488     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::InsertChildAfter));
3490     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::RemoveChild));
3492     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::ClearChildren));
3494     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipToFrame"),
3495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetClipToFrame));
3496     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotation"),
3497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRotation));
3498     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowColor"),
3499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowColor));
3500     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowOffset"),
3501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowOffset));
3502     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetLabel));
3504     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowAlpha"),
3505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowAlpha));
3506     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowElevation"),
3507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowElevation));
3508     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowRadius"),
3509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowRadius));
3510     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::Invalidate));
3512     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
3513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetScale));
3514     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBackgroundColor));
3516     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPivot"),
3517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPivot));
3518     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrame"),
3519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetFrame));
3520     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetSize));
3522     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
3523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOpacity));
3524     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
3525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetTranslate));
3526     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
3527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPosition));
3528     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkNodeGroup"),
3529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetMarkNodeGroup));
3530     RegisterRenderNodeBorderAndMaskAttributes(renderNode, vm);
3531     RegisterRenderNodeShapeClipAttributes(renderNode, vm);
3532     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "renderNode"), renderNode);
3533 }
3534 
RegisterFrameNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3535 void ArkUINativeModule::RegisterFrameNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3536 {
3537     auto frameNode = panda::ObjectRef::New(vm);
3538     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isModifiable"),
3539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsModifiable));
3540     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createFrameNode"),
3541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateFrameNode));
3542         frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createTypedFrameNode"),
3543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateTypedFrameNode));
3544     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::Invalidate));
3546     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AppendChild));
3548     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::InsertChildAfter));
3550     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveChild));
3552     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::ClearChildren));
3554     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChildrenCount"),
3555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChildrenCount));
3556     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChild"),
3557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChild));
3558     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirst"),
3559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirst));
3560     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNextSibling"),
3561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNextSibling));
3562     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPreviousSibling"),
3563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPreviousSibling));
3564     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getParent"),
3565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetParent));
3566     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getIdByNodePtr"),
3567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetIdByNodePtr));
3568     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
3569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnClick));
3570     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
3571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnTouch));
3572     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
3573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAppear));
3574     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
3575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDisappear));
3576     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
3577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnKeyEvent));
3578     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
3579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnFocus));
3580     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
3581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnBlur));
3582     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
3583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHover));
3584     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
3585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnMouse));
3586     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
3587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnSizeChange));
3588     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnVisibleAreaApproximateChange"),
3589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnVisibleAreaApproximateChange));
3590     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "propertyUpdate"),
3591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::PropertyUpdate));
3592     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParent"),
3593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParent));
3594     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreen"),
3595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreen));
3596     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindow"),
3597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindow));
3598     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParentWithTransform"),
3599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParentWithTransform));
3600     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreenWithTransform"),
3601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreenWithTransform));
3602     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindowWithTransform"),
3603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindowWithTransform));
3604     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getMeasuredSize"),
3605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetMeasuredSize));
3606     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLayoutPosition"),
3607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLayoutPosition));
3608     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigBorderWidth"),
3609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigBorderWidth));
3610     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigPadding"),
3611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigPadding));
3612     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigMargin"),
3613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigMargin));
3614     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigSize"),
3615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigSize));
3616     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getId"),
3617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetId));
3618     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNodeType"),
3619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNodeType));
3620     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getOpacity"),
3621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetOpacity));
3622     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isVisible"),
3623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsVisible));
3624     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isClipToFrame"),
3625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsClipToFrame));
3626     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isAttached"),
3627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsAttached));
3628     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getInspectorInfo"),
3629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetInspectorInfo));
3630     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMeasuredSize"),
3631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetMeasuredSize));
3632     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutPosition"),
3633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetLayoutPosition));
3634     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "measureNode"),
3635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MeasureNode));
3636     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "layoutNode"),
3637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::LayoutNode));
3638     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNeedsLayout"),
3639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetNeedsLayout));
3640     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
3641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAttach));
3642     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
3643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDetach));
3644     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameCallback"),
3645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RegisterFrameCallback));
3646     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "markDirty"),
3647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MarkDirty));
3648     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNodeContent"),
3649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateNodeContent));
3650     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "addFrameNodeToNodeContent"),
3651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AddFrameNodeToNodeContent));
3652     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeFrameNodeFromNodeContent"),
3653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveFrameNodeFromNodeContent));
3654     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstUINode"),
3655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstUINode));
3656     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCustomPropertyCapiByKey"),
3657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCustomPropertyCapiByKey));
3658     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCustomPropertyModiferByKey"),
3659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCustomPropertyModiferByKey));
3660     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "frameNode"), frameNode);
3661 }
3662 
RegisterLineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3663 void ArkUINativeModule::RegisterLineAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3664 {
3665     auto line = panda::ObjectRef::New(vm);
3666     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStartPoint"),
3667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetStartPoint));
3668     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStartPoint"),
3669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetStartPoint));
3670     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEndPoint"),
3671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetEndPoint));
3672     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEndPoint"),
3673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetEndPoint));
3674     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "line"), line);
3675 }
3676 
RegisterPathAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3677 void ArkUINativeModule::RegisterPathAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3678 {
3679     auto path = panda::ObjectRef::New(vm);
3680     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathCommands"),
3681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::SetPathCommands));
3682     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathCommands"),
3683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::ResetPathCommands));
3684     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "path"), path);
3685 }
3686 
RegisterPolygonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3687 void ArkUINativeModule::RegisterPolygonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3688 {
3689     auto polygon = panda::ObjectRef::New(vm);
3690     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPolygonPoints"),
3691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::SetPolygonPoints));
3692     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPolygonPoints"),
3693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::ResetPolygonPoints));
3694     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polygon"), polygon);
3695 }
3696 
RegisterPolylineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3697 void ArkUINativeModule::RegisterPolylineAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3698 {
3699     auto polyline = panda::ObjectRef::New(vm);
3700     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPoints"),
3701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::SetPoints));
3702     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPoints"),
3703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::ResetPoints));
3704     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polyline"), polyline);
3705 }
3706 
RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3707 void ArkUINativeModule::RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3708 {
3709     auto sideBarContainer = panda::ObjectRef::New(vm);
3710     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarWidth"),
3711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarWidth));
3712     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarWidth"),
3713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarWidth));
3714     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinSideBarWidth"),
3715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinSideBarWidth));
3716     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinSideBarWidth"),
3717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinSideBarWidth));
3718     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlButton"),
3719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetControlButton));
3720     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlButton"),
3721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetControlButton));
3722     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowControlButton"),
3723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowControlButton));
3724     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowControlButton"),
3725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowControlButton));
3726     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHide"),
3727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetAutoHide));
3728     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHide"),
3729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetAutoHide));
3730     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxSideBarWidth"),
3731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMaxSideBarWidth));
3732     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxSideBarWidth"),
3733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMaxSideBarWidth));
3734     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinContentWidth));
3736     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinContentWidth));
3738     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarPosition"),
3739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarPosition));
3740     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarPosition"),
3741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarPosition));
3742     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSideBar"),
3743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowSideBar));
3744     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSideBar"),
3745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowSideBar));
3746     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetDivider));
3748     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetDivider));
3750     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "sideBarContainer"), sideBarContainer);
3751 }
3752 
RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3753 void ArkUINativeModule::RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3754 {
3755     auto calendarPicker = panda::ObjectRef::New(vm);
3756     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
3757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetTextStyle));
3758     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
3759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetTextStyle));
3760     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAlign"),
3761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetEdgeAlign));
3762     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAlign"),
3763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetEdgeAlign));
3764     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerPadding"),
3765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerPadding));
3766     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerPadding"),
3767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerPadding));
3768     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorder"),
3769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorder));
3770     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorder"),
3771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorder));
3772     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerHeight"),
3773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerHeight));
3774     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerHeight"),
3775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerHeight));
3776     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderColor"),
3777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderColor));
3778     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderColor"),
3779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderColor));
3780     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderRadius"),
3781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderRadius));
3782     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderRadius"),
3783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderRadius));
3784     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "calendarPicker"), calendarPicker);
3785 }
3786 
RegisterMenuItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3787 void ArkUINativeModule::RegisterMenuItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3788 {
3789     auto menuitem = panda::ObjectRef::New(vm);
3790     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemSelected"),
3791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetMenuItemSelected));
3792     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemSelected"),
3793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetMenuItemSelected));
3794     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFontColor"),
3795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFontColor));
3796     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFontColor"),
3797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFontColor));
3798     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFontColor"),
3799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFontColor));
3800     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFontColor"),
3801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFontColor));
3802     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFont"),
3803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFont));
3804     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFont"),
3805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFont));
3806     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectIcon"),
3807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetSelectIcon));
3808     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectIcon"),
3809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetSelectIcon));
3810     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFont"),
3811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFont));
3812     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFont"),
3813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFont));
3814     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menuitem"), menuitem);
3815 }
3816 
RegisterMenuAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3817 void ArkUINativeModule::RegisterMenuAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3818 {
3819     auto menu = panda::ObjectRef::New(vm);
3820     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuFontColor"),
3821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuFontColor));
3822     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuFontColor"),
3823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuFontColor));
3824     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
3825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFont));
3826     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
3827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFont));
3828     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadius"),
3829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetRadius));
3830     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadius"),
3831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetRadius));
3832     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetWidth));
3834     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetWidth));
3836     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemDivider"),
3837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemDivider));
3838     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemDivider"),
3839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemDivider));
3840     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemGroupDivider"),
3841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemGroupDivider));
3842     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemGroupDivider"),
3843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemGroupDivider));
3844     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubMenuExpandingMode"),
3845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetSubMenuExpandingMode));
3846     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubMenuExpandingMode"),
3847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetSubMenuExpandingMode));
3848     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menu"), menu);
3849 }
3850 
RegisterTabAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3851 void ArkUINativeModule::RegisterTabAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3852 {
3853     auto tabs = panda::ObjectRef::New(vm);
3854     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarMode"),
3855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarMode));
3856     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarMode"),
3857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarMode));
3858     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollableBarModeOptions"),
3859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollableBarModeOptions));
3860     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollableBarModeOptions"),
3861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollableBarModeOptions));
3862     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarGridAlign"),
3863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarGridAlign));
3864     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarGridAlign"),
3865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarGridAlign));
3866     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetDivider));
3868     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetDivider));
3870     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
3871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetFadingEdge));
3872     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
3873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetFadingEdge));
3874     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundColor"),
3875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundColor));
3876     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundColor"),
3877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundColor));
3878     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundBlurStyle"),
3879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundBlurStyle));
3880     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundBlurStyle"),
3881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundBlurStyle));
3882     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarOverlap"),
3883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarOverlap));
3884     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarOverlap"),
3885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarOverlap));
3886     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIsVertical"),
3887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetIsVertical));
3888     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIsVertical"),
3889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetIsVertical));
3890     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarWidth"),
3891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarWidth));
3892     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarWidth"),
3893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarWidth));
3894     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarPosition"),
3895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarPosition));
3896     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarPosition"),
3897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarPosition));
3898     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
3899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollable));
3900     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
3901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollable));
3902     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarHeight"),
3903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarHeight));
3904     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarHeight"),
3905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarHeight));
3906     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarAdaptiveHeight"),
3907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarAdaptiveHeight));
3908     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarAdaptiveHeight"),
3909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarAdaptiveHeight));
3910     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimationDuration"),
3911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimationDuration));
3912     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimationDuration"),
3913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimationDuration));
3914     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarPosition"),
3915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarPosition));
3916     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarPosition"),
3917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarPosition));
3918     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabClip"),
3919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabClip));
3920     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabClip"),
3921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabClip));
3922     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabEdgeEffect"),
3923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabEdgeEffect));
3924     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabEdgeEffect"),
3925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabEdgeEffect));
3926     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabWidth"),
3927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetWidthAuto));
3928     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabWidth"),
3929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetWidthAuto));
3930     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabHeight"),
3931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetHeightAuto));
3932     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabHeight"),
3933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetHeightAuto));
3934     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimateMode"),
3935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimateMode));
3936     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimateMode"),
3937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimateMode));
3938     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabs"), tabs);
3939 }
3940 
RegisterStepperItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3941 void ArkUINativeModule::RegisterStepperItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3942 {
3943     auto stepperItem = panda::ObjectRef::New(vm);
3944     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextLabel"),
3945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetNextLabel));
3946     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextLabel"),
3947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetNextLabel));
3948     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrevLabel"),
3949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetPrevLabel));
3950     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrevLabel"),
3951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetPrevLabel));
3952     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStatus"),
3953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetStatus));
3954     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStatus"),
3955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetStatus));
3956     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stepperItem"), stepperItem);
3957 }
3958 
RegisterTabContentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3959 void ArkUINativeModule::RegisterTabContentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3960 {
3961     auto tabContent = panda::ObjectRef::New(vm);
3962     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBar"),
3963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabBar));
3964     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBar"),
3965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabBar));
3966     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentWidth"),
3967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentWidth));
3968     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentHeight"),
3969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentHeight));
3970     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentSize"),
3971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentSize));
3972     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentWidth"),
3973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentWidth));
3974     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentHeight"),
3975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentHeight));
3976     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentSize"),
3977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentSize));
3978     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabContent"), tabContent);
3979 }
3980 
RegisterRefreshAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3981 void ArkUINativeModule::RegisterRefreshAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3982 {
3983     auto refresh = panda::ObjectRef::New(vm);
3984     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRefreshOffset"),
3985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetRefreshOffset));
3986     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRefreshOffset"),
3987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetRefreshOffset));
3988     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullToRefresh"),
3989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullToRefresh));
3990     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullToRefresh"),
3991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullToRefresh));
3992     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullDownRatio"),
3993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullDownRatio));
3994     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullDownRatio"),
3995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullDownRatio));
3996     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "refresh"), refresh);
3997 }
3998 
RegisterHyperlinkAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3999 void ArkUINativeModule::RegisterHyperlinkAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4000 {
4001     auto hyperlink = panda::ObjectRef::New(vm);
4002     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetColor));
4004     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetColor));
4006     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
4007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetDraggable));
4008     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
4009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetDraggable));
4010     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
4011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetResponseRegion));
4012     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
4013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetResponseRegion));
4014     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "hyperlink"), hyperlink);
4015 }
4016 
4017 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
RegisterFormAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4018 void ArkUINativeModule::RegisterFormAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4019 {
4020     auto formComponent = panda::ObjectRef::New(vm);
4021 #ifdef PREVIEW
4022     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4024     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4026     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4028     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4030     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4032     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4034     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4036     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4038     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4040     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4042 #else
4043     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetVisibility));
4045     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetVisibility));
4047     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::AllowUpdate));
4049     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::DisallowUpdate));
4051     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetDimension));
4053     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetDimension));
4055     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetModuleName));
4057     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetModuleName));
4059     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetSize));
4061     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetSize));
4063 #endif
4064     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "formComponent"), formComponent);
4065 }
4066 #endif
4067 
RegisterDatePickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4068 void ArkUINativeModule::RegisterDatePickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4069 {
4070     auto datePicker = panda::ObjectRef::New(vm);
4071     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
4072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetSelectedTextStyle));
4073     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
4074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetSelectedTextStyle));
4075     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
4076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetTextStyle));
4077     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
4078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetTextStyle));
4079     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
4080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDisappearTextStyle));
4081     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
4082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDisappearTextStyle));
4083     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLunar"),
4084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetLunar));
4085     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLunar"),
4086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetLunar));
4087     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
4088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetBackgroundColor));
4089     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
4090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetBackgroundColor));
4091     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "datePicker"), datePicker);
4092 }
4093 
RegisterWaterFlowAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4094 void ArkUINativeModule::RegisterWaterFlowAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4095 {
4096     auto waterflow = panda::ObjectRef::New(vm);
4097     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
4098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsTemplate));
4099     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
4100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsTemplate));
4101     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
4102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsTemplate));
4103     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
4104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsTemplate));
4105     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEnableScrollInteraction));
4107     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEnableScrollInteraction));
4109     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
4110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsGap));
4111     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
4112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsGap));
4113     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
4114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsGap));
4115     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
4116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsGap));
4117     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemConstraintSize"),
4118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetItemConstraintSize));
4119     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemConstraintSize"),
4120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetItemConstraintSize));
4121     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
4122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetLayoutDirection));
4123     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
4124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetLayoutDirection));
4125     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetNestedScroll));
4127     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetNestedScroll));
4129     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFriction));
4131     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFriction));
4133     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEdgeEffect));
4135     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEdgeEffect));
4137     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBar));
4139     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBar));
4141     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarWidth));
4143     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarWidth));
4145     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarColor));
4147     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarColor));
4149     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetCachedCount));
4151     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetCachedCount));
4153     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFlingSpeedLimit));
4155     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFlingSpeedLimit));
4157     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWaterFlowInitialize"),
4158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetWaterFlowInitialize));
4159     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWaterFlowInitialize"),
4160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetWaterFlowInitialize));
4161     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "waterFlow"), waterflow);
4162 }
4163 
RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4164 void ArkUINativeModule::RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4165 {
4166     auto alphabetIndexer = panda::ObjectRef::New(vm);
4167     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemFont"),
4168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemFont));
4169     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemFont"),
4170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemFont));
4171     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedFont"),
4172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedFont));
4173     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedFont"),
4174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedFont));
4175     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupFont"),
4176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupFont));
4177     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupFont"),
4178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupFont));
4179     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetFont));
4181     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetFont));
4183     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBackgroundColor"),
4184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBackgroundColor));
4185     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBackgroundColor"),
4186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBackgroundColor));
4187     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetColor));
4189     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetColor));
4191     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupColor"),
4192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupColor));
4193     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupColor"),
4194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupColor));
4195     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
4196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedColor));
4197     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
4198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedColor));
4199     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackground"),
4200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackground));
4201     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackground"),
4202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackground));
4203     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
4204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedBackgroundColor));
4205     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
4206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedBackgroundColor));
4207     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupUnselectedColor"),
4208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupUnselectedColor));
4209     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupUnselectedColor"),
4210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupUnselectedColor));
4211     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupSelectedColor"),
4212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupSelectedColor));
4213     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupSelectedColor"),
4214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupSelectedColor));
4215     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignStyle"),
4216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAlignStyle));
4217     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignStyle"),
4218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAlignStyle));
4219     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUsingPopup"),
4220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetUsingPopup));
4221     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUsingPopup"),
4222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetUsingPopup));
4223     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
4224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelected));
4225     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
4226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelected));
4227     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemSize"),
4228         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemSize));
4229     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemSize"),
4230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemSize));
4231     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupPosition"),
4232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupPosition));
4233     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupPosition"),
4234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupPosition));
4235     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBorderRadius"),
4236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBorderRadius));
4237     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBorderRadius"),
4238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBorderRadius));
4239     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemBorderRadius"),
4240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemBorderRadius));
4241     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemBorderRadius"),
4242         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemBorderRadius));
4243     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackgroundBlurStyle"),
4244         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackgroundBlurStyle));
4245     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackgroundBlurStyle"),
4246         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackgroundBlurStyle));
4247     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupTitleBackground"),
4248         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupTitleBackground));
4249     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupTitleBackground"),
4250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupTitleBackground));
4251     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdaptiveWidth"),
4252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAdaptiveWidth));
4253     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdaptiveWidth"),
4254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAdaptiveWidth));
4255     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoCollapse"),
4256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAutoCollapse));
4257     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoCollapse"),
4258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAutoCollapse));
4259     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
4260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetEnableHapticFeedback));
4261     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
4262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetEnableHapticFeedback));
4263     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "alphabetIndexer"), alphabetIndexer);
4264 }
4265 
RegisterGaugeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4266 void ArkUINativeModule::RegisterGaugeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4267 {
4268     auto gauge = panda::ObjectRef::New(vm);
4269     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeVaule"),
4270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeValue));
4271     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeVaule"),
4272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeValue));
4273     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStartAngle"),
4274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStartAngle));
4275     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStartAngle"),
4276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStartAngle));
4277     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeEndAngle"),
4278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeEndAngle));
4279     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeEndAngle"),
4280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeEndAngle));
4281     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStrokeWidth"),
4282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStrokeWidth));
4283     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStrokeWidth"),
4284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStrokeWidth));
4285     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeTrackShadow"),
4286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeTrackShadow));
4287     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeTrackShadow"),
4288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeTrackShadow));
4289     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeIndicator"),
4290         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeIndicator));
4291     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeIndicator"),
4292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeIndicator));
4293     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeColors"),
4294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetColors));
4295     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeColors"),
4296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetColors));
4297     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetContentModifierBuilder));
4299     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gauge"), gauge);
4300 }
RegisterMarqueeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4301 void ArkUINativeModule::RegisterMarqueeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4302 {
4303     auto marquee = panda::ObjectRef::New(vm);
4304     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowScale"),
4305         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetAllowScale));
4306     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowScale"),
4307         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetAllowScale));
4308     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4309         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontWeight));
4310     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4311         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontWeight));
4312     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
4313         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontFamily));
4314     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
4315         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontFamily));
4316     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontSize));
4318     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontSize));
4320     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontColor));
4322     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontColor));
4324     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeUpdateStrategy"),
4325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeUpdateStrategy));
4326     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeUpdateStrategy"),
4327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeUpdateStrategy));
4328     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnStart"),
4329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnStart));
4330     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnStart"),
4331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnStart));
4332     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnBounce"),
4333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnBounce));
4334     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnBounce"),
4335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnBounce));
4336     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnFinish"),
4337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnFinish));
4338     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnFinish"),
4339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnFinish));
4340     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "marquee"), marquee);
4341 }
4342 
RegisterDataPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4343 void ArkUINativeModule::RegisterDataPanelAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4344 {
4345     auto dataPanel = panda::ObjectRef::New(vm);
4346     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCloseEffect"),
4347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetCloseEffect));
4348     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCloseEffect"),
4349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetCloseEffect));
4350     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackBackgroundColor"),
4351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelTrackBackgroundColor));
4352     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackBackgroundColor"),
4353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelTrackBackgroundColor));
4354     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelStrokeWidth"),
4355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelStrokeWidth));
4356     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelStrokeWidth"),
4357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelStrokeWidth));
4358     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelValueColors"),
4359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetValueColors));
4360     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelValueColors"),
4361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetValueColors));
4362     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackShadow"),
4363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetTrackShadow));
4364     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackShadow"),
4365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetTrackShadow));
4366     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetContentModifierBuilder));
4368     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "dataPanel"), dataPanel);
4369 }
4370 
RegisterScrollAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4371 void ArkUINativeModule::RegisterScrollAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4372 {
4373     auto scroll = panda::ObjectRef::New(vm);
4374     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollInitialize"),
4375         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollInitialize));
4376     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollInitialize"),
4377         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollInitialize));
4378     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4379         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetNestedScroll));
4380     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4381         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetNestedScroll));
4382     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
4383         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnableScroll));
4384     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
4385         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnableScroll));
4386     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4387         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFriction));
4388     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4389         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFriction));
4390     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnap"),
4391         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollSnap));
4392     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnap"),
4393         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollSnap));
4394     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4395         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBar));
4396     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4397         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBar));
4398     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4399         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollable));
4400     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4401         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollable));
4402     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4403         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarColor));
4404     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4405         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarColor));
4406     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4407         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarWidth));
4408     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4409         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarWidth));
4410     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4411         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEdgeEffect));
4412     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4413         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEdgeEffect));
4414     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePaging"),
4415         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnablePaging));
4416     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePaging"),
4417         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnablePaging));
4418     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialOffset"),
4419         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetInitialOffset));
4420     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialOffset"),
4421         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetInitialOffset));
4422     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4423         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFlingSpeedLimit));
4424     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4425         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFlingSpeedLimit));
4426     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStart"),
4427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStart));
4428     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStart"),
4429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStart));
4430     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEnd"),
4431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEnd));
4432     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEnd"),
4433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEnd));
4434     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStop"),
4435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStop));
4436     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStop"),
4437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStop));
4438     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScroll"),
4439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScroll));
4440     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScroll"),
4441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScroll));
4442     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEdge"),
4443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEdge));
4444     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEdge"),
4445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEdge));
4446     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnDidScroll"),
4447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnDidScroll));
4448     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnDidScroll"),
4449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnDidScroll));
4450     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnWillScroll"),
4451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnWillScroll));
4452     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnWillScroll"),
4453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnWillScroll));
4454     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollFrameBegin"),
4455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollFrameBegin));
4456     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollFrameBegin"),
4457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollFrameBegin));
4458     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scroll"), scroll);
4459 }
4460 
RegisterGridItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4461 void ArkUINativeModule::RegisterGridItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4462 {
4463     auto gridItem = panda::ObjectRef::New(vm);
4464     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelectable"),
4465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelectable));
4466     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelectable"),
4467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelectable));
4468     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelected"),
4469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelected));
4470     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelected"),
4471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelected));
4472     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowStart"),
4473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowStart));
4474     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowStart"),
4475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowStart));
4476     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowEnd"),
4477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowEnd));
4478     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowEnd"),
4479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowEnd));
4480     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnStart"),
4481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnStart));
4482     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnStart"),
4483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnStart));
4484     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnEnd"),
4485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnEnd));
4486     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnEnd"),
4487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnEnd));
4488     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridItem"), gridItem);
4489 }
4490 
RegisterProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4491 void ArkUINativeModule::RegisterProgressAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4492 {
4493     auto progress = panda::ObjectRef::New(vm);
4494     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressInitialize"),
4495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressInitialize));
4496     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressInitialize"),
4497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressInitialize));
4498     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressValue"),
4499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressValue));
4500     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressValue"),
4501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressValue));
4502     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressColor"),
4503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressColor));
4504     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressColor"),
4505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressColor));
4506     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressStyle"),
4507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressStyle));
4508     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressStyle"),
4509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressStyle));
4510     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressBackgroundColor"),
4511         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::SetProgressBackgroundColor));
4512     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressBackgroundColor"),
4513         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::ResetProgressBackgroundColor));
4514     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetContentModifierBuilder));
4516     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "progress"), progress);
4517 }
4518 
4519 #ifdef PLUGIN_COMPONENT_SUPPORTED
RegisterPluginAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4520 void ArkUINativeModule::RegisterPluginAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4521 {
4522     auto plugin = panda::ObjectRef::New(vm);
4523     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetSize));
4525     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetSize));
4527     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetWidth));
4529     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetWidth));
4531     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetHeight));
4533     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetHeight));
4535     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "plugin"), plugin);
4536 }
4537 #endif
4538 
RegisterCommonShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4539 void ArkUINativeModule::RegisterCommonShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4540 {
4541     auto commonShape = panda::ObjectRef::New(vm);
4542     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashArray"),
4543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashArray));
4544     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashArray"),
4545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashArray));
4546     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeMiterLimit"),
4547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeMiterLimit));
4548     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeMiterLimit"),
4549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeMiterLimit));
4550     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillOpacity"),
4551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFillOpacity));
4552     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillOpacity"),
4553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFillOpacity));
4554     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeOpacity"),
4555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeOpacity));
4556     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeOpacity"),
4557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeOpacity));
4558     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
4559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeWidth));
4560     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
4561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeWidth));
4562     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAntiAlias"),
4563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetAntiAlias));
4564     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAntiAlias"),
4565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetAntiAlias));
4566     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStroke"),
4567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStroke));
4568     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStroke"),
4569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStroke));
4570     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFill"),
4571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFill));
4572     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFill"),
4573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFill));
4574     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashOffset"),
4575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashOffset));
4576     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashOffset"),
4577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashOffset));
4578     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineCap"),
4579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineCap));
4580     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineCap"),
4581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineCap));
4582     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineJoin"),
4583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineJoin));
4584     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineJoin"),
4585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineJoin));
4586     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetHeight));
4588     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetHeight));
4590     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetWidth));
4592     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetWidth));
4594     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
4595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetForegroundColor));
4596     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
4597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetForegroundColor));
4598     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "commonShape"), commonShape);
4599 }
4600 
RegisterShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4601 void ArkUINativeModule::RegisterShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4602 {
4603     auto shape = panda::ObjectRef::New(vm);
4604     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeViewPort"),
4605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetViewPort));
4606     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeViewPort"),
4607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetViewPort));
4608     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeMesh"),
4609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetMesh));
4610     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeMesh"),
4611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetMesh));
4612     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "shape"), shape);
4613 }
4614 
RegisterRectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4615 void ArkUINativeModule::RegisterRectAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4616 {
4617     auto rect = panda::ObjectRef::New(vm);
4618     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusWidth"),
4619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusWidth));
4620     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusWidth"),
4621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusWidth));
4622     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusHeight"),
4623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusHeight));
4624     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusHeight"),
4625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusHeight));
4626     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadius"),
4627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadius));
4628     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadius"),
4629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadius));
4630     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rect"), rect);
4631 }
4632 
RegisterSwiperAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4633 void ArkUINativeModule::RegisterSwiperAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4634 {
4635     auto swiper = panda::ObjectRef::New(vm);
4636     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInitialize"),
4637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInitialize));
4638     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInitialize"),
4639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInitialize));
4640     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperNextMargin"),
4641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperNextMargin));
4642     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperNextMargin"),
4643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperNextMargin));
4644     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPrevMargin"),
4645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPrevMargin));
4646     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPrevMargin"),
4647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPrevMargin));
4648     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayCount"),
4649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayCount));
4650     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayCount"),
4651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayCount));
4652     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperSwipeByGroup"),
4653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperSwipeByGroup));
4654     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperSwipeByGroup"),
4655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperSwipeByGroup));
4656     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayArrow"),
4657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayArrow));
4658     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayArrow"),
4659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayArrow));
4660     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCurve"),
4661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCurve));
4662     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCurve"),
4663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCurve));
4664     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnChange"),
4665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnChange));
4666     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnChange"),
4667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnChange));
4668     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisableSwipe"),
4669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisableSwipe));
4670     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisableSwipe"),
4671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisableSwipe));
4672     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEffectMode"),
4673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEffectMode));
4674     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEffectMode"),
4675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEffectMode));
4676     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCachedCount"),
4677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCachedCount));
4678     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCachedCount"),
4679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCachedCount));
4680     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayMode"),
4681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayMode));
4682     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayMode"),
4683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayMode));
4684     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperItemSpace"),
4685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperItemSpace));
4686     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperItemSpace"),
4687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperItemSpace));
4688     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperVertical"),
4689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperVertical));
4690     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperVertical"),
4691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperVertical));
4692     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperLoop"),
4693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperLoop));
4694     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperLoop"),
4695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperLoop));
4696     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInterval"),
4697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInterval));
4698     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInterval"),
4699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInterval));
4700     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperAutoPlay"),
4701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperAutoPlay));
4702     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperAutoPlay"),
4703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperAutoPlay));
4704     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndex"),
4705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndex));
4706     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndex"),
4707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndex));
4708     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndicator"),
4709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndicator));
4710     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndicator"),
4711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndicator));
4712     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDuration"),
4713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDuration));
4714     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDuration"),
4715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDuration));
4716     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEnabled"),
4717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEnabled));
4718     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEnabled"),
4719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEnabled));
4720     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetNestedScroll));
4722     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetNestedScroll));
4724     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationStart"),
4725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationStart));
4726     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationStart"),
4727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationStart));
4728     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationEnd"),
4729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationEnd));
4730     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationEnd"),
4731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationEnd));
4732     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnGestureSwipe"),
4733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnGestureSwipe));
4734     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnGestureSwipe"),
4735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnGestureSwipe));
4736     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorInteractive"),
4737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetIndicatorInteractive));
4738     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorInteractive"),
4739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetIndicatorInteractive));
4740     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCustomContentTransition"),
4741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCustomContentTransition));
4742     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCustomContentTransition"),
4743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCustomContentTransition));
4744     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentDidScroll"),
4745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetOnContentDidScroll));
4746     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentDidScroll"),
4747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetOnContentDidScroll));
4748     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "swiper"), swiper);
4749 }
4750 
RegisterListItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4751 void ArkUINativeModule::RegisterListItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4752 {
4753     auto listItem = panda::ObjectRef::New(vm);
4754     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemSelected"),
4755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetListItemSelected));
4756     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemSelected"),
4757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetListItemSelected));
4758     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectable"),
4759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSelectable));
4760     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectable"),
4761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSelectable));
4762     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwipeAction"),
4763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSwipeAction));
4764     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwipeAction"),
4765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSwipeAction));
4766     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItem"), listItem);
4767 }
4768 
RegisterListAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4769 void ArkUINativeModule::RegisterListAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4770 {
4771     auto list = panda::ObjectRef::New(vm);
4772     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
4773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEditMode));
4774     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
4775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEditMode));
4776     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
4777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetMultiSelectable));
4778     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
4779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetMultiSelectable));
4780     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimation"),
4781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimation));
4782     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimation"),
4783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimation));
4784     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetCachedCount));
4786     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetCachedCount));
4788     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEnableScrollInteraction));
4790     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEnableScrollInteraction));
4792     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
4793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
4794     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
4795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
4796     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
4797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
4798     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
4799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
4800     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListEdgeEffect"),
4801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListEdgeEffect));
4802     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListEdgeEffect"),
4803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListEdgeEffect));
4804     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListDirection"),
4805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListDirection));
4806     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListDirection"),
4807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListDirection));
4808     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListFriction"),
4809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListFriction));
4810     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListFriction"),
4811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListFriction));
4812     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListMaintainVisibleContentPosition"),
4813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListMaintainVisibleContentPosition));
4814     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListMaintainVisibleContentPosition"),
4815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListMaintainVisibleContentPosition));
4816     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListNestedScroll"),
4817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListNestedScroll));
4818     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListNestedScroll"),
4819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListNestedScroll));
4820     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBar"),
4821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBar));
4822     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBar"),
4823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBar));
4824     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarWidth"),
4825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarWidth));
4826     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarWidth"),
4827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarWidth));
4828     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarColor"),
4829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarColor));
4830     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarColor"),
4831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarColor));
4832     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetFlingSpeedLimit));
4834     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetFlingSpeedLimit));
4836     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignListItem"),
4837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetAlignListItem));
4838     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignListItem"),
4839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetAlignListItem));
4840     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnapAlign"),
4841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetScrollSnapAlign));
4842     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnapAlign"),
4843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetScrollSnapAlign));
4844     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentStartOffset"),
4845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentStartOffset));
4846     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentStartOffset"),
4847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentStartOffset));
4848     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentEndOffset"),
4849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentEndOffset));
4850     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentEndOffset"),
4851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentEndOffset));
4852     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
4853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetDivider));
4854     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
4855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetDivider));
4856     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimationOptions"),
4857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimationOptions));
4858     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimationOptions"),
4859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimationOptions));
4860     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListLanes"),
4861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListLanes));
4862     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListLanes"),
4863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListLanes));
4864     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListChildrenMainSize"),
4865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListChildrenMainSize));
4866     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListChildrenMainSize"),
4867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListChildrenMainSize));
4868     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
4869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSpace));
4870     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
4871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSpace));
4872     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
4873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialIndex));
4874     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
4875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialIndex));
4876     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialScroller"),
4877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialScroller));
4878     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialScroller"),
4879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialScroller));
4880     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "list"), list);
4881 }
4882 
RegisterListItemGroupAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4883 void ArkUINativeModule::RegisterListItemGroupAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4884 {
4885     auto listItemGroup = panda::ObjectRef::New(vm);
4886     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
4887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetDivider));
4888     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
4889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetDivider));
4890     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupChildrenMainSize"),
4891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetChildrenMainSize));
4892     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupChildrenMainSize"),
4893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetChildrenMainSize));
4894     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupInitialize"),
4895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetListItemGroupInitialize));
4896     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupInitialize"),
4897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetListItemGroupInitialize));
4898     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItemGroup"), listItemGroup);
4899 }
4900 
RegisterQRCodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4901 void ArkUINativeModule::RegisterQRCodeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4902 {
4903     auto qrcode = panda::ObjectRef::New(vm);
4904     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRColor"),
4905         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRColor));
4906     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRColor"),
4907         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRColor));
4908     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRBackgroundColor"),
4909         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRBackgroundColor));
4910     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRBackgroundColor"),
4911         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRBackgroundColor));
4912     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentOpacity"),
4913         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetContentOpacity));
4914     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentOpacity"),
4915         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetContentOpacity));
4916     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "qrcode"), qrcode);
4917 }
4918 
RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4919 void ArkUINativeModule::RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4920 {
4921     auto loadingProgress = panda::ObjectRef::New(vm);
4922     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetColor));
4924     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetColor));
4926     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableLoading"),
4927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetEnableLoading));
4928     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableLoading"),
4929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetEnableLoading));
4930     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
4931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetForegroundColor));
4932     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
4933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetForegroundColor));
4934     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetContentModifierBuilder));
4936     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "loadingProgress"), loadingProgress);
4937 }
4938 
RegisterTextClockAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4939 void ArkUINativeModule::RegisterTextClockAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4940 {
4941     auto textClock = panda::ObjectRef::New(vm);
4942     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
4943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFormat));
4944     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
4945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFormat));
4946     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontColor));
4948     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontColor));
4950     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontSize));
4952     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontSize));
4954     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
4955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontStyle));
4956     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
4957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontStyle));
4958     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontWeight));
4960     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontWeight));
4962     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
4963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFamily));
4964     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
4965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFamily));
4966     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
4967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextShadow));
4968     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
4969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetTextShadow));
4970     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
4971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFeature));
4972     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
4973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFeature));
4974     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetContentModifierBuilder));
4976     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDateTimeOptions"),
4977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetDateTimeOptions));
4978     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDateTimeOptions"),
4979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetDateTimeOptions));
4980     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textClock"), textClock);
4981 }
4982 
RegisterTextTimerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4983 void ArkUINativeModule::RegisterTextTimerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4984 {
4985     auto textTimer = panda::ObjectRef::New(vm);
4986     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4987         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontColor));
4988     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4989         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontColor));
4990     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4991         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontSize));
4992     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4993         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontSize));
4994     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4995         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontWeight));
4996     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4997         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontWeight));
4998     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
4999         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontStyle));
5000     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5001         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontStyle));
5002     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5003         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontFamily));
5004     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5005         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontFamily));
5006     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5007         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFormat));
5008     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5009         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFormat));
5010     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5011         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetTextShadow));
5012     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5013         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetTextShadow));
5014     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetContentModifierBuilder));
5016     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textTimer"), textTimer);
5017 }
5018 #ifdef XCOMPONENT_SUPPORTED
RegisterXComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5019 void ArkUINativeModule::RegisterXComponentAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5020 {
5021     auto xComponent = panda::ObjectRef::New(vm);
5022     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setXComponentInitialize"),
5023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetXComponentInitialize));
5024     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetXComponentInitialize"),
5025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetXComponentInitialize));
5026     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
5027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundColor));
5028     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
5029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundColor));
5030     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
5031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOpacity));
5032     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
5033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOpacity));
5034     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
5035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImage));
5036     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
5037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImage));
5038     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
5039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImageSize));
5040     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
5041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImageSize));
5042     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
5043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImagePosition));
5044     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
5045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImagePosition));
5046     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
5047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBlur));
5048     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
5049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBlur));
5050     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
5051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackdropBlur));
5052     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
5053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackdropBlur));
5054     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
5055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetGrayscale));
5056     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
5057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetGrayscale));
5058     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
5059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBrightness));
5060     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
5061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBrightness));
5062     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
5063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSaturate));
5064     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
5065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSaturate));
5066     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
5067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetContrast));
5068     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
5069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetContrast));
5070     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
5071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetInvert));
5072     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
5073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetInvert));
5074     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
5075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5076     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
5077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5078     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
5079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetHueRotate));
5080     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
5081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetHueRotate));
5082     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
5083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5084     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
5085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5086     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
5087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5088     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
5089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5090     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
5091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5092     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
5093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5094     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
5095         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5096     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
5097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5098     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
5099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5100     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
5101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5102     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnLoad"),
5103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnLoad));
5104     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnLoad"),
5105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnLoad));
5106     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDestroy"),
5107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnDestroy));
5108     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDestroy"),
5109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnDestroy));
5110     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnalyzer"),
5111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableAnalyzer));
5112     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnalyzer"),
5113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableAnalyzer));
5114     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableSecure"),
5115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableSecure));
5116     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableSecure"),
5117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableSecure));
5118     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xComponent"), xComponent);
5119 }
5120 
RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5121 void ArkUINativeModule::RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5122 {
5123     auto xcomponentNode = panda::ObjectRef::New(vm);
5124     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "create"),
5125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::Create));
5126     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNode"),
5127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::GetFrameNode));
5128     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnCreateCallback"),
5129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnCreateCallback));
5130     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnDestroyCallback"),
5131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnDestroyCallback));
5132     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "changeRenderType"),
5133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::ChangeRenderType));
5134     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xcomponentNode"), xcomponentNode);
5135 }
5136 #endif
5137 
RegisterFlexAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5138 void ArkUINativeModule::RegisterFlexAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5139 {
5140     auto flex = panda::ObjectRef::New(vm);
5141     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexInitialize"),
5142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::SetFlexInitialize));
5143     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexInitialize"),
5144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::ResetFlexInitialize));
5145     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "flex"), flex);
5146 }
5147 
RegisterResourceAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5148 void ArkUINativeModule::RegisterResourceAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5149 {
5150     auto resource = panda::ObjectRef::New(vm);
5151     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "updateColorMode"),
5152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::UpdateColorMode));
5153     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "restore"),
5154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::Restore));
5155     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getColorValue"),
5156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetColorValue));
5157     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearCache"),
5158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::ClearCache));
5159     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "resource"), resource);
5160 }
5161 } // namespace OHOS::Ace::NG
5162