1 /*
2  * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #include <cstdint>
16 
17 #include "jsnapi_expo.h"
18 #include "core/components_ng/base/inspector.h"
19 #include "core/components_ng/base/observer_handler.h"
20 #include "core/components_ng/pattern/marquee/marquee_model_ng.h"
21 
22 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
23 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_badge_bridge.h"
24 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_blank_bridge.h"
25 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_button_bridge.h"
26 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkbox_bridge.h"
27 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkboxgroup_bridge.h"
28 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_bridge.h"
29 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_bridge.h"
30 #ifdef MODEL_COMPONENT_SUPPORTED
31 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_component3d_bridge.h"
32 #endif
33 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
34 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_animator_bridge.h"
35 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_counter_bridge.h"
36 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_divider_bridge.h"
37 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_flex_bridge.h"
38 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_bridge.h"
39 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_col_bridge.h"
40 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_row_bridge.h"
41 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_item_bridge.h"
42 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_hyperlink_bridge.h"
43 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_bridge.h"
44 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_bridge.h"
45 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
46 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_span_bridge.h"
47 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_loading_progress_bridge.h"
48 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_bridge.h"
49 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_destination_bridge.h"
50 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_router_bridge.h"
51 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_item_bridge.h"
52 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_date_picker_bridge.h"
53 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigation_bridge.h"
54 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigator_bridge.h"
55 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_adapter_bridge.h"
56 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_panel_bridge.h"
57 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_container_bridge.h"
58 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_pattern_lock_bridge.h"
59 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_progress_bridge.h"
60 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_resource_bridge.h"
61 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_area_bridge.h"
62 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_clock_bridge.h"
63 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_swiper_bridge.h"
64 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_bridge.h"
65 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_input_bridge.h"
66 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_toggle_bridge.h"
67 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_radio_bridge.h"
68 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rating_bridge.h"
69 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
70 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_bridge.h"
71 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_split_bridge.h"
72 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_search_bridge.h"
73 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_select_bridge.h"
74 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stack_bridge.h"
75 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_folder_stack_bridge.h"
76 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_slider_bridge.h"
77 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_span_bridge.h"
78 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_glyph_bridge.h"
79 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_span_bridge.h"
80 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_textpicker_bridge.h"
81 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_timepicker_bridge.h"
82 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rich_editor_bridge.h"
83 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_utils_bridge.h"
84 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_video_bridge.h"
85 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stepper_item_bridge.h"
86 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
87 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabcontent_bridge.h"
88 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabs_bridge.h"
89 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_split_bridge.h"
90 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_line_bridge.h"
91 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_particle_bridge.h"
92 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_path_bridge.h"
93 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polygon_bridge.h"
94 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polyline_bridge.h"
95 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_qrcode_bridge.h"
96 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_side_bar_container_bridge.h"
97 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_calendar_picker_bridge.h"
98 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_water_flow_bridge.h"
99 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_alphabet_indexer_bridge.h"
100 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_data_panel_bridge.h"
101 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_gauge_bridge.h"
102 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scroll_bridge.h"
103 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollable_bridge.h"
104 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
105 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_shape_bridge.h"
106 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_shape_bridge.h"
107 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rect_bridge.h"
108 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_group_bridge.h"
109 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_timer_bridge.h"
110 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_frame_node_bridge.h"
111 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_refresh_bridge.h"
112 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_relative_container_bridge.h"
113 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_container_span_bridge.h"
114 #include "bridge/declarative_frontend/engine/js_converter.h"
115 #include "bridge/declarative_frontend/jsview/js_navigation_stack.h"
116 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollbar_bridge.h"
117 #ifdef PLUGIN_COMPONENT_SUPPORTED
118 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_plugin_bridge.h"
119 #endif
120 #ifdef XCOMPONENT_SUPPORTED
121 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_bridge.h"
122 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_node_bridge.h"
123 #endif
124 #ifdef FORM_SUPPORTED
125 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_form_component_bridge.h"
126 #endif
127 namespace OHOS::Ace::NG {
128 namespace {
RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)129 void RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
130 {
131     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderStyle));
133     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderWidth));
135     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderColor));
137     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderRadius));
139     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectMask"),
140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectMask));
141     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleMask"),
142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleMask));
143     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectMask"),
144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectMask));
145     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalMask"),
146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalMask));
147     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPath"),
148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathMask));
149 }
RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)150 void RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
151 {
152     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectClip"),
153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectClip));
154     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleClip"),
155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleClip));
156     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectClip"),
157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectClip));
158     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalClip"),
159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalClip));
160     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathClip"),
161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathClip));
162 }
163 } // namespace
164 
PreviewMockComponent(ArkUIRuntimeCallInfo * runtimeCallInfo)165 ArkUINativeModuleValue ArkUINativeModule::PreviewMockComponent(ArkUIRuntimeCallInfo* runtimeCallInfo)
166 {
167     EcmaVM* vm = runtimeCallInfo->GetVM();
168     return panda::JSValueRef::Undefined(vm);
169 }
170 
GetFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)171 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
172 {
173     EcmaVM* vm = runtimeCallInfo->GetVM();
174     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
175     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
176     int nodeId = firstArg->ToNumber(vm)->Value();
177     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeById(nodeId);
178     return panda::NativePointerRef::New(vm, nodePtr);
179 }
180 
GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)181 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
182 {
183     EcmaVM* vm = runtimeCallInfo->GetVM();
184     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
185     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
186     int nodeId = firstArg->ToNumber(vm)->Value();
187     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByUniqueId(nodeId);
188     if (nodePtr) {
189         return panda::NativePointerRef::New(vm, nodePtr);
190     }
191 
192     return panda::JSValueRef::Undefined(vm);
193 }
194 
GetPageInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)195 ArkUINativeModuleValue ArkUINativeModule::GetPageInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
196 {
197     EcmaVM* vm = runtimeCallInfo->GetVM();
198     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
199     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
200     int nodeId = firstArg->ToNumber(vm)->Value();
201     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
202     auto pageInfo = panda::ObjectRef::New(vm);
203     CHECK_NULL_RETURN(nodePtr, pageInfo);
204 
205     auto routerPageResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetRouterPageState(nodePtr);
206     if (routerPageResult) {
207         auto jsContext = Framework::JsConverter::ConvertNapiValueToJsVal(routerPageResult->context);
208         Local<JSValueRef> routerPageValues[] = { jsContext->GetLocalHandle(),
209             panda::NumberRef::New(vm, routerPageResult->index),
210             panda::StringRef::NewFromUtf8(vm, routerPageResult->name.c_str()),
211             panda::StringRef::NewFromUtf8(vm, routerPageResult->path.c_str()),
212             panda::NumberRef::New(vm, static_cast<int32_t>(routerPageResult->state)),
213             panda::StringRef::NewFromUtf8(vm, routerPageResult->pageId.c_str()) };
214         const char* routerPageKeys[] = { "context", "index", "name", "path", "state", "pageId" };
215         auto routerPageObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(routerPageKeys), routerPageKeys,
216             routerPageValues);
217         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "routerPageInfo"), routerPageObj);
218     }
219 
220     auto navDestinationResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetNavigationState(nodePtr);
221     if (navDestinationResult) {
222         Local<JSValueRef> navDestinationValues[] = {
223             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navigationId.c_str()),
224             panda::StringRef::NewFromUtf8(vm, navDestinationResult->name.c_str()),
225             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->state)),
226             panda::NumberRef::New(vm, navDestinationResult->index),
227             Framework::JsConverter::ConvertNapiValueToJsVal(navDestinationResult->param)->GetLocalHandle(),
228             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navDestinationId.c_str()) };
229         const char* navDestinationKeys[] = { "navigationId", "name", "state", "index", "param", "navDestinationId" };
230         auto navDestinationObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(navDestinationKeys),
231             navDestinationKeys, navDestinationValues);
232         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestinationInfo"), navDestinationObj);
233     }
234 
235     return pageInfo;
236 }
237 
GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)238 ArkUINativeModuleValue ArkUINativeModule::GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
239 {
240     EcmaVM* vm = runtimeCallInfo->GetVM();
241     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
242     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
243     int nodeId = firstArg->ToNumber(vm)->Value();
244     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
245     auto defaultResult = panda::JSValueRef::Undefined(vm);
246     CHECK_NULL_RETURN(nodePtr, defaultResult);
247 
248     auto pipeline = NG::PipelineContext::GetCurrentContext();
249     CHECK_NULL_RETURN(pipeline, defaultResult);
250     auto navigationMgr = pipeline->GetNavigationManager();
251     CHECK_NULL_RETURN(navigationMgr, defaultResult);
252     auto result = navigationMgr->GetNavigationInfo(nodePtr);
253     CHECK_NULL_RETURN(result, defaultResult);
254     auto jsStack = AceType::DynamicCast<Framework::JSNavigationStack>(result->pathStack.Upgrade());
255     CHECK_NULL_RETURN(jsStack, defaultResult);
256     Framework::JSRef<Framework::JSObject> navPathStackObj = jsStack->GetDataSourceObj();
257     CHECK_NULL_RETURN(!navPathStackObj->IsEmpty(), defaultResult);
258     auto obj = panda::ObjectRef::New(vm);
259     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigationId"),
260         panda::StringRef::NewFromUtf8(vm, result->navigationId.c_str()));
261     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "pathStack"), navPathStackObj->GetLocalHandle());
262 
263     return obj;
264 }
265 
GetUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)266 ArkUINativeModuleValue ArkUINativeModule::GetUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
267 {
268     EcmaVM* vm = runtimeCallInfo->GetVM();
269     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
270     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
271     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
272     int64_t state = GetArkUINodeModifiers()->getUIStateModifier()->getUIState(nativeNode);
273     return panda::NumberRef::New(vm, state);
274 }
275 
SetSupportedUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)276 ArkUINativeModuleValue ArkUINativeModule::SetSupportedUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
277 {
278     EcmaVM* vm = runtimeCallInfo->GetVM();
279     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
280     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
281     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
282     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
283     auto state = secondArg->ToNumber(vm)->Value();
284     GetArkUINodeModifiers()->getUIStateModifier()->setSupportedUIState(nativeNode, state);
285     return panda::JSValueRef::Undefined(vm);
286 }
287 
GetFrameNodeByKey(ArkUIRuntimeCallInfo * runtimeCallInfo)288 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByKey(ArkUIRuntimeCallInfo* runtimeCallInfo)
289 {
290     EcmaVM* vm = runtimeCallInfo->GetVM();
291     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
292     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
293     auto key = firstArg->ToString(vm)->ToString(vm);
294     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByKey(key.c_str());
295     if (!nodePtr) {
296         return panda::JSValueRef::Undefined(vm);
297     }
298     return panda::NativePointerRef::New(vm, nodePtr);
299 }
300 
GetAttachedFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)301 ArkUINativeModuleValue ArkUINativeModule::GetAttachedFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
302 {
303     EcmaVM* vm = runtimeCallInfo->GetVM();
304     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
305     auto key = firstArg->ToString(vm)->ToString(vm);
306     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getAttachedFrameNodeById(key.c_str());
307     if (!nodePtr) {
308         return panda::JSValueRef::Undefined(vm);
309     }
310     return panda::NativePointerRef::New(vm, nodePtr);
311 }
312 
RequireDynamicSyncScene(ArkUIRuntimeCallInfo * runtimeCallInfo)313 ArkUINativeModuleValue ArkUINativeModule::RequireDynamicSyncScene(ArkUIRuntimeCallInfo* runtimeCallInfo)
314 {
315     EcmaVM* vm = runtimeCallInfo->GetVM();
316     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
317     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
318 
319     auto sceneId = firstArg->ToString(vm)->ToString(vm);
320     auto sceneNode = NG::Inspector::GetFrameNodeByKey(sceneId);
321 
322     if (!sceneNode) {
323         return panda::JSValueRef::Undefined(vm);
324     }
325 
326     auto sceneTag = sceneNode->GetTag();
327     auto nativeRef = NativeUtilsBridge::CreateWeakRef(vm, sceneNode);
328     const char* keys[] = { "nativeRef", "tag" };
329     Local<JSValueRef> values[] = { nativeRef, panda::StringRef::NewFromUtf8(vm, sceneTag.c_str()) };
330     return panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(keys), keys, values);
331 }
332 
SetFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)333 ArkUINativeModuleValue ArkUINativeModule::SetFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
334 {
335     EcmaVM* vm = runtimeCallInfo->GetVM();
336     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
337 
338     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
339     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
340     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2);
341     auto swiperNode = firstArg;
342     auto obj = secondArg->ToObject(vm);
343     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
344     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
345     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
346 
347     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
348     auto value = thirdArg->Int32Value(vm);
349     auto type = static_cast<SwiperDynamicSyncSceneType>(value);
350     if (type != SwiperDynamicSyncSceneType::ANIMATE) {
351         type = SwiperDynamicSyncSceneType::GESTURE;
352     }
353     auto nativePointer = swiperNode->ToNativePointer(vm);
354     if (nativePointer.IsEmpty()) {
355         return panda::JSValueRef::Undefined(vm);
356     }
357     auto nativeNode = nodePtr(nativePointer->Value());
358     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
359     auto* swiperFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
360     CHECK_NULL_RETURN(swiperFrameNode, panda::JSValueRef::Undefined(vm));
361     auto swiperPattern = swiperFrameNode->GetPattern();
362     CHECK_NULL_RETURN(swiperPattern, panda::JSValueRef::Undefined(vm));
363     swiperPattern->SetFrameRateRange(frameRateRange, type);
364 
365     return panda::JSValueRef::Undefined(vm);
366 }
367 
SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)368 ArkUINativeModuleValue ArkUINativeModule::SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
369 {
370     EcmaVM* vm = runtimeCallInfo->GetVM();
371     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
372 
373     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
374     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
375     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2); // 2: parameter index
376     auto marqueeNode = firstArg;
377     auto obj = secondArg->ToObject(vm);
378     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
379     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
380     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
381 
382     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
383     auto value = thirdArg->Int32Value(vm);
384     auto type = static_cast<MarqueeDynamicSyncSceneType>(value);
385     auto nativePointer = marqueeNode->ToNativePointer(vm);
386     if (nativePointer.IsEmpty()) {
387         return panda::JSValueRef::Undefined(vm);
388     }
389     auto nativeNode = nodePtr(nativePointer->Value());
390     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
391     auto* marqueeFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
392     CHECK_NULL_RETURN(marqueeFrameNode, panda::JSValueRef::Undefined(vm));
393     MarqueeModelNG::SetMarqueeFrameRateRange(marqueeFrameNode, frameRateRange, type);
394 
395     return panda::JSValueRef::Undefined(vm);
396 }
397 
GetArkUINativeModule(ArkUIRuntimeCallInfo * runtimeCallInfo)398 ArkUINativeModuleValue ArkUINativeModule::GetArkUINativeModule(ArkUIRuntimeCallInfo* runtimeCallInfo)
399 {
400     EcmaVM* vm = runtimeCallInfo->GetVM();
401     auto object = panda::ObjectRef::New(vm);
402     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeById"),
403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeById));
404     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByUniqueId"),
405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByUniqueId));
406     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPageInfoByUniqueId"),
407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetPageInfoByUniqueId));
408     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNavigationInfoByUniqueId"),
409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetNavigationInfoByUniqueId));
410     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getUIState"),
411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetUIState));
412     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportedUIState"),
413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetSupportedUIState));
414     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByKey"),
415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByKey));
416     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAttachedFrameNodeById"),
417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetAttachedFrameNodeById));
418     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "requireDynamicSyncScene"),
419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RequireDynamicSyncScene));
420     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrameRateRange"),
421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetFrameRateRange));
422     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeFrameRateRange"),
423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetMarqueeFrameRateRange));
424 
425     auto common = panda::ObjectRef::New(vm);
426     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundColor));
428     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundColor));
430     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetWidth));
432     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetWidth));
434     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHeight));
436     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHeight));
438     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderRadius));
440     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderRadius));
442     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWidth));
444     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderWidth));
446     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransform"),
447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransform));
448     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransform"),
449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransform));
450     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderColor));
452     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderColor));
454     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPosition));
456     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPosition"),
457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPosition));
458     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPointLightStyle"),
459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPointLightStyle));
460     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPointLightStyle"),
461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPointLightStyle));
462     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderStyle));
464     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderStyle));
466     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineColor"),
467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineColor));
468     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineColor"),
469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineColor));
470     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineRadius"),
471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineRadius));
472     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineRadius"),
473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineRadius));
474     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineStyle"),
475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineStyle));
476     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineStyle"),
477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineStyle));
478     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineWidth"),
479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineWidth));
480     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineWidth"),
481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineWidth));
482     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutline"),
483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutline));
484     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutline"),
485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutline));
486     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadow"),
487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShadow));
488     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShadow"),
489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShadow));
490     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHitTestBehavior"),
491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHitTestBehavior));
492     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHitTestBehavior"),
493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHitTestBehavior));
494     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZIndex"),
495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetZIndex));
496     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZIndex"),
497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetZIndex));
498     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOpacity));
500     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOpacity));
502     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlign"),
503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlign));
504     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlign"),
505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlign));
506     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackdropBlur));
508     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackdropBlur));
510     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHueRotate));
512     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHueRotate));
514     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetInvert));
516     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetInvert));
518     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSepia));
520     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSepia));
522     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSaturate));
524     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSaturate));
526     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetColorBlend));
528     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetColorBlend));
530     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGrayscale));
532     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGrayscale));
534     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetContrast));
536     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetContrast));
538     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBrightness));
540     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBrightness));
542     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlur));
544     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlur));
546     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradient"),
547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradient));
548     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradient"),
549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradient));
550     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSweepGradient"),
551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSweepGradient));
552     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSweepGradient"),
553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSweepGradient));
554     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadialGradient"),
555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRadialGradient));
556     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadialGradient"),
557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRadialGradient));
558     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOverlay"),
559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOverlay));
560     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOverlay"),
561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOverlay));
562     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderImage"),
563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderImage));
564     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderImage"),
565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderImage));
566     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBlurStyle"),
567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBlurStyle));
568     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBlurStyle"),
569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBlurStyle));
570     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradientBlur));
572     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradientBlur));
574     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBlurStyle"),
575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBlurStyle));
576     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBlurStyle"),
577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBlurStyle));
578     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorder));
580     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorder));
582     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImagePosition));
584     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImagePosition));
586     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageResizable"),
587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageResizable));
588     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageResizable"),
589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageResizable));
590     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageSize));
592     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageSize));
594     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImage));
596     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImage));
598     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTranslate));
600     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTranslate"),
601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTranslate));
602     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetScale));
604     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScale"),
605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetScale));
606     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotate"),
607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRotate));
608     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRotate"),
609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRotate));
610     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGeometryTransition"),
611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGeometryTransition));
612     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGeometryTransition"),
613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGeometryTransition));
614     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClip"),
615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClip));
616     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClip"),
617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClip));
618     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipShape"),
619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipShape));
620     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipShape"),
621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipShape));
622     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelStretchEffect));
624     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelStretchEffect));
626     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLightUpEffect));
628     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLightUpEffect));
630     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSphericalEffect));
632     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSphericalEffect));
634     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderGroup"),
635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderGroup));
636     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderGroup"),
637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderGroup));
638     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderFit));
640     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderFit));
642     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseEffect"),
643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseEffect));
644     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseEffect"),
645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseEffect));
646     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundColor));
648     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundColor));
650     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionPath"),
651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionPath));
652     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionPath"),
653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionPath));
654     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionBlur"),
655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionBlur));
656     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionBlur"),
657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionBlur));
658     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGroupDefaultFocus"),
659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGroupDefaultFocus));
660     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGroupDefaultFocus"),
661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGroupDefaultFocus));
662     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusOnTouch"),
663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusOnTouch));
664     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusOnTouch"),
665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusOnTouch));
666     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusable"),
667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusable));
668     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusable"),
669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusable));
670     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabStop"),
671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabStop));
672     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabStop"),
673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabStop));
674     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTouchable"),
675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTouchable));
676     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTouchable"),
677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTouchable));
678     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultFocus"),
679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDefaultFocus));
680     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultFocus"),
681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDefaultFocus));
682     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisplayPriority"),
683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDisplayPriority));
684     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisplayPriority"),
685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDisplayPriority));
686     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMask"),
687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMask));
688     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMask"),
689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMask));
690     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaskShape"),
691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMaskShape));
692     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaskShape"),
693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMaskShape));
694     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOffset"),
695         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetOffset));
696     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOffset"),
697         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetOffset));
698     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
699         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetPadding));
700     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
701         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetPadding));
702     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
703         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMargin));
704     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
705         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMargin));
706     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkAnchor"),
707         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMarkAnchor));
708     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarkAnchor"),
709         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMarkAnchor));
710     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
711         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetVisibility));
712     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
713         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetVisibility));
714     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityText));
716     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityText));
718     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowDrop"),
719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAllowDrop));
720     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowDrop"),
721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAllowDrop));
722     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityLevel));
724     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityLevel));
726     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDirection));
728     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDirection));
730     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutWeight"),
731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLayoutWeight));
732     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutWeight"),
733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLayoutWeight));
734     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSize));
736     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSize));
738     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignSelf"),
739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignSelf));
740     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignSelf"),
741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignSelf));
742     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAspectRatio"),
743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAspectRatio));
744     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAspectRatio"),
745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAspectRatio));
746     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexGrow"),
747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexGrow));
748     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexGrow"),
749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexGrow));
750     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexShrink"),
751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexShrink));
752     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexShrink"),
753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexShrink));
754     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setConstraintSize"),
755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetConstraintSize));
756     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetConstraintSize"),
757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetConstraintSize));
758     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridOffset"),
759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridOffset));
760     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridOffset"),
761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridOffset));
762     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridSpan"),
763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridSpan));
764     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridSpan"),
765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridSpan));
766     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setExpandSafeArea"),
767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetExpandSafeArea));
768     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetExpandSafeArea"),
769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetExpandSafeArea));
770     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignRules"),
771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignRules));
772     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignRules"),
773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignRules));
774     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexBasis"),
775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexBasis));
776     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexBasis"),
777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexBasis));
778     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDescription));
780     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDescription));
782     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetId));
784     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetId"),
785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetId));
786     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKey"),
787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKey));
788     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKey"),
789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKey));
790     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRestoreId"),
791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRestoreId));
792     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRestoreId"),
793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRestoreId));
794     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabIndex"),
795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabIndex));
796     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabIndex"),
797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabIndex));
798     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObscured"),
799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetObscured));
800     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObscured"),
801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetObscured));
802     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundEffect"),
803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundEffect));
804     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundEffect"),
805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundEffect));
806     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundEffect"),
807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundEffect));
808     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundEffect"),
809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundEffect));
810     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightness"),
811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightness));
812     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightness"),
813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightness));
814     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightnessInternal"),
815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightnessInternal));
816     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightnessInternal"),
817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightnessInternal));
818     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBrightness"),
819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBrightness));
820     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBrightness"),
821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBrightness));
822     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreviewOptions"),
823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreviewOptions));
824     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreviewOptions"),
825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreviewOptions));
826     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreview"),
827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreview));
828     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreview"),
829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreview));
830     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetResponseRegion));
832     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetResponseRegion));
834     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMouseResponseRegion"),
835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMouseResponseRegion));
836     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMouseResponseRegion"),
837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMouseResponseRegion));
838     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransition));
840     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransition));
842     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSharedTransition"),
843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSharedTransition));
844     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSharedTransition"),
845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSharedTransition));
846     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnabled"),
847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetEnabled));
848     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnabled"),
849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetEnabled));
850     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseShadowBatching"),
851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseShadowBatching));
852     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseShadowBatching"),
853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseShadowBatching));
854     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlendMode"),
855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlendMode));
856     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlendMode"),
857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlendMode));
858     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMonopolizeEvents"),
859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMonopolizeEvents));
860     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMonopolizeEvents"),
861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMonopolizeEvents));
862     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDraggable));
864     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDraggable));
866     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityGroup"),
867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityGroup));
868     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityGroup"),
869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityGroup));
870     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHoverEffect));
872     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHoverEffect));
874     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClickEffect"),
875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClickEffect));
876     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClickEffect"),
877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClickEffect));
878     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyBoardShortCut"),
879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKeyBoardShortCut));
880     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyBoardShortCut"),
881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKeyBoardShortCut));
882     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipWithEdge"),
883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipWithEdge));
884     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipWithEdge"),
885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipWithEdge));
886     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnClick));
888     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnClick));
890     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragStart"),
891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragStart));
892     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragStart"),
893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragStart));
894     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnter"),
895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnter));
896     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnter"),
897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnter));
898     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragMove"),
899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragMove));
900     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragMove"),
901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragMove));
902     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragLeave"),
903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragLeave));
904     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragLeave"),
905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragLeave));
906     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDrop"),
907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDrop));
908     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDrop"),
909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDrop));
910     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnd"),
911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnd));
912     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnd"),
913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnd));
914     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnTouch));
916     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTouch"),
917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnTouch));
918     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAppear));
920     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAppear"),
921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAppear));
922     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDisappear));
924     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDisappear"),
925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDisappear));
926     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAttach));
928     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAttach"),
929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAttach));
930     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDetach));
932     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDetach"),
933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDetach));
934     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyEvent));
936     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyEvent"),
937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyEvent));
938     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyPreIme"),
939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyPreIme));
940     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyPreIme"),
941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyPreIme));
942     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocus));
944         common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocus"),
945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocus));
946     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnBlur));
948     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBlur"),
949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnBlur));
950     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHover));
952     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHover"),
953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHover));
954     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnMouse));
956     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnMouse"),
957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnMouse));
958     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnSizeChange));
960     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSizeChange"),
961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnSizeChange));
962     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAreaChange"),
963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAreaChange));
964     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAreaChange"),
965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAreaChange));
966     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureJudgeBegin"),
967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureJudgeBegin));
968     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureJudgeBegin"),
969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureJudgeBegin));
970     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureRecognizerJudgeBegin"),
971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureRecognizerJudgeBegin));
972     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureRecognizerJudgeBegin"),
973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureRecognizerJudgeBegin));
974     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShouldBuiltInRecognizerParallelWith"),
975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShouldBuiltInRecognizerParallelWith));
976     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShouldBuiltInRecognizerParallelWith"),
977         panda::FunctionRef::New(
978             const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShouldBuiltInRecognizerParallelWith));
979     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGesture"),
980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGesture));
981     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGesture"),
982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGesture));
983     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGesture"),
984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGesture));
985     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGesture"),
986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGesture));
987     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGesture"),
988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGesture));
989     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGesture"),
990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGesture));
991     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroup"),
992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroup));
993     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGestureToGroup"),
994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGestureToGroup));
995     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGestureToGroup"),
996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGestureToGroup));
997     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGestureToGroup"),
998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGestureToGroup));
999     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGestureToGroup"),
1000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGestureToGroup));
1001     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGestureToGroup"),
1002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGestureToGroup));
1003     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGestureToGroup"),
1004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGestureToGroup));
1005     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroupToGroup"),
1006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroupToGroup));
1007     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachGestureGroup"),
1008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AttachGestureGroup));
1009     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeGestureByTag"),
1010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RemoveGestureByTag));
1011     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearGestures"),
1012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ClearGestures));
1013     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowName"),
1014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowName));
1015     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowWidthBreakpoint"),
1016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowWidthBreakpoint));
1017     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowHeightBreakpoint"),
1018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowHeightBreakpoint));
1019     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemBarEffect"),
1020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSystemBarEffect));
1021     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "postFrameCallback"),
1022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::PostFrameCallback));
1023     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopeId"),
1024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopeId));
1025     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopeId"),
1026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopeId));
1027     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopePriority"),
1028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopePriority));
1029     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopePriority"),
1030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopePriority));
1031     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelRound"),
1032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelRound));
1033     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelRound"),
1034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelRound));
1035     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainMode"),
1036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetChainMode));
1037     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainMode"),
1038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetChainMode));
1039     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWithDashParams"),
1040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWithDashParams));
1041     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "greatOrEqualAPITargetVersion"),
1042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GreatOrEqualAPITargetVersion));
1043     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "lessThanAPITargetVersion"),
1044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::LessThanAPITargetVersion));
1045     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getApiTargetVersion"),
1046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetApiTargetVersion));
1047     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusBox"),
1048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusBox));
1049     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusBox"),
1050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusBox));
1051     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdvancedBlendMode"),
1052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAdvancedBlendMode));
1053     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdvancedBlendMode"),
1054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAdvancedBlendMode));
1055     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameNodeDestructorCallback"),
1056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RegisterFrameNodeDestructorCallback));
1057     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "common"), common);
1058 
1059     auto nativeUtils = panda::ObjectRef::New(vm);
1060     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeWeakRef"),
1061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeWeakRef));
1062     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeStrongRef"),
1063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeStrongRef));
1064     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "parseResourceColor"),
1065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ParseResourceColor));
1066     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "blendColor"),
1067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::BlendColor));
1068     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "resoureToLengthMetrics"),
1069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ResoureToLengthMetrics));
1070     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nativeUtils"), nativeUtils);
1071 
1072     auto nodeAdapter = panda::ObjectRef::New(vm);
1073     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "createAdapter"),
1074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::CreateNodeAdapter));
1075     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCallbacks"),
1076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetCallbacks));
1077     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTotalNodeCount"),
1078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetTotalNodeCount));
1079     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getTotalNodeCount"),
1080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetTotalNodeCount));
1081     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemReloaded"),
1082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemReloaded));
1083     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemChanged"),
1084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemChanged));
1085     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemRemoved"),
1086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemRemoved));
1087     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemInserted"),
1088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemInserted));
1089     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemMoved"),
1090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemMoved));
1091     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAllItems"),
1092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetAllItems));
1093     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachNodeAdapter"),
1094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::AttachNodeAdapter));
1095     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "detachNodeAdapter"),
1096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::DetachNodeAdapter));
1097     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeAdapter"), nodeAdapter);
1098 
1099     auto counter = panda::ObjectRef::New(vm);
1100     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableInc"),
1101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableInc));
1102     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableInc"),
1103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableInc));
1104     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDec"),
1105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableDec));
1106     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDec"),
1107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableDec));
1108     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterHeight"),
1109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterHeight));
1110     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterHeight"),
1111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterHeight));
1112     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterWidth"),
1113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterWidth));
1114     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterWidth"),
1115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterWidth));
1116     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterBackgroundColor"),
1117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterBackgroundColor));
1118     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterBackgroundColor"),
1119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterBackgroundColor));
1120     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterSize"),
1121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterSize));
1122     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterSize"),
1123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterSize));
1124     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "counter"), counter);
1125 
1126     auto checkboxgroup = panda::ObjectRef::New(vm);
1127     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectedColor"),
1128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectedColor));
1129     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectedColor"),
1130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectedColor));
1131     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupUnSelectedColor"),
1132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupUnSelectedColor));
1133     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupUnSelectedColor"),
1134         panda::FunctionRef::New(
1135             const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupUnSelectedColor));
1136     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectAll"),
1137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectAll));
1138     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectAll"),
1139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectAll));
1140     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupWidth"),
1141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupWidth));
1142     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupWidth"),
1143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupWidth));
1144     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupHeight"),
1145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupHeight));
1146     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupHeight"),
1147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupHeight));
1148     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupMark"),
1149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupMark));
1150     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupMark"),
1151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupMark));
1152     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSize"),
1153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSize));
1154     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSize"),
1155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSize));
1156     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupStyle"),
1157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupStyle));
1158     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupStyle"),
1159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupStyle));
1160     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkboxgroup"), checkboxgroup);
1161 
1162     auto panel = panda::ObjectRef::New(vm);
1163     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
1164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
1165     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
1166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
1167     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
1168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
1169     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
1170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
1171     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
1172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
1173     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
1174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
1175     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
1176 
1177     auto row = panda::ObjectRef::New(vm);
1178     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetAlignItems));
1180     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetAlignItems));
1182     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetJustifyContent));
1184     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetJustifyContent));
1186     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetSpace));
1188     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetSpace));
1190     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetReverse));
1192     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetReverse));
1194     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "row"), row);
1195 
1196     auto rowSplit = panda::ObjectRef::New(vm);
1197     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
1198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::SetResizable));
1199     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
1200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::ResetResizable));
1201     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rowSplit"), rowSplit);
1202 
1203     auto text = panda::ObjectRef::New(vm);
1204     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontColor));
1206     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontColor));
1208     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontSize));
1210     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontSize));
1212     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontStyle));
1214     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontStyle));
1216     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextAlign));
1218     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextAlign));
1220     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontWeight));
1222     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontWeight));
1224     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineHeight));
1226     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineHeight));
1228     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextOverflow));
1230     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextOverflow));
1232     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDecoration));
1234     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDecoration));
1236     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextCase));
1238     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextCase));
1240     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxLines));
1242     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxLines));
1244     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontSize));
1246     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ReSetMinFontSize));
1248     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
1249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDraggable));
1250     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
1251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDraggable));
1252     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
1253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetPrivacySensitive));
1254     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
1255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetPrivacySensitive));
1256     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontSize));
1258     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontSize));
1260     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
1261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontScale));
1262     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
1263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMinFontScale));
1264     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
1265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontScale));
1266     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
1267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontScale));
1268     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFamily));
1270     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFamily));
1272     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCopyOption));
1274     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCopyOption));
1276     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextShadow));
1278     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1280     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextController"),
1281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextController));
1282     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextShadow));
1284     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHeightAdaptivePolicy));
1286     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHeightAdaptivePolicy));
1288     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextIndent));
1290     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextIndent));
1292     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetBaselineOffset));
1294     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetBaselineOffset));
1296     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLetterSpacing));
1298     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLetterSpacing));
1300     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineSpacing));
1302     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineSpacing));
1304     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFont));
1306     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFont));
1308     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetWordBreak));
1310     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetWordBreak));
1312     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineBreakStrategy));
1314     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineBreakStrategy));
1316     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
1317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEllipsisMode));
1318     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
1319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEllipsisMode));
1320     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEnableDataDetector));
1322     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEnableDataDetector));
1324     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextForegroundColor"),
1325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetForegroundColor));
1326     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextForegroundColor"),
1327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetForegroundColor));
1328     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFeature));
1330     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFeature));
1332     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1334     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelection"),
1335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelection));
1336     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelection"),
1337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelection));
1338     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextSelectableMode"),
1339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextSelectableMode));
1340     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextSelectableMode"),
1341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextSelectableMode));
1342     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCaretColor));
1344     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCaretColor));
1346     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectedBackgroundColor));
1348     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectedBackgroundColor));
1350     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDataDetectorConfig));
1352     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDataDetectorConfig));
1354     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnCopy));
1356     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnCopy));
1358     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnTextSelectionChange));
1360     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnTextSelectionChange));
1362     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectionMenuOptions));
1364     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectionMenuOptions));
1366     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
1367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHalfLeading));
1368     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
1369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHalfLeading));
1370     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
1371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnClick));
1372     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
1373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnClick));
1374     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
1375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetResponseRegion));
1376     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
1377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetResponseRegion));
1378     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "text"), text);
1379 
1380     auto search = panda::ObjectRef::New(vm);
1381     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInitialize"),
1382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInitialize));
1383     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInitialize"),
1384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInitialize));
1385     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextFont"),
1386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextFont));
1387     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextFont"),
1388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextFont));
1389     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderColor));
1391     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderColor));
1393     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuHidden));
1395     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuHidden));
1397     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCaretStyle));
1399     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCaretStyle));
1401     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchTextAlign));
1403     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchTextAlign));
1405     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
1406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCancelButton));
1407     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
1408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCancelButton));
1409     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableKeyboardOnFocus));
1411     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableKeyboardOnFocus));
1413     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderFont));
1415     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderFont));
1417     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchIcon"),
1418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchIcon));
1419     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchIcon"),
1420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchIcon));
1421     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchButton"),
1422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchButton));
1423     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchButton"),
1424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchButton));
1425     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontColor));
1427     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontColor));
1429     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCopyOption));
1431     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCopyOption));
1433     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchEnterKeyType"),
1434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchEnterKeyType));
1435     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchEnterKeyType"),
1436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchEnterKeyType));
1437     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchHeight"),
1438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchHeight));
1439     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchHeight"),
1440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchHeight));
1441     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontFeature));
1443     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontFeature));
1445     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetDecoration));
1447     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetDecoration));
1449     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLetterSpacing));
1451     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLetterSpacing));
1453     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLineHeight));
1455     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLineHeight));
1457     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMinFontSize"),
1458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMinFontSize));
1459     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMinFontSize"),
1460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMinFontSize));
1461     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMaxFontSize"),
1462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMaxFontSize));
1463     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMaxFontSize"),
1464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMaxFontSize));
1465     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetInputFilter));
1467     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetInputFilter));
1469     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectedBackgroundColor));
1471     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectedBackgroundColor));
1473     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextIndent));
1475     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextIndent));
1477     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMaxLength));
1479     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMaxLength));
1481     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetType));
1483     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetType));
1485     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnEditChange));
1487     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnEditChange));
1489     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnSubmit));
1491     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnSubmit));
1493     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCopy));
1495     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCopy));
1497     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCut));
1499     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCut));
1501     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnPaste));
1503     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnPaste));
1505     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnChange));
1507     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnChange));
1509     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnTextSelectionChange));
1511     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnTextSelectionChange));
1513     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnContentScroll));
1515     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnContentScroll));
1517     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetShowCounter));
1519     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetShowCounter));
1521     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
1522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillInsert));
1523     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
1524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillInsert));
1525     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
1526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidInsert));
1527     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
1528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidInsert));
1529     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
1530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillDelete));
1531     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
1532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillDelete));
1533     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
1534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidDelete));
1535     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
1536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidDelete));
1537     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnablePreviewText));
1539     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnablePreviewText));
1541     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuOptions));
1543     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuOptions));
1545     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInspectorId"),
1546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInspectorId));
1547     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInspectorId"),
1548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInspectorId));
1549     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableHapticFeedback));
1551     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableHapticFeedback));
1553     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "search"), search);
1554 
1555     auto stack = panda::ObjectRef::New(vm);
1556     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignContent"),
1557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::SetAlignContent));
1558     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignContent"),
1559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::ResetAlignContent));
1560     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stack"), stack);
1561 
1562     auto folderStack = panda::ObjectRef::New(vm);
1563     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnimation"),
1564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetEnableAnimation));
1565     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnimation"),
1566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetEnableAnimation));
1567     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHalfFold"),
1568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetAutoHalfFold));
1569     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHalfFold"),
1570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetAutoHalfFold));
1571     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "folderStack"), folderStack);
1572 
1573     auto imageSpan = panda::ObjectRef::New(vm);
1574     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVerticalAlign"),
1575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetVerticalAlign));
1576     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVerticalAlign"),
1577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetVerticalAlign));
1578     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetObjectFit));
1580     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetObjectFit));
1582     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1583         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetTextBackgroundStyle));
1584     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1585         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetTextBackgroundStyle));
1586     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1587         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetBaselineOffset));
1588     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1589         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetBaselineOffset));
1590     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
1591         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetAlt));
1592     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
1593         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetAlt));
1594     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
1595         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnComplete));
1596     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
1597         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnComplete));
1598     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
1599         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnError));
1600     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
1601         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnError));
1602     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetBorderRadius));
1604     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetBorderRadius));
1606     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
1607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetColorFilter));
1608     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
1609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetColorFilter));
1610     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageSpan"), imageSpan);
1611 
1612     auto blank = panda::ObjectRef::New(vm);
1613     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
1614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetColor));
1615     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
1616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetColor));
1617     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankHeight"),
1618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankHeight));
1619     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankHeight"),
1620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankHeight));
1621     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankMin"),
1622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankMin));
1623     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankMin"),
1624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankMin));
1625     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "blank"), blank);
1626 
1627     auto span = panda::ObjectRef::New(vm);
1628     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpanSrc"),
1629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SpanBridge::SetSpanSrc));
1630     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1631         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextCase));
1632     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1633         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextCase));
1634     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1635         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontWeight));
1636     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1637         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontWeight));
1638     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1639         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLineHeight));
1640     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1641         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLineHeight));
1642     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1643         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontStyle));
1644     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1645         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontStyle));
1646     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1647         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontSize));
1648     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1649         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontSize));
1650     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1651         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontFamily));
1652     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1653         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontFamily));
1654     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1655         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetDecoration));
1656     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1657         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetDecoration));
1658     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1659         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontColor));
1660     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1661         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontColor));
1662     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1663         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLetterSpacing));
1664     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1665         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLetterSpacing));
1666     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1667         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetBaselineOffset));
1668     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1669         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetBaselineOffset));
1670     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1671         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFont));
1672     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1673         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFont));
1674     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1675         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextBackgroundStyle));
1676     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1677         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextBackgroundStyle));
1678     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1679         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextShadow));
1680     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1681         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextShadow));
1682     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
1683         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityText));
1684     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
1685         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityText));
1686     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
1687         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityDescription));
1688     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
1689         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityDescription));
1690     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
1691         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityLevel));
1692     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
1693         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityLevel));
1694     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "span"), span);
1695 
1696     auto gridCol = panda::ObjectRef::New(vm);
1697     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpan"),
1698         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetSpan));
1699     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpan"),
1700         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetSpan));
1701     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridColOffset"),
1702         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetGridColOffset));
1703     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridColOffset"),
1704         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetGridColOffset));
1705     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrder"),
1706         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetOrder));
1707     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrder"),
1708         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetOrder));
1709     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridCol"), gridCol);
1710 
1711     auto column = panda::ObjectRef::New(vm);
1712     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetJustifyContent));
1714     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetJustifyContent));
1716     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetAlignItems));
1718     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetAlignItems));
1720     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetSpace));
1722     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetSpace));
1724     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetReverse));
1726     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetReverse));
1728     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "column"), column);
1729 
1730     auto gridRow = panda::ObjectRef::New(vm);
1731     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetAlignItems));
1733     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetAlignItems));
1735     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
1736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetDirection));
1737     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
1738         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetDirection));
1739     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBreakpoints"),
1740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetBreakpoints));
1741     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBreakpoints"),
1742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetBreakpoints));
1743     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumns"),
1744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetColumns));
1745     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumns"),
1746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetColumns));
1747     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGutter"),
1748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetGutter));
1749     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGutter"),
1750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetGutter));
1751     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBreakpointChange"),
1752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetOnBreakpointChange));
1753     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBreakpointChange"),
1754         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetOnBreakpointChange));
1755 
1756     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridRow"), gridRow);
1757 
1758     auto richEditor = panda::ObjectRef::New(vm);
1759     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnterKeyType));
1761     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnterKeyType));
1763     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetSelectedBackgroundColor));
1765     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetSelectedBackgroundColor));
1767     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCaretColor));
1769     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCaretColor));
1771     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelectionChange"),
1772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelectionChange));
1773     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelectionChange"),
1774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelectionChange));
1775     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnableDataDetector));
1777     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1778         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnableDataDetector));
1779 
1780     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetDataDetectorConfig));
1782     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetDataDetectorConfig));
1784     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnIMEInputComplete"),
1785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnIMEInputComplete));
1786     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnIMEInputComplete"),
1787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnIMEInputComplete));
1788     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSubmit));
1790     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSubmit));
1792     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAboutToIMEInput"),
1793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetAboutToIMEInput));
1794     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAboutToIMEInput"),
1795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetAboutToIMEInput));
1796     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOptions"),
1797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCopyOptions));
1798     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOptions"),
1799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCopyOptions));
1800     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelect"),
1801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelect));
1802     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelect"),
1803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelect));
1804     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReady"),
1805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnReady));
1806     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReady"),
1807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnReady));
1808     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDeleteComplete"),
1809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnDeleteComplete));
1810     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDeleteComplete"),
1811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnDeleteComplete));
1812     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditingChange"),
1813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnEditingChange));
1814     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditingChange"),
1815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnEditingChange));
1816     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnPaste));
1818     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnPaste));
1820     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCut));
1822     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCut));
1824     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCopy));
1826     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCopy));
1828     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "richEditor"), richEditor);
1829 
1830     auto textArea = panda::ObjectRef::New(vm);
1831     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
1832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStyle));
1833     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
1834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStyle));
1835     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1836         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuHidden));
1837     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1838         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuHidden));
1839     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLines));
1841     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLines));
1843     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCopyOption));
1845     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCopyOption));
1847     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderColor));
1849     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderColor));
1851     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaTextAlign));
1853     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextAreaTextAlign));
1855     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderFont));
1857     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderFont));
1859     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
1860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBarState));
1861     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
1862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBarState));
1863     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableKeyboardOnFocus));
1865     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableKeyboardOnFocus));
1867     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFamily));
1869     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFamily));
1871     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetShowCounter));
1873     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetShowCounter));
1875     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretColor));
1877     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretColor));
1879     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLength));
1881     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLength));
1883     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontColor));
1885     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontColor));
1887     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1888         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontStyle));
1889     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1890         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontStyle));
1891     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1892         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontWeight));
1893     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontWeight));
1895     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontSize));
1897     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontSize));
1899     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFeature));
1901     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFeature));
1903     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetDecoration));
1905     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetDecoration));
1907     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLetterSpacing));
1909     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLetterSpacing));
1911     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineSpacing));
1913     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineSpacing));
1915     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineHeight));
1917     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineHeight));
1919     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWordBreak));
1921     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWordBreak));
1923     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineBreakStrategy));
1925     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineBreakStrategy));
1927     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMinFontSize));
1929     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMinFontSize));
1931     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxFontSize));
1933     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxFontSize));
1935     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetHeightAdaptivePolicy));
1937     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetHeightAdaptivePolicy));
1939     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectedBackgroundColor));
1941     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectedBackgroundColor));
1943     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretStyle));
1945     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretStyle));
1947     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextOverflow));
1949     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextOverflow));
1951     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextIndent));
1953     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextIndent));
1955     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetType));
1957     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetType));
1959     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
1960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPadding));
1961     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
1962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPadding));
1963     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnChange));
1965     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnChange));
1967     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnterKeyType));
1969     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnterKeyType));
1971     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetInputFilter));
1973     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetInputFilter));
1975     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnTextSelectionChange));
1977     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnTextSelectionChange));
1979     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnContentScroll));
1981     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnContentScroll));
1983     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnEditChange));
1985     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnEditChange));
1987     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCopy));
1989     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCopy));
1991     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCut));
1993     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCut));
1995     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnPaste));
1997     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnPaste));
1999     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnSubmit));
2001     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnSubmit));
2003     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetContentType));
2005     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetContentType));
2007     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableAutoFill));
2009     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableAutoFill));
2011     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2013     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2015     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2017     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2019     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2021     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2023     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2025     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2027     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2029     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2031     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBackgroundColor));
2033     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBackgroundColor));
2035     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMargin));
2037     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMargin));
2039     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2041     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2043     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2045     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2047     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2049     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2051     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2053     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2055     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnablePreviewText));
2057     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnablePreviewText));
2059     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuOptions));
2061     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuOptions));
2063     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWidth));
2065     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWidth));
2067     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableHapticFeedback));
2069     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableHapticFeedback));
2071     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAreaInitialize"),
2072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaInitialize));
2073     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textArea"), textArea);
2074 
2075     auto video = panda::ObjectRef::New(vm);
2076 #ifdef PREVIEW
2077     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2079     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2081     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2083     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2085     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2087     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2089     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2091     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2093     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2095     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2097 #else
2098     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetAutoPlay));
2100     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetAutoPlay));
2102     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetControls));
2104     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetControls));
2106     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetObjectFit));
2108     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetObjectFit));
2110     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetLoop));
2112     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetLoop));
2114     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetMuted));
2116     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetMuted));
2118 #endif
2119     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
2120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetOpacity));
2121     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
2122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetOpacity));
2123     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
2124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetTransition));
2125     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
2126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetTransition));
2127     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "video"), video);
2128 
2129     auto patternLock = panda::ObjectRef::New(vm);
2130     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideLength"),
2131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetSideLength));
2132     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideLength"),
2133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetSideLength));
2134     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoReset"),
2135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetAutoReset));
2136     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoReset"),
2137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetAutoReset));
2138     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathStrokeWidth"),
2139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathStrokeWidth));
2140     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathStrokeWidth"),
2141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathStrokeWidth));
2142     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRegularColor"),
2143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetRegularColor));
2144     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRegularColor"),
2145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetRegularColor));
2146     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathColor"),
2147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathColor));
2148     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathColor"),
2149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathColor));
2150     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActiveColor"),
2151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActiveColor));
2152     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActiveColor"),
2153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActiveColor));
2154     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleRadius"),
2155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockCircleRadius));
2156     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCircleRadius"),
2157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockCircleRadius));
2158     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSelectedColor));
2160     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSelectedColor));
2162     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActivateCircleStyle"),
2163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActivateCircleStyle));
2164     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActivateCircleStyle"),
2165         panda::FunctionRef::New(
2166             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActivateCircleStyle));
2167     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "patternLock"), patternLock);
2168 
2169     auto columnSplit = panda::ObjectRef::New(vm);
2170     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2171         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetDivider));
2172     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2173         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetDivider));
2174     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
2175         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetResizable));
2176     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
2177         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetResizable));
2178     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "columnSplit"), columnSplit);
2179 
2180     auto imageAnimator = panda::ObjectRef::New(vm);
2181     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setState"),
2182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetState));
2183     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetState"),
2184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetState));
2185     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDuration"),
2186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetDuration));
2187     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDuration"),
2188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetDuration));
2189     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFixedSize"),
2190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFixedSize));
2191     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFixedSize"),
2192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFixedSize));
2193     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillMode"),
2194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFillMode));
2195     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillMode"),
2196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFillMode));
2197     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
2198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetReverse));
2199     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
2200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetReverse));
2201     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImages"),
2202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImages));
2203     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImages"),
2204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImages));
2205     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIterations"),
2206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetIteration));
2207     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIterations"),
2208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetIteration));
2209     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageAnimator"), imageAnimator);
2210 
2211     auto textInput = panda::ObjectRef::New(vm);
2212     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
2213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretColor));
2214     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
2215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretColor));
2216     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetType));
2218     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetType));
2220     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
2221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLines));
2222     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
2223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLines));
2224     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
2225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderColor));
2226     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
2227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderColor));
2228     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretPosition"),
2229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretPosition));
2230     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretPosition"),
2231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretPosition));
2232     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
2233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCopyOption));
2234     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
2235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCopyOption));
2236     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPasswordIcon"),
2237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPasswordIcon));
2238     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPasswordIcon"),
2239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPasswordIcon));
2240     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPassword"),
2241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPassword));
2242     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPassword"),
2243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPassword));
2244     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordIcon"),
2245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordIcon));
2246     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordIcon"),
2247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordIcon));
2248     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
2249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextAlign));
2250     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
2251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextAlign));
2252     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
2253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStyle));
2254     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
2255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStyle));
2256     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
2257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuHidden));
2258     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
2259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuHidden));
2260     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowUnderline"),
2261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputShowUnderline));
2262     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowUnderline"),
2263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputShowUnderline));
2264     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordRules"),
2265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordRules));
2266     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordRules"),
2267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordRules));
2268     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableAutoFill));
2270     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableAutoFill));
2272     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
2273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretStyle));
2274     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
2275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretStyle));
2276     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
2277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableKeyboardOnFocus));
2278     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
2279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableKeyboardOnFocus));
2280     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
2281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBarState));
2282     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
2283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBarState));
2284     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
2285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputEnterKeyType));
2286     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
2287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputEnterKeyType));
2288     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputFontWeight));
2290     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputFontWeight));
2292     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontSize));
2294     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontSize));
2296     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
2297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLength));
2298     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
2299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLength));
2300     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectedBackgroundColor));
2302     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectedBackgroundColor));
2304     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowError"),
2305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowError));
2306     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowError"),
2307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowError));
2308     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
2309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderFont));
2310     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
2311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderFont));
2312     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontColor));
2314     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontColor));
2316     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
2317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontStyle));
2318     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
2319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontStyle));
2320     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFamily));
2322     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFamily));
2324     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
2325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFeature));
2326     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
2327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFeature));
2328     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnderlineColor"),
2329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetUnderlineColor));
2330     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnderlineColor"),
2331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetUnderlineColor));
2332     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
2333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetDecoration));
2334     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
2335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetDecoration));
2336     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
2337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLetterSpacing));
2338     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
2339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLetterSpacing));
2340     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
2341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineHeight));
2342     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
2343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineHeight));
2344     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
2345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWordBreak));
2346     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
2347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWordBreak));
2348     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
2349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineBreakStrategy));
2350     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
2351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineBreakStrategy));
2352     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
2353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCancelButton));
2354     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
2355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCancelButton));
2356     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectAll"),
2357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectAll));
2358     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectAll"),
2359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectAll));
2360     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2362     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2364     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2366     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2368     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnEditChange));
2370     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnEditChange));
2372     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetInputFilter));
2374     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetInputFilter));
2376     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnSubmit));
2378     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnSubmit));
2380     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnChange));
2382     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnChange));
2384     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnTextSelectionChange));
2386     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnTextSelectionChange));
2388     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnContentScroll));
2390     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnContentScroll));
2392     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCopy));
2394     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCopy));
2396     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCut));
2398     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCut));
2400     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnPaste));
2402     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnPaste));
2404     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
2405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMinFontSize));
2406     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
2407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMinFontSize));
2408     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
2409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxFontSize));
2410     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
2411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxFontSize));
2412     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
2413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetHeightAdaptivePolicy));
2414     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
2415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetHeightAdaptivePolicy));
2416     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
2417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextOverflow));
2418     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
2419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextOverflow));
2420     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
2421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextIndent));
2422     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
2423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextIndent));
2424     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
2425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPadding));
2426     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
2427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPadding));
2428     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetContentType));
2430     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetContentType));
2432     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2434     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2436     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2438     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2440     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2442     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2444     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2446     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2448     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2450     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2452     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBackgroundColor));
2454     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBackgroundColor));
2456     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMargin));
2458     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMargin));
2460     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetText"),
2461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetText));
2462     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setText"),
2463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetText));
2464     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetController"),
2465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetController));
2466     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setController"),
2467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetController));
2468     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholder"),
2469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholder));
2470     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholder"),
2471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholder));
2472     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2474     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2476     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2478     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2480     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2482     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2484     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2486     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2488     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnablePreviewText));
2490     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnablePreviewText));
2492     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuOptions));
2494     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuOptions));
2496     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWidth));
2498     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWidth));
2500     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableHapticFeedback));
2502     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableHapticFeedback));
2504     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textInput"), textInput);
2505 
2506     auto navDestination = panda::ObjectRef::New(vm);
2507     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
2508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideTitleBar));
2509     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
2510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideTitleBar));
2511     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
2512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideToolBar));
2513     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
2514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideToolBar));
2515     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
2516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetBackButtonIcon));
2517     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
2518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetBackButtonIcon));
2519     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
2520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetNavDestinationMode));
2521     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
2522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetNavDestinationMode));
2523     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
2524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetIgnoreLayoutSafeArea));
2525     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
2526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetIgnoreLayoutSafeArea));
2527     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
2528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetTitle));
2529     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
2530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetTitle));
2531     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
2532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetMenus));
2533     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
2534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetMenus));
2535     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemTransition"),
2536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2537         NavDestinationBridge::SetNavDestinationSystemTransition));
2538     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSystemTransition"),
2539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2540         NavDestinationBridge::ResetNavDestinationSystemTransition));
2541 
2542     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
2543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetRecoverable));
2544     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
2545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetRecoverable));
2546     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestination"), navDestination);
2547 
2548     auto particle = panda::ObjectRef::New(vm);
2549     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisturbanceField"),
2550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetDisturbanceField));
2551     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisturbanceField"),
2552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetDisturbanceField));
2553     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEmitter"),
2554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetEmitter));
2555     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEmitter"),
2556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetEmitter));
2557     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "particle"), particle);
2558 
2559     auto symbolGlyph = panda::ObjectRef::New(vm);
2560     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontColor));
2562     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontColor));
2564     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontSize));
2566     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontSize));
2568     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontWeight));
2570     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontWeight));
2572     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetRenderingStrategy));
2574     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetRenderingStrategy));
2576     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetEffectStrategy));
2578     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetEffectStrategy));
2580     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolEffectOptions"),
2581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolEffect));
2582     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolEffectOptions"),
2583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolEffect));
2584     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolGlyphInitialize"),
2585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolGlyphInitialize));
2586     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolGlyphInitialize"),
2587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolGlyphInitialize));
2588     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolGlyph"), symbolGlyph);
2589 
2590     auto symbolSpan = panda::ObjectRef::New(vm);
2591     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontColor));
2593     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontColor));
2595     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontSize));
2597     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2598         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontSize));
2599     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2600         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontWeight));
2601     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontWeight));
2603     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetEffectStrategy));
2605     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2606         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetEffectStrategy));
2607     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2608         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetRenderingStrategy));
2609     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2610         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetRenderingStrategy));
2611     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
2612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetId));
2613     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolSpan"), symbolSpan);
2614 
2615 #ifdef MODEL_COMPONENT_SUPPORTED
2616     auto component3D = panda::ObjectRef::New(vm);
2617     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShaderInputBuffer"),
2618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::SetShaderInputBuffer));
2619     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShaderInputBuffer"),
2620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::ResetShaderInputBuffer));
2621     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "component3D"), component3D);
2622 #endif
2623 
2624     auto relativeContainer = panda::ObjectRef::New(vm);
2625     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGuideLine"),
2626         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetGuideLine));
2627     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGuideLine"),
2628         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetGuideLine));
2629     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarrier"),
2630         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetBarrier));
2631     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarrier"),
2632         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetBarrier));
2633     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "relativeContainer"), relativeContainer);
2634 
2635     auto containerSpan = panda::ObjectRef::New(vm);
2636     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
2637         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::SetTextBackgroundStyle));
2638     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
2639         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::ResetTextBackgroundStyle));
2640     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "containerSpan"), containerSpan);
2641 
2642     RegisterButtonAttributes(object, vm);
2643     RegisterToggleAttributes(object, vm);
2644     RegisterDividerAttributes(object, vm);
2645     RegisterNavigationAttributes(object, vm);
2646     RegisterImageAttributes(object, vm);
2647     RegisterNavRouterAttributes(object, vm);
2648     RegisterNavigatorAttributes(object, vm);
2649     RegisterNodeContainerAttributes(object, vm);
2650     RegisterRenderNodeAttributes(object, vm);
2651     RegisterFrameNodeAttributes(object, vm);
2652     RegisterPanelAttributes(object, vm);
2653     RegisterLineAttributes(object, vm);
2654     RegisterPathAttributes(object, vm);
2655     RegisterPolygonAttributes(object, vm);
2656     RegisterPolylineAttributes(object, vm);
2657     RegisterSideBarContainerAttributes(object, vm);
2658     RegisterCalendarPickerAttributes(object, vm);
2659     RegisterTabAttributes(object, vm);
2660     RegisterTabContentAttributes(object, vm);
2661     RegisterStepperItemAttributes(object, vm);
2662     RegisterHyperlinkAttributes(object, vm);
2663     RegisterMenuItemAttributes(object, vm);
2664     RegisterMenuAttributes(object, vm);
2665     RegisterMarqueeAttributes(object, vm);
2666     RegisterDatePickerAttributes(object, vm);
2667     RegisterAlphabetIndexerAttributes(object, vm);
2668     RegisterGaugeAttributes(object, vm);
2669     RegisterSwiperAttributes(object, vm);
2670     RegisterSelectAttributes(object, vm);
2671     RegisterRadioAttributes(object, vm);
2672     RegisterSliderAttributes(object, vm);
2673     RegisterRatingAttributes(object, vm);
2674     RegisterTimepickerAttributes(object, vm);
2675     RegisterTextpickerAttributes(object, vm);
2676     RegisterWaterFlowAttributes(object, vm);
2677     RegisterCheckboxAttributes(object, vm);
2678     RegisterDataPanelAttributes(object, vm);
2679     RegisterScrollAttributes(object, vm);
2680     RegisterScrollableAttributes(object, vm);
2681     RegisterGridItemAttributes(object, vm);
2682     RegisterMarqueeAttributes(object, vm);
2683     RegisterProgressAttributes(object, vm);
2684     RegisterCommonShapeAttributes(object, vm);
2685     RegisterShapeAttributes(object, vm);
2686     RegisterRectAttributes(object, vm);
2687     RegisterListAttributes(object, vm);
2688     RegisterGridAttributes(object, vm);
2689     RegisterListItemGroupAttributes(object, vm);
2690     RegisterQRCodeAttributes(object, vm);
2691     RegisterLoadingProgressAttributes(object, vm);
2692     RegisterTextClockAttributes(object, vm);
2693     RegisterListItemAttributes(object, vm);
2694     RegisterTextTimerAttributes(object, vm);
2695     RegisterRefreshAttributes(object, vm);
2696 #ifdef PLUGIN_COMPONENT_SUPPORTED
2697     RegisterPluginAttributes(object, vm);
2698 #endif
2699 #ifdef XCOMPONENT_SUPPORTED
2700     RegisterXComponentAttributes(object, vm);
2701     RegisterXComponentNodeAttributes(object, vm);
2702 #endif
2703 
2704 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
2705     RegisterFormAttributes(object, vm);
2706 #endif
2707     RegisterFlexAttributes(object, vm);
2708     RegisterResourceAttributes(object, vm);
2709     RegisterBadgeAttributes(object, vm);
2710     RegisterScrollBarAttributes(object, vm);
2711     return object;
2712 }
2713 
RegisterCheckboxAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2714 void ArkUINativeModule::RegisterCheckboxAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2715 {
2716     auto checkbox = panda::ObjectRef::New(vm);
2717     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMark"),
2718         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetMark));
2719     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMark"),
2720         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetMark));
2721     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnSelectedColor"),
2722         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetUnSelectedColor));
2723     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnSelectedColor"),
2724         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetUnSelectedColor));
2725     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelect"),
2726         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelect));
2727     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelect"),
2728         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelect));
2729     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2730         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelectedColor));
2731     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelectedColor));
2733     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxWidth));
2735     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxWidth));
2737     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2738         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxHeight));
2739     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxHeight));
2741     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxSize"),
2742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxSize));
2743     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxSize"),
2744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxSize));
2745     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxShape"),
2746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxShape));
2747     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxShape"),
2748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxShape));
2749     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxResponseRegion"),
2750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxResponseRegion));
2751     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxResponseRegion"),
2752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxResponseRegion));
2753     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxPadding"),
2754         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxPadding));
2755     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetContentModifierBuilder));
2757     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxPadding"),
2758         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxPadding));
2759 
2760     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkbox"), checkbox);
2761 }
2762 
RegisterTextpickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2763 void ArkUINativeModule::RegisterTextpickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2764 {
2765     auto textpicker = panda::ObjectRef::New(vm);
2766     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCanLoop"),
2767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetCanLoop));
2768     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedIndex"),
2769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedIndex));
2770     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetTextStyle));
2772     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedTextStyle));
2774     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisappearTextStyle));
2776     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultPickerItemHeight"),
2777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultPickerItemHeight));
2778     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetBackgroundColor));
2780     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCanLoop"),
2781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetCanLoop));
2782     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedIndex"),
2783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedIndex));
2784     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetTextStyle));
2786     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedTextStyle));
2788     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisappearTextStyle));
2790     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultPickerItemHeight"),
2791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultPickerItemHeight));
2792     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetBackgroundColor));
2794     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDivider));
2796     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDivider));
2798     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGradientHeight"),
2799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetGradientHeight));
2800     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGradientHeight"),
2801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetGradientHeight));
2802     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textpicker"), textpicker);
2803 }
2804 
RegisterTimepickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2805 void ArkUINativeModule::RegisterTimepickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2806 {
2807     auto timepicker = panda::ObjectRef::New(vm);
2808     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTextStyle));
2810     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetSelectedTextStyle));
2812     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDisappearTextStyle));
2814     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTextStyle));
2816     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetSelectedTextStyle));
2818     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDisappearTextStyle));
2820     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerBackgroundColor));
2822     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerBackgroundColor));
2824     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerUseMilitaryTime"),
2825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerUseMilitaryTime));
2826     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerUseMilitaryTime"),
2827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerUseMilitaryTime));
2828     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerLoop"),
2829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerLoop));
2830     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerLoop"),
2831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerLoop));
2832     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerDateTimeOptions"),
2833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerDateTimeOptions));
2834     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerDateTimeOptions"),
2835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerDateTimeOptions));
2836     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "timepicker"), timepicker);
2837 }
2838 
RegisterRatingAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2839 void ArkUINativeModule::RegisterRatingAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2840 {
2841     auto rating = panda::ObjectRef::New(vm);
2842     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStars"),
2843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStars));
2844     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStars"),
2845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStars));
2846     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingStepSize));
2848     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetRatingStepSize));
2850     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStarStyle"),
2851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStarStyle));
2852     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStarStyle"),
2853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStarStyle));
2854     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetContentModifierBuilder));
2856     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rating"), rating);
2857 }
2858 
RegisterSliderAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2859 void ArkUINativeModule::RegisterSliderAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2860 {
2861     auto slider = panda::ObjectRef::New(vm);
2862     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowTips"),
2863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowTips));
2864     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowTips"),
2865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowTips));
2866     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderStepSize));
2868     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSliderStepSize));
2870     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockSize"),
2871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockSize));
2872     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockSize"),
2873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockSize));
2874     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBorderRadius"),
2875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBorderRadius));
2876     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBorderRadius"),
2877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBorderRadius));
2878     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepColor"),
2879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetStepColor));
2880     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepColor"),
2881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetStepColor));
2882     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderColor"),
2883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderColor));
2884     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderColor"),
2885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderColor));
2886     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderWidth"),
2887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderWidth));
2888     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderWidth"),
2889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderWidth));
2890     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockColor"),
2891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockColor));
2892     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockColor"),
2893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockColor));
2894     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBackgroundColor"),
2895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBackgroundColor));
2896     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBackgroundColor"),
2897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBackgroundColor));
2898     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectColor"),
2899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectColor));
2900     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectColor"),
2901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectColor));
2902     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSteps"),
2903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowSteps));
2904     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSteps"),
2905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowSteps));
2906     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setThickness"),
2907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetThickness));
2908     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetThickness"),
2909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetThickness));
2910     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockStyle"),
2911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockStyle));
2912     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockStyle"),
2913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockStyle));
2914     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValidSlideRange"),
2915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetValidSlideRange));
2916     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValidSlideRange"),
2917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetValidSlideRange));
2918     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBorderRadius"),
2919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectedBorderRadius));
2920     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBorderRadius"),
2921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectedBorderRadius));
2922     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInteractionMode"),
2923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetInteractionMode));
2924     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInteractionMode"),
2925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetInteractionMode));
2926     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinResponsiveDistance"),
2927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetMinResponsiveDistance));
2928     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinResponsiveDistance"),
2929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetMinResponsiveDistance));
2930     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetContentModifierBuilder));
2932     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "slider"), slider);
2933 }
2934 
RegisterRadioAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2935 void ArkUINativeModule::RegisterRadioAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2936 {
2937     auto radio = panda::ObjectRef::New(vm);
2938     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioChecked"),
2939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioChecked));
2940     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioChecked"),
2941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioChecked));
2942     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioStyle"),
2943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioStyle));
2944     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioStyle"),
2945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioStyle));
2946     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioWidth"),
2947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioWidth));
2948     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioWidth"),
2949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioWidth));
2950     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHeight"),
2951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHeight));
2952     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHeight"),
2953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHeight));
2954     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioSize"),
2955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioSize));
2956     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioSize"),
2957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioSize));
2958     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHoverEffect"),
2959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHoverEffect));
2960     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHoverEffect"),
2961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHoverEffect));
2962     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioPadding"),
2963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioPadding));
2964     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioPadding"),
2965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioPadding));
2966     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioResponseRegion"),
2967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioResponseRegion));
2968     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioResponseRegion"),
2969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioResponseRegion));
2970     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetContentModifierBuilder));
2972     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "radio"), radio);
2973 }
2974 
RegisterSelectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2975 void ArkUINativeModule::RegisterSelectAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2976 {
2977     auto select = panda::ObjectRef::New(vm);
2978     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
2979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSpace));
2980     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValue"),
2981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetValue));
2982     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
2983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelected));
2984     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFontColor));
2986     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionBgColor"),
2987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionBgColor));
2988     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionBgColor"),
2989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionBgColor));
2990     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFontColor"),
2991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFontColor));
2992     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFontColor"),
2993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFontColor));
2994     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setArrowPosition"),
2995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetArrowPosition));
2996     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuAlign"),
2997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuAlign));
2998     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
2999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFont));
3000     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFont"),
3001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFont));
3002     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFont"),
3003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFont));
3004     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetArrowPosition"),
3005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetArrowPosition));
3006     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuAlign"),
3007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuAlign));
3008     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
3009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFont));
3010     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFont"),
3011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFont));
3012     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFont"),
3013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFont));
3014     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
3015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSpace));
3016     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValue"),
3017         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetValue));
3018     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
3019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelected));
3020     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFontColor));
3022     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionBgColor"),
3023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionBgColor));
3024     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionBgColor"),
3025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionBgColor));
3026     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFontColor"),
3027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFontColor));
3028     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFontColor"),
3029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFontColor));
3030     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionWidth"),
3031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionWidth));
3032     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionWidth"),
3033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionWidth));
3034     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionHeight"),
3035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionHeight));
3036     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionHeight"),
3037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionHeight));
3038     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetWidth));
3040     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetWidth));
3042     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetHeight));
3044     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetHeight));
3046     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSize));
3048     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
3049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSize));
3050     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlSize"),
3051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetControlSize));
3052     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlSize"),
3053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetControlSize));
3054     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetContentModifierBuilder));
3056     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundColor"),
3057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundColor));
3058     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundColor"),
3059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundColor));
3060     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundBlurStyle"),
3061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundBlurStyle));
3062     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundBlurStyle"),
3063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundBlurStyle));
3064     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetDivider));
3066     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetDivider));
3068     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "select"), select);
3069 }
3070 
RegisterPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3071 void ArkUINativeModule::RegisterPanelAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3072 {
3073     auto panel = panda::ObjectRef::New(vm);
3074     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMode"),
3075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMode));
3076     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMode"),
3077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMode));
3078     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelFullHeight"),
3079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelFullHeight));
3080     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelFullHeight"),
3081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelFullHeight));
3082     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelHalfHeight"),
3083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelHalfHeight));
3084     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelHalfHeight"),
3085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelHalfHeight));
3086     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMiniHeight"),
3087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMiniHeight));
3088     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMiniHeight"),
3089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMiniHeight));
3090     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelBackgroundMask"),
3091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelBackgroundMask));
3092     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelBackgroundMask"),
3093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelBackgroundMask));
3094     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelType"),
3095         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelType));
3096     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelType"),
3097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelType));
3098     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelCustomHeight"),
3099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelCustomHeight));
3100     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelCustomHeight"),
3101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelCustomHeight));
3102     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
3103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
3104     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
3105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
3106     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
3107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
3108     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
3109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
3110     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
3111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
3112     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
3113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
3114     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
3115 }
3116 
RegisterButtonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3117 void ArkUINativeModule::RegisterButtonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3118 {
3119     auto button = panda::ObjectRef::New(vm);
3120     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCreateWithLabel"),
3121         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetCreateWithLabel));
3122     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3123         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabel));
3124     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabel"),
3125         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabel));
3126     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptions"),
3127         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetOptions));
3128     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptions"),
3129         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetOptions));
3130     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3131         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetType));
3132     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3133         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetType));
3134     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStateEffect"),
3135         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetStateEffect));
3136     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStateEffect"),
3137         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetStateEffect));
3138     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3139         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontColor));
3140     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3141         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontColor));
3142     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3143         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontSize));
3144     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3145         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontSize));
3146     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3147         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontWeight));
3148     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3149         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontWeight));
3150     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3151         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontStyle));
3152     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3153         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontStyle));
3154     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3155         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontFamily));
3156     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3157         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontFamily));
3158     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelStyle"),
3159         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabelStyle));
3160     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelStyle"),
3161         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabelStyle));
3162     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetBackgroundColor));
3164     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetBackgroundColor));
3166     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorderRadius"),
3167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorderRadius));
3168     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorderRadius"),
3169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorderRadius));
3170     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorder"),
3171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorder));
3172     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorder"),
3173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorder));
3174     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonSize"),
3175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonSize));
3176     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonSize"),
3177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonSize));
3178     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonRole"),
3179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonRole));
3180     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonRole"),
3181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonRole));
3182     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonStyle"),
3183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonStyle));
3184     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonStyle"),
3185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonStyle));
3186     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonControlSize"),
3187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonControlSize));
3188     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetContentModifierBuilder));
3190     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonControlSize"),
3191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonControlSize));
3192     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "button"), button);
3193 }
3194 
RegisterToggleAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3195 void ArkUINativeModule::RegisterToggleAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3196 {
3197     auto toggle = panda::ObjectRef::New(vm);
3198     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
3199         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSelectedColor));
3200     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
3201         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSelectedColor));
3202     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchPointColor"),
3203         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchPointColor));
3204     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchPointColor"),
3205         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchPointColor));
3206     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3207         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHeight));
3208     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3209         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHeight));
3210     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
3211         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetResponseRegion));
3212     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
3213         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetResponseRegion));
3214     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
3215         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetPadding));
3216     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
3217         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetPadding));
3218     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3219         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetBackgroundColor));
3220     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3221         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetBackgroundColor));
3222     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
3223         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHoverEffect));
3224     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
3225         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHoverEffect));
3226     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchStyle"),
3227         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchStyle));
3228     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchStyle"),
3229         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchStyle));
3230     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3231         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetContentModifierBuilder));
3232     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "toggle"), toggle);
3233 }
3234 
RegisterDividerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3235 void ArkUINativeModule::RegisterDividerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3236 {
3237     auto divider = panda::ObjectRef::New(vm);
3238     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
3239         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetStrokeWidth));
3240     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
3241         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetStrokeWidth));
3242     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineCap"),
3243         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetLineCap));
3244     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineCap"),
3245         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetLineCap));
3246     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
3247         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetColor));
3248     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
3249         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetColor));
3250     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
3251         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetVertical));
3252     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
3253         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetVertical));
3254     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "divider"), divider);
3255 }
3256 
RegisterGridAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3257 void ArkUINativeModule::RegisterGridAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3258 {
3259     auto grid = panda::ObjectRef::New(vm);
3260     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
3261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsTemplate));
3262     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
3263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsTemplate));
3264     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
3265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsTemplate));
3266     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
3267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsTemplate));
3268     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
3269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsGap));
3270     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
3271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsGap));
3272     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
3273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsGap));
3274     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
3275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsGap));
3276     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
3277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBar));
3278     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
3279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBar));
3280     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
3281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarWidth));
3282     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
3283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarWidth));
3284     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
3285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarColor));
3286     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
3287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarColor));
3288     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
3289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCachedCount));
3290     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
3291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCachedCount));
3292     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
3293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEditMode));
3294     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
3295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEditMode));
3296     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
3297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMultiSelectable));
3298     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
3299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMultiSelectable));
3300     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxCount"),
3301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMaxCount));
3302     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxCount"),
3303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMaxCount));
3304     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinCount"),
3305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMinCount));
3306     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinCount"),
3307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMinCount));
3308     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCellLength"),
3309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCellLength));
3310     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCellLength"),
3311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCellLength));
3312     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
3313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetLayoutDirection));
3314     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
3315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetLayoutDirection));
3316     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportAnimation"),
3317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetSupportAnimation));
3318     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSupportAnimation"),
3319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetSupportAnimation));
3320     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
3321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEdgeEffect));
3322     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
3323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEdgeEffect));
3324     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
3325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFadingEdge));
3326     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
3327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFadingEdge));
3328     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
3329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetNestedScroll));
3330     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
3331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetNestedScroll));
3332     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
3333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEnableScroll));
3334     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
3335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEnableScroll));
3336     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
3337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFriction));
3338     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
3339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFriction));
3340     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
3341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFlingSpeedLimit));
3342     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
3343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFlingSpeedLimit));
3344     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
3345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetAlignItems));
3346     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
3347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetAlignItems));
3348     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridScroller"),
3349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridScroller));
3350     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridLayoutOptions"),
3351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridLayoutOptions));
3352     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "grid"), grid);
3353 }
3354 
RegisterNavigationAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3355 void ArkUINativeModule::RegisterNavigationAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3356 {
3357     auto navigation = panda::ObjectRef::New(vm);
3358     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
3359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideToolBar));
3360     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
3361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideToolBar));
3362     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitleMode"),
3363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitleMode));
3364     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitleMode"),
3365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitleMode));
3366     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
3367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideBackButton));
3368     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
3369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideBackButton));
3370     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubTitle"),
3371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetSubtitle));
3372     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubTitle"),
3373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetSubtitle));
3374     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideNavBar"),
3375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideNavBar));
3376     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideNavBar"),
3377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideNavBar));
3378     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetUsrNavigationMode));
3380     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetUsrNavigationMode));
3382     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarPosition"),
3383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarPosition));
3384     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarPosition"),
3385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarPosition));
3386     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidth"),
3387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidth));
3388     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidth"),
3389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidth));
3390     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidthRange"),
3391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidthRange));
3392     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidthRange"),
3393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidthRange));
3394     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMinContentWidth));
3396     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMinContentWidth));
3398     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
3399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideTitleBar));
3400     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
3401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideTitleBar));
3402     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
3403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetBackButtonIcon));
3404     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
3405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetBackButtonIcon));
3406     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDragBar"),
3407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableDragBar));
3408     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDragBar"),
3409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableDragBar));
3410     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
3411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetIgnoreLayoutSafeArea));
3412     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
3413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetIgnoreLayoutSafeArea));
3414     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
3415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitle));
3416     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
3417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitle));
3418     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
3419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMenus));
3420     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
3421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMenus));
3422     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
3423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetRecoverable));
3424     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
3425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetRecoverable));
3426     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigation"), navigation);
3427 }
3428 
RegisterImageAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3429 void ArkUINativeModule::RegisterImageAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3430 {
3431     auto image = panda::ObjectRef::New(vm);
3432     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageShowSrc"),
3433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageShowSrc));
3434     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
3435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetCopyOption));
3436     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
3437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetCopyOption));
3438     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoResize"),
3439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAutoResize));
3440     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoResize"),
3441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAutoResize));
3442     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectRepeat"),
3443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectRepeat));
3444     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectRepeat"),
3445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectRepeat));
3446     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderMode"),
3447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetRenderMode));
3448     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderMode"),
3449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetRenderMode));
3450     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3452     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3454     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3456     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3458     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3460     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3462     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSourceSize"),
3463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSourceSize));
3464     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSourceSize"),
3465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSourceSize));
3466     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMatchTextDirection"),
3467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetMatchTextDirection));
3468     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMatchTextDirection"),
3469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetMatchTextDirection));
3470     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillColor"),
3471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFillColor));
3472     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillColor"),
3473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFillColor));
3474     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
3475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAlt));
3476     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
3477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAlt));
3478     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageInterpolation"),
3479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageInterpolation));
3480     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageInterpolation"),
3481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageInterpolation));
3482     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
3483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetColorFilter));
3484     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
3485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetColorFilter));
3486     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3488     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3490     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3492     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3494     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3496     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3498     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
3499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDraggable));
3500     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
3501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDraggable));
3502     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
3503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetBorderRadius));
3504     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
3505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetBorderRadius));
3506     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageBorder"),
3507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageBorder));
3508     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageBorder"),
3509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageBorder));
3510     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageOpacity"),
3511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageOpacity));
3512     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageOpacity"),
3513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageOpacity));
3514     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageTransition"),
3515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageTransition));
3516     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageTransition"),
3517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageTransition));
3518     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAntialiasing"),
3519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEdgeAntialiasing));
3520     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAntialiasing"),
3521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEdgeAntialiasing));
3522     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizableLattice"),
3523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizableLattice));
3524     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizable"),
3525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizable));
3526     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizable"),
3527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetResizable));
3528     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDynamicRangeMode"),
3529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDynamicRangeMode));
3530     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDynamicRangeMode"),
3531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDynamicRangeMode));
3532     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrientation"),
3533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetOrientation));
3534     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrientation"),
3535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetOrientation));
3536     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnhancedImageQuality"),
3537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEnhancedImageQuality));
3538     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnhancedImageQuality"),
3539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEnhancedImageQuality));
3540     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
3541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetPrivacySensitive));
3542     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
3543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetPrivacySensitive));
3544     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "enableAnalyzer"),
3545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::EnableAnalyzer));
3546     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "analyzerConfig"),
3547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::AnalyzerConfig));
3548     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
3549         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnComplete));
3550     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
3551         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnComplete));
3552     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
3553         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnError));
3554     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
3555         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnError));
3556     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFinish"),
3557         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnFinish));
3558     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFinish"),
3559         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnFinish));
3560     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "image"), image);
3561 }
3562 
RegisterNavRouterAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3563 void ArkUINativeModule::RegisterNavRouterAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3564 {
3565     auto navRouter = panda::ObjectRef::New(vm);
3566     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::SetMode));
3568     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::ResetMode));
3570     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navRouter"), navRouter);
3571 }
3572 
RegisterNavigatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3573 void ArkUINativeModule::RegisterNavigatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3574 {
3575     auto navigator = panda::ObjectRef::New(vm);
3576     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTarget"),
3577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetTarget));
3578     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTarget"),
3579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetTarget));
3580     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetType));
3582     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetType));
3584     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActive"),
3585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetActive));
3586     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActive"),
3587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetActive));
3588     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setParams"),
3589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetParams));
3590     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetParams"),
3591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetParams));
3592     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigator"), navigator);
3593 }
3594 
RegisterNodeContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3595 void ArkUINativeModule::RegisterNodeContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3596 {
3597     auto nodeContainer = panda::ObjectRef::New(vm);
3598     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "rebuild"),
3599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Rebuild));
3600     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "clean"),
3601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Clean));
3602     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeContainer"), nodeContainer);
3603 }
3604 
RegisterRenderNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3605 void ArkUINativeModule::RegisterRenderNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3606 {
3607     auto renderNode = panda::ObjectRef::New(vm);
3608     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createRenderNode"),
3609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::CreateRenderNode));
3610     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::AppendChild));
3612     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::InsertChildAfter));
3614     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::RemoveChild));
3616     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::ClearChildren));
3618     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipToFrame"),
3619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetClipToFrame));
3620     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotation"),
3621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRotation));
3622     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowColor"),
3623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowColor));
3624     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowOffset"),
3625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowOffset));
3626     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetLabel));
3628     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowAlpha"),
3629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowAlpha));
3630     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowElevation"),
3631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowElevation));
3632     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowRadius"),
3633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowRadius));
3634     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::Invalidate));
3636     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
3637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetScale));
3638     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBackgroundColor));
3640     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPivot"),
3641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPivot));
3642     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrame"),
3643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetFrame));
3644     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetSize));
3646     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
3647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOpacity));
3648     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
3649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetTranslate));
3650     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
3651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPosition));
3652     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkNodeGroup"),
3653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetMarkNodeGroup));
3654     RegisterRenderNodeBorderAndMaskAttributes(renderNode, vm);
3655     RegisterRenderNodeShapeClipAttributes(renderNode, vm);
3656     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "renderNode"), renderNode);
3657 }
3658 
RegisterFrameNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3659 void ArkUINativeModule::RegisterFrameNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3660 {
3661     auto frameNode = panda::ObjectRef::New(vm);
3662     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isModifiable"),
3663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsModifiable));
3664     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createFrameNode"),
3665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateFrameNode));
3666         frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createTypedFrameNode"),
3667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateTypedFrameNode));
3668     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::Invalidate));
3670     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AppendChild));
3672     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::InsertChildAfter));
3674     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveChild));
3676     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::ClearChildren));
3678     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChildrenCount"),
3679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChildrenCount));
3680     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChild"),
3681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChild));
3682     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirst"),
3683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirst));
3684     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNextSibling"),
3685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNextSibling));
3686     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPreviousSibling"),
3687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPreviousSibling));
3688     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getParent"),
3689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetParent));
3690     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getIdByNodePtr"),
3691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetIdByNodePtr));
3692     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
3693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnClick));
3694     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
3695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnTouch));
3696     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
3697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAppear));
3698     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
3699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDisappear));
3700     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
3701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnKeyEvent));
3702     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
3703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnFocus));
3704     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
3705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnBlur));
3706     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
3707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHover));
3708     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
3709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnMouse));
3710     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
3711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnSizeChange));
3712     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnVisibleAreaApproximateChange"),
3713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnVisibleAreaApproximateChange));
3714     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "propertyUpdate"),
3715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::PropertyUpdate));
3716     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParent"),
3717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParent));
3718     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreen"),
3719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreen));
3720     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindow"),
3721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindow));
3722     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParentWithTransform"),
3723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParentWithTransform));
3724     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreenWithTransform"),
3725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreenWithTransform));
3726     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindowWithTransform"),
3727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindowWithTransform));
3728     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getMeasuredSize"),
3729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetMeasuredSize));
3730     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLayoutPosition"),
3731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLayoutPosition));
3732     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigBorderWidth"),
3733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigBorderWidth));
3734     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigPadding"),
3735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigPadding));
3736     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigMargin"),
3737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigMargin));
3738     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigSize"),
3739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigSize));
3740     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getId"),
3741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetId));
3742     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNodeType"),
3743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNodeType));
3744     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getOpacity"),
3745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetOpacity));
3746     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isVisible"),
3747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsVisible));
3748     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isClipToFrame"),
3749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsClipToFrame));
3750     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isAttached"),
3751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsAttached));
3752     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getInspectorInfo"),
3753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetInspectorInfo));
3754     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMeasuredSize"),
3755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetMeasuredSize));
3756     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutPosition"),
3757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetLayoutPosition));
3758     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "measureNode"),
3759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MeasureNode));
3760     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "layoutNode"),
3761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::LayoutNode));
3762     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNeedsLayout"),
3763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetNeedsLayout));
3764     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
3765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAttach));
3766     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
3767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDetach));
3768     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameCallback"),
3769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RegisterFrameCallback));
3770     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "markDirty"),
3771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MarkDirty));
3772     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNodeContent"),
3773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateNodeContent));
3774     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "addFrameNodeToNodeContent"),
3775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AddFrameNodeToNodeContent));
3776     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeFrameNodeFromNodeContent"),
3777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveFrameNodeFromNodeContent));
3778     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstUINode"),
3779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstUINode));
3780     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCustomPropertyCapiByKey"),
3781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCustomPropertyCapiByKey));
3782     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCustomPropertyModiferByKey"),
3783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCustomPropertyModiferByKey));
3784     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "frameNode"), frameNode);
3785 }
3786 
RegisterLineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3787 void ArkUINativeModule::RegisterLineAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3788 {
3789     auto line = panda::ObjectRef::New(vm);
3790     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStartPoint"),
3791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetStartPoint));
3792     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStartPoint"),
3793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetStartPoint));
3794     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEndPoint"),
3795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetEndPoint));
3796     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEndPoint"),
3797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetEndPoint));
3798     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "line"), line);
3799 }
3800 
RegisterPathAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3801 void ArkUINativeModule::RegisterPathAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3802 {
3803     auto path = panda::ObjectRef::New(vm);
3804     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathCommands"),
3805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::SetPathCommands));
3806     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathCommands"),
3807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::ResetPathCommands));
3808     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "path"), path);
3809 }
3810 
RegisterPolygonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3811 void ArkUINativeModule::RegisterPolygonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3812 {
3813     auto polygon = panda::ObjectRef::New(vm);
3814     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPolygonPoints"),
3815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::SetPolygonPoints));
3816     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPolygonPoints"),
3817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::ResetPolygonPoints));
3818     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polygon"), polygon);
3819 }
3820 
RegisterPolylineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3821 void ArkUINativeModule::RegisterPolylineAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3822 {
3823     auto polyline = panda::ObjectRef::New(vm);
3824     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPoints"),
3825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::SetPoints));
3826     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPoints"),
3827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::ResetPoints));
3828     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polyline"), polyline);
3829 }
3830 
RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3831 void ArkUINativeModule::RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3832 {
3833     auto sideBarContainer = panda::ObjectRef::New(vm);
3834     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarWidth"),
3835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarWidth));
3836     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarWidth"),
3837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarWidth));
3838     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinSideBarWidth"),
3839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinSideBarWidth));
3840     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinSideBarWidth"),
3841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinSideBarWidth));
3842     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlButton"),
3843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetControlButton));
3844     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlButton"),
3845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetControlButton));
3846     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowControlButton"),
3847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowControlButton));
3848     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowControlButton"),
3849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowControlButton));
3850     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHide"),
3851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetAutoHide));
3852     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHide"),
3853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetAutoHide));
3854     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxSideBarWidth"),
3855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMaxSideBarWidth));
3856     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxSideBarWidth"),
3857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMaxSideBarWidth));
3858     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinContentWidth));
3860     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinContentWidth));
3862     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarPosition"),
3863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarPosition));
3864     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarPosition"),
3865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarPosition));
3866     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSideBar"),
3867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowSideBar));
3868     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSideBar"),
3869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowSideBar));
3870     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetDivider));
3872     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetDivider));
3874     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "sideBarContainer"), sideBarContainer);
3875 }
3876 
RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3877 void ArkUINativeModule::RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3878 {
3879     auto calendarPicker = panda::ObjectRef::New(vm);
3880     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
3881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetTextStyle));
3882     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
3883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetTextStyle));
3884     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAlign"),
3885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetEdgeAlign));
3886     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAlign"),
3887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetEdgeAlign));
3888     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerPadding"),
3889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerPadding));
3890     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerPadding"),
3891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerPadding));
3892     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorder"),
3893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorder));
3894     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorder"),
3895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorder));
3896     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerHeight"),
3897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerHeight));
3898     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerHeight"),
3899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerHeight));
3900     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderColor"),
3901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderColor));
3902     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderColor"),
3903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderColor));
3904     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderRadius"),
3905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderRadius));
3906     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderRadius"),
3907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderRadius));
3908     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "calendarPicker"), calendarPicker);
3909 }
3910 
RegisterMenuItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3911 void ArkUINativeModule::RegisterMenuItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3912 {
3913     auto menuitem = panda::ObjectRef::New(vm);
3914     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemSelected"),
3915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetMenuItemSelected));
3916     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemSelected"),
3917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetMenuItemSelected));
3918     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFontColor"),
3919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFontColor));
3920     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFontColor"),
3921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFontColor));
3922     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFontColor"),
3923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFontColor));
3924     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFontColor"),
3925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFontColor));
3926     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFont"),
3927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFont));
3928     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFont"),
3929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFont));
3930     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectIcon"),
3931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetSelectIcon));
3932     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectIcon"),
3933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetSelectIcon));
3934     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFont"),
3935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFont));
3936     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFont"),
3937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFont));
3938     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menuitem"), menuitem);
3939 }
3940 
RegisterMenuAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3941 void ArkUINativeModule::RegisterMenuAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3942 {
3943     auto menu = panda::ObjectRef::New(vm);
3944     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuFontColor"),
3945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuFontColor));
3946     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuFontColor"),
3947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuFontColor));
3948     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
3949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFont));
3950     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
3951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFont));
3952     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadius"),
3953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetRadius));
3954     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadius"),
3955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetRadius));
3956     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetWidth));
3958     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetWidth));
3960     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemDivider"),
3961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemDivider));
3962     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemDivider"),
3963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemDivider));
3964     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemGroupDivider"),
3965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemGroupDivider));
3966     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemGroupDivider"),
3967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemGroupDivider));
3968     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubMenuExpandingMode"),
3969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetSubMenuExpandingMode));
3970     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubMenuExpandingMode"),
3971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetSubMenuExpandingMode));
3972     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menu"), menu);
3973 }
3974 
RegisterTabAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3975 void ArkUINativeModule::RegisterTabAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3976 {
3977     auto tabs = panda::ObjectRef::New(vm);
3978     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarMode"),
3979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarMode));
3980     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarMode"),
3981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarMode));
3982     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollableBarModeOptions"),
3983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollableBarModeOptions));
3984     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollableBarModeOptions"),
3985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollableBarModeOptions));
3986     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarGridAlign"),
3987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarGridAlign));
3988     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarGridAlign"),
3989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarGridAlign));
3990     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetDivider));
3992     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetDivider));
3994     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
3995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetFadingEdge));
3996     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
3997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetFadingEdge));
3998     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundColor"),
3999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundColor));
4000     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundColor"),
4001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundColor));
4002     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundBlurStyle"),
4003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundBlurStyle));
4004     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundBlurStyle"),
4005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundBlurStyle));
4006     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarOverlap"),
4007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarOverlap));
4008     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarOverlap"),
4009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarOverlap));
4010     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIsVertical"),
4011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetIsVertical));
4012     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIsVertical"),
4013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetIsVertical));
4014     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarWidth"),
4015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarWidth));
4016     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarWidth"),
4017         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarWidth));
4018     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarPosition"),
4019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarPosition));
4020     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarPosition"),
4021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarPosition));
4022     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollable));
4024     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollable));
4026     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarHeight"),
4027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarHeight));
4028     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarHeight"),
4029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarHeight));
4030     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarAdaptiveHeight"),
4031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarAdaptiveHeight));
4032     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarAdaptiveHeight"),
4033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarAdaptiveHeight));
4034     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimationDuration"),
4035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimationDuration));
4036     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimationDuration"),
4037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimationDuration));
4038     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarPosition"),
4039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarPosition));
4040     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarPosition"),
4041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarPosition));
4042     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabClip"),
4043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabClip));
4044     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabClip"),
4045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabClip));
4046     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabEdgeEffect"),
4047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabEdgeEffect));
4048     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabEdgeEffect"),
4049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabEdgeEffect));
4050     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabWidth"),
4051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetWidthAuto));
4052     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabWidth"),
4053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetWidthAuto));
4054     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabHeight"),
4055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetHeightAuto));
4056     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabHeight"),
4057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetHeightAuto));
4058     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimateMode"),
4059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimateMode));
4060     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimateMode"),
4061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimateMode));
4062     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabs"), tabs);
4063 }
4064 
RegisterStepperItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4065 void ArkUINativeModule::RegisterStepperItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4066 {
4067     auto stepperItem = panda::ObjectRef::New(vm);
4068     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextLabel"),
4069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetNextLabel));
4070     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextLabel"),
4071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetNextLabel));
4072     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrevLabel"),
4073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetPrevLabel));
4074     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrevLabel"),
4075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetPrevLabel));
4076     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStatus"),
4077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetStatus));
4078     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStatus"),
4079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetStatus));
4080     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stepperItem"), stepperItem);
4081 }
4082 
RegisterTabContentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4083 void ArkUINativeModule::RegisterTabContentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4084 {
4085     auto tabContent = panda::ObjectRef::New(vm);
4086     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBar"),
4087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabBar));
4088     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBar"),
4089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabBar));
4090     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentWidth"),
4091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentWidth));
4092     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentHeight"),
4093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentHeight));
4094     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentSize"),
4095         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentSize));
4096     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentWidth"),
4097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentWidth));
4098     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentHeight"),
4099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentHeight));
4100     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentSize"),
4101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentSize));
4102     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabContent"), tabContent);
4103 }
4104 
RegisterRefreshAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4105 void ArkUINativeModule::RegisterRefreshAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4106 {
4107     auto refresh = panda::ObjectRef::New(vm);
4108     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRefreshOffset"),
4109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetRefreshOffset));
4110     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRefreshOffset"),
4111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetRefreshOffset));
4112     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullToRefresh"),
4113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullToRefresh));
4114     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullToRefresh"),
4115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullToRefresh));
4116     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullDownRatio"),
4117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullDownRatio));
4118     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullDownRatio"),
4119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullDownRatio));
4120     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "refresh"), refresh);
4121 }
4122 
RegisterHyperlinkAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4123 void ArkUINativeModule::RegisterHyperlinkAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4124 {
4125     auto hyperlink = panda::ObjectRef::New(vm);
4126     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetColor));
4128     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetColor));
4130     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
4131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetDraggable));
4132     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
4133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetDraggable));
4134     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
4135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetResponseRegion));
4136     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
4137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetResponseRegion));
4138     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "hyperlink"), hyperlink);
4139 }
4140 
4141 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
RegisterFormAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4142 void ArkUINativeModule::RegisterFormAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4143 {
4144     auto formComponent = panda::ObjectRef::New(vm);
4145 #ifdef PREVIEW
4146     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4148     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4150     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4152     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4154     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4156     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4158     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4160     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4162     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4164     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4166 #else
4167     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetVisibility));
4169     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetVisibility));
4171     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::AllowUpdate));
4173     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::DisallowUpdate));
4175     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetDimension));
4177     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetDimension));
4179     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetModuleName));
4181     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetModuleName));
4183     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetSize));
4185     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetSize));
4187 #endif
4188     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "formComponent"), formComponent);
4189 }
4190 #endif
4191 
RegisterDatePickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4192 void ArkUINativeModule::RegisterDatePickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4193 {
4194     auto datePicker = panda::ObjectRef::New(vm);
4195     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
4196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetSelectedTextStyle));
4197     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
4198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetSelectedTextStyle));
4199     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
4200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetTextStyle));
4201     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
4202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetTextStyle));
4203     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
4204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDisappearTextStyle));
4205     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
4206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDisappearTextStyle));
4207     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLunar"),
4208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetLunar));
4209     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLunar"),
4210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetLunar));
4211     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
4212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetBackgroundColor));
4213     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
4214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetBackgroundColor));
4215     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "datePicker"), datePicker);
4216 }
4217 
RegisterWaterFlowAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4218 void ArkUINativeModule::RegisterWaterFlowAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4219 {
4220     auto waterflow = panda::ObjectRef::New(vm);
4221     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
4222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsTemplate));
4223     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
4224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsTemplate));
4225     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
4226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsTemplate));
4227     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
4228         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsTemplate));
4229     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEnableScrollInteraction));
4231     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEnableScrollInteraction));
4233     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
4234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsGap));
4235     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
4236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsGap));
4237     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
4238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsGap));
4239     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
4240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsGap));
4241     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemConstraintSize"),
4242         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetItemConstraintSize));
4243     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemConstraintSize"),
4244         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetItemConstraintSize));
4245     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
4246         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetLayoutDirection));
4247     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
4248         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetLayoutDirection));
4249     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4250         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetNestedScroll));
4251     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4252         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetNestedScroll));
4253     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFriction));
4255     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFriction));
4257     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEdgeEffect));
4259     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEdgeEffect));
4261     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFadingEdge));
4263     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFadingEdge));
4265     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBar));
4267     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBar));
4269     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarWidth));
4271     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarWidth));
4273     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarColor));
4275     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarColor));
4277     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetCachedCount));
4279     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetCachedCount));
4281     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFlingSpeedLimit));
4283     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFlingSpeedLimit));
4285     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWaterFlowInitialize"),
4286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetWaterFlowInitialize));
4287     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWaterFlowInitialize"),
4288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetWaterFlowInitialize));
4289     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "waterFlow"), waterflow);
4290 }
4291 
RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4292 void ArkUINativeModule::RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4293 {
4294     auto alphabetIndexer = panda::ObjectRef::New(vm);
4295     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemFont"),
4296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemFont));
4297     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemFont"),
4298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemFont));
4299     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedFont"),
4300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedFont));
4301     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedFont"),
4302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedFont));
4303     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupFont"),
4304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupFont));
4305     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupFont"),
4306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupFont));
4307     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetFont));
4309     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetFont));
4311     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBackgroundColor"),
4312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBackgroundColor));
4313     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBackgroundColor"),
4314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBackgroundColor));
4315     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetColor));
4317     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetColor));
4319     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupColor"),
4320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupColor));
4321     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupColor"),
4322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupColor));
4323     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
4324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedColor));
4325     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
4326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedColor));
4327     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackground"),
4328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackground));
4329     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackground"),
4330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackground));
4331     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
4332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedBackgroundColor));
4333     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
4334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedBackgroundColor));
4335     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupUnselectedColor"),
4336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupUnselectedColor));
4337     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupUnselectedColor"),
4338         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupUnselectedColor));
4339     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupSelectedColor"),
4340         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupSelectedColor));
4341     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupSelectedColor"),
4342         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupSelectedColor));
4343     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignStyle"),
4344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAlignStyle));
4345     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignStyle"),
4346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAlignStyle));
4347     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUsingPopup"),
4348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetUsingPopup));
4349     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUsingPopup"),
4350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetUsingPopup));
4351     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
4352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelected));
4353     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
4354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelected));
4355     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemSize"),
4356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemSize));
4357     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemSize"),
4358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemSize));
4359     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupPosition"),
4360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupPosition));
4361     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupPosition"),
4362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupPosition));
4363     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBorderRadius"),
4364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBorderRadius));
4365     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBorderRadius"),
4366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBorderRadius));
4367     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemBorderRadius"),
4368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemBorderRadius));
4369     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemBorderRadius"),
4370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemBorderRadius));
4371     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackgroundBlurStyle"),
4372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackgroundBlurStyle));
4373     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackgroundBlurStyle"),
4374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackgroundBlurStyle));
4375     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupTitleBackground"),
4376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupTitleBackground));
4377     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupTitleBackground"),
4378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupTitleBackground));
4379     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdaptiveWidth"),
4380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAdaptiveWidth));
4381     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdaptiveWidth"),
4382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAdaptiveWidth));
4383     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoCollapse"),
4384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAutoCollapse));
4385     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoCollapse"),
4386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAutoCollapse));
4387     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
4388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetEnableHapticFeedback));
4389     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
4390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetEnableHapticFeedback));
4391     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "alphabetIndexer"), alphabetIndexer);
4392 }
4393 
RegisterGaugeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4394 void ArkUINativeModule::RegisterGaugeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4395 {
4396     auto gauge = panda::ObjectRef::New(vm);
4397     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeVaule"),
4398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeValue));
4399     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeVaule"),
4400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeValue));
4401     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStartAngle"),
4402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStartAngle));
4403     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStartAngle"),
4404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStartAngle));
4405     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeEndAngle"),
4406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeEndAngle));
4407     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeEndAngle"),
4408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeEndAngle));
4409     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStrokeWidth"),
4410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStrokeWidth));
4411     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStrokeWidth"),
4412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStrokeWidth));
4413     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeTrackShadow"),
4414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeTrackShadow));
4415     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeTrackShadow"),
4416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeTrackShadow));
4417     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeIndicator"),
4418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeIndicator));
4419     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeIndicator"),
4420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeIndicator));
4421     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeColors"),
4422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetColors));
4423     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeColors"),
4424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetColors));
4425     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetContentModifierBuilder));
4427     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gauge"), gauge);
4428 }
RegisterMarqueeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4429 void ArkUINativeModule::RegisterMarqueeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4430 {
4431     auto marquee = panda::ObjectRef::New(vm);
4432     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowScale"),
4433         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetAllowScale));
4434     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowScale"),
4435         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetAllowScale));
4436     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4437         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontWeight));
4438     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4439         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontWeight));
4440     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
4441         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontFamily));
4442     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
4443         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontFamily));
4444     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontSize));
4446     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontSize));
4448     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontColor));
4450     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontColor));
4452     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeUpdateStrategy"),
4453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeUpdateStrategy));
4454     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeUpdateStrategy"),
4455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeUpdateStrategy));
4456     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnStart"),
4457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnStart));
4458     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnStart"),
4459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnStart));
4460     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnBounce"),
4461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnBounce));
4462     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnBounce"),
4463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnBounce));
4464     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnFinish"),
4465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnFinish));
4466     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnFinish"),
4467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnFinish));
4468     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialize"),
4469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetInitialize));
4470     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "marquee"), marquee);
4471 }
4472 
RegisterDataPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4473 void ArkUINativeModule::RegisterDataPanelAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4474 {
4475     auto dataPanel = panda::ObjectRef::New(vm);
4476     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCloseEffect"),
4477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetCloseEffect));
4478     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCloseEffect"),
4479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetCloseEffect));
4480     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackBackgroundColor"),
4481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelTrackBackgroundColor));
4482     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackBackgroundColor"),
4483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelTrackBackgroundColor));
4484     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelStrokeWidth"),
4485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelStrokeWidth));
4486     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelStrokeWidth"),
4487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelStrokeWidth));
4488     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelValueColors"),
4489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetValueColors));
4490     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelValueColors"),
4491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetValueColors));
4492     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackShadow"),
4493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetTrackShadow));
4494     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackShadow"),
4495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetTrackShadow));
4496     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetContentModifierBuilder));
4498     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "dataPanel"), dataPanel);
4499 }
4500 
RegisterScrollableAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4501 void ArkUINativeModule::RegisterScrollableAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4502 {
4503     auto scrollable = panda::ObjectRef::New(vm);
4504     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentClip"),
4505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetContentClip));
4506     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentClip"),
4507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetContentClip));
4508     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
4509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachStart));
4510     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
4511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachStart));
4512     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
4513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachEnd));
4514     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
4515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachEnd));
4516     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scrollable"), scrollable);
4517 }
4518 
RegisterScrollAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4519 void ArkUINativeModule::RegisterScrollAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4520 {
4521     auto scroll = panda::ObjectRef::New(vm);
4522     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollInitialize"),
4523         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollInitialize));
4524     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollInitialize"),
4525         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollInitialize));
4526     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4527         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetNestedScroll));
4528     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4529         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetNestedScroll));
4530     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
4531         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnableScroll));
4532     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
4533         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnableScroll));
4534     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4535         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFriction));
4536     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4537         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFriction));
4538     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnap"),
4539         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollSnap));
4540     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnap"),
4541         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollSnap));
4542     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4543         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBar));
4544     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4545         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBar));
4546     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4547         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollable));
4548     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4549         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollable));
4550     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4551         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarColor));
4552     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4553         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarColor));
4554     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4555         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarWidth));
4556     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4557         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarWidth));
4558     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4559         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEdgeEffect));
4560     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4561         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEdgeEffect));
4562     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetFadingEdge));
4564     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetFadingEdge));
4566     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePaging"),
4567         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnablePaging));
4568     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePaging"),
4569         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnablePaging));
4570     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialOffset"),
4571         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetInitialOffset));
4572     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialOffset"),
4573         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetInitialOffset));
4574     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4575         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFlingSpeedLimit));
4576     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4577         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFlingSpeedLimit));
4578     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStart"),
4579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStart));
4580     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStart"),
4581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStart));
4582     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEnd"),
4583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEnd));
4584     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEnd"),
4585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEnd));
4586     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStop"),
4587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStop));
4588     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStop"),
4589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStop));
4590     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScroll"),
4591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScroll));
4592     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScroll"),
4593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScroll));
4594     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEdge"),
4595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEdge));
4596     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEdge"),
4597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEdge));
4598     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnDidScroll"),
4599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnDidScroll));
4600     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnDidScroll"),
4601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnDidScroll));
4602     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnWillScroll"),
4603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnWillScroll));
4604     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnWillScroll"),
4605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnWillScroll));
4606     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollFrameBegin"),
4607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollFrameBegin));
4608     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollFrameBegin"),
4609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollFrameBegin));
4610     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scroll"), scroll);
4611 }
4612 
RegisterGridItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4613 void ArkUINativeModule::RegisterGridItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4614 {
4615     auto gridItem = panda::ObjectRef::New(vm);
4616     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelectable"),
4617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelectable));
4618     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelectable"),
4619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelectable));
4620     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelected"),
4621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelected));
4622     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelected"),
4623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelected));
4624     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowStart"),
4625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowStart));
4626     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowStart"),
4627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowStart));
4628     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowEnd"),
4629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowEnd));
4630     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowEnd"),
4631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowEnd));
4632     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnStart"),
4633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnStart));
4634     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnStart"),
4635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnStart));
4636     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnEnd"),
4637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnEnd));
4638     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnEnd"),
4639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnEnd));
4640     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemOptions"),
4641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemOptions));
4642     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridItem"), gridItem);
4643 }
4644 
RegisterProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4645 void ArkUINativeModule::RegisterProgressAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4646 {
4647     auto progress = panda::ObjectRef::New(vm);
4648     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressInitialize"),
4649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressInitialize));
4650     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressInitialize"),
4651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressInitialize));
4652     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressValue"),
4653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressValue));
4654     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressValue"),
4655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressValue));
4656     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressColor"),
4657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressColor));
4658     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressColor"),
4659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressColor));
4660     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressStyle"),
4661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressStyle));
4662     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressStyle"),
4663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressStyle));
4664     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressBackgroundColor"),
4665         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::SetProgressBackgroundColor));
4666     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressBackgroundColor"),
4667         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::ResetProgressBackgroundColor));
4668     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetContentModifierBuilder));
4670     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "progress"), progress);
4671 }
4672 
4673 #ifdef PLUGIN_COMPONENT_SUPPORTED
RegisterPluginAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4674 void ArkUINativeModule::RegisterPluginAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4675 {
4676     auto plugin = panda::ObjectRef::New(vm);
4677     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4678         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetSize));
4679     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4680         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetSize));
4681     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4682         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetWidth));
4683     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4684         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetWidth));
4685     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4686         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetHeight));
4687     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4688         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetHeight));
4689     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "plugin"), plugin);
4690 }
4691 #endif
4692 
RegisterCommonShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4693 void ArkUINativeModule::RegisterCommonShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4694 {
4695     auto commonShape = panda::ObjectRef::New(vm);
4696     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashArray"),
4697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashArray));
4698     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashArray"),
4699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashArray));
4700     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeMiterLimit"),
4701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeMiterLimit));
4702     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeMiterLimit"),
4703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeMiterLimit));
4704     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillOpacity"),
4705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFillOpacity));
4706     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillOpacity"),
4707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFillOpacity));
4708     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeOpacity"),
4709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeOpacity));
4710     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeOpacity"),
4711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeOpacity));
4712     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
4713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeWidth));
4714     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
4715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeWidth));
4716     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAntiAlias"),
4717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetAntiAlias));
4718     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAntiAlias"),
4719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetAntiAlias));
4720     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStroke"),
4721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStroke));
4722     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStroke"),
4723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStroke));
4724     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFill"),
4725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFill));
4726     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFill"),
4727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFill));
4728     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashOffset"),
4729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashOffset));
4730     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashOffset"),
4731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashOffset));
4732     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineCap"),
4733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineCap));
4734     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineCap"),
4735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineCap));
4736     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineJoin"),
4737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineJoin));
4738     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineJoin"),
4739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineJoin));
4740     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetHeight));
4742     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetHeight));
4744     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetWidth));
4746     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetWidth));
4748     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
4749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetForegroundColor));
4750     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
4751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetForegroundColor));
4752     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "commonShape"), commonShape);
4753 }
4754 
RegisterShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4755 void ArkUINativeModule::RegisterShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4756 {
4757     auto shape = panda::ObjectRef::New(vm);
4758     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeViewPort"),
4759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetViewPort));
4760     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeViewPort"),
4761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetViewPort));
4762     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeMesh"),
4763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetMesh));
4764     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeMesh"),
4765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetMesh));
4766     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "shape"), shape);
4767 }
4768 
RegisterRectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4769 void ArkUINativeModule::RegisterRectAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4770 {
4771     auto rect = panda::ObjectRef::New(vm);
4772     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusWidth"),
4773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusWidth));
4774     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusWidth"),
4775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusWidth));
4776     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusHeight"),
4777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusHeight));
4778     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusHeight"),
4779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusHeight));
4780     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadius"),
4781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadius));
4782     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadius"),
4783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadius));
4784     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rect"), rect);
4785 }
4786 
RegisterSwiperAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4787 void ArkUINativeModule::RegisterSwiperAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4788 {
4789     auto swiper = panda::ObjectRef::New(vm);
4790     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInitialize"),
4791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInitialize));
4792     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInitialize"),
4793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInitialize));
4794     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperNextMargin"),
4795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperNextMargin));
4796     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperNextMargin"),
4797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperNextMargin));
4798     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPrevMargin"),
4799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPrevMargin));
4800     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPrevMargin"),
4801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPrevMargin));
4802     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayCount"),
4803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayCount));
4804     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayCount"),
4805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayCount));
4806     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperSwipeByGroup"),
4807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperSwipeByGroup));
4808     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperSwipeByGroup"),
4809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperSwipeByGroup));
4810     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayArrow"),
4811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayArrow));
4812     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayArrow"),
4813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayArrow));
4814     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCurve"),
4815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCurve));
4816     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCurve"),
4817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCurve));
4818     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnChange"),
4819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnChange));
4820     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnChange"),
4821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnChange));
4822     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisableSwipe"),
4823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisableSwipe));
4824     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisableSwipe"),
4825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisableSwipe));
4826     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEffectMode"),
4827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEffectMode));
4828     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEffectMode"),
4829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEffectMode));
4830     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCachedCount"),
4831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCachedCount));
4832     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCachedCount"),
4833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCachedCount));
4834     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayMode"),
4835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayMode));
4836     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayMode"),
4837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayMode));
4838     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperItemSpace"),
4839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperItemSpace));
4840     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperItemSpace"),
4841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperItemSpace));
4842     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperVertical"),
4843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperVertical));
4844     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperVertical"),
4845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperVertical));
4846     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperLoop"),
4847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperLoop));
4848     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperLoop"),
4849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperLoop));
4850     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInterval"),
4851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInterval));
4852     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInterval"),
4853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInterval));
4854     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperAutoPlay"),
4855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperAutoPlay));
4856     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperAutoPlay"),
4857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperAutoPlay));
4858     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndex"),
4859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndex));
4860     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndex"),
4861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndex));
4862     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndicator"),
4863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndicator));
4864     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndicator"),
4865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndicator));
4866     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDuration"),
4867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDuration));
4868     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDuration"),
4869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDuration));
4870     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEnabled"),
4871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEnabled));
4872     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEnabled"),
4873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEnabled));
4874     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetNestedScroll));
4876     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetNestedScroll));
4878     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationStart"),
4879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationStart));
4880     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationStart"),
4881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationStart));
4882     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationEnd"),
4883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationEnd));
4884     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationEnd"),
4885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationEnd));
4886     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnGestureSwipe"),
4887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnGestureSwipe));
4888     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnGestureSwipe"),
4889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnGestureSwipe));
4890     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorInteractive"),
4891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetIndicatorInteractive));
4892     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorInteractive"),
4893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetIndicatorInteractive));
4894     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCustomContentTransition"),
4895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCustomContentTransition));
4896     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCustomContentTransition"),
4897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCustomContentTransition));
4898     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentDidScroll"),
4899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetOnContentDidScroll));
4900     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentDidScroll"),
4901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetOnContentDidScroll));
4902     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "swiper"), swiper);
4903 }
4904 
RegisterListItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4905 void ArkUINativeModule::RegisterListItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4906 {
4907     auto listItem = panda::ObjectRef::New(vm);
4908     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemSelected"),
4909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetListItemSelected));
4910     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemSelected"),
4911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetListItemSelected));
4912     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectable"),
4913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSelectable));
4914     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectable"),
4915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSelectable));
4916     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwipeAction"),
4917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSwipeAction));
4918     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwipeAction"),
4919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSwipeAction));
4920     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItem"), listItem);
4921 }
4922 
RegisterListAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4923 void ArkUINativeModule::RegisterListAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4924 {
4925     auto list = panda::ObjectRef::New(vm);
4926     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
4927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEditMode));
4928     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
4929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEditMode));
4930     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
4931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetMultiSelectable));
4932     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
4933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetMultiSelectable));
4934     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimation"),
4935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimation));
4936     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimation"),
4937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimation));
4938     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetCachedCount));
4940     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetCachedCount));
4942     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEnableScrollInteraction));
4944     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEnableScrollInteraction));
4946     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
4947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
4948     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
4949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
4950     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
4951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
4952     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
4953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
4954     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListEdgeEffect"),
4955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListEdgeEffect));
4956     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListEdgeEffect"),
4957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListEdgeEffect));
4958     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetFadingEdge));
4960     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetFadingEdge));
4962     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListDirection"),
4963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListDirection));
4964     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListDirection"),
4965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListDirection));
4966     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListFriction"),
4967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListFriction));
4968     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListFriction"),
4969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListFriction));
4970     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListMaintainVisibleContentPosition"),
4971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListMaintainVisibleContentPosition));
4972     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListMaintainVisibleContentPosition"),
4973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListMaintainVisibleContentPosition));
4974     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListNestedScroll"),
4975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListNestedScroll));
4976     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListNestedScroll"),
4977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListNestedScroll));
4978     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBar"),
4979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBar));
4980     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBar"),
4981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBar));
4982     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarWidth"),
4983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarWidth));
4984     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarWidth"),
4985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarWidth));
4986     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarColor"),
4987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarColor));
4988     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarColor"),
4989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarColor));
4990     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetFlingSpeedLimit));
4992     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetFlingSpeedLimit));
4994     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignListItem"),
4995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetAlignListItem));
4996     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignListItem"),
4997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetAlignListItem));
4998     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnapAlign"),
4999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetScrollSnapAlign));
5000     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnapAlign"),
5001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetScrollSnapAlign));
5002     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentStartOffset"),
5003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentStartOffset));
5004     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentStartOffset"),
5005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentStartOffset));
5006     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentEndOffset"),
5007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentEndOffset));
5008     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentEndOffset"),
5009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentEndOffset));
5010     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetDivider));
5012     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetDivider));
5014     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimationOptions"),
5015         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimationOptions));
5016     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimationOptions"),
5017         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimationOptions));
5018     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListLanes"),
5019         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListLanes));
5020     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListLanes"),
5021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListLanes));
5022     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListChildrenMainSize"),
5023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListChildrenMainSize));
5024     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListChildrenMainSize"),
5025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListChildrenMainSize));
5026     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
5027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSpace));
5028     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
5029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSpace));
5030     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
5031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialIndex));
5032     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
5033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialIndex));
5034     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialScroller"),
5035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialScroller));
5036     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialScroller"),
5037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialScroller));
5038     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollIndex"),
5039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollIndex));
5040     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollIndex"),
5041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollIndex));
5042     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollVisibleContentChange"),
5043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollVisibleContentChange));
5044     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollVisibleContentChange"),
5045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollVisibleContentChange));
5046     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemMove"),
5047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemMove));
5048     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemMove"),
5049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemMove));
5050     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragStart"),
5051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragStart));
5052     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragStart"),
5053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragStart));
5054     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragEnter"),
5055         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragEnter));
5056     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragEnter"),
5057         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragEnter));
5058     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragMove"),
5059         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragMove));
5060     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragMove"),
5061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragMove));
5062     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragLeave"),
5063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragLeave));
5064     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragLeave"),
5065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragLeave));
5066     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDrop"),
5067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDrop));
5068     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDrop"),
5069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDrop));
5070     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStart"),
5071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStart));
5072     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStart"),
5073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStart));
5074     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
5075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStop));
5076     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
5077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStop));
5078     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollFrameBegin"),
5079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollFrameBegin));
5080     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollFrameBegin"),
5081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollFrameBegin));
5082     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillScroll"),
5083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListWillScroll));
5084     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillScroll"),
5085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListWillScroll));
5086     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidScroll"),
5087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListDidScroll));
5088     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidScroll"),
5089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListDidScroll));
5090     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
5091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachStart));
5092     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
5093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachStart));
5094     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
5095         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachEnd));
5096     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
5097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachEnd));
5098     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "list"), list);
5099 }
5100 
RegisterListItemGroupAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5101 void ArkUINativeModule::RegisterListItemGroupAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5102 {
5103     auto listItemGroup = panda::ObjectRef::New(vm);
5104     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetDivider));
5106     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetDivider));
5108     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupChildrenMainSize"),
5109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetChildrenMainSize));
5110     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupChildrenMainSize"),
5111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetChildrenMainSize));
5112     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupInitialize"),
5113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetListItemGroupInitialize));
5114     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupInitialize"),
5115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetListItemGroupInitialize));
5116     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItemGroup"), listItemGroup);
5117 }
5118 
RegisterQRCodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5119 void ArkUINativeModule::RegisterQRCodeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5120 {
5121     auto qrcode = panda::ObjectRef::New(vm);
5122     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRColor"),
5123         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRColor));
5124     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRColor"),
5125         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRColor));
5126     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRBackgroundColor"),
5127         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRBackgroundColor));
5128     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRBackgroundColor"),
5129         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRBackgroundColor));
5130     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentOpacity"),
5131         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetContentOpacity));
5132     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentOpacity"),
5133         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetContentOpacity));
5134     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRValue"),
5135         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRValue));
5136     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "qrcode"), qrcode);
5137 }
5138 
RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5139 void ArkUINativeModule::RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5140 {
5141     auto loadingProgress = panda::ObjectRef::New(vm);
5142     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
5143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetColor));
5144     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
5145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetColor));
5146     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableLoading"),
5147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetEnableLoading));
5148     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableLoading"),
5149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetEnableLoading));
5150     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
5151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetForegroundColor));
5152     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
5153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetForegroundColor));
5154     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetContentModifierBuilder));
5156     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "loadingProgress"), loadingProgress);
5157 }
5158 
RegisterTextClockAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5159 void ArkUINativeModule::RegisterTextClockAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5160 {
5161     auto textClock = panda::ObjectRef::New(vm);
5162     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFormat));
5164     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFormat));
5166     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontColor));
5168     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontColor));
5170     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontSize));
5172     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontSize));
5174     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontStyle));
5176     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontStyle));
5178     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontWeight));
5180     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontWeight));
5182     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFamily));
5184     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFamily));
5186     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextShadow));
5188     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetTextShadow));
5190     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
5191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFeature));
5192     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
5193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFeature));
5194     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetContentModifierBuilder));
5196     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDateTimeOptions"),
5197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetDateTimeOptions));
5198     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDateTimeOptions"),
5199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetDateTimeOptions));
5200     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockTimeZoneOffset"),
5201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockTimeZoneOffset));
5202     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockController"),
5203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockController));
5204     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textClock"), textClock);
5205 }
5206 
RegisterTextTimerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5207 void ArkUINativeModule::RegisterTextTimerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5208 {
5209     auto textTimer = panda::ObjectRef::New(vm);
5210     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5211         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontColor));
5212     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5213         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontColor));
5214     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5215         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontSize));
5216     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5217         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontSize));
5218     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5219         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontWeight));
5220     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5221         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontWeight));
5222     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5223         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontStyle));
5224     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5225         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontStyle));
5226     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5227         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontFamily));
5228     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5229         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontFamily));
5230     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5231         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFormat));
5232     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5233         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFormat));
5234     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5235         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetTextShadow));
5236     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5237         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetTextShadow));
5238     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetContentModifierBuilder));
5240     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextTimerOptions"),
5241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetTextTimerOptions));
5242     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textTimer"), textTimer);
5243 }
5244 #ifdef XCOMPONENT_SUPPORTED
RegisterXComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5245 void ArkUINativeModule::RegisterXComponentAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5246 {
5247     auto xComponent = panda::ObjectRef::New(vm);
5248     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setXComponentInitialize"),
5249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetXComponentInitialize));
5250     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetXComponentInitialize"),
5251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetXComponentInitialize));
5252     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
5253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundColor));
5254     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
5255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundColor));
5256     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
5257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOpacity));
5258     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
5259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOpacity));
5260     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
5261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImage));
5262     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
5263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImage));
5264     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
5265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImageSize));
5266     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
5267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImageSize));
5268     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
5269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImagePosition));
5270     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
5271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImagePosition));
5272     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
5273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBlur));
5274     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
5275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBlur));
5276     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
5277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackdropBlur));
5278     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
5279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackdropBlur));
5280     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
5281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetGrayscale));
5282     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
5283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetGrayscale));
5284     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
5285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBrightness));
5286     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
5287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBrightness));
5288     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
5289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSaturate));
5290     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
5291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSaturate));
5292     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
5293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetContrast));
5294     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
5295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetContrast));
5296     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
5297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetInvert));
5298     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
5299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetInvert));
5300     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
5301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5302     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
5303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5304     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
5305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetHueRotate));
5306     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
5307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetHueRotate));
5308     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
5309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5310     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
5311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5312     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
5313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5314     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
5315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5316     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
5317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5318     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
5319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5320     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
5321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5322     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
5323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5324     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
5325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5326     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
5327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5328     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnLoad"),
5329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnLoad));
5330     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnLoad"),
5331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnLoad));
5332     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDestroy"),
5333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnDestroy));
5334     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDestroy"),
5335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnDestroy));
5336     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnalyzer"),
5337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableAnalyzer));
5338     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnalyzer"),
5339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableAnalyzer));
5340     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableSecure"),
5341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableSecure));
5342     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableSecure"),
5343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableSecure));
5344     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
5345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetRenderFit));
5346     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
5347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetRenderFit));
5348     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xComponent"), xComponent);
5349 }
5350 
RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5351 void ArkUINativeModule::RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5352 {
5353     auto xcomponentNode = panda::ObjectRef::New(vm);
5354     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "create"),
5355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::Create));
5356     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNode"),
5357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::GetFrameNode));
5358     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnCreateCallback"),
5359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnCreateCallback));
5360     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnDestroyCallback"),
5361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnDestroyCallback));
5362     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "changeRenderType"),
5363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::ChangeRenderType));
5364     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xcomponentNode"), xcomponentNode);
5365 }
5366 #endif
5367 
RegisterFlexAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5368 void ArkUINativeModule::RegisterFlexAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5369 {
5370     auto flex = panda::ObjectRef::New(vm);
5371     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexInitialize"),
5372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::SetFlexInitialize));
5373     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexInitialize"),
5374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::ResetFlexInitialize));
5375     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "flex"), flex);
5376 }
5377 
RegisterResourceAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5378 void ArkUINativeModule::RegisterResourceAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5379 {
5380     auto resource = panda::ObjectRef::New(vm);
5381     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "updateColorMode"),
5382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::UpdateColorMode));
5383     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "restore"),
5384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::Restore));
5385     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getColorValue"),
5386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetColorValue));
5387     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearCache"),
5388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::ClearCache));
5389     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "resource"), resource);
5390 }
5391 
RegisterBadgeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5392 void ArkUINativeModule::RegisterBadgeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5393 {
5394     auto badge = panda::ObjectRef::New(vm);
5395     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithNumber"),
5396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithNumber));
5397     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithString"),
5398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithString));
5399     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "badge"), badge);
5400 }
5401 
RegisterScrollBarAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5402 void ArkUINativeModule::RegisterScrollBarAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5403 {
5404     auto ScrollBar = panda::ObjectRef::New(vm);
5405     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarEnableNestedScroll"),
5406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::SetScrollBarEnableNestedScroll));
5407     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarEnableNestedScroll"),
5408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::ResetScrollBarEnableNestedScroll));
5409     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "ScrollBar"), ScrollBar);
5410 }
5411 } // namespace OHOS::Ace::NG
5412