• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #include <cstdint>
16 
17 #include "jsnapi_expo.h"
18 #include "core/components_ng/base/inspector.h"
19 #include "core/components_ng/base/observer_handler.h"
20 #include "core/components_ng/pattern/marquee/marquee_model_ng.h"
21 
22 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_bridge.h"
23 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_badge_bridge.h"
24 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_blank_bridge.h"
25 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_button_bridge.h"
26 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkbox_bridge.h"
27 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_checkboxgroup_bridge.h"
28 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_bridge.h"
29 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_bridge.h"
30 #ifdef MODEL_COMPONENT_SUPPORTED
31 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_component3d_bridge.h"
32 #endif
33 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
34 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_animator_bridge.h"
35 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_counter_bridge.h"
36 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_divider_bridge.h"
37 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_flex_bridge.h"
38 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_bridge.h"
39 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_col_bridge.h"
40 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_row_bridge.h"
41 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_grid_item_bridge.h"
42 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_hyperlink_bridge.h"
43 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_indicator_component_bridge.h"
44 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_bridge.h"
45 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_bridge.h"
46 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_bridge.h"
47 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_image_span_bridge.h"
48 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_loading_progress_bridge.h"
49 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_bridge.h"
50 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_destination_bridge.h"
51 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_nav_router_bridge.h"
52 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_menu_item_bridge.h"
53 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_date_picker_bridge.h"
54 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigation_bridge.h"
55 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_navigator_bridge.h"
56 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_adapter_bridge.h"
57 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_panel_bridge.h"
58 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_node_container_bridge.h"
59 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_pattern_lock_bridge.h"
60 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_progress_bridge.h"
61 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_resource_bridge.h"
62 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_area_bridge.h"
63 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_clock_bridge.h"
64 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_swiper_bridge.h"
65 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_bridge.h"
66 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_input_bridge.h"
67 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_toggle_bridge.h"
68 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_radio_bridge.h"
69 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rating_bridge.h"
70 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_render_node_bridge.h"
71 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_bridge.h"
72 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_row_split_bridge.h"
73 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_search_bridge.h"
74 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_select_bridge.h"
75 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stack_bridge.h"
76 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_folder_stack_bridge.h"
77 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_slider_bridge.h"
78 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_span_bridge.h"
79 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_glyph_bridge.h"
80 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_symbol_span_bridge.h"
81 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_textpicker_bridge.h"
82 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_timepicker_bridge.h"
83 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rich_editor_bridge.h"
84 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_utils_bridge.h"
85 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_video_bridge.h"
86 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_stepper_item_bridge.h"
87 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
88 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabcontent_bridge.h"
89 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_tabs_bridge.h"
90 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_column_split_bridge.h"
91 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_line_bridge.h"
92 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_particle_bridge.h"
93 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_path_bridge.h"
94 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polygon_bridge.h"
95 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_polyline_bridge.h"
96 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_qrcode_bridge.h"
97 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_side_bar_container_bridge.h"
98 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_calendar_picker_bridge.h"
99 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_water_flow_bridge.h"
100 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_alphabet_indexer_bridge.h"
101 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_data_panel_bridge.h"
102 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_gauge_bridge.h"
103 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scroll_bridge.h"
104 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollable_bridge.h"
105 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_marquee_bridge.h"
106 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_common_shape_bridge.h"
107 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_shape_bridge.h"
108 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_rect_bridge.h"
109 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_list_item_group_bridge.h"
110 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_text_timer_bridge.h"
111 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_frame_node_bridge.h"
112 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_refresh_bridge.h"
113 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_relative_container_bridge.h"
114 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_container_span_bridge.h"
115 #include "bridge/declarative_frontend/engine/js_converter.h"
116 #include "bridge/declarative_frontend/jsview/js_navigation_stack.h"
117 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_scrollbar_bridge.h"
118 #ifdef PLUGIN_COMPONENT_SUPPORTED
119 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_plugin_bridge.h"
120 #endif
121 #ifdef XCOMPONENT_SUPPORTED
122 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_bridge.h"
123 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_xcomponent_node_bridge.h"
124 #endif
125 #ifdef FORM_SUPPORTED
126 #include "bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_form_component_bridge.h"
127 #endif
128 namespace OHOS::Ace::NG {
129 namespace {
RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)130 void RegisterRenderNodeBorderAndMaskAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
131 {
132     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderStyle));
134     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderWidth));
136     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderColor));
138     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBorderRadius));
140     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectMask"),
141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectMask));
142     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleMask"),
143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleMask));
144     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectMask"),
145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectMask));
146     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalMask"),
147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalMask));
148     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPath"),
149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathMask));
150 }
RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode,EcmaVM * vm)151 void RegisterRenderNodeShapeClipAttributes(Local<panda::ObjectRef> renderNode, EcmaVM* vm)
152 {
153     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectClip"),
154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRectClip));
155     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleClip"),
156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCircleClip));
157     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRoundRectClip"),
158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRoundRectClip));
159     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOvalClip"),
160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOvalClip));
161     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathClip"),
162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetCommandPathClip));
163 }
164 } // namespace
165 
PreviewMockComponent(ArkUIRuntimeCallInfo * runtimeCallInfo)166 ArkUINativeModuleValue ArkUINativeModule::PreviewMockComponent(ArkUIRuntimeCallInfo* runtimeCallInfo)
167 {
168     EcmaVM* vm = runtimeCallInfo->GetVM();
169     return panda::JSValueRef::Undefined(vm);
170 }
171 
GetFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)172 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
173 {
174     EcmaVM* vm = runtimeCallInfo->GetVM();
175     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
176     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
177     int nodeId = firstArg->ToNumber(vm)->Value();
178     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeById(nodeId);
179     return panda::NativePointerRef::New(vm, nodePtr);
180 }
181 
GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)182 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
183 {
184     EcmaVM* vm = runtimeCallInfo->GetVM();
185     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
186     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
187     int nodeId = firstArg->ToNumber(vm)->Value();
188     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByUniqueId(nodeId);
189     if (nodePtr) {
190         return panda::NativePointerRef::New(vm, nodePtr);
191     }
192 
193     return panda::JSValueRef::Undefined(vm);
194 }
195 
GetPageInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)196 ArkUINativeModuleValue ArkUINativeModule::GetPageInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
197 {
198     EcmaVM* vm = runtimeCallInfo->GetVM();
199     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
200     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
201     int nodeId = firstArg->ToNumber(vm)->Value();
202     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
203     auto pageInfo = panda::ObjectRef::New(vm);
204     CHECK_NULL_RETURN(nodePtr, pageInfo);
205 
206     auto routerPageResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetRouterPageState(nodePtr);
207     if (routerPageResult) {
208         auto jsContext = Framework::JsConverter::ConvertNapiValueToJsVal(routerPageResult->context);
209         Local<JSValueRef> routerPageValues[] = { jsContext->GetLocalHandle(),
210             panda::NumberRef::New(vm, routerPageResult->index),
211             panda::StringRef::NewFromUtf8(vm, routerPageResult->name.c_str()),
212             panda::StringRef::NewFromUtf8(vm, routerPageResult->path.c_str()),
213             panda::NumberRef::New(vm, static_cast<int32_t>(routerPageResult->state)),
214             panda::StringRef::NewFromUtf8(vm, routerPageResult->pageId.c_str()) };
215         const char* routerPageKeys[] = { "context", "index", "name", "path", "state", "pageId" };
216         auto routerPageObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(routerPageKeys), routerPageKeys,
217             routerPageValues);
218         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "routerPageInfo"), routerPageObj);
219     }
220 
221     auto navDestinationResult = OHOS::Ace::NG::UIObserverHandler::GetInstance().GetNavigationState(nodePtr);
222     if (navDestinationResult) {
223         Local<JSValueRef> navDestinationValues[] = {
224             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navigationId.c_str()),
225             panda::StringRef::NewFromUtf8(vm, navDestinationResult->name.c_str()),
226             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->state)),
227             panda::NumberRef::New(vm, navDestinationResult->index),
228             Framework::JsConverter::ConvertNapiValueToJsVal(navDestinationResult->param)->GetLocalHandle(),
229             panda::StringRef::NewFromUtf8(vm, navDestinationResult->navDestinationId.c_str()),
230             panda::NumberRef::New(vm, static_cast<int32_t>(navDestinationResult->mode)),
231             panda::NumberRef::New(vm, navDestinationResult->uniqueId) };
232         const char* navDestinationKeys[] = { "navigationId", "name", "state", "index", "param", "navDestinationId",
233             "mode", "uniqueId" };
234         auto navDestinationObj = panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(navDestinationKeys),
235             navDestinationKeys, navDestinationValues);
236         pageInfo->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestinationInfo"), navDestinationObj);
237     }
238 
239     return pageInfo;
240 }
241 
GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo * runtimeCallInfo)242 ArkUINativeModuleValue ArkUINativeModule::GetNavigationInfoByUniqueId(ArkUIRuntimeCallInfo* runtimeCallInfo)
243 {
244     EcmaVM* vm = runtimeCallInfo->GetVM();
245     CHECK_NULL_RETURN(vm, panda::ObjectRef::New(vm));
246     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
247     int nodeId = firstArg->ToNumber(vm)->Value();
248     auto nodePtr = AceType::DynamicCast<NG::UINode>(OHOS::Ace::ElementRegister::GetInstance()->GetNodeById(nodeId));
249     auto defaultResult = panda::JSValueRef::Undefined(vm);
250     CHECK_NULL_RETURN(nodePtr, defaultResult);
251 
252     auto pipeline = NG::PipelineContext::GetCurrentContext();
253     CHECK_NULL_RETURN(pipeline, defaultResult);
254     auto navigationMgr = pipeline->GetNavigationManager();
255     CHECK_NULL_RETURN(navigationMgr, defaultResult);
256     auto result = navigationMgr->GetNavigationInfo(nodePtr);
257     CHECK_NULL_RETURN(result, defaultResult);
258     auto jsStack = AceType::DynamicCast<Framework::JSNavigationStack>(result->pathStack.Upgrade());
259     CHECK_NULL_RETURN(jsStack, defaultResult);
260     Framework::JSRef<Framework::JSObject> navPathStackObj = jsStack->GetDataSourceObj();
261     CHECK_NULL_RETURN(!navPathStackObj->IsEmpty(), defaultResult);
262     auto obj = panda::ObjectRef::New(vm);
263     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigationId"),
264         panda::StringRef::NewFromUtf8(vm, result->navigationId.c_str()));
265     obj->Set(vm, panda::StringRef::NewFromUtf8(vm, "pathStack"), navPathStackObj->GetLocalHandle());
266 
267     return obj;
268 }
269 
GetUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)270 ArkUINativeModuleValue ArkUINativeModule::GetUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
271 {
272     EcmaVM* vm = runtimeCallInfo->GetVM();
273     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
274     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
275     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
276     int64_t state = GetArkUINodeModifiers()->getUIStateModifier()->getUIState(nativeNode);
277     return panda::NumberRef::New(vm, state);
278 }
279 
SetSupportedUIState(ArkUIRuntimeCallInfo * runtimeCallInfo)280 ArkUINativeModuleValue ArkUINativeModule::SetSupportedUIState(ArkUIRuntimeCallInfo* runtimeCallInfo)
281 {
282     EcmaVM* vm = runtimeCallInfo->GetVM();
283     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
284     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
285     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
286     auto nativeNode = nodePtr(firstArg->ToNativePointer(vm)->Value());
287     auto state = secondArg->ToNumber(vm)->Value();
288     GetArkUINodeModifiers()->getUIStateModifier()->setSupportedUIState(nativeNode, state);
289     return panda::JSValueRef::Undefined(vm);
290 }
291 
GetFrameNodeByKey(ArkUIRuntimeCallInfo * runtimeCallInfo)292 ArkUINativeModuleValue ArkUINativeModule::GetFrameNodeByKey(ArkUIRuntimeCallInfo* runtimeCallInfo)
293 {
294     EcmaVM* vm = runtimeCallInfo->GetVM();
295     CHECK_NULL_RETURN(vm, panda::NativePointerRef::New(vm, nullptr));
296     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
297     auto key = firstArg->ToString(vm)->ToString(vm);
298     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getFrameNodeByKey(key.c_str());
299     if (!nodePtr) {
300         return panda::JSValueRef::Undefined(vm);
301     }
302     return panda::NativePointerRef::New(vm, nodePtr);
303 }
304 
GetAttachedFrameNodeById(ArkUIRuntimeCallInfo * runtimeCallInfo)305 ArkUINativeModuleValue ArkUINativeModule::GetAttachedFrameNodeById(ArkUIRuntimeCallInfo* runtimeCallInfo)
306 {
307     EcmaVM* vm = runtimeCallInfo->GetVM();
308     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
309     auto key = firstArg->ToString(vm)->ToString(vm);
310     auto nodePtr = GetArkUINodeModifiers()->getFrameNodeModifier()->getAttachedFrameNodeById(key.c_str());
311     if (!nodePtr) {
312         return panda::JSValueRef::Undefined(vm);
313     }
314     return panda::NativePointerRef::New(vm, nodePtr);
315 }
316 
RequireDynamicSyncScene(ArkUIRuntimeCallInfo * runtimeCallInfo)317 ArkUINativeModuleValue ArkUINativeModule::RequireDynamicSyncScene(ArkUIRuntimeCallInfo* runtimeCallInfo)
318 {
319     EcmaVM* vm = runtimeCallInfo->GetVM();
320     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
321     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
322 
323     auto sceneId = firstArg->ToString(vm)->ToString(vm);
324     auto sceneNode = NG::Inspector::GetFrameNodeByKey(sceneId);
325 
326     if (!sceneNode) {
327         return panda::JSValueRef::Undefined(vm);
328     }
329 
330     auto sceneTag = sceneNode->GetTag();
331     auto nativeRef = NativeUtilsBridge::CreateWeakRef(vm, sceneNode);
332     const char* keys[] = { "nativeRef", "tag" };
333     Local<JSValueRef> values[] = { nativeRef, panda::StringRef::NewFromUtf8(vm, sceneTag.c_str()) };
334     return panda::ObjectRef::NewWithNamedProperties(vm, ArraySize(keys), keys, values);
335 }
336 
SetFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)337 ArkUINativeModuleValue ArkUINativeModule::SetFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
338 {
339     EcmaVM* vm = runtimeCallInfo->GetVM();
340     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
341 
342     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
343     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
344     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2);
345     auto swiperNode = firstArg;
346     auto obj = secondArg->ToObject(vm);
347     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
348     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
349     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
350 
351     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
352     auto value = thirdArg->Int32Value(vm);
353     auto type = static_cast<SwiperDynamicSyncSceneType>(value);
354     if (type != SwiperDynamicSyncSceneType::ANIMATE) {
355         type = SwiperDynamicSyncSceneType::GESTURE;
356     }
357     auto nativePointer = swiperNode->ToNativePointer(vm);
358     if (nativePointer.IsEmpty()) {
359         return panda::JSValueRef::Undefined(vm);
360     }
361     auto nativeNode = nodePtr(nativePointer->Value());
362     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
363     auto* swiperFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
364     CHECK_NULL_RETURN(swiperFrameNode, panda::JSValueRef::Undefined(vm));
365     auto swiperPattern = swiperFrameNode->GetPattern();
366     CHECK_NULL_RETURN(swiperPattern, panda::JSValueRef::Undefined(vm));
367     swiperPattern->SetFrameRateRange(frameRateRange, type);
368 
369     return panda::JSValueRef::Undefined(vm);
370 }
371 
SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo * runtimeCallInfo)372 ArkUINativeModuleValue ArkUINativeModule::SetMarqueeFrameRateRange(ArkUIRuntimeCallInfo* runtimeCallInfo)
373 {
374     EcmaVM* vm = runtimeCallInfo->GetVM();
375     CHECK_NULL_RETURN(vm, panda::JSValueRef::Undefined(vm));
376 
377     Local<JSValueRef> firstArg = runtimeCallInfo->GetCallArgRef(0);
378     Local<JSValueRef> secondArg = runtimeCallInfo->GetCallArgRef(1);
379     Local<JSValueRef> thirdArg = runtimeCallInfo->GetCallArgRef(2); // 2: parameter index
380     auto marqueeNode = firstArg;
381     auto obj = secondArg->ToObject(vm);
382     auto minValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "min"))->Int32Value(vm);
383     auto maxValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "max"))->Int32Value(vm);
384     auto expectValue = obj->Get(vm, panda::StringRef::NewFromUtf8(vm, "expected"))->Int32Value(vm);
385 
386     auto frameRateRange = AceType::MakeRefPtr<FrameRateRange>(minValue, maxValue, expectValue);
387     auto value = thirdArg->Int32Value(vm);
388     auto type = static_cast<MarqueeDynamicSyncSceneType>(value);
389     auto nativePointer = marqueeNode->ToNativePointer(vm);
390     if (nativePointer.IsEmpty()) {
391         return panda::JSValueRef::Undefined(vm);
392     }
393     auto nativeNode = nodePtr(nativePointer->Value());
394     CHECK_NULL_RETURN(nativeNode, panda::JSValueRef::Undefined(vm));
395     auto* marqueeFrameNode = reinterpret_cast<NG::FrameNode*>(nativeNode);
396     CHECK_NULL_RETURN(marqueeFrameNode, panda::JSValueRef::Undefined(vm));
397     MarqueeModelNG::SetMarqueeFrameRateRange(marqueeFrameNode, frameRateRange, type);
398 
399     return panda::JSValueRef::Undefined(vm);
400 }
401 
GetArkUINativeModule(ArkUIRuntimeCallInfo * runtimeCallInfo)402 ArkUINativeModuleValue ArkUINativeModule::GetArkUINativeModule(ArkUIRuntimeCallInfo* runtimeCallInfo)
403 {
404     EcmaVM* vm = runtimeCallInfo->GetVM();
405     auto object = panda::ObjectRef::New(vm);
406     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeById"),
407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeById));
408     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByUniqueId"),
409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByUniqueId));
410     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPageInfoByUniqueId"),
411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetPageInfoByUniqueId));
412     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNavigationInfoByUniqueId"),
413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetNavigationInfoByUniqueId));
414     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getUIState"),
415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetUIState));
416     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportedUIState"),
417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetSupportedUIState));
418     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNodeByKey"),
419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetFrameNodeByKey));
420     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAttachedFrameNodeById"),
421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GetAttachedFrameNodeById));
422     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "requireDynamicSyncScene"),
423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RequireDynamicSyncScene));
424     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrameRateRange"),
425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetFrameRateRange));
426     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeFrameRateRange"),
427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SetMarqueeFrameRateRange));
428 
429     auto common = panda::ObjectRef::New(vm);
430     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundColor));
432     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundColor));
434     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetWidth));
436     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetWidth));
438     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHeight));
440     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHeight));
442     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderRadius));
444     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderRadius));
446     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWidth));
448     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderWidth));
450     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransform"),
451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransform));
452     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransform"),
453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransform));
454     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderColor));
456     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderColor));
458     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPosition));
460     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPosition"),
461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPosition));
462     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPointLightStyle"),
463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPointLightStyle));
464     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPointLightStyle"),
465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPointLightStyle));
466     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderStyle));
468     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderStyle));
470     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineColor"),
471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineColor));
472     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineColor"),
473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineColor));
474     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineRadius"),
475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineRadius));
476     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineRadius"),
477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineRadius));
478     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineStyle"),
479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineStyle));
480     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineStyle"),
481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineStyle));
482     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutlineWidth"),
483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutlineWidth));
484     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutlineWidth"),
485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutlineWidth));
486     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOutline"),
487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOutline));
488     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOutline"),
489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOutline));
490     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadow"),
491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShadow));
492     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShadow"),
493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShadow));
494     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHitTestBehavior"),
495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHitTestBehavior));
496     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHitTestBehavior"),
497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHitTestBehavior));
498     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setZIndex"),
499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetZIndex));
500     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetZIndex"),
501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetZIndex));
502     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOpacity));
504     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOpacity));
506     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlign"),
507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlign));
508     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlign"),
509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlign));
510     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackdropBlur));
512     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackdropBlur));
514     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHueRotate));
516     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHueRotate));
518     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetInvert));
520     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetInvert));
522     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSepia));
524     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSepia));
526     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSaturate));
528     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSaturate));
530     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetColorBlend));
532     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetColorBlend));
534     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGrayscale));
536     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGrayscale));
538     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetContrast));
540     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetContrast));
542     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBrightness));
544     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBrightness));
546     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlur));
548     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlur));
550     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradient"),
551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradient));
552     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradient"),
553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradient));
554     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSweepGradient"),
555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSweepGradient));
556     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSweepGradient"),
557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSweepGradient));
558     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadialGradient"),
559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRadialGradient));
560     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadialGradient"),
561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRadialGradient));
562     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOverlay"),
563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOverlay));
564     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOverlay"),
565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOverlay));
566     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderImage"),
567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderImage));
568     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderImage"),
569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorderImage));
570     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBlurStyle"),
571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBlurStyle));
572     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBlurStyle"),
573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBlurStyle));
574     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLinearGradientBlur));
576     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLinearGradientBlur));
578     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBlurStyle"),
579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBlurStyle));
580     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBlurStyle"),
581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBlurStyle));
582     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorder));
584     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBorder));
586     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImagePosition));
588     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImagePosition));
590     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageResizable"),
591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageResizable));
592     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageResizable"),
593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageResizable));
594     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImageSize));
596     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImageSize));
598     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundImage));
600     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundImage));
602     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTranslate));
604     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTranslate"),
605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTranslate));
606     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetScale));
608     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScale"),
609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetScale));
610     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotate"),
611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRotate));
612     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRotate"),
613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRotate));
614     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGeometryTransition"),
615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGeometryTransition));
616     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGeometryTransition"),
617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGeometryTransition));
618     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClip"),
619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClip));
620     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClip"),
621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClip));
622     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipShape"),
623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipShape));
624     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipShape"),
625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipShape));
626     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelStretchEffect));
628     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelStretchEffect));
630     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLightUpEffect));
632     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLightUpEffect));
634     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSphericalEffect));
636     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSphericalEffect));
638     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderGroup"),
639         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderGroup));
640     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderGroup"),
641         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderGroup));
642     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
643         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRenderFit));
644     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
645         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRenderFit));
646     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseEffect"),
647         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseEffect));
648     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseEffect"),
649         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseEffect));
650     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
651         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundColor));
652     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundColor));
654     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionPath"),
655         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionPath));
656     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionPath"),
657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionPath));
658     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMotionBlur"),
659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMotionBlur));
660     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMotionBlur"),
661         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMotionBlur));
662     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGroupDefaultFocus"),
663         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGroupDefaultFocus));
664     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGroupDefaultFocus"),
665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGroupDefaultFocus));
666     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusOnTouch"),
667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusOnTouch));
668     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusOnTouch"),
669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusOnTouch));
670     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusable"),
671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusable));
672     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusable"),
673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusable));
674     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabStop"),
675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabStop));
676     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabStop"),
677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabStop));
678     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTouchable"),
679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTouchable));
680     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTouchable"),
681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTouchable));
682     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultFocus"),
683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDefaultFocus));
684     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultFocus"),
685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDefaultFocus));
686     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisplayPriority"),
687         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDisplayPriority));
688     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisplayPriority"),
689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDisplayPriority));
690     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMask"),
691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMask));
692     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMask"),
693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMask));
694     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaskShape"),
695         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMaskShape));
696     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaskShape"),
697         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMaskShape));
698     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOffset"),
699         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetOffset));
700     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOffset"),
701         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetOffset));
702     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
703         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetPadding));
704     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
705         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetPadding));
706     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
707         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMargin));
708     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
709         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMargin));
710     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkAnchor"),
711         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetMarkAnchor));
712     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarkAnchor"),
713         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetMarkAnchor));
714     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
715         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::SetVisibility));
716     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
717         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CommonBridge::ResetVisibility));
718     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityText));
720     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityText));
722     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowDrop"),
723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAllowDrop));
724     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowDrop"),
725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAllowDrop));
726     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityLevel));
728     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityLevel));
730     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDirection));
732     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDirection));
734     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutWeight"),
735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetLayoutWeight));
736     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutWeight"),
737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetLayoutWeight));
738     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSize));
740     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSize));
742     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignSelf"),
743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignSelf));
744     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignSelf"),
745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignSelf));
746     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAspectRatio"),
747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAspectRatio));
748     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAspectRatio"),
749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAspectRatio));
750     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexGrow"),
751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexGrow));
752     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexGrow"),
753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexGrow));
754     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexShrink"),
755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexShrink));
756     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexShrink"),
757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexShrink));
758     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setConstraintSize"),
759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetConstraintSize));
760     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetConstraintSize"),
761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetConstraintSize));
762     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridOffset"),
763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridOffset));
764     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridOffset"),
765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridOffset));
766     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridSpan"),
767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetGridSpan));
768     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridSpan"),
769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetGridSpan));
770     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setExpandSafeArea"),
771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetExpandSafeArea));
772     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetExpandSafeArea"),
773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetExpandSafeArea));
774     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignRules"),
775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAlignRules));
776     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignRules"),
777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAlignRules));
778     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexBasis"),
779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFlexBasis));
780     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexBasis"),
781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFlexBasis));
782     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityDescription));
784     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityDescription));
786     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetId));
788     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetId"),
789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetId));
790     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKey"),
791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKey));
792     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKey"),
793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKey));
794     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRestoreId"),
795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetRestoreId));
796     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRestoreId"),
797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetRestoreId));
798     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabIndex"),
799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTabIndex));
800     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabIndex"),
801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTabIndex));
802     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObscured"),
803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetObscured));
804     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObscured"),
805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetObscured));
806     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundEffect"),
807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundEffect));
808     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundEffect"),
809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundEffect));
810     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundEffect"),
811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundEffect));
812     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundEffect"),
813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundEffect));
814     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightness"),
815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightness));
816     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightness"),
817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightness));
818     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundBrightnessInternal"),
819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBackgroundBrightnessInternal));
820     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundBrightnessInternal"),
821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBackgroundBrightnessInternal));
822     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundBrightness"),
823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetForegroundBrightness));
824     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundBrightness"),
825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetForegroundBrightness));
826     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreviewOptions"),
827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreviewOptions));
828     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreviewOptions"),
829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreviewOptions));
830     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragPreview"),
831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDragPreview));
832     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragPreview"),
833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDragPreview));
834     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetResponseRegion));
836     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetResponseRegion));
838     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMouseResponseRegion"),
839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMouseResponseRegion));
840     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMouseResponseRegion"),
841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMouseResponseRegion));
842     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetTransition));
844     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetTransition));
846     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSharedTransition"),
847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSharedTransition));
848     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSharedTransition"),
849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetSharedTransition));
850     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnabled"),
851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetEnabled));
852     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnabled"),
853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetEnabled));
854     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUseShadowBatching"),
855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetUseShadowBatching));
856     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUseShadowBatching"),
857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetUseShadowBatching));
858     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlendMode"),
859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBlendMode));
860     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlendMode"),
861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetBlendMode));
862     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMonopolizeEvents"),
863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetMonopolizeEvents));
864     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMonopolizeEvents"),
865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetMonopolizeEvents));
866     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetDraggable));
868     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetDraggable));
870     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityGroup"),
871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAccessibilityGroup));
872     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityGroup"),
873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAccessibilityGroup));
874     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetHoverEffect));
876     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetHoverEffect));
878     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClickEffect"),
879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClickEffect));
880     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClickEffect"),
881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClickEffect));
882     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyBoardShortCut"),
883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetKeyBoardShortCut));
884     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyBoardShortCut"),
885         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetKeyBoardShortCut));
886     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipWithEdge"),
887         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetClipWithEdge));
888     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetClipWithEdge"),
889         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetClipWithEdge));
890     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnClick));
892     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnClick));
894     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragStart"),
895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragStart));
896     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragStart"),
897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragStart));
898     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnter"),
899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnter));
900     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnter"),
901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnter));
902     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragMove"),
903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragMove));
904     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragMove"),
905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragMove));
906     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragLeave"),
907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragLeave));
908     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragLeave"),
909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragLeave));
910     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDrop"),
911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDrop));
912     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDrop"),
913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDrop));
914     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDragEnd"),
915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDragEnd));
916     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDragEnd"),
917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDragEnd));
918     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
919         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnTouch));
920     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTouch"),
921         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnTouch));
922     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
923         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAppear));
924     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAppear"),
925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAppear));
926     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDisappear));
928     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDisappear"),
929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDisappear));
930     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAttach));
932     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAttach"),
933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAttach));
934     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnDetach));
936     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDetach"),
937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnDetach));
938     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
939         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyEvent));
940     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyEvent"),
941         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyEvent));
942     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyPreIme"),
943         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnKeyPreIme));
944     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnKeyPreIme"),
945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnKeyPreIme));
946     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocusAxisEvent"),
947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocusAxisEvent));
948     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocusAxisEvent"),
949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocusAxisEvent));
950     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnFocus));
952         common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFocus"),
953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnFocus));
954     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnBlur));
956     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBlur"),
957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnBlur));
958     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHover));
960     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHover"),
961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHover));
962     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHoverMove"),
963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnHoverMove));
964     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnHoverMove"),
965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnHoverMove));
966     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnMouse));
968     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnMouse"),
969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnMouse));
970     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnSizeChange));
972     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSizeChange"),
973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnSizeChange));
974     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAreaChange"),
975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnAreaChange));
976     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnAreaChange"),
977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnAreaChange));
978     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureJudgeBegin"),
979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureJudgeBegin));
980     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureJudgeBegin"),
981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureJudgeBegin));
982     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnGestureRecognizerJudgeBegin"),
983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetOnGestureRecognizerJudgeBegin));
984     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnGestureRecognizerJudgeBegin"),
985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetOnGestureRecognizerJudgeBegin));
986     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShouldBuiltInRecognizerParallelWith"),
987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetShouldBuiltInRecognizerParallelWith));
988     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShouldBuiltInRecognizerParallelWith"),
989         panda::FunctionRef::New(
990             const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetShouldBuiltInRecognizerParallelWith));
991     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGesture"),
992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGesture));
993     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGesture"),
994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGesture));
995     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGesture"),
996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGesture));
997     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGesture"),
998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGesture));
999     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGesture"),
1000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGesture));
1001     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGesture"),
1002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGesture));
1003     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroup"),
1004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroup));
1005     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addTapGestureToGroup"),
1006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddTapGestureToGroup));
1007     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addLongPressGestureToGroup"),
1008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddLongPressGestureToGroup));
1009     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPanGestureToGroup"),
1010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPanGestureToGroup));
1011     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addSwipeGestureToGroup"),
1012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddSwipeGestureToGroup));
1013     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addPinchGestureToGroup"),
1014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddPinchGestureToGroup));
1015     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addRotationGestureToGroup"),
1016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddRotationGestureToGroup));
1017     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "addGestureGroupToGroup"),
1018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AddGestureGroupToGroup));
1019     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachGestureGroup"),
1020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::AttachGestureGroup));
1021     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeGestureByTag"),
1022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RemoveGestureByTag));
1023     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearGestures"),
1024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ClearGestures));
1025     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowName"),
1026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowName));
1027     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowWidthBreakpoint"),
1028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowWidthBreakpoint));
1029     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getWindowHeightBreakpoint"),
1030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetWindowHeightBreakpoint));
1031     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemBarEffect"),
1032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetSystemBarEffect));
1033     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "postFrameCallback"),
1034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::PostFrameCallback));
1035     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopeId"),
1036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopeId));
1037     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopeId"),
1038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopeId));
1039     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusScopePriority"),
1040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusScopePriority));
1041     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusScopePriority"),
1042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusScopePriority));
1043     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelRound"),
1044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetPixelRound));
1045     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelRound"),
1046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetPixelRound));
1047     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainMode"),
1048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetChainMode));
1049     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainMode"),
1050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetChainMode));
1051     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWithDashParams"),
1052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetBorderWithDashParams));
1053     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "greatOrEqualAPITargetVersion"),
1054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GreatOrEqualAPITargetVersion));
1055     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "lessThanAPITargetVersion"),
1056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::LessThanAPITargetVersion));
1057     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "getApiTargetVersion"),
1058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::GetApiTargetVersion));
1059     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFocusBox"),
1060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetFocusBox));
1061     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFocusBox"),
1062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetFocusBox));
1063     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdvancedBlendMode"),
1064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::SetAdvancedBlendMode));
1065     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdvancedBlendMode"),
1066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::ResetAdvancedBlendMode));
1067     common->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameNodeDestructorCallback"),
1068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonBridge::RegisterFrameNodeDestructorCallback));
1069     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "common"), common);
1070 
1071     auto nativeUtils = panda::ObjectRef::New(vm);
1072     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeWeakRef"),
1073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeWeakRef));
1074     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNativeStrongRef"),
1075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::CreateNativeStrongRef));
1076     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "parseResourceColor"),
1077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ParseResourceColor));
1078     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "blendColor"),
1079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::BlendColor));
1080     nativeUtils->Set(vm, panda::StringRef::NewFromUtf8(vm, "resoureToLengthMetrics"),
1081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NativeUtilsBridge::ResoureToLengthMetrics));
1082     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nativeUtils"), nativeUtils);
1083 
1084     auto nodeAdapter = panda::ObjectRef::New(vm);
1085     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "createAdapter"),
1086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::CreateNodeAdapter));
1087     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCallbacks"),
1088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetCallbacks));
1089     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTotalNodeCount"),
1090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::SetTotalNodeCount));
1091     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getTotalNodeCount"),
1092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetTotalNodeCount));
1093     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemReloaded"),
1094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemReloaded));
1095     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemChanged"),
1096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemChanged));
1097     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemRemoved"),
1098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemRemoved));
1099     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemInserted"),
1100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemInserted));
1101     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "notifyItemMoved"),
1102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::NotifyItemMoved));
1103     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "getAllItems"),
1104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::GetAllItems));
1105     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "attachNodeAdapter"),
1106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::AttachNodeAdapter));
1107     nodeAdapter->Set(vm, panda::StringRef::NewFromUtf8(vm, "detachNodeAdapter"),
1108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeAdapterBridge::DetachNodeAdapter));
1109     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeAdapter"), nodeAdapter);
1110 
1111     auto counter = panda::ObjectRef::New(vm);
1112     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableInc"),
1113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableInc));
1114     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableInc"),
1115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableInc));
1116     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDec"),
1117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetEnableDec));
1118     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDec"),
1119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetEnableDec));
1120     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterHeight"),
1121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterHeight));
1122     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterHeight"),
1123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterHeight));
1124     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterWidth"),
1125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterWidth));
1126     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterWidth"),
1127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterWidth));
1128     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterBackgroundColor"),
1129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterBackgroundColor));
1130     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterBackgroundColor"),
1131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterBackgroundColor));
1132     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCounterSize"),
1133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::SetCounterSize));
1134     counter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCounterSize"),
1135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CounterBridge::ResetCounterSize));
1136     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "counter"), counter);
1137 
1138     auto checkboxgroup = panda::ObjectRef::New(vm);
1139     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectedColor"),
1140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectedColor));
1141     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectedColor"),
1142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectedColor));
1143     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupUnSelectedColor"),
1144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupUnSelectedColor));
1145     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupUnSelectedColor"),
1146         panda::FunctionRef::New(
1147             const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupUnSelectedColor));
1148     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSelectAll"),
1149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSelectAll));
1150     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSelectAll"),
1151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSelectAll));
1152     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupWidth"),
1153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupWidth));
1154     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupWidth"),
1155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupWidth));
1156     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupHeight"),
1157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupHeight));
1158     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupHeight"),
1159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupHeight));
1160     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupMark"),
1161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupMark));
1162     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupMark"),
1163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupMark));
1164     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupSize"),
1165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupSize));
1166     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupSize"),
1167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupSize));
1168     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxGroupStyle"),
1169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::SetCheckboxGroupStyle));
1170     checkboxgroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxGroupStyle"),
1171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxGroupBridge::ResetCheckboxGroupStyle));
1172     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkboxgroup"), checkboxgroup);
1173 
1174     auto panel = panda::ObjectRef::New(vm);
1175     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
1176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
1177     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
1178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
1179     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
1180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
1181     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
1182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
1183     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
1184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
1185     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
1186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
1187     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
1188 
1189     auto row = panda::ObjectRef::New(vm);
1190     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetAlignItems));
1192     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetAlignItems));
1194     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetJustifyContent));
1196     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetJustifyContent));
1198     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetSpace));
1200     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetSpace));
1202     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::SetReverse));
1204     row->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowBridge::ResetReverse));
1206     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "row"), row);
1207 
1208     auto rowSplit = panda::ObjectRef::New(vm);
1209     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
1210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::SetResizable));
1211     rowSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
1212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RowSplitBridge::ResetResizable));
1213     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rowSplit"), rowSplit);
1214 
1215     auto text = panda::ObjectRef::New(vm);
1216     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1217         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontColor));
1218     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1219         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontColor));
1220     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1221         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontSize));
1222     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1223         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontSize));
1224     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1225         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontStyle));
1226     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1227         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontStyle));
1228     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1229         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextAlign));
1230     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1231         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextAlign));
1232     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1233         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontWeight));
1234     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1235         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontWeight));
1236     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1237         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineHeight));
1238     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineHeight));
1240     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextOverflow));
1242     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextOverflow));
1244     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDecoration));
1246     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDecoration));
1248     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextCase));
1250     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextCase));
1252     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxLines));
1254     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxLines));
1256     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontSize));
1258     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ReSetMinFontSize));
1260     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
1261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDraggable));
1262     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
1263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDraggable));
1264     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
1265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetPrivacySensitive));
1266     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
1267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetPrivacySensitive));
1268     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontSize));
1270     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontSize));
1272     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontScale"),
1273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMinFontScale));
1274     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontScale"),
1275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMinFontScale));
1276     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontScale"),
1277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetMaxFontScale));
1278     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontScale"),
1279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetMaxFontScale));
1280     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFamily));
1282     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFamily));
1284     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCopyOption));
1286     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCopyOption));
1288     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextShadow));
1290     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1292     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextController"),
1293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextController));
1294     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1295         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextShadow));
1296     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1297         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHeightAdaptivePolicy));
1298     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1299         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHeightAdaptivePolicy));
1300     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1301         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextIndent));
1302     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextIndent));
1304     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetBaselineOffset));
1306     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetBaselineOffset));
1308     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLetterSpacing));
1310     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLetterSpacing));
1312     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineSpacing));
1314     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineSpacing));
1316     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFont));
1318     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFont));
1320     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetWordBreak));
1322     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1323         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetWordBreak));
1324     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1325         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetLineBreakStrategy));
1326     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1327         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetLineBreakStrategy));
1328     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEllipsisMode"),
1329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEllipsisMode));
1330     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEllipsisMode"),
1331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEllipsisMode));
1332     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetEnableDataDetector));
1334     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetEnableDataDetector));
1336     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextForegroundColor"),
1337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetForegroundColor));
1338     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextForegroundColor"),
1339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetForegroundColor));
1340     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetFontFeature));
1342     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetFontFeature));
1344     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContent"),
1345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetContent));
1346     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelection"),
1347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelection));
1348     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelection"),
1349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelection));
1350     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextSelectableMode"),
1351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetTextSelectableMode));
1352     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextSelectableMode"),
1353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetTextSelectableMode));
1354     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetCaretColor));
1356     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetCaretColor));
1358     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectedBackgroundColor));
1360     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectedBackgroundColor));
1362     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetDataDetectorConfig));
1364     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetDataDetectorConfig));
1366     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnCopy));
1368     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnCopy));
1370     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnTextSelectionChange));
1372     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnTextSelectionChange));
1374     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetSelectionMenuOptions));
1376     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetSelectionMenuOptions));
1378     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHalfLeading"),
1379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetHalfLeading));
1380     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHalfLeading"),
1381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetHalfLeading));
1382     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
1383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetOnClick));
1384     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnClick"),
1385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetOnClick));
1386     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
1387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::SetResponseRegion));
1388     text->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
1389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextBridge::ResetResponseRegion));
1390     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "text"), text);
1391 
1392     auto search = panda::ObjectRef::New(vm);
1393     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInitialize"),
1394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInitialize));
1395     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInitialize"),
1396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInitialize));
1397     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextFont"),
1398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextFont));
1399     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextFont"),
1400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextFont));
1401     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderColor));
1403     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderColor));
1405     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuHidden));
1407     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuHidden));
1409     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCaretStyle));
1411     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCaretStyle));
1413     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchTextAlign));
1415     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchTextAlign));
1417     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
1418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCancelButton));
1419     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
1420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCancelButton));
1421     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableKeyboardOnFocus));
1423     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableKeyboardOnFocus));
1425     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetPlaceholderFont));
1427     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetPlaceholderFont));
1429     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchIcon"),
1430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchIcon));
1431     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchIcon"),
1432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchIcon));
1433     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchButton"),
1434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchButton));
1435     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchButton"),
1436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchButton));
1437     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontColor));
1439     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontColor));
1441     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetCopyOption));
1443     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetCopyOption));
1445     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchEnterKeyType"),
1446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchEnterKeyType));
1447     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchEnterKeyType"),
1448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchEnterKeyType));
1449     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchHeight"),
1450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchHeight));
1451     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchHeight"),
1452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchHeight));
1453     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetFontFeature));
1455     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetFontFeature));
1457     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetDecoration));
1459     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetDecoration));
1461     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLetterSpacing));
1463     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLetterSpacing));
1465     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetLineHeight));
1467     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetLineHeight));
1469     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMinFontSize"),
1470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMinFontSize));
1471     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMinFontSize"),
1472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMinFontSize));
1473     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchMaxFontSize"),
1474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchMaxFontSize));
1475     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchMaxFontSize"),
1476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchMaxFontSize));
1477     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
1478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetInputFilter));
1479     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
1480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetInputFilter));
1481     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectedBackgroundColor));
1483     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectedBackgroundColor));
1485     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetTextIndent));
1487     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetTextIndent));
1489     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetMaxLength));
1491     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetMaxLength));
1493     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetType));
1495     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetType));
1497     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
1498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnEditChange));
1499     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
1500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnEditChange));
1501     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnSubmit));
1503     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnSubmit));
1505     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCopy));
1507     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCopy));
1509     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnCut));
1511     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnCut));
1513     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnPaste));
1515     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnPaste));
1517     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnChange));
1519     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnChange));
1521     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
1522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnTextSelectionChange));
1523     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
1524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnTextSelectionChange));
1525     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
1526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnContentScroll));
1527     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
1528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnContentScroll));
1529     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetShowCounter));
1531     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetShowCounter));
1533     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
1534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillChange));
1535     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
1536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillChange));
1537     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
1538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillInsert));
1539     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
1540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillInsert));
1541     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
1542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidInsert));
1543     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
1544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidInsert));
1545     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
1546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnWillDelete));
1547     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
1548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnWillDelete));
1549     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
1550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetOnDidDelete));
1551     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
1552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetOnDidDelete));
1553     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
1554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnablePreviewText));
1555     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
1556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnablePreviewText));
1557     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
1558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSelectionMenuOptions));
1559     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
1560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSelectionMenuOptions));
1561     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSearchInspectorId"),
1562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetSearchInspectorId));
1563     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSearchInspectorId"),
1564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetSearchInspectorId));
1565     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
1566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetEnableHapticFeedback));
1567     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
1568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetEnableHapticFeedback));
1569     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
1570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetStopBackPress));
1571     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
1572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetStopBackPress));
1573     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
1574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::SetKeyboardAppearance));
1575     search->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
1576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SearchBridge::ResetKeyboardAppearance));
1577     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "search"), search);
1578 
1579     auto stack = panda::ObjectRef::New(vm);
1580     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignContent"),
1581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::SetAlignContent));
1582     stack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignContent"),
1583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StackBridge::ResetAlignContent));
1584     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stack"), stack);
1585 
1586     auto folderStack = panda::ObjectRef::New(vm);
1587     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnimation"),
1588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetEnableAnimation));
1589     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnimation"),
1590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetEnableAnimation));
1591     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHalfFold"),
1592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::SetAutoHalfFold));
1593     folderStack->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHalfFold"),
1594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FolderStackBridge::ResetAutoHalfFold));
1595     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "folderStack"), folderStack);
1596 
1597     auto imageSpan = panda::ObjectRef::New(vm);
1598     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVerticalAlign"),
1599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetVerticalAlign));
1600     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVerticalAlign"),
1601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetVerticalAlign));
1602     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
1603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetObjectFit));
1604     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
1605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetObjectFit));
1606     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1607         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetTextBackgroundStyle));
1608     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1609         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetTextBackgroundStyle));
1610     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1611         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetBaselineOffset));
1612     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1613         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetBaselineOffset));
1614     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
1615         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetAlt));
1616     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
1617         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetAlt));
1618     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
1619         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnComplete));
1620     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
1621         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnComplete));
1622     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
1623         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::SetOnError));
1624     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
1625         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageSpanBridge::ResetOnError));
1626     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
1627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetBorderRadius));
1628     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
1629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetBorderRadius));
1630     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
1631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::SetColorFilter));
1632     imageSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
1633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageSpanBridge::ResetColorFilter));
1634     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageSpan"), imageSpan);
1635 
1636     auto blank = panda::ObjectRef::New(vm);
1637     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
1638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetColor));
1639     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
1640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetColor));
1641     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankHeight"),
1642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankHeight));
1643     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankHeight"),
1644         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankHeight));
1645     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlankMin"),
1646         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::SetBlankMin));
1647     blank->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlankMin"),
1648         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BlankBridge::ResetBlankMin));
1649     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "blank"), blank);
1650 
1651     auto span = panda::ObjectRef::New(vm);
1652     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpanSrc"),
1653         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SpanBridge::SetSpanSrc));
1654     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextCase"),
1655         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextCase));
1656     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextCase"),
1657         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextCase));
1658     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1659         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontWeight));
1660     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1661         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontWeight));
1662     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1663         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLineHeight));
1664     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1665         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLineHeight));
1666     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1667         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontStyle));
1668     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1669         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontStyle));
1670     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1671         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontSize));
1672     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1673         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontSize));
1674     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1675         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontFamily));
1676     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1677         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontFamily));
1678     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1679         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetDecoration));
1680     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1681         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetDecoration));
1682     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1683         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFontColor));
1684     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1685         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFontColor));
1686     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1687         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetLetterSpacing));
1688     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1689         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetLetterSpacing));
1690     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBaselineOffset"),
1691         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetBaselineOffset));
1692     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBaselineOffset"),
1693         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetBaselineOffset));
1694     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
1695         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetFont));
1696     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
1697         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetFont));
1698     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
1699         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextBackgroundStyle));
1700     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
1701         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextBackgroundStyle));
1702     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
1703         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetTextShadow));
1704     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
1705         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetTextShadow));
1706     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityText"),
1707         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityText));
1708     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityText"),
1709         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityText));
1710     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityDescription"),
1711         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityDescription));
1712     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityDescription"),
1713         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityDescription));
1714     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAccessibilityLevel"),
1715         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::SetAccessibilityLevel));
1716     span->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAccessibilityLevel"),
1717         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), SpanBridge::ResetAccessibilityLevel));
1718     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "span"), span);
1719 
1720     auto gridCol = panda::ObjectRef::New(vm);
1721     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpan"),
1722         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetSpan));
1723     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpan"),
1724         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetSpan));
1725     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridColOffset"),
1726         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetGridColOffset));
1727     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridColOffset"),
1728         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetGridColOffset));
1729     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrder"),
1730         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::SetOrder));
1731     gridCol->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrder"),
1732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridColBridge::ResetOrder));
1733     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridCol"), gridCol);
1734 
1735     auto column = panda::ObjectRef::New(vm);
1736     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setJustifyContent"),
1737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetJustifyContent));
1738     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetJustifyContent"),
1739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetJustifyContent));
1740     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetAlignItems));
1742     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetAlignItems));
1744     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
1745         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetSpace));
1746     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
1747         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetSpace));
1748     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
1749         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::SetReverse));
1750     column->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
1751         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ColumnBridge::ResetReverse));
1752     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "column"), column);
1753 
1754     auto gridRow = panda::ObjectRef::New(vm);
1755     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
1756         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetAlignItems));
1757     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
1758         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetAlignItems));
1759     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDirection"),
1760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetDirection));
1761     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDirection"),
1762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetDirection));
1763     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBreakpoints"),
1764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetBreakpoints));
1765     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBreakpoints"),
1766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetBreakpoints));
1767     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumns"),
1768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetColumns));
1769     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumns"),
1770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetColumns));
1771     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGutter"),
1772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetGutter));
1773     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGutter"),
1774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetGutter));
1775     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBreakpointChange"),
1776         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::SetOnBreakpointChange));
1777     gridRow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnBreakpointChange"),
1778         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridRowBridge::ResetOnBreakpointChange));
1779 
1780     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridRow"), gridRow);
1781 
1782     auto richEditor = panda::ObjectRef::New(vm);
1783     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1784         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnterKeyType));
1785     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1786         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnterKeyType));
1787     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1788         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetSelectedBackgroundColor));
1789     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1790         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetSelectedBackgroundColor));
1791     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1792         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCaretColor));
1793     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1794         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCaretColor));
1795     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelectionChange"),
1796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelectionChange));
1797     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelectionChange"),
1798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelectionChange));
1799     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDataDetector"),
1800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetEnableDataDetector));
1801     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDataDetector"),
1802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetEnableDataDetector));
1803 
1804     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataDetectorConfig"),
1805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetDataDetectorConfig));
1806     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataDetectorConfig"),
1807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetDataDetectorConfig));
1808     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnIMEInputComplete"),
1809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnIMEInputComplete));
1810     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnIMEInputComplete"),
1811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnIMEInputComplete));
1812     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
1813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSubmit));
1814     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
1815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSubmit));
1816     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAboutToIMEInput"),
1817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetAboutToIMEInput));
1818     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAboutToIMEInput"),
1819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetAboutToIMEInput));
1820     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOptions"),
1821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetCopyOptions));
1822     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOptions"),
1823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetCopyOptions));
1824     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSelect"),
1825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnSelect));
1826     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSelect"),
1827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnSelect));
1828     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReady"),
1829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnReady));
1830     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReady"),
1831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnReady));
1832     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDeleteComplete"),
1833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnDeleteComplete));
1834     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDeleteComplete"),
1835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnDeleteComplete));
1836     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditingChange"),
1837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnEditingChange));
1838     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditingChange"),
1839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnEditingChange));
1840     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
1841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnPaste));
1842     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
1843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnPaste));
1844     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
1845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCut));
1846     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
1847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCut));
1848     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
1849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetOnCopy));
1850     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
1851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetOnCopy));
1852     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
1853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::SetKeyboardAppearance));
1854     richEditor->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
1855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RichEditorBridge::ResetKeyboardAppearance));
1856     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "richEditor"), richEditor);
1857 
1858     auto textArea = panda::ObjectRef::New(vm);
1859     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
1860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStyle));
1861     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
1862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStyle));
1863     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
1864         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuHidden));
1865     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
1866         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuHidden));
1867     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
1868         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLines));
1869     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
1870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLines));
1871     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
1872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCopyOption));
1873     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
1874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCopyOption));
1875     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
1876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderColor));
1877     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
1878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderColor));
1879     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
1880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaTextAlign));
1881     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
1882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextAreaTextAlign));
1883     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
1884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPlaceholderFont));
1885     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
1886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPlaceholderFont));
1887     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
1888         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBarState));
1889     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
1890         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBarState));
1891     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
1892         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableKeyboardOnFocus));
1893     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
1894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableKeyboardOnFocus));
1895     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
1896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFamily));
1897     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
1898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFamily));
1899     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
1900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetShowCounter));
1901     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
1902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetShowCounter));
1903     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
1904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretColor));
1905     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
1906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretColor));
1907     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
1908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxLength));
1909     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
1910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxLength));
1911     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
1912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontColor));
1913     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
1914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontColor));
1915     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
1916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontStyle));
1917     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
1918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontStyle));
1919     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
1920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontWeight));
1921     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
1922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontWeight));
1923     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
1924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontSize));
1925     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
1926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontSize));
1927     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
1928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetFontFeature));
1929     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
1930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetFontFeature));
1931     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
1932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetDecoration));
1933     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
1934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetDecoration));
1935     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
1936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLetterSpacing));
1937     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
1938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLetterSpacing));
1939     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineSpacing"),
1940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineSpacing));
1941     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineSpacing"),
1942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineSpacing));
1943     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
1944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineHeight));
1945     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
1946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineHeight));
1947     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
1948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWordBreak));
1949     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
1950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWordBreak));
1951     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
1952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetLineBreakStrategy));
1953     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
1954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetLineBreakStrategy));
1955     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
1956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMinFontSize));
1957     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
1958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMinFontSize));
1959     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
1960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMaxFontSize));
1961     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
1962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMaxFontSize));
1963     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
1964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetHeightAdaptivePolicy));
1965     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
1966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetHeightAdaptivePolicy));
1967     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
1968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectedBackgroundColor));
1969     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
1970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectedBackgroundColor));
1971     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
1972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetCaretStyle));
1973     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
1974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetCaretStyle));
1975     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
1976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextOverflow));
1977     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
1978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextOverflow));
1979     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
1980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextIndent));
1981     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
1982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetTextIndent));
1983     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
1984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetType));
1985     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
1986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetType));
1987     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
1988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetPadding));
1989     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
1990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetPadding));
1991     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
1992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnChange));
1993     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
1994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnChange));
1995     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
1996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnterKeyType));
1997     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
1998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnterKeyType));
1999     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetInputFilter));
2001     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetInputFilter));
2003     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnTextSelectionChange));
2005     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnTextSelectionChange));
2007     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnContentScroll));
2009     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnContentScroll));
2011     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnEditChange));
2013     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnEditChange));
2015     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCopy));
2017     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCopy));
2019     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnCut));
2021     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnCut));
2023     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnPaste));
2025     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnPaste));
2027     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnSubmit));
2029     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnSubmit));
2031     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetContentType));
2033     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetContentType));
2035     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableAutoFill));
2037     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableAutoFill));
2039     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2041     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2043     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2044         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2045     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2046         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2047     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2049     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2051     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2053     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2055     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2057     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2059     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBackgroundColor));
2061     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBackgroundColor));
2063     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetMargin));
2065     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetMargin));
2067     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
2068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillChange));
2069     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
2070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillChange));
2071     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2073     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2075     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2077     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2079     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2081     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2083     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2085     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2087     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnablePreviewText));
2089     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnablePreviewText));
2091     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetSelectionMenuOptions));
2093     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetSelectionMenuOptions));
2095     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetWidth));
2097     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetWidth));
2099     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetEnableHapticFeedback));
2101     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetEnableHapticFeedback));
2103     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAreaInitialize"),
2104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetTextAreaInitialize));
2105     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
2106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetStopBackPress));
2107     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
2108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetStopBackPress));
2109     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
2110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetKeyboardAppearance));
2111     textArea->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
2112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetKeyboardAppearance));
2113     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textArea"), textArea);
2114 
2115     auto video = panda::ObjectRef::New(vm);
2116 #ifdef PREVIEW
2117     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2119     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2121     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2123     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2125     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2127     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2129     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2131     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2133     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2135     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2137     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShortcutKeyEnabled"),
2138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2139     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShortcutKeyEnabled"),
2140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
2141 #else
2142     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoPlay"),
2143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetAutoPlay));
2144     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoPlay"),
2145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetAutoPlay));
2146     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControls"),
2147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetControls));
2148     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControls"),
2149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetControls));
2150     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
2151         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetObjectFit));
2152     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
2153         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetObjectFit));
2154     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
2155         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetLoop));
2156     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
2157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetLoop));
2158     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMuted"),
2159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetMuted));
2160     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMuted"),
2161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetMuted));
2162     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShortcutKeyEnabled"),
2163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetShortcutKeyEnabled));
2164     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShortcutKeyEnabled"),
2165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetShortcutKeyEnabled));
2166 #endif
2167     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
2168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetOpacity));
2169     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
2170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetOpacity));
2171     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVideoSurfaceBackgroundColor"),
2172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetVideoSurfaceBackgroundColor));
2173     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVideoSurfaceBackgroundColor"),
2174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetVideoSurfaceBackgroundColor));
2175     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTransition"),
2176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::SetTransition));
2177     video->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTransition"),
2178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), VideoBridge::ResetTransition));
2179     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "video"), video);
2180 
2181     auto patternLock = panda::ObjectRef::New(vm);
2182     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideLength"),
2183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetSideLength));
2184     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideLength"),
2185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetSideLength));
2186     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoReset"),
2187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetAutoReset));
2188     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoReset"),
2189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetAutoReset));
2190     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathStrokeWidth"),
2191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathStrokeWidth));
2192     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathStrokeWidth"),
2193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathStrokeWidth));
2194     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRegularColor"),
2195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetRegularColor));
2196     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRegularColor"),
2197         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetRegularColor));
2198     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathColor"),
2199         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPathColor));
2200     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathColor"),
2201         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPathColor));
2202     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActiveColor"),
2203         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActiveColor));
2204     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActiveColor"),
2205         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActiveColor));
2206     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCircleRadius"),
2207         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockCircleRadius));
2208     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCircleRadius"),
2209         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockCircleRadius));
2210     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2211         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSelectedColor));
2212     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2213         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSelectedColor));
2214     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActivateCircleStyle"),
2215         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockActivateCircleStyle));
2216     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActivateCircleStyle"),
2217         panda::FunctionRef::New(
2218             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockActivateCircleStyle));
2219     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSkipUnselectedPoint"),
2220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PatternLockBridge::SetPatternLockSkipUnselectedPoint));
2221     patternLock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSkipUnselectedPoint"),
2222         panda::FunctionRef::New(
2223             const_cast<panda::EcmaVM*>(vm), PatternLockBridge::ResetPatternLockSkipUnselectedPoint));
2224     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "patternLock"), patternLock);
2225 
2226     auto columnSplit = panda::ObjectRef::New(vm);
2227     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2228         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetDivider));
2229     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2230         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetDivider));
2231     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizeable"),
2232         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::SetResizable));
2233     columnSplit->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizeable"),
2234         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ColumnSplitBridge::ResetResizable));
2235     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "columnSplit"), columnSplit);
2236 
2237     auto imageAnimator = panda::ObjectRef::New(vm);
2238     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setState"),
2239         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetState));
2240     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetState"),
2241         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetState));
2242     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDuration"),
2243         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetDuration));
2244     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDuration"),
2245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetDuration));
2246     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFixedSize"),
2247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFixedSize));
2248     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFixedSize"),
2249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFixedSize));
2250     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillMode"),
2251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetFillMode));
2252     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillMode"),
2253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetFillMode));
2254     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setReverse"),
2255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetReverse));
2256     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetReverse"),
2257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetReverse));
2258     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImages"),
2259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetImages));
2260     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImages"),
2261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetImages));
2262     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIterations"),
2263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::SetIteration));
2264     imageAnimator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIterations"),
2265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageAnimatorBridge::ResetIteration));
2266     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "imageAnimator"), imageAnimator);
2267 
2268     auto textInput = panda::ObjectRef::New(vm);
2269     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretColor"),
2270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretColor));
2271     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretColor"),
2272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretColor));
2273     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
2274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetType));
2275     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
2276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetType));
2277     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLines"),
2278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLines));
2279     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLines"),
2280         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLines));
2281     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderColor"),
2282         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderColor));
2283     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderColor"),
2284         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderColor));
2285     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretPosition"),
2286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretPosition));
2287     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretPosition"),
2288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretPosition));
2289     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
2290         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCopyOption));
2291     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
2292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCopyOption));
2293     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPasswordIcon"),
2294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPasswordIcon));
2295     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPasswordIcon"),
2296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPasswordIcon));
2297     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowPassword"),
2298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowPassword));
2299     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowPassword"),
2300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowPassword));
2301     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordIcon"),
2302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordIcon));
2303     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordIcon"),
2304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordIcon));
2305     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextAlign"),
2306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextAlign));
2307     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextAlign"),
2308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextAlign));
2309     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
2310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStyle));
2311     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
2312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStyle));
2313     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuHidden"),
2314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuHidden));
2315     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuHidden"),
2316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuHidden));
2317     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowUnderline"),
2318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputShowUnderline));
2319     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowUnderline"),
2320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputShowUnderline));
2321     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPasswordRules"),
2322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPasswordRules));
2323     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPasswordRules"),
2324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPasswordRules));
2325     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAutoFill"),
2326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableAutoFill));
2327     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAutoFill"),
2328         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableAutoFill));
2329     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCaretStyle"),
2330         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCaretStyle));
2331     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCaretStyle"),
2332         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCaretStyle));
2333     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableKeyboardOnFocus"),
2334         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableKeyboardOnFocus));
2335     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableKeyboardOnFocus"),
2336         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableKeyboardOnFocus));
2337     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarState"),
2338         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBarState));
2339     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarState"),
2340         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBarState));
2341     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnterKeyType"),
2342         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputEnterKeyType));
2343     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnterKeyType"),
2344         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputEnterKeyType));
2345     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2346         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextInputFontWeight));
2347     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2348         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextInputFontWeight));
2349     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2350         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontSize));
2351     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2352         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontSize));
2353     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxLength"),
2354         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxLength));
2355     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxLength"),
2356         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxLength));
2357     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
2358         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectedBackgroundColor));
2359     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
2360         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectedBackgroundColor));
2361     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowError"),
2362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowError));
2363     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowError"),
2364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowError));
2365     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholderFont"),
2366         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholderFont));
2367     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholderFont"),
2368         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholderFont));
2369     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2370         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontColor));
2371     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontColor));
2373     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
2374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontStyle));
2375     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
2376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontStyle));
2377     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
2378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFamily));
2379     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
2380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFamily));
2381     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
2382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetFontFeature));
2383     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
2384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetFontFeature));
2385     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnderlineColor"),
2386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetUnderlineColor));
2387     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnderlineColor"),
2388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetUnderlineColor));
2389     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDecoration"),
2390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetDecoration));
2391     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDecoration"),
2392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetDecoration));
2393     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLetterSpacing"),
2394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLetterSpacing));
2395     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLetterSpacing"),
2396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLetterSpacing));
2397     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineHeight"),
2398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineHeight));
2399     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineHeight"),
2400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineHeight));
2401     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWordBreak"),
2402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWordBreak));
2403     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWordBreak"),
2404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWordBreak));
2405     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineBreakStrategy"),
2406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetLineBreakStrategy));
2407     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineBreakStrategy"),
2408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetLineBreakStrategy));
2409     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCancelButton"),
2410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetCancelButton));
2411     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCancelButton"),
2412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetCancelButton));
2413     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectAll"),
2414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectAll));
2415     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectAll"),
2416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectAll));
2417     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2419     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2421     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCounter"),
2422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetShowCounter));
2423     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCounter"),
2424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetShowCounter));
2425     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnEditChange"),
2426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnEditChange));
2427     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnEditChange"),
2428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnEditChange));
2429     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInputFilter"),
2430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetInputFilter));
2431     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInputFilter"),
2432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetInputFilter));
2433     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSubmit"),
2434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnSubmit));
2435     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnSubmit"),
2436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnSubmit));
2437     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
2438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnChange));
2439     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
2440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnChange));
2441     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTextSelectionChange"),
2442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnTextSelectionChange));
2443     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnTextSelectionChange"),
2444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnTextSelectionChange));
2445     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnContentScroll"),
2446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnContentScroll));
2447     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnContentScroll"),
2448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnContentScroll));
2449     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCopy"),
2450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCopy));
2451     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCopy"),
2452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCopy));
2453     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnCut"),
2454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnCut));
2455     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnCut"),
2456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnCut));
2457     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnPaste"),
2458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetOnPaste));
2459     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnPaste"),
2460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetOnPaste));
2461     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinFontSize"),
2462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMinFontSize));
2463     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinFontSize"),
2464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMinFontSize));
2465     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxFontSize"),
2466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMaxFontSize));
2467     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxFontSize"),
2468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMaxFontSize));
2469     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeightAdaptivePolicy"),
2470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetHeightAdaptivePolicy));
2471     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeightAdaptivePolicy"),
2472         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetHeightAdaptivePolicy));
2473     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextOverflow"),
2474         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextOverflow));
2475     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextOverflow"),
2476         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextOverflow));
2477     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextIndent"),
2478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetTextIndent));
2479     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextIndent"),
2480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetTextIndent));
2481     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
2482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPadding));
2483     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
2484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPadding));
2485     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentType"),
2486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetContentType));
2487     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentType"),
2488         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetContentType));
2489     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorder"),
2490         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorder));
2491     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorder"),
2492         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorder));
2493     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderWidth"),
2494         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderWidth));
2495     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderWidth"),
2496         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderWidth));
2497     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderColor"),
2498         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderColor));
2499     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderColor"),
2500         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderColor));
2501     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderStyle"),
2502         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderStyle));
2503     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderStyle"),
2504         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderStyle));
2505     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
2506         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetBorderRadius));
2507     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
2508         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetBorderRadius));
2509     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2510         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetBackgroundColor));
2511     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2512         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetBackgroundColor));
2513     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMargin"),
2514         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetMargin));
2515     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMargin"),
2516         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetMargin));
2517     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetText"),
2518         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetText));
2519     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setText"),
2520         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetText));
2521     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetController"),
2522         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetController));
2523     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setController"),
2524         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetController));
2525     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPlaceholder"),
2526         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetPlaceholder));
2527     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPlaceholder"),
2528         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetPlaceholder));
2529     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillChange"),
2530         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillChange));
2531     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillChange"),
2532         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillChange));
2533     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillInsert"),
2534         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillInsert));
2535     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillInsert"),
2536         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillInsert));
2537     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidInsert"),
2538         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidInsert));
2539     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidInsert"),
2540         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidInsert));
2541     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillDelete"),
2542         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnWillDelete));
2543     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillDelete"),
2544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnWillDelete));
2545     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidDelete"),
2546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::SetOnDidDelete));
2547     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidDelete"),
2548         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextAreaBridge::ResetOnDidDelete));
2549     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePreviewText"),
2550         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnablePreviewText));
2551     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePreviewText"),
2552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnablePreviewText));
2553     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectionMenuOptions"),
2554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetSelectionMenuOptions));
2555     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectionMenuOptions"),
2556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetSelectionMenuOptions));
2557     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetWidth));
2559     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetWidth));
2561     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
2562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetEnableHapticFeedback));
2563     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
2564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetEnableHapticFeedback));
2565     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStopBackPress"),
2566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetStopBackPress));
2567     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStopBackPress"),
2568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetStopBackPress));
2569     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "setKeyboardAppearance"),
2570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::SetKeyboardAppearance));
2571     textInput->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetKeyboardAppearance"),
2572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextInputBridge::ResetKeyboardAppearance));
2573     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textInput"), textInput);
2574 
2575     auto navDestination = panda::ObjectRef::New(vm);
2576     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
2577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideTitleBar));
2578     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
2579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideTitleBar));
2580     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
2581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideToolBar));
2582     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
2583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideToolBar));
2584     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
2585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetHideBackButton));
2586     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
2587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetHideBackButton));
2588     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
2589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetBackButtonIcon));
2590     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
2591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetBackButtonIcon));
2592     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
2593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetNavDestinationMode));
2594     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
2595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetNavDestinationMode));
2596     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
2597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetIgnoreLayoutSafeArea));
2598     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
2599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetIgnoreLayoutSafeArea));
2600     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
2601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetTitle));
2602     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
2603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetTitle));
2604     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
2605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetMenus));
2606     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
2607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetMenus));
2608     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSystemTransition"),
2609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2610         NavDestinationBridge::SetNavDestinationSystemTransition));
2611     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSystemTransition"),
2612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm),
2613         NavDestinationBridge::ResetNavDestinationSystemTransition));
2614 
2615     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
2616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::SetRecoverable));
2617     navDestination->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
2618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavDestinationBridge::ResetRecoverable));
2619     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navDestination"), navDestination);
2620 
2621     auto particle = panda::ObjectRef::New(vm);
2622     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisturbanceField"),
2623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetDisturbanceField));
2624     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisturbanceField"),
2625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetDisturbanceField));
2626     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEmitter"),
2627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::SetEmitter));
2628     particle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEmitter"),
2629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ParticleBridge::ResetEmitter));
2630     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "particle"), particle);
2631 
2632     auto symbolGlyph = panda::ObjectRef::New(vm);
2633     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2634         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontColor));
2635     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2636         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontColor));
2637     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2638         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontSize));
2639     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2640         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontSize));
2641     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2642         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetFontWeight));
2643     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2644         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetFontWeight));
2645     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2646         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetRenderingStrategy));
2647     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2648         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetRenderingStrategy));
2649     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2650         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetEffectStrategy));
2651     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2652         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetEffectStrategy));
2653     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolEffectOptions"),
2654         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolEffect));
2655     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolEffectOptions"),
2656         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolEffect));
2657     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSymbolGlyphInitialize"),
2658         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::ResetSymbolGlyphInitialize));
2659     symbolGlyph->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSymbolGlyphInitialize"),
2660         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolGlyphBridge::SetSymbolGlyphInitialize));
2661     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolGlyph"), symbolGlyph);
2662 
2663     auto symbolSpan = panda::ObjectRef::New(vm);
2664     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
2665         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontColor));
2666     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
2667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontColor));
2668     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
2669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontSize));
2670     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
2671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontSize));
2672     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
2673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetFontWeight));
2674     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
2675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetFontWeight));
2676     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEffectStrategy"),
2677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetEffectStrategy));
2678     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEffectStrategy"),
2679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetEffectStrategy));
2680     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderingStrategy"),
2681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetRenderingStrategy));
2682     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderingStrategy"),
2683         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::ResetRenderingStrategy));
2684     symbolSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setId"),
2685         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SymbolSpanBridge::SetId));
2686     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "symbolSpan"), symbolSpan);
2687 
2688 #ifdef MODEL_COMPONENT_SUPPORTED
2689     auto component3D = panda::ObjectRef::New(vm);
2690     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShaderInputBuffer"),
2691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::SetShaderInputBuffer));
2692     component3D->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShaderInputBuffer"),
2693         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), Component3DBridge::ResetShaderInputBuffer));
2694     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "component3D"), component3D);
2695 #endif
2696 
2697     auto relativeContainer = panda::ObjectRef::New(vm);
2698     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGuideLine"),
2699         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetGuideLine));
2700     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGuideLine"),
2701         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetGuideLine));
2702     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarrier"),
2703         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::SetBarrier));
2704     relativeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarrier"),
2705         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), RelativeContainerBridge::ResetBarrier));
2706     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "relativeContainer"), relativeContainer);
2707 
2708     auto containerSpan = panda::ObjectRef::New(vm);
2709     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextBackgroundStyle"),
2710         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::SetTextBackgroundStyle));
2711     containerSpan->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextBackgroundStyle"),
2712         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ContainerSpanBridge::ResetTextBackgroundStyle));
2713     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "containerSpan"), containerSpan);
2714 
2715     RegisterButtonAttributes(object, vm);
2716     RegisterToggleAttributes(object, vm);
2717     RegisterDividerAttributes(object, vm);
2718     RegisterNavigationAttributes(object, vm);
2719     RegisterImageAttributes(object, vm);
2720     RegisterNavRouterAttributes(object, vm);
2721     RegisterNavigatorAttributes(object, vm);
2722     RegisterNodeContainerAttributes(object, vm);
2723     RegisterRenderNodeAttributes(object, vm);
2724     RegisterFrameNodeAttributes(object, vm);
2725     RegisterPanelAttributes(object, vm);
2726     RegisterLineAttributes(object, vm);
2727     RegisterPathAttributes(object, vm);
2728     RegisterPolygonAttributes(object, vm);
2729     RegisterPolylineAttributes(object, vm);
2730     RegisterSideBarContainerAttributes(object, vm);
2731     RegisterCalendarPickerAttributes(object, vm);
2732     RegisterTabAttributes(object, vm);
2733     RegisterTabContentAttributes(object, vm);
2734     RegisterStepperItemAttributes(object, vm);
2735     RegisterHyperlinkAttributes(object, vm);
2736     RegisterMenuItemAttributes(object, vm);
2737     RegisterMenuAttributes(object, vm);
2738     RegisterMarqueeAttributes(object, vm);
2739     RegisterDatePickerAttributes(object, vm);
2740     RegisterAlphabetIndexerAttributes(object, vm);
2741     RegisterGaugeAttributes(object, vm);
2742     RegisterSwiperAttributes(object, vm);
2743     RegisterSelectAttributes(object, vm);
2744     RegisterRadioAttributes(object, vm);
2745     RegisterSliderAttributes(object, vm);
2746     RegisterRatingAttributes(object, vm);
2747     RegisterTimepickerAttributes(object, vm);
2748     RegisterTextpickerAttributes(object, vm);
2749     RegisterWaterFlowAttributes(object, vm);
2750     RegisterCheckboxAttributes(object, vm);
2751     RegisterDataPanelAttributes(object, vm);
2752     RegisterScrollAttributes(object, vm);
2753     RegisterScrollableAttributes(object, vm);
2754     RegisterGridItemAttributes(object, vm);
2755     RegisterMarqueeAttributes(object, vm);
2756     RegisterProgressAttributes(object, vm);
2757     RegisterCommonShapeAttributes(object, vm);
2758     RegisterShapeAttributes(object, vm);
2759     RegisterRectAttributes(object, vm);
2760     RegisterListAttributes(object, vm);
2761     RegisterGridAttributes(object, vm);
2762     RegisterListItemGroupAttributes(object, vm);
2763     RegisterQRCodeAttributes(object, vm);
2764     RegisterLoadingProgressAttributes(object, vm);
2765     RegisterTextClockAttributes(object, vm);
2766     RegisterListItemAttributes(object, vm);
2767     RegisterTextTimerAttributes(object, vm);
2768     RegisterRefreshAttributes(object, vm);
2769 #ifdef PLUGIN_COMPONENT_SUPPORTED
2770     RegisterPluginAttributes(object, vm);
2771 #endif
2772 #ifdef XCOMPONENT_SUPPORTED
2773     RegisterXComponentAttributes(object, vm);
2774     RegisterXComponentNodeAttributes(object, vm);
2775 #endif
2776 
2777 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
2778     RegisterFormAttributes(object, vm);
2779 #endif
2780     RegisterFlexAttributes(object, vm);
2781     RegisterResourceAttributes(object, vm);
2782     RegisterBadgeAttributes(object, vm);
2783     RegisterScrollBarAttributes(object, vm);
2784     RegisterIndicatorComponentAttributes(object, vm);
2785     return object;
2786 }
2787 
RegisterCheckboxAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2788 void ArkUINativeModule::RegisterCheckboxAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2789 {
2790     auto checkbox = panda::ObjectRef::New(vm);
2791     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMark"),
2792         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetMark));
2793     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMark"),
2794         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetMark));
2795     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUnSelectedColor"),
2796         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetUnSelectedColor));
2797     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUnSelectedColor"),
2798         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetUnSelectedColor));
2799     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelect"),
2800         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelect));
2801     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelect"),
2802         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelect));
2803     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
2804         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetSelectedColor));
2805     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
2806         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetSelectedColor));
2807     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
2808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxWidth));
2809     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
2810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxWidth));
2811     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
2812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxHeight));
2813     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
2814         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxHeight));
2815     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxSize"),
2816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxSize));
2817     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxSize"),
2818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxSize));
2819     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxShape"),
2820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxShape));
2821     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxShape"),
2822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxShape));
2823     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxResponseRegion"),
2824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetCheckboxResponseRegion));
2825     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxResponseRegion"),
2826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::ResetCheckboxResponseRegion));
2827     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCheckboxPadding"),
2828         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::SetCheckboxPadding));
2829     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CheckboxBridge::SetContentModifierBuilder));
2831     checkbox->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCheckboxPadding"),
2832         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), CheckboxBridge::ResetCheckboxPadding));
2833 
2834     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkbox"), checkbox);
2835 }
2836 
RegisterTextpickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2837 void ArkUINativeModule::RegisterTextpickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2838 {
2839     auto textpicker = panda::ObjectRef::New(vm);
2840     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCanLoop"),
2841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetCanLoop));
2842     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedIndex"),
2843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedIndex));
2844     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetTextStyle));
2846     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetSelectedTextStyle));
2848     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisappearTextStyle));
2850     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultPickerItemHeight"),
2851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultPickerItemHeight));
2852     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetBackgroundColor));
2854     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCanLoop"),
2855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetCanLoop));
2856     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedIndex"),
2857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedIndex));
2858     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetTextStyle));
2860     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetSelectedTextStyle));
2862     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisappearTextStyle));
2864     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultPickerItemHeight"),
2865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultPickerItemHeight));
2866     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetBackgroundColor));
2868     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
2869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDivider));
2870     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
2871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDivider));
2872     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGradientHeight"),
2873         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetGradientHeight));
2874     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGradientHeight"),
2875         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetGradientHeight));
2876     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisableTextStyleAnimation"),
2877         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDisableTextStyleAnimation));
2878     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisableTextStyleAnimation"),
2879         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDisableTextStyleAnimation));
2880     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDefaultTextStyle"),
2881         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::SetDefaultTextStyle));
2882     textpicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDefaultTextStyle"),
2883         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextPickerBridge::ResetDefaultTextStyle));
2884     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textpicker"), textpicker);
2885 }
2886 
RegisterTimepickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2887 void ArkUINativeModule::RegisterTimepickerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2888 {
2889     auto timepicker = panda::ObjectRef::New(vm);
2890     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
2891         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTextStyle));
2892     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
2893         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetSelectedTextStyle));
2894     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
2895         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetDisappearTextStyle));
2896     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
2897         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTextStyle));
2898     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
2899         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetSelectedTextStyle));
2900     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
2901         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetDisappearTextStyle));
2902     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
2903         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerBackgroundColor));
2904     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
2905         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerBackgroundColor));
2906     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerUseMilitaryTime"),
2907         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerUseMilitaryTime));
2908     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerUseMilitaryTime"),
2909         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerUseMilitaryTime));
2910     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerLoop"),
2911         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerLoop));
2912     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerLoop"),
2913         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerLoop));
2914     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTimepickerDateTimeOptions"),
2915         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::SetTimepickerDateTimeOptions));
2916     timepicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTimepickerDateTimeOptions"),
2917         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TimepickerBridge::ResetTimepickerDateTimeOptions));
2918     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "timepicker"), timepicker);
2919 }
2920 
RegisterRatingAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2921 void ArkUINativeModule::RegisterRatingAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2922 {
2923     auto rating = panda::ObjectRef::New(vm);
2924     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStars"),
2925         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStars));
2926     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStars"),
2927         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStars));
2928     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2929         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetRatingStepSize));
2930     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2931         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetRatingStepSize));
2932     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStarStyle"),
2933         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetStarStyle));
2934     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStarStyle"),
2935         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::ResetStarStyle));
2936     rating->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
2937         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RatingBridge::SetContentModifierBuilder));
2938     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rating"), rating);
2939 }
2940 
RegisterSliderAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)2941 void ArkUINativeModule::RegisterSliderAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
2942 {
2943     auto slider = panda::ObjectRef::New(vm);
2944     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowTips"),
2945         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowTips));
2946     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowTips"),
2947         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowTips));
2948     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepSize"),
2949         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSliderStepSize));
2950     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepSize"),
2951         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSliderStepSize));
2952     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockSize"),
2953         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockSize));
2954     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockSize"),
2955         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockSize));
2956     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBorderRadius"),
2957         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBorderRadius));
2958     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBorderRadius"),
2959         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBorderRadius));
2960     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStepColor"),
2961         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetStepColor));
2962     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStepColor"),
2963         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetStepColor));
2964     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderColor"),
2965         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderColor));
2966     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderColor"),
2967         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderColor));
2968     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockBorderWidth"),
2969         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockBorderWidth));
2970     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockBorderWidth"),
2971         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockBorderWidth));
2972     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockColor"),
2973         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockColor));
2974     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockColor"),
2975         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockColor));
2976     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTrackBackgroundColor"),
2977         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetTrackBackgroundColor));
2978     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTrackBackgroundColor"),
2979         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetTrackBackgroundColor));
2980     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectColor"),
2981         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectColor));
2982     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectColor"),
2983         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectColor));
2984     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSteps"),
2985         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetShowSteps));
2986     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSteps"),
2987         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetShowSteps));
2988     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setThickness"),
2989         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetThickness));
2990     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetThickness"),
2991         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetThickness));
2992     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlockStyle"),
2993         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetBlockStyle));
2994     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlockStyle"),
2995         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetBlockStyle));
2996     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValidSlideRange"),
2997         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetValidSlideRange));
2998     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValidSlideRange"),
2999         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetValidSlideRange));
3000     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBorderRadius"),
3001         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetSelectedBorderRadius));
3002     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBorderRadius"),
3003         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetSelectedBorderRadius));
3004     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInteractionMode"),
3005         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetInteractionMode));
3006     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInteractionMode"),
3007         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetInteractionMode));
3008     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinResponsiveDistance"),
3009         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetMinResponsiveDistance));
3010     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinResponsiveDistance"),
3011         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::ResetMinResponsiveDistance));
3012     slider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3013         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SliderBridge::SetContentModifierBuilder));
3014     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "slider"), slider);
3015 }
3016 
RegisterRadioAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3017 void ArkUINativeModule::RegisterRadioAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3018 {
3019     auto radio = panda::ObjectRef::New(vm);
3020     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioChecked"),
3021         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioChecked));
3022     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioChecked"),
3023         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioChecked));
3024     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioStyle"),
3025         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioStyle));
3026     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioStyle"),
3027         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioStyle));
3028     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioWidth"),
3029         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioWidth));
3030     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioWidth"),
3031         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioWidth));
3032     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHeight"),
3033         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHeight));
3034     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHeight"),
3035         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHeight));
3036     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioSize"),
3037         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioSize));
3038     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioSize"),
3039         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioSize));
3040     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioHoverEffect"),
3041         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioHoverEffect));
3042     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioHoverEffect"),
3043         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioHoverEffect));
3044     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioPadding"),
3045         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioPadding));
3046     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioPadding"),
3047         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioPadding));
3048     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadioResponseRegion"),
3049         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetRadioResponseRegion));
3050     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadioResponseRegion"),
3051         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::ResetRadioResponseRegion));
3052     radio->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3053         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RadioBridge::SetContentModifierBuilder));
3054     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "radio"), radio);
3055 }
3056 
RegisterSelectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3057 void ArkUINativeModule::RegisterSelectAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3058 {
3059     auto select = panda::ObjectRef::New(vm);
3060     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
3061         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSpace));
3062     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setValue"),
3063         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetValue));
3064     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
3065         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelected));
3066     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3067         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFontColor));
3068     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionBgColor"),
3069         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionBgColor));
3070     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionBgColor"),
3071         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionBgColor));
3072     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFontColor"),
3073         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFontColor));
3074     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFontColor"),
3075         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFontColor));
3076     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setArrowPosition"),
3077         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetArrowPosition));
3078     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuAlign"),
3079         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuAlign));
3080     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
3081         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetFont));
3082     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionFont"),
3083         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionFont));
3084     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedOptionFont"),
3085         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSelectedOptionFont));
3086     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetArrowPosition"),
3087         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetArrowPosition));
3088     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuAlign"),
3089         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuAlign));
3090     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
3091         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFont));
3092     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFont"),
3093         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFont));
3094     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFont"),
3095         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFont));
3096     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
3097         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSpace));
3098     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetValue"),
3099         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetValue));
3100     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
3101         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelected));
3102     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3103         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetFontColor));
3104     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionBgColor"),
3105         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionBgColor));
3106     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionBgColor"),
3107         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionBgColor));
3108     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionFontColor"),
3109         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionFontColor));
3110     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedOptionFontColor"),
3111         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSelectedOptionFontColor));
3112     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionWidth"),
3113         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionWidth));
3114     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionWidth"),
3115         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionWidth));
3116     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptionHeight"),
3117         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetOptionHeight));
3118     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptionHeight"),
3119         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetOptionHeight));
3120     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
3121         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetWidth));
3122     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
3123         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetWidth));
3124     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3125         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetHeight));
3126     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3127         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetHeight));
3128     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3129         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetSize));
3130     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
3131         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetSize));
3132     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlSize"),
3133         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetControlSize));
3134     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlSize"),
3135         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetControlSize));
3136     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3137         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetContentModifierBuilder));
3138     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundColor"),
3139         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundColor));
3140     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundColor"),
3141         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundColor));
3142     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuBackgroundBlurStyle"),
3143         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetMenuBackgroundBlurStyle));
3144     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuBackgroundBlurStyle"),
3145         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetMenuBackgroundBlurStyle));
3146     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3147         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::SetDivider));
3148     select->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3149         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SelectBridge::ResetDivider));
3150     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "select"), select);
3151 }
3152 
RegisterPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3153 void ArkUINativeModule::RegisterPanelAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3154 {
3155     auto panel = panda::ObjectRef::New(vm);
3156     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMode"),
3157         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMode));
3158     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMode"),
3159         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMode));
3160     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelFullHeight"),
3161         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelFullHeight));
3162     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelFullHeight"),
3163         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelFullHeight));
3164     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelHalfHeight"),
3165         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelHalfHeight));
3166     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelHalfHeight"),
3167         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelHalfHeight));
3168     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelMiniHeight"),
3169         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelMiniHeight));
3170     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelMiniHeight"),
3171         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelMiniHeight));
3172     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelBackgroundMask"),
3173         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelBackgroundMask));
3174     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelBackgroundMask"),
3175         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelBackgroundMask));
3176     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelType"),
3177         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelType));
3178     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelType"),
3179         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelType));
3180     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPanelCustomHeight"),
3181         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetPanelCustomHeight));
3182     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPanelCustomHeight"),
3183         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetPanelCustomHeight));
3184     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowCloseIcon"),
3185         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShowCloseIcon));
3186     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowCloseIcon"),
3187         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShowCloseIcon));
3188     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDragBar"),
3189         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetDragBar));
3190     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDragBar"),
3191         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetDragBar));
3192     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShow"),
3193         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::SetShow));
3194     panel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShow"),
3195         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PanelBridge::ResetShow));
3196     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "panel"), panel);
3197 }
3198 
RegisterButtonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3199 void ArkUINativeModule::RegisterButtonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3200 {
3201     auto button = panda::ObjectRef::New(vm);
3202     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCreateWithLabel"),
3203         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetCreateWithLabel));
3204     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3205         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabel));
3206     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabel"),
3207         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabel));
3208     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOptions"),
3209         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetOptions));
3210     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOptions"),
3211         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetOptions));
3212     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3213         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetType));
3214     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3215         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetType));
3216     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStateEffect"),
3217         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetStateEffect));
3218     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStateEffect"),
3219         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetStateEffect));
3220     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
3221         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontColor));
3222     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
3223         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontColor));
3224     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
3225         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontSize));
3226     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
3227         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontSize));
3228     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
3229         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontWeight));
3230     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
3231         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontWeight));
3232     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
3233         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontStyle));
3234     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
3235         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontStyle));
3236     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
3237         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetFontFamily));
3238     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
3239         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetFontFamily));
3240     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelStyle"),
3241         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::SetLabelStyle));
3242     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelStyle"),
3243         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ButtonBridge::ResetLabelStyle));
3244     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3245         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetBackgroundColor));
3246     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3247         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetBackgroundColor));
3248     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorderRadius"),
3249         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorderRadius));
3250     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorderRadius"),
3251         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorderRadius));
3252     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonBorder"),
3253         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonBorder));
3254     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonBorder"),
3255         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonBorder));
3256     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonSize"),
3257         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonSize));
3258     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonSize"),
3259         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonSize));
3260     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonRole"),
3261         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonRole));
3262     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonRole"),
3263         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonRole));
3264     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonStyle"),
3265         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonStyle));
3266     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonStyle"),
3267         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonStyle));
3268     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setButtonControlSize"),
3269         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetButtonControlSize));
3270     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3271         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::SetContentModifierBuilder));
3272     button->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetButtonControlSize"),
3273         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ButtonBridge::ResetButtonControlSize));
3274     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "button"), button);
3275 }
3276 
RegisterToggleAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3277 void ArkUINativeModule::RegisterToggleAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3278 {
3279     auto toggle = panda::ObjectRef::New(vm);
3280     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
3281         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSelectedColor));
3282     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
3283         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSelectedColor));
3284     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchPointColor"),
3285         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchPointColor));
3286     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchPointColor"),
3287         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchPointColor));
3288     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
3289         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHeight));
3290     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
3291         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHeight));
3292     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
3293         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetResponseRegion));
3294     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
3295         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetResponseRegion));
3296     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPadding"),
3297         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetPadding));
3298     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPadding"),
3299         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetPadding));
3300     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3301         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetBackgroundColor));
3302     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
3303         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetBackgroundColor));
3304     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHoverEffect"),
3305         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetHoverEffect));
3306     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHoverEffect"),
3307         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetHoverEffect));
3308     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwitchStyle"),
3309         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetSwitchStyle));
3310     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwitchStyle"),
3311         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::ResetSwitchStyle));
3312     toggle->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
3313         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ToggleBridge::SetContentModifierBuilder));
3314     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "toggle"), toggle);
3315 }
3316 
RegisterDividerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3317 void ArkUINativeModule::RegisterDividerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3318 {
3319     auto divider = panda::ObjectRef::New(vm);
3320     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
3321         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetStrokeWidth));
3322     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
3323         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetStrokeWidth));
3324     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLineCap"),
3325         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetLineCap));
3326     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLineCap"),
3327         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetLineCap));
3328     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
3329         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetColor));
3330     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
3331         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetColor));
3332     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
3333         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::SetVertical));
3334     divider->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
3335         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), DividerBridge::ResetVertical));
3336     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "divider"), divider);
3337 }
3338 
RegisterGridAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3339 void ArkUINativeModule::RegisterGridAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3340 {
3341     auto grid = panda::ObjectRef::New(vm);
3342     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
3343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsTemplate));
3344     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
3345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsTemplate));
3346     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
3347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsTemplate));
3348     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
3349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsTemplate));
3350     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
3351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetColumnsGap));
3352     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
3353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetColumnsGap));
3354     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
3355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetRowsGap));
3356     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
3357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetRowsGap));
3358     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
3359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBar));
3360     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
3361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBar));
3362     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
3363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarWidth));
3364     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
3365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarWidth));
3366     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
3367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetScrollBarColor));
3368     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
3369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetScrollBarColor));
3370     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
3371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCachedCount));
3372     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
3373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCachedCount));
3374     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
3375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEditMode));
3376     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
3377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEditMode));
3378     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
3379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMultiSelectable));
3380     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
3381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMultiSelectable));
3382     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxCount"),
3383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMaxCount));
3384     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxCount"),
3385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMaxCount));
3386     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinCount"),
3387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetMinCount));
3388     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinCount"),
3389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetMinCount));
3390     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCellLength"),
3391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetCellLength));
3392     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCellLength"),
3393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetCellLength));
3394     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
3395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetLayoutDirection));
3396     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
3397         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetLayoutDirection));
3398     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSupportAnimation"),
3399         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetSupportAnimation));
3400     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSupportAnimation"),
3401         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetSupportAnimation));
3402     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
3403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEdgeEffect));
3404     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
3405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEdgeEffect));
3406     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
3407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFadingEdge));
3408     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
3409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFadingEdge));
3410     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
3411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetNestedScroll));
3412     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
3413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetNestedScroll));
3414     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
3415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetEnableScroll));
3416     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
3417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetEnableScroll));
3418     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
3419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFriction));
3420     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
3421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFriction));
3422     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
3423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetFlingSpeedLimit));
3424     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
3425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetFlingSpeedLimit));
3426     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignItems"),
3427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetAlignItems));
3428     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignItems"),
3429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::ResetAlignItems));
3430     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridScroller"),
3431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridScroller));
3432     grid->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridLayoutOptions"),
3433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridBridge::SetGridLayoutOptions));
3434     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "grid"), grid);
3435 }
3436 
RegisterNavigationAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3437 void ArkUINativeModule::RegisterNavigationAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3438 {
3439     auto navigation = panda::ObjectRef::New(vm);
3440     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideToolBar"),
3441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideToolBar));
3442     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideToolBar"),
3443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideToolBar));
3444     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitleMode"),
3445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitleMode));
3446     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitleMode"),
3447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitleMode));
3448     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideBackButton"),
3449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideBackButton));
3450     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideBackButton"),
3451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideBackButton));
3452     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubTitle"),
3453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetSubtitle));
3454     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubTitle"),
3455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetSubtitle));
3456     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideNavBar"),
3457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideNavBar));
3458     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideNavBar"),
3459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideNavBar));
3460     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetUsrNavigationMode));
3462     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetUsrNavigationMode));
3464     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarPosition"),
3465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarPosition));
3466     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarPosition"),
3467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarPosition));
3468     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidth"),
3469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidth));
3470     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidth"),
3471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidth));
3472     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNavBarWidthRange"),
3473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetNavBarWidthRange));
3474     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNavBarWidthRange"),
3475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetNavBarWidthRange));
3476     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMinContentWidth));
3478     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMinContentWidth));
3480     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableModeChangeAnimation"),
3481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableModeChangeAnimation));
3482     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableModeChangeAnimation"),
3483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableModeChangeAnimation));
3484     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHideTitleBar"),
3485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetHideTitleBar));
3486     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHideTitleBar"),
3487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetHideTitleBar));
3488     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackButtonIcon"),
3489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetBackButtonIcon));
3490     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackButtonIcon"),
3491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetBackButtonIcon));
3492     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableDragBar"),
3493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetEnableDragBar));
3494     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableDragBar"),
3495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetEnableDragBar));
3496     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIgnoreLayoutSafeArea"),
3497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetIgnoreLayoutSafeArea));
3498     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIgnoreLayoutSafeArea"),
3499         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetIgnoreLayoutSafeArea));
3500     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTitle"),
3501         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetTitle));
3502     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTitle"),
3503         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetTitle));
3504     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenus"),
3505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetMenus));
3506     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenus"),
3507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetMenus));
3508     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRecoverable"),
3509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::SetRecoverable));
3510     navigation->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRecoverable"),
3511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigationBridge::ResetRecoverable));
3512     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigation"), navigation);
3513 }
3514 
RegisterImageAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3515 void ArkUINativeModule::RegisterImageAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3516 {
3517     auto image = panda::ObjectRef::New(vm);
3518     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageShowSrc"),
3519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageShowSrc));
3520     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCopyOption"),
3521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetCopyOption));
3522     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCopyOption"),
3523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetCopyOption));
3524     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoResize"),
3525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAutoResize));
3526     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoResize"),
3527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAutoResize));
3528     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectRepeat"),
3529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectRepeat));
3530     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectRepeat"),
3531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectRepeat));
3532     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderMode"),
3533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetRenderMode));
3534     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderMode"),
3535         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetRenderMode));
3536     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3537         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3538     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3540     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageMatrix"),
3541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageMatrix));
3542     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageMatrix"),
3543         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageMatrix));
3544     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3545         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3546     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3547         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3548     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3550     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3552     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSourceSize"),
3553         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSourceSize));
3554     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSourceSize"),
3555         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSourceSize));
3556     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMatchTextDirection"),
3557         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetMatchTextDirection));
3558     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMatchTextDirection"),
3559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetMatchTextDirection));
3560     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillColor"),
3561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFillColor));
3562     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillColor"),
3563         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFillColor));
3564     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlt"),
3565         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetAlt));
3566     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlt"),
3567         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetAlt));
3568     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageInterpolation"),
3569         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageInterpolation));
3570     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageInterpolation"),
3571         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageInterpolation));
3572     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorFilter"),
3573         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetColorFilter));
3574     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorFilter"),
3575         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetColorFilter));
3576     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSyncLoad"),
3577         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetSyncLoad));
3578     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSyncLoad"),
3579         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetSyncLoad));
3580     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setObjectFit"),
3581         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetObjectFit));
3582     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetObjectFit"),
3583         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetObjectFit));
3584     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFitOriginalSize"),
3585         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetFitOriginalSize));
3586     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFitOriginalSize"),
3587         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetFitOriginalSize));
3588     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
3589         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDraggable));
3590     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
3591         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDraggable));
3592     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBorderRadius"),
3593         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetBorderRadius));
3594     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBorderRadius"),
3595         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetBorderRadius));
3596     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageBorder"),
3597         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageBorder));
3598     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageBorder"),
3599         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageBorder));
3600     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageOpacity"),
3601         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageOpacity));
3602     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageOpacity"),
3603         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageOpacity));
3604     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setImageTransition"),
3605         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetImageTransition));
3606     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetImageTransition"),
3607         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetImageTransition));
3608     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAntialiasing"),
3609         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEdgeAntialiasing));
3610     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAntialiasing"),
3611         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEdgeAntialiasing));
3612     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizableLattice"),
3613         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizableLattice));
3614     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResizable"),
3615         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetResizable));
3616     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResizable"),
3617         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetResizable));
3618     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDynamicRangeMode"),
3619         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetDynamicRangeMode));
3620     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDynamicRangeMode"),
3621         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetDynamicRangeMode));
3622     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOrientation"),
3623         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetOrientation));
3624     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOrientation"),
3625         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetOrientation));
3626     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnhancedImageQuality"),
3627         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetEnhancedImageQuality));
3628     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnhancedImageQuality"),
3629         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetEnhancedImageQuality));
3630     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrivacySensitive"),
3631         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::SetPrivacySensitive));
3632     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrivacySensitive"),
3633         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::ResetPrivacySensitive));
3634     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "enableAnalyzer"),
3635         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::EnableAnalyzer));
3636     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "analyzerConfig"),
3637         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ImageBridge::AnalyzerConfig));
3638     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnComplete"),
3639         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnComplete));
3640     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnComplete"),
3641         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnComplete));
3642     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnError"),
3643         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnError));
3644     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnError"),
3645         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnError));
3646     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFinish"),
3647         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::SetOnFinish));
3648     image->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnFinish"),
3649         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ImageBridge::ResetOnFinish));
3650     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "image"), image);
3651 }
3652 
RegisterNavRouterAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3653 void ArkUINativeModule::RegisterNavRouterAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3654 {
3655     auto navRouter = panda::ObjectRef::New(vm);
3656     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMode"),
3657         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::SetMode));
3658     navRouter->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMode"),
3659         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavRouterBridge::ResetMode));
3660     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navRouter"), navRouter);
3661 }
3662 
RegisterNavigatorAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3663 void ArkUINativeModule::RegisterNavigatorAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3664 {
3665     auto navigator = panda::ObjectRef::New(vm);
3666     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTarget"),
3667         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetTarget));
3668     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTarget"),
3669         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetTarget));
3670     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setType"),
3671         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetType));
3672     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetType"),
3673         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetType));
3674     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setActive"),
3675         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetActive));
3676     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetActive"),
3677         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetActive));
3678     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "setParams"),
3679         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::SetParams));
3680     navigator->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetParams"),
3681         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NavigatorBridge::ResetParams));
3682     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "navigator"), navigator);
3683 }
3684 
RegisterNodeContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3685 void ArkUINativeModule::RegisterNodeContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3686 {
3687     auto nodeContainer = panda::ObjectRef::New(vm);
3688     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "rebuild"),
3689         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Rebuild));
3690     nodeContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "clean"),
3691         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), NodeContainerBridge::Clean));
3692     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "nodeContainer"), nodeContainer);
3693 }
3694 
RegisterRenderNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3695 void ArkUINativeModule::RegisterRenderNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3696 {
3697     auto renderNode = panda::ObjectRef::New(vm);
3698     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createRenderNode"),
3699         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::CreateRenderNode));
3700     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3701         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::AppendChild));
3702     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3703         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::InsertChildAfter));
3704     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3705         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::RemoveChild));
3706     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3707         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::ClearChildren));
3708     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setClipToFrame"),
3709         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetClipToFrame));
3710     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRotation"),
3711         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetRotation));
3712     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowColor"),
3713         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowColor));
3714     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowOffset"),
3715         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowOffset));
3716     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabel"),
3717         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetLabel));
3718     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowAlpha"),
3719         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowAlpha));
3720     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowElevation"),
3721         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowElevation));
3722     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShadowRadius"),
3723         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetShadowRadius));
3724     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3725         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::Invalidate));
3726     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScale"),
3727         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetScale));
3728     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
3729         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetBackgroundColor));
3730     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPivot"),
3731         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPivot));
3732     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFrame"),
3733         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetFrame));
3734     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
3735         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetSize));
3736     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
3737         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetOpacity));
3738     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTranslate"),
3739         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetTranslate));
3740     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPosition"),
3741         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetPosition));
3742     renderNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarkNodeGroup"),
3743         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RenderNodeBridge::SetMarkNodeGroup));
3744     RegisterRenderNodeBorderAndMaskAttributes(renderNode, vm);
3745     RegisterRenderNodeShapeClipAttributes(renderNode, vm);
3746     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "renderNode"), renderNode);
3747 }
3748 
RegisterFrameNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3749 void ArkUINativeModule::RegisterFrameNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3750 {
3751     auto frameNode = panda::ObjectRef::New(vm);
3752     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isModifiable"),
3753         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsModifiable));
3754     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createFrameNode"),
3755         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateFrameNode));
3756         frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createTypedFrameNode"),
3757         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateTypedFrameNode));
3758     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "invalidate"),
3759         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::Invalidate));
3760     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "appendChild"),
3761         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AppendChild));
3762     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "insertChildAfter"),
3763         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::InsertChildAfter));
3764     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeChild"),
3765         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveChild));
3766     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearChildren"),
3767         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::ClearChildren));
3768     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChildrenCount"),
3769         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChildrenCount));
3770     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getChild"),
3771         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetChild));
3772     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstChildIndexWithoutExpand"),
3773         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstChildIndexWithoutExpand));
3774     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLastChildIndexWithoutExpand"),
3775         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLastChildIndexWithoutExpand));
3776     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirst"),
3777         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirst));
3778     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNextSibling"),
3779         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNextSibling));
3780     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPreviousSibling"),
3781         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPreviousSibling));
3782     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getParent"),
3783         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetParent));
3784     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getIdByNodePtr"),
3785         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetIdByNodePtr));
3786     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnClick"),
3787         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnClick));
3788     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnTouch"),
3789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnTouch));
3790     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAppear"),
3791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAppear));
3792     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDisappear"),
3793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDisappear));
3794     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnKeyEvent"),
3795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnKeyEvent));
3796     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnFocus"),
3797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnFocus));
3798     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnBlur"),
3799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnBlur));
3800     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHover"),
3801         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHover));
3802     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnMouse"),
3803         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnMouse));
3804     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnSizeChange"),
3805         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnSizeChange));
3806     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnVisibleAreaApproximateChange"),
3807         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnVisibleAreaApproximateChange));
3808     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "propertyUpdate"),
3809         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::PropertyUpdate));
3810     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParent"),
3811         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParent));
3812     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreen"),
3813         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreen));
3814     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindow"),
3815         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindow));
3816     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToParentWithTransform"),
3817         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToParentWithTransform));
3818     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToScreenWithTransform"),
3819         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToScreenWithTransform));
3820     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getPositionToWindowWithTransform"),
3821         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetPositionToWindowWithTransform));
3822     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getMeasuredSize"),
3823         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetMeasuredSize));
3824     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getLayoutPosition"),
3825         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetLayoutPosition));
3826     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigBorderWidth"),
3827         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigBorderWidth));
3828     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigPadding"),
3829         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigPadding));
3830     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigMargin"),
3831         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigMargin));
3832     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getConfigSize"),
3833         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetConfigSize));
3834     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getId"),
3835         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetId));
3836     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getNodeType"),
3837         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetNodeType));
3838     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getOpacity"),
3839         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetOpacity));
3840     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isVisible"),
3841         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsVisible));
3842     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isClipToFrame"),
3843         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsClipToFrame));
3844     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "isAttached"),
3845         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::IsAttached));
3846     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getInspectorInfo"),
3847         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetInspectorInfo));
3848     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMeasuredSize"),
3849         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetMeasuredSize));
3850     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutPosition"),
3851         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetLayoutPosition));
3852     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "measureNode"),
3853         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MeasureNode));
3854     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "layoutNode"),
3855         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::LayoutNode));
3856     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNeedsLayout"),
3857         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetNeedsLayout));
3858     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnAttach"),
3859         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnAttach));
3860     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDetach"),
3861         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnDetach));
3862     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnHoverMove"),
3863         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetOnHoverMove));
3864     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerFrameCallback"),
3865         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RegisterFrameCallback));
3866     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "markDirty"),
3867         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::MarkDirty));
3868     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCrossLanguageOptions"),
3869         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCrossLanguageOptions));
3870     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCrossLanguageOptions"),
3871         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCrossLanguageOptions));
3872     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "checkIfCanCrossLanguageAttributeSetting"),
3873         panda::FunctionRef::New(
3874             const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CheckIfCanCrossLanguageAttributeSetting));
3875     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "createNodeContent"),
3876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::CreateNodeContent));
3877     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "addFrameNodeToNodeContent"),
3878         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::AddFrameNodeToNodeContent));
3879     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "removeFrameNodeFromNodeContent"),
3880         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::RemoveFrameNodeFromNodeContent));
3881     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFirstUINode"),
3882         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetFirstUINode));
3883     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getCustomPropertyCapiByKey"),
3884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::GetCustomPropertyCapiByKey));
3885     frameNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCustomPropertyModiferByKey"),
3886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FrameNodeBridge::SetCustomPropertyModiferByKey));
3887     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "frameNode"), frameNode);
3888 }
3889 
RegisterLineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3890 void ArkUINativeModule::RegisterLineAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3891 {
3892     auto line = panda::ObjectRef::New(vm);
3893     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStartPoint"),
3894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetStartPoint));
3895     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStartPoint"),
3896         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetStartPoint));
3897     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEndPoint"),
3898         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::SetEndPoint));
3899     line->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEndPoint"),
3900         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LineBridge::ResetEndPoint));
3901     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "line"), line);
3902 }
3903 
RegisterPathAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3904 void ArkUINativeModule::RegisterPathAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3905 {
3906     auto path = panda::ObjectRef::New(vm);
3907     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPathCommands"),
3908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::SetPathCommands));
3909     path->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPathCommands"),
3910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PathBridge::ResetPathCommands));
3911     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "path"), path);
3912 }
3913 
RegisterPolygonAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3914 void ArkUINativeModule::RegisterPolygonAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3915 {
3916     auto polygon = panda::ObjectRef::New(vm);
3917     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPolygonPoints"),
3918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::SetPolygonPoints));
3919     polygon->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPolygonPoints"),
3920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolygonBridge::ResetPolygonPoints));
3921     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polygon"), polygon);
3922 }
3923 
RegisterPolylineAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3924 void ArkUINativeModule::RegisterPolylineAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
3925 {
3926     auto polyline = panda::ObjectRef::New(vm);
3927     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPoints"),
3928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::SetPoints));
3929     polyline->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPoints"),
3930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PolylineBridge::ResetPoints));
3931     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "polyline"), polyline);
3932 }
3933 
RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3934 void ArkUINativeModule::RegisterSideBarContainerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3935 {
3936     auto sideBarContainer = panda::ObjectRef::New(vm);
3937     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarWidth"),
3938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarWidth));
3939     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarWidth"),
3940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarWidth));
3941     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinSideBarWidth"),
3942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinSideBarWidth));
3943     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinSideBarWidth"),
3944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinSideBarWidth));
3945     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setControlButton"),
3946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetControlButton));
3947     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetControlButton"),
3948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetControlButton));
3949     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowControlButton"),
3950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowControlButton));
3951     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowControlButton"),
3952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowControlButton));
3953     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoHide"),
3954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetAutoHide));
3955     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoHide"),
3956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetAutoHide));
3957     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMaxSideBarWidth"),
3958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMaxSideBarWidth));
3959     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMaxSideBarWidth"),
3960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMaxSideBarWidth));
3961     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMinContentWidth"),
3962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetMinContentWidth));
3963     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMinContentWidth"),
3964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetMinContentWidth));
3965     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSideBarPosition"),
3966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetSideBarPosition));
3967     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSideBarPosition"),
3968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetSideBarPosition));
3969     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShowSideBar"),
3970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetShowSideBar));
3971     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShowSideBar"),
3972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetShowSideBar));
3973     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
3974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::SetDivider));
3975     sideBarContainer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
3976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SideBarContainerBridge::ResetDivider));
3977     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "sideBarContainer"), sideBarContainer);
3978 }
3979 
RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)3980 void ArkUINativeModule::RegisterCalendarPickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
3981 {
3982     auto calendarPicker = panda::ObjectRef::New(vm);
3983     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
3984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetTextStyle));
3985     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
3986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetTextStyle));
3987     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeAlign"),
3988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetEdgeAlign));
3989     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeAlign"),
3990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetEdgeAlign));
3991     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerPadding"),
3992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerPadding));
3993     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerPadding"),
3994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerPadding));
3995     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorder"),
3996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorder));
3997     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorder"),
3998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorder));
3999     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerHeight"),
4000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerHeight));
4001     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerHeight"),
4002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerHeight));
4003     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderColor"),
4004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderColor));
4005     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderColor"),
4006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderColor));
4007     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCalendarPickerBorderRadius"),
4008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::SetCalendarPickerBorderRadius));
4009     calendarPicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCalendarPickerBorderRadius"),
4010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CalendarPickerBridge::ResetCalendarPickerBorderRadius));
4011     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "calendarPicker"), calendarPicker);
4012 }
4013 
RegisterMenuItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4014 void ArkUINativeModule::RegisterMenuItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4015 {
4016     auto menuitem = panda::ObjectRef::New(vm);
4017     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemSelected"),
4018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetMenuItemSelected));
4019     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemSelected"),
4020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetMenuItemSelected));
4021     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFontColor"),
4022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFontColor));
4023     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFontColor"),
4024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFontColor));
4025     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFontColor"),
4026         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFontColor));
4027     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFontColor"),
4028         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFontColor));
4029     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLabelFont"),
4030         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetLabelFont));
4031     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLabelFont"),
4032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetLabelFont));
4033     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectIcon"),
4034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetSelectIcon));
4035     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectIcon"),
4036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetSelectIcon));
4037     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentFont"),
4038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::SetContentFont));
4039     menuitem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentFont"),
4040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuItemBridge::ResetContentFont));
4041     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menuitem"), menuitem);
4042 }
4043 
RegisterMenuAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4044 void ArkUINativeModule::RegisterMenuAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4045 {
4046     auto menu = panda::ObjectRef::New(vm);
4047     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuFontColor"),
4048         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuFontColor));
4049     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuFontColor"),
4050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuFontColor));
4051     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetFont));
4053     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetFont));
4055     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRadius"),
4056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetRadius));
4057     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRadius"),
4058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetRadius));
4059     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetWidth));
4061     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetWidth));
4063     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemDivider"),
4064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemDivider));
4065     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemDivider"),
4066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemDivider));
4067     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMenuItemGroupDivider"),
4068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetMenuItemGroupDivider));
4069     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMenuItemGroupDivider"),
4070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetMenuItemGroupDivider));
4071     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSubMenuExpandingMode"),
4072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::SetSubMenuExpandingMode));
4073     menu->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSubMenuExpandingMode"),
4074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MenuBridge::ResetSubMenuExpandingMode));
4075     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "menu"), menu);
4076 }
4077 
RegisterTabAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4078 void ArkUINativeModule::RegisterTabAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4079 {
4080     auto tabs = panda::ObjectRef::New(vm);
4081     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarMode"),
4082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarMode));
4083     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarMode"),
4084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarMode));
4085     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollableBarModeOptions"),
4086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollableBarModeOptions));
4087     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollableBarModeOptions"),
4088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollableBarModeOptions));
4089     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarGridAlign"),
4090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarGridAlign));
4091     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarGridAlign"),
4092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarGridAlign));
4093     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
4094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetDivider));
4095     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
4096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetDivider));
4097     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetFadingEdge));
4099     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetFadingEdge));
4101     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundColor"),
4102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundColor));
4103     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundColor"),
4104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundColor));
4105     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarBackgroundBlurStyle"),
4106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarBackgroundBlurStyle));
4107     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarBackgroundBlurStyle"),
4108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarBackgroundBlurStyle));
4109     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarOverlap"),
4110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarOverlap));
4111     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarOverlap"),
4112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarOverlap));
4113     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIsVertical"),
4114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetIsVertical));
4115     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIsVertical"),
4116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetIsVertical));
4117     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarWidth"),
4118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarWidth));
4119     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarWidth"),
4120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarWidth));
4121     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarPosition"),
4122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarPosition));
4123     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarPosition"),
4124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarPosition));
4125     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetScrollable));
4127     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetScrollable));
4129     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBarHeight"),
4130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabBarHeight));
4131     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBarHeight"),
4132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabBarHeight));
4133     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarAdaptiveHeight"),
4134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarAdaptiveHeight));
4135     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarAdaptiveHeight"),
4136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarAdaptiveHeight));
4137     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimationDuration"),
4138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimationDuration));
4139     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimationDuration"),
4140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimationDuration));
4141     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBarPosition"),
4142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetBarPosition));
4143     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBarPosition"),
4144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetBarPosition));
4145     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabClip"),
4146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabClip));
4147     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabClip"),
4148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabClip));
4149     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabEdgeEffect"),
4150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabEdgeEffect));
4151     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabEdgeEffect"),
4152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabEdgeEffect));
4153     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabPageFlipMode"),
4154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetTabPageFlipMode));
4155     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabPageFlipMode"),
4156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetTabPageFlipMode));
4157     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabWidth"),
4158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetWidthAuto));
4159     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabWidth"),
4160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetWidthAuto));
4161     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabHeight"),
4162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetHeightAuto));
4163     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabHeight"),
4164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetHeightAuto));
4165     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAnimateMode"),
4166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::SetAnimateMode));
4167     tabs->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAnimateMode"),
4168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabsBridge::ResetAnimateMode));
4169     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabs"), tabs);
4170 }
4171 
RegisterStepperItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4172 void ArkUINativeModule::RegisterStepperItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4173 {
4174     auto stepperItem = panda::ObjectRef::New(vm);
4175     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNextLabel"),
4176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetNextLabel));
4177     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNextLabel"),
4178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetNextLabel));
4179     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPrevLabel"),
4180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetPrevLabel));
4181     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPrevLabel"),
4182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetPrevLabel));
4183     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStatus"),
4184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::SetStatus));
4185     stepperItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStatus"),
4186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), StepperItemBridge::ResetStatus));
4187     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "stepperItem"), stepperItem);
4188 }
4189 
RegisterTabContentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4190 void ArkUINativeModule::RegisterTabContentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4191 {
4192     auto tabContent = panda::ObjectRef::New(vm);
4193     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabBar"),
4194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabBar));
4195     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabBar"),
4196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabBar));
4197     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentWidth"),
4198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentWidth));
4199     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentHeight"),
4200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentHeight));
4201     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTabContentSize"),
4202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::SetTabContentSize));
4203     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentWidth"),
4204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentWidth));
4205     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentHeight"),
4206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentHeight));
4207     tabContent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTabContentSize"),
4208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TabContentBridge::ResetTabContentSize));
4209     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "tabContent"), tabContent);
4210 }
4211 
RegisterRefreshAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4212 void ArkUINativeModule::RegisterRefreshAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4213 {
4214     auto refresh = panda::ObjectRef::New(vm);
4215     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRefreshOffset"),
4216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetRefreshOffset));
4217     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRefreshOffset"),
4218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetRefreshOffset));
4219     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullToRefresh"),
4220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullToRefresh));
4221     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullToRefresh"),
4222         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullToRefresh));
4223     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPullDownRatio"),
4224         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::SetPullDownRatio));
4225     refresh->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPullDownRatio"),
4226         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RefreshBridege::ResetPullDownRatio));
4227     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "refresh"), refresh);
4228 }
4229 
RegisterHyperlinkAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4230 void ArkUINativeModule::RegisterHyperlinkAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4231 {
4232     auto hyperlink = panda::ObjectRef::New(vm);
4233     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetColor));
4235     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetColor));
4237     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDraggable"),
4238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetDraggable));
4239     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDraggable"),
4240         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetDraggable));
4241     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "setResponseRegion"),
4242         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::SetResponseRegion));
4243     hyperlink->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetResponseRegion"),
4244         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), HyperlinkBridge::ResetResponseRegion));
4245     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "hyperlink"), hyperlink);
4246 }
4247 
4248 #if defined(FORM_SUPPORTED) || defined(PREVIEW)
RegisterFormAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4249 void ArkUINativeModule::RegisterFormAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4250 {
4251     auto formComponent = panda::ObjectRef::New(vm);
4252 #ifdef PREVIEW
4253     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4254         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4255     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4256         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4257     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4258         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4259     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4260         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4261     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4262         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4263     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4264         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4265     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4267     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4269     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4271     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ArkUINativeModule::PreviewMockComponent));
4273 #else
4274     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVisibility"),
4275         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetVisibility));
4276     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVisibility"),
4277         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetVisibility));
4278     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowUpdate"),
4279         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::AllowUpdate));
4280     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowUpdate"),
4281         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::DisallowUpdate));
4282     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDimension"),
4283         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetDimension));
4284     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDimension"),
4285         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetDimension));
4286     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setModuleName"),
4287         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetModuleName));
4288     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetModuleName"),
4289         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetModuleName));
4290     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4291         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::SetSize));
4292     formComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4293         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FormComponentBridge::ResetSize));
4294 #endif
4295     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "formComponent"), formComponent);
4296 }
4297 #endif
4298 
RegisterDatePickerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4299 void ArkUINativeModule::RegisterDatePickerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4300 {
4301     auto datePicker = panda::ObjectRef::New(vm);
4302     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedTextStyle"),
4303         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetSelectedTextStyle));
4304     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedTextStyle"),
4305         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetSelectedTextStyle));
4306     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextStyle"),
4307         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetTextStyle));
4308     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextStyle"),
4309         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetTextStyle));
4310     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDisappearTextStyle"),
4311         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetDisappearTextStyle));
4312     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDisappearTextStyle"),
4313         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetDisappearTextStyle));
4314     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLunar"),
4315         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetLunar));
4316     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLunar"),
4317         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetLunar));
4318     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
4319         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::SetBackgroundColor));
4320     datePicker->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
4321         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DatePickerBridge::ResetBackgroundColor));
4322     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "datePicker"), datePicker);
4323 }
4324 
RegisterWaterFlowAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4325 void ArkUINativeModule::RegisterWaterFlowAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4326 {
4327     auto waterflow = panda::ObjectRef::New(vm);
4328     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsTemplate"),
4329         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsTemplate));
4330     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsTemplate"),
4331         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsTemplate));
4332     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsTemplate"),
4333         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsTemplate));
4334     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsTemplate"),
4335         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsTemplate));
4336     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
4337         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEnableScrollInteraction));
4338     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
4339         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEnableScrollInteraction));
4340     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColumnsGap"),
4341         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetColumnsGap));
4342     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColumnsGap"),
4343         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetColumnsGap));
4344     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRowsGap"),
4345         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetRowsGap));
4346     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRowsGap"),
4347         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetRowsGap));
4348     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemConstraintSize"),
4349         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetItemConstraintSize));
4350     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemConstraintSize"),
4351         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetItemConstraintSize));
4352     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLayoutDirection"),
4353         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetLayoutDirection));
4354     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLayoutDirection"),
4355         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetLayoutDirection));
4356     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4357         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetNestedScroll));
4358     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4359         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetNestedScroll));
4360     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4361         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFriction));
4362     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4363         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFriction));
4364     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4365         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetEdgeEffect));
4366     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4367         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetEdgeEffect));
4368     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4369         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFadingEdge));
4370     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4371         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFadingEdge));
4372     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4373         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBar));
4374     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4375         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBar));
4376     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4377         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarWidth));
4378     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4379         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarWidth));
4380     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4381         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetScrollBarColor));
4382     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4383         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetScrollBarColor));
4384     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
4385         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetCachedCount));
4386     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
4387         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetCachedCount));
4388     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4389         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetFlingSpeedLimit));
4390     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4391         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetFlingSpeedLimit));
4392     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWaterFlowInitialize"),
4393         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::SetWaterFlowInitialize));
4394     waterflow->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWaterFlowInitialize"),
4395         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), WaterFlowBridge::ResetWaterFlowInitialize));
4396     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "waterFlow"), waterflow);
4397 }
4398 
RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4399 void ArkUINativeModule::RegisterAlphabetIndexerAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4400 {
4401     auto alphabetIndexer = panda::ObjectRef::New(vm);
4402     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemFont"),
4403         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemFont));
4404     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemFont"),
4405         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemFont));
4406     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedFont"),
4407         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedFont));
4408     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedFont"),
4409         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedFont));
4410     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupFont"),
4411         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupFont));
4412     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupFont"),
4413         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupFont));
4414     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFont"),
4415         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetFont));
4416     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFont"),
4417         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetFont));
4418     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBackgroundColor"),
4419         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBackgroundColor));
4420     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBackgroundColor"),
4421         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBackgroundColor));
4422     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
4423         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetColor));
4424     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
4425         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetColor));
4426     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupColor"),
4427         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupColor));
4428     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupColor"),
4429         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupColor));
4430     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedColor"),
4431         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedColor));
4432     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedColor"),
4433         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedColor));
4434     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackground"),
4435         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackground));
4436     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackground"),
4437         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackground));
4438     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectedBackgroundColor"),
4439         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelectedBackgroundColor));
4440     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectedBackgroundColor"),
4441         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelectedBackgroundColor));
4442     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupUnselectedColor"),
4443         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupUnselectedColor));
4444     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupUnselectedColor"),
4445         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupUnselectedColor));
4446     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupSelectedColor"),
4447         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupSelectedColor));
4448     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupSelectedColor"),
4449         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupSelectedColor));
4450     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignStyle"),
4451         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAlignStyle));
4452     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignStyle"),
4453         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAlignStyle));
4454     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setUsingPopup"),
4455         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetUsingPopup));
4456     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetUsingPopup"),
4457         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetUsingPopup));
4458     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelected"),
4459         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetSelected));
4460     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelected"),
4461         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetSelected));
4462     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemSize"),
4463         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemSize));
4464     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemSize"),
4465         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemSize));
4466     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupPosition"),
4467         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupPosition));
4468     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupPosition"),
4469         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupPosition));
4470     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupItemBorderRadius"),
4471         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupItemBorderRadius));
4472     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupItemBorderRadius"),
4473         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupItemBorderRadius));
4474     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setItemBorderRadius"),
4475         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetItemBorderRadius));
4476     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetItemBorderRadius"),
4477         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetItemBorderRadius));
4478     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupBackgroundBlurStyle"),
4479         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupBackgroundBlurStyle));
4480     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupBackgroundBlurStyle"),
4481         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupBackgroundBlurStyle));
4482     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPopupTitleBackground"),
4483         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetPopupTitleBackground));
4484     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPopupTitleBackground"),
4485         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetPopupTitleBackground));
4486     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAdaptiveWidth"),
4487         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAdaptiveWidth));
4488     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAdaptiveWidth"),
4489         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAdaptiveWidth));
4490     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAutoCollapse"),
4491         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetAutoCollapse));
4492     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAutoCollapse"),
4493         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetAutoCollapse));
4494     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableHapticFeedback"),
4495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::SetEnableHapticFeedback));
4496     alphabetIndexer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableHapticFeedback"),
4497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), AlphabetIndexerBridge::ResetEnableHapticFeedback));
4498     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "alphabetIndexer"), alphabetIndexer);
4499 }
4500 
RegisterGaugeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4501 void ArkUINativeModule::RegisterGaugeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4502 {
4503     auto gauge = panda::ObjectRef::New(vm);
4504     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeVaule"),
4505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeValue));
4506     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeVaule"),
4507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeValue));
4508     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStartAngle"),
4509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStartAngle));
4510     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStartAngle"),
4511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStartAngle));
4512     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeEndAngle"),
4513         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeEndAngle));
4514     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeEndAngle"),
4515         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeEndAngle));
4516     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeStrokeWidth"),
4517         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeStrokeWidth));
4518     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeStrokeWidth"),
4519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeStrokeWidth));
4520     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeTrackShadow"),
4521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeTrackShadow));
4522     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeTrackShadow"),
4523         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeTrackShadow));
4524     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeIndicator"),
4525         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetGaugeIndicator));
4526     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeIndicator"),
4527         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetGaugeIndicator));
4528     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGaugeColors"),
4529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetColors));
4530     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGaugeColors"),
4531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::ResetColors));
4532     gauge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4533         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GaugeBridge::SetContentModifierBuilder));
4534     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gauge"), gauge);
4535 }
RegisterMarqueeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4536 void ArkUINativeModule::RegisterMarqueeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4537 {
4538     auto marquee = panda::ObjectRef::New(vm);
4539     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAllowScale"),
4540         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetAllowScale));
4541     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAllowScale"),
4542         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetAllowScale));
4543     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
4544         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontWeight));
4545     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
4546         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontWeight));
4547     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
4548         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::SetFontFamily));
4549     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
4550         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), MarqueeBridge::ResetFontFamily));
4551     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
4552         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontSize));
4553     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
4554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontSize));
4555     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
4556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetFontColor));
4557     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
4558         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetFontColor));
4559     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeUpdateStrategy"),
4560         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeUpdateStrategy));
4561     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeUpdateStrategy"),
4562         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeUpdateStrategy));
4563     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnStart"),
4564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnStart));
4565     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnStart"),
4566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnStart));
4567     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnBounce"),
4568         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnBounce));
4569     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnBounce"),
4570         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnBounce));
4571     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMarqueeOnFinish"),
4572         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetMarqueeOnFinish));
4573     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMarqueeOnFinish"),
4574         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::ResetMarqueeOnFinish));
4575     marquee->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialize"),
4576         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), MarqueeBridge::SetInitialize));
4577     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "marquee"), marquee);
4578 }
4579 
RegisterDataPanelAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4580 void ArkUINativeModule::RegisterDataPanelAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4581 {
4582     auto dataPanel = panda::ObjectRef::New(vm);
4583     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCloseEffect"),
4584         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetCloseEffect));
4585     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCloseEffect"),
4586         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetCloseEffect));
4587     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackBackgroundColor"),
4588         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelTrackBackgroundColor));
4589     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackBackgroundColor"),
4590         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelTrackBackgroundColor));
4591     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelStrokeWidth"),
4592         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetDataPanelStrokeWidth));
4593     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelStrokeWidth"),
4594         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetDataPanelStrokeWidth));
4595     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelValueColors"),
4596         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetValueColors));
4597     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelValueColors"),
4598         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetValueColors));
4599     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDataPanelTrackShadow"),
4600         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetTrackShadow));
4601     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDataPanelTrackShadow"),
4602         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::ResetTrackShadow));
4603     dataPanel->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4604         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), DataPanelBridge::SetContentModifierBuilder));
4605     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "dataPanel"), dataPanel);
4606 }
4607 
RegisterScrollableAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4608 void ArkUINativeModule::RegisterScrollableAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4609 {
4610     auto scrollable = panda::ObjectRef::New(vm);
4611     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentClip"),
4612         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetContentClip));
4613     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentClip"),
4614         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetContentClip));
4615     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
4616         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachStart));
4617     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
4618         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachStart));
4619     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
4620         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetOnReachEnd));
4621     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
4622         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetOnReachEnd));
4623     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackToTop"),
4624         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::SetBackToTop));
4625     scrollable->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackToTop"),
4626         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollableBridge::ResetBackToTop));
4627     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scrollable"), scrollable);
4628 }
4629 
RegisterScrollAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4630 void ArkUINativeModule::RegisterScrollAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4631 {
4632     auto scroll = panda::ObjectRef::New(vm);
4633     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollInitialize"),
4634         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollInitialize));
4635     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollInitialize"),
4636         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollInitialize));
4637     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4638         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetNestedScroll));
4639     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4640         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetNestedScroll));
4641     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScroll"),
4642         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnableScroll));
4643     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScroll"),
4644         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnableScroll));
4645     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFriction"),
4646         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFriction));
4647     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFriction"),
4648         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFriction));
4649     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnap"),
4650         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollSnap));
4651     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnap"),
4652         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollSnap));
4653     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBar"),
4654         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBar));
4655     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBar"),
4656         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBar));
4657     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollable"),
4658         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollable));
4659     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollable"),
4660         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollable));
4661     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarColor"),
4662         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarColor));
4663     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarColor"),
4664         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarColor));
4665     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarWidth"),
4666         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetScrollBarWidth));
4667     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarWidth"),
4668         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetScrollBarWidth));
4669     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEdgeEffect"),
4670         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEdgeEffect));
4671     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEdgeEffect"),
4672         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEdgeEffect));
4673     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
4674         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetFadingEdge));
4675     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
4676         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetFadingEdge));
4677     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnablePaging"),
4678         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetEnablePaging));
4679     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnablePaging"),
4680         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetEnablePaging));
4681     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialOffset"),
4682         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetInitialOffset));
4683     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialOffset"),
4684         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetInitialOffset));
4685     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
4686         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::SetFlingSpeedLimit));
4687     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
4688         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ScrollBridge::ResetFlingSpeedLimit));
4689     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStart"),
4690         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStart));
4691     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStart"),
4692         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStart));
4693     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEnd"),
4694         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEnd));
4695     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEnd"),
4696         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEnd));
4697     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollStop"),
4698         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollStop));
4699     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollStop"),
4700         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollStop));
4701     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScroll"),
4702         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScroll));
4703     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScroll"),
4704         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScroll));
4705     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollEdge"),
4706         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollEdge));
4707     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollEdge"),
4708         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollEdge));
4709     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnDidScroll"),
4710         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnDidScroll));
4711     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnDidScroll"),
4712         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnDidScroll));
4713     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnWillScroll"),
4714         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnWillScroll));
4715     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnWillScroll"),
4716         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnWillScroll));
4717     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollOnScrollFrameBegin"),
4718         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::SetScrollOnScrollFrameBegin));
4719     scroll->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollOnScrollFrameBegin"),
4720         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBridge::ResetScrollOnScrollFrameBegin));
4721     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "scroll"), scroll);
4722 }
4723 
RegisterGridItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4724 void ArkUINativeModule::RegisterGridItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4725 {
4726     auto gridItem = panda::ObjectRef::New(vm);
4727     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelectable"),
4728         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelectable));
4729     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelectable"),
4730         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelectable));
4731     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemSelected"),
4732         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemSelected));
4733     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemSelected"),
4734         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemSelected));
4735     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowStart"),
4736         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowStart));
4737     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowStart"),
4738         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowStart));
4739     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemRowEnd"),
4740         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemRowEnd));
4741     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemRowEnd"),
4742         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemRowEnd));
4743     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnStart"),
4744         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnStart));
4745     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnStart"),
4746         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnStart));
4747     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemColumnEnd"),
4748         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemColumnEnd));
4749     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGridItemColumnEnd"),
4750         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::ResetGridItemColumnEnd));
4751     gridItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGridItemOptions"),
4752         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), GridItemBridge::SetGridItemOptions));
4753     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "gridItem"), gridItem);
4754 }
4755 
RegisterProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4756 void ArkUINativeModule::RegisterProgressAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4757 {
4758     auto progress = panda::ObjectRef::New(vm);
4759     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressInitialize"),
4760         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressInitialize));
4761     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressInitialize"),
4762         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressInitialize));
4763     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressValue"),
4764         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressValue));
4765     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressValue"),
4766         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressValue));
4767     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressColor"),
4768         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressColor));
4769     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressColor"),
4770         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressColor));
4771     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "ResetProgressStyle"),
4772         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::ResetProgressStyle));
4773     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "SetProgressStyle"),
4774         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetProgressStyle));
4775     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setProgressBackgroundColor"),
4776         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::SetProgressBackgroundColor));
4777     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetProgressBackgroundColor"),
4778         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), ProgressBridge::ResetProgressBackgroundColor));
4779     progress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
4780         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ProgressBridge::SetContentModifierBuilder));
4781     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "progress"), progress);
4782 }
4783 
4784 #ifdef PLUGIN_COMPONENT_SUPPORTED
RegisterPluginAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4785 void ArkUINativeModule::RegisterPluginAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
4786 {
4787     auto plugin = panda::ObjectRef::New(vm);
4788     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSize"),
4789         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetSize));
4790     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSize"),
4791         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetSize));
4792     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4793         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetWidth));
4794     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4795         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetWidth));
4796     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4797         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::SetHeight));
4798     plugin->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4799         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), PluginBridge::ResetHeight));
4800     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "plugin"), plugin);
4801 }
4802 #endif
4803 
RegisterCommonShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4804 void ArkUINativeModule::RegisterCommonShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4805 {
4806     auto commonShape = panda::ObjectRef::New(vm);
4807     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashArray"),
4808         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashArray));
4809     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashArray"),
4810         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashArray));
4811     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeMiterLimit"),
4812         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeMiterLimit));
4813     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeMiterLimit"),
4814         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeMiterLimit));
4815     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFillOpacity"),
4816         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFillOpacity));
4817     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFillOpacity"),
4818         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFillOpacity));
4819     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeOpacity"),
4820         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeOpacity));
4821     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeOpacity"),
4822         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeOpacity));
4823     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeWidth"),
4824         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeWidth));
4825     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeWidth"),
4826         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeWidth));
4827     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAntiAlias"),
4828         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetAntiAlias));
4829     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAntiAlias"),
4830         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetAntiAlias));
4831     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStroke"),
4832         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStroke));
4833     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStroke"),
4834         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStroke));
4835     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFill"),
4836         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetFill));
4837     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFill"),
4838         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetFill));
4839     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeDashOffset"),
4840         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeDashOffset));
4841     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeDashOffset"),
4842         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeDashOffset));
4843     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineCap"),
4844         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineCap));
4845     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineCap"),
4846         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineCap));
4847     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStrokeLineJoin"),
4848         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetStrokeLineJoin));
4849     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStrokeLineJoin"),
4850         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetStrokeLineJoin));
4851     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHeight"),
4852         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetHeight));
4853     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHeight"),
4854         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetHeight));
4855     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setWidth"),
4856         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetWidth));
4857     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetWidth"),
4858         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetWidth));
4859     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
4860         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::SetForegroundColor));
4861     commonShape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
4862         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), CommonShapeBridge::ResetForegroundColor));
4863     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "commonShape"), commonShape);
4864 }
4865 
RegisterShapeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4866 void ArkUINativeModule::RegisterShapeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4867 {
4868     auto shape = panda::ObjectRef::New(vm);
4869     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeViewPort"),
4870         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetViewPort));
4871     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeViewPort"),
4872         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetViewPort));
4873     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "setShapeMesh"),
4874         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::SetMesh));
4875     shape->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetShapeMesh"),
4876         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ShapeBridge::ResetMesh));
4877     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "shape"), shape);
4878 }
4879 
RegisterRectAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4880 void ArkUINativeModule::RegisterRectAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4881 {
4882     auto rect = panda::ObjectRef::New(vm);
4883     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusWidth"),
4884         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusWidth));
4885     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusWidth"),
4886         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusWidth));
4887     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadiusHeight"),
4888         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadiusHeight));
4889     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadiusHeight"),
4890         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadiusHeight));
4891     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRectRadius"),
4892         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::SetRadius));
4893     rect->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRectRadius"),
4894         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), RectBridge::ResetRadius));
4895     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "rect"), rect);
4896 }
4897 
RegisterSwiperAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)4898 void ArkUINativeModule::RegisterSwiperAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
4899 {
4900     auto swiper = panda::ObjectRef::New(vm);
4901     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInitialize"),
4902         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInitialize));
4903     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInitialize"),
4904         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInitialize));
4905     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperNextMargin"),
4906         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperNextMargin));
4907     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperNextMargin"),
4908         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperNextMargin));
4909     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPrevMargin"),
4910         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPrevMargin));
4911     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPrevMargin"),
4912         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPrevMargin));
4913     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayCount"),
4914         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayCount));
4915     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayCount"),
4916         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayCount));
4917     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperSwipeByGroup"),
4918         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperSwipeByGroup));
4919     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperSwipeByGroup"),
4920         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperSwipeByGroup));
4921     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayArrow"),
4922         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayArrow));
4923     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayArrow"),
4924         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayArrow));
4925     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCurve"),
4926         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCurve));
4927     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCurve"),
4928         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCurve));
4929     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnChange"),
4930         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnChange));
4931     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnChange"),
4932         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnChange));
4933     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisableSwipe"),
4934         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisableSwipe));
4935     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisableSwipe"),
4936         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisableSwipe));
4937     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEffectMode"),
4938         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEffectMode));
4939     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEffectMode"),
4940         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEffectMode));
4941     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCachedCount"),
4942         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCachedCount));
4943     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCachedCount"),
4944         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCachedCount));
4945     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIsShown"),
4946         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIsShown));
4947     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIsShown"),
4948         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIsShown));
4949     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDisplayMode"),
4950         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDisplayMode));
4951     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDisplayMode"),
4952         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDisplayMode));
4953     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperItemSpace"),
4954         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperItemSpace));
4955     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperItemSpace"),
4956         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperItemSpace));
4957     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperVertical"),
4958         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperVertical));
4959     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperVertical"),
4960         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperVertical));
4961     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperLoop"),
4962         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperLoop));
4963     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperLoop"),
4964         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperLoop));
4965     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperInterval"),
4966         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperInterval));
4967     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperInterval"),
4968         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperInterval));
4969     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperAutoPlay"),
4970         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperAutoPlay));
4971     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperAutoPlay"),
4972         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperAutoPlay));
4973     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndex"),
4974         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndex));
4975     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndex"),
4976         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndex));
4977     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperIndicator"),
4978         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperIndicator));
4979     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperIndicator"),
4980         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperIndicator));
4981     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperDuration"),
4982         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperDuration));
4983     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperDuration"),
4984         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperDuration));
4985     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperEnabled"),
4986         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperEnabled));
4987     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperEnabled"),
4988         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperEnabled));
4989     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setNestedScroll"),
4990         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetNestedScroll));
4991     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetNestedScroll"),
4992         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetNestedScroll));
4993     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationStart"),
4994         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationStart));
4995     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationStart"),
4996         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationStart));
4997     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnAnimationEnd"),
4998         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnAnimationEnd));
4999     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnAnimationEnd"),
5000         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnAnimationEnd));
5001     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnGestureSwipe"),
5002         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnGestureSwipe));
5003     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnGestureSwipe"),
5004         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnGestureSwipe));
5005     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setIndicatorInteractive"),
5006         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetIndicatorInteractive));
5007     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetIndicatorInteractive"),
5008         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetIndicatorInteractive));
5009     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperCustomContentTransition"),
5010         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperCustomContentTransition));
5011     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperCustomContentTransition"),
5012         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperCustomContentTransition));
5013     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentDidScroll"),
5014         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetOnContentDidScroll));
5015     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentDidScroll"),
5016         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetOnContentDidScroll));
5017     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperPageFlipMode"),
5018         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperPageFlipMode));
5019     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperPageFlipMode"),
5020         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperPageFlipMode));
5021     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwiperOnContentWillScroll"),
5022         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::SetSwiperOnContentWillScroll));
5023     swiper->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwiperOnContentWillScroll"),
5024         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), SwiperBridge::ResetSwiperOnContentWillScroll));
5025     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "swiper"), swiper);
5026 }
5027 
RegisterListItemAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5028 void ArkUINativeModule::RegisterListItemAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5029 {
5030     auto listItem = panda::ObjectRef::New(vm);
5031     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemSelected"),
5032         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetListItemSelected));
5033     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemSelected"),
5034         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetListItemSelected));
5035     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSelectable"),
5036         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSelectable));
5037     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSelectable"),
5038         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSelectable));
5039     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSwipeAction"),
5040         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::SetSwipeAction));
5041     listItem->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSwipeAction"),
5042         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemBridge::ResetSwipeAction));
5043     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItem"), listItem);
5044 }
5045 
RegisterListAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5046 void ArkUINativeModule::RegisterListAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5047 {
5048     auto list = panda::ObjectRef::New(vm);
5049     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEditMode"),
5050         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEditMode));
5051     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEditMode"),
5052         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEditMode));
5053     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setMultiSelectable"),
5054         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetMultiSelectable));
5055     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetMultiSelectable"),
5056         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetMultiSelectable));
5057     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimation"),
5058         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimation));
5059     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimation"),
5060         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimation));
5061     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCachedCount"),
5062         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetCachedCount));
5063     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCachedCount"),
5064         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetCachedCount));
5065     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableScrollInteraction"),
5066         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetEnableScrollInteraction));
5067     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableScrollInteraction"),
5068         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetEnableScrollInteraction));
5069     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
5070         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
5071     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
5072         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
5073     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSticky"),
5074         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSticky));
5075     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSticky"),
5076         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSticky));
5077     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListEdgeEffect"),
5078         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListEdgeEffect));
5079     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListEdgeEffect"),
5080         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListEdgeEffect));
5081     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFadingEdge"),
5082         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetFadingEdge));
5083     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFadingEdge"),
5084         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetFadingEdge));
5085     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListDirection"),
5086         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListDirection));
5087     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListDirection"),
5088         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListDirection));
5089     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListFriction"),
5090         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListFriction));
5091     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListFriction"),
5092         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListFriction));
5093     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListMaintainVisibleContentPosition"),
5094         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListMaintainVisibleContentPosition));
5095     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListMaintainVisibleContentPosition"),
5096         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListMaintainVisibleContentPosition));
5097     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListNestedScroll"),
5098         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListNestedScroll));
5099     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListNestedScroll"),
5100         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListNestedScroll));
5101     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBar"),
5102         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBar));
5103     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBar"),
5104         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBar));
5105     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarWidth"),
5106         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarWidth));
5107     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarWidth"),
5108         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarWidth));
5109     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListScrollBarColor"),
5110         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListScrollBarColor));
5111     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListScrollBarColor"),
5112         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListScrollBarColor));
5113     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlingSpeedLimit"),
5114         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetFlingSpeedLimit));
5115     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlingSpeedLimit"),
5116         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetFlingSpeedLimit));
5117     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setAlignListItem"),
5118         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetAlignListItem));
5119     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetAlignListItem"),
5120         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetAlignListItem));
5121     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollSnapAlign"),
5122         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetScrollSnapAlign));
5123     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollSnapAlign"),
5124         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetScrollSnapAlign));
5125     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentStartOffset"),
5126         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentStartOffset));
5127     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentStartOffset"),
5128         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentStartOffset));
5129     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentEndOffset"),
5130         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetContentEndOffset));
5131     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentEndOffset"),
5132         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetContentEndOffset));
5133     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5134         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetDivider));
5135     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5136         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetDivider));
5137     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setChainAnimationOptions"),
5138         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetChainAnimationOptions));
5139     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetChainAnimationOptions"),
5140         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetChainAnimationOptions));
5141     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListLanes"),
5142         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListLanes));
5143     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListLanes"),
5144         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListLanes));
5145     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListChildrenMainSize"),
5146         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetListChildrenMainSize));
5147     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListChildrenMainSize"),
5148         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetListChildrenMainSize));
5149     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSpace"),
5150         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetSpace));
5151     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSpace"),
5152         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetSpace));
5153     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
5154         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialIndex));
5155     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
5156         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialIndex));
5157     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialScroller"),
5158         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetInitialScroller));
5159     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialScroller"),
5160         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetInitialScroller));
5161     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollIndex"),
5162         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollIndex));
5163     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollIndex"),
5164         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollIndex));
5165     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollVisibleContentChange"),
5166         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnScrollVisibleContentChange));
5167     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollVisibleContentChange"),
5168         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnScrollVisibleContentChange));
5169     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemMove"),
5170         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemMove));
5171     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemMove"),
5172         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemMove));
5173     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragStart"),
5174         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragStart));
5175     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragStart"),
5176         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragStart));
5177     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragEnter"),
5178         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragEnter));
5179     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragEnter"),
5180         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragEnter));
5181     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragMove"),
5182         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragMove));
5183     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragMove"),
5184         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragMove));
5185     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDragLeave"),
5186         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDragLeave));
5187     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDragLeave"),
5188         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDragLeave));
5189     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnItemDrop"),
5190         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnItemDrop));
5191     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnItemDrop"),
5192         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnItemDrop));
5193     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStart"),
5194         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStart));
5195     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStart"),
5196         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStart));
5197     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollStop"),
5198         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollStop));
5199     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollStop"),
5200         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollStop));
5201     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnScrollFrameBegin"),
5202         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListScrollFrameBegin));
5203     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnScrollFrameBegin"),
5204         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListScrollFrameBegin));
5205     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnWillScroll"),
5206         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListWillScroll));
5207     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnWillScroll"),
5208         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListWillScroll));
5209     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDidScroll"),
5210         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListDidScroll));
5211     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDidScroll"),
5212         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListDidScroll));
5213     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachStart"),
5214         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachStart));
5215     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachStart"),
5216         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachStart));
5217     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnReachEnd"),
5218         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::SetOnListReachEnd));
5219     list->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnReachEnd"),
5220         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListBridge::ResetOnListReachEnd));
5221     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "list"), list);
5222 }
5223 
RegisterListItemGroupAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5224 void ArkUINativeModule::RegisterListItemGroupAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5225 {
5226     auto listItemGroup = panda::ObjectRef::New(vm);
5227     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDivider"),
5228         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetDivider));
5229     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDivider"),
5230         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetDivider));
5231     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupChildrenMainSize"),
5232         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetChildrenMainSize));
5233     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupChildrenMainSize"),
5234         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetChildrenMainSize));
5235     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "setListItemGroupInitialize"),
5236         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::SetListItemGroupInitialize));
5237     listItemGroup->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetListItemGroupInitialize"),
5238         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ListItemGroupBridge::ResetListItemGroupInitialize));
5239     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "listItemGroup"), listItemGroup);
5240 }
5241 
RegisterQRCodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5242 void ArkUINativeModule::RegisterQRCodeAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5243 {
5244     auto qrcode = panda::ObjectRef::New(vm);
5245     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRColor"),
5246         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRColor));
5247     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRColor"),
5248         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRColor));
5249     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRBackgroundColor"),
5250         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRBackgroundColor));
5251     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetQRBackgroundColor"),
5252         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetQRBackgroundColor));
5253     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentOpacity"),
5254         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetContentOpacity));
5255     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContentOpacity"),
5256         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::ResetContentOpacity));
5257     qrcode->Set(vm, panda::StringRef::NewFromUtf8(vm, "setQRValue"),
5258         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), QRCodeBridge::SetQRValue));
5259     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "qrcode"), qrcode);
5260 }
5261 
RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5262 void ArkUINativeModule::RegisterLoadingProgressAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5263 {
5264     auto loadingProgress = panda::ObjectRef::New(vm);
5265     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColor"),
5266         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetColor));
5267     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColor"),
5268         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetColor));
5269     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableLoading"),
5270         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetEnableLoading));
5271     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableLoading"),
5272         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetEnableLoading));
5273     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setForegroundColor"),
5274         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetForegroundColor));
5275     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetForegroundColor"),
5276         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::ResetForegroundColor));
5277     loadingProgress->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5278         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), LoadingProgressBridge::SetContentModifierBuilder));
5279     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "loadingProgress"), loadingProgress);
5280 }
5281 
RegisterTextClockAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5282 void ArkUINativeModule::RegisterTextClockAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5283 {
5284     auto textClock = panda::ObjectRef::New(vm);
5285     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5286         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFormat));
5287     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5288         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFormat));
5289     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5290         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontColor));
5291     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5292         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontColor));
5293     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5294         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontSize));
5295     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5296         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontSize));
5297     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5298         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontStyle));
5299     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5300         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontStyle));
5301     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5302         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontWeight));
5303     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5304         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontWeight));
5305     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5306         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFamily));
5307     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5308         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFamily));
5309     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5310         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextShadow));
5311     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5312         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetTextShadow));
5313     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFeature"),
5314         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetFontFeature));
5315     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFeature"),
5316         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetFontFeature));
5317     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5318         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetContentModifierBuilder));
5319     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setDateTimeOptions"),
5320         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetDateTimeOptions));
5321     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetDateTimeOptions"),
5322         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::ResetDateTimeOptions));
5323     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockTimeZoneOffset"),
5324         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockTimeZoneOffset));
5325     textClock->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextClockController"),
5326         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextClockBridge::SetTextClockController));
5327     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textClock"), textClock);
5328 }
5329 
RegisterTextTimerAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5330 void ArkUINativeModule::RegisterTextTimerAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5331 {
5332     auto textTimer = panda::ObjectRef::New(vm);
5333     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontColor"),
5334         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontColor));
5335     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontColor"),
5336         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontColor));
5337     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontSize"),
5338         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontSize));
5339     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontSize"),
5340         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontSize));
5341     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontWeight"),
5342         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontWeight));
5343     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontWeight"),
5344         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontWeight));
5345     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontStyle"),
5346         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontStyle));
5347     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontStyle"),
5348         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontStyle));
5349     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFontFamily"),
5350         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFontFamily));
5351     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFontFamily"),
5352         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFontFamily));
5353     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFormat"),
5354         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetFormat));
5355     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFormat"),
5356         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetFormat));
5357     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextShadow"),
5358         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::SetTextShadow));
5359     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetTextShadow"),
5360         panda::FunctionRef::New(const_cast<panda::EcmaVM *>(vm), TextTimerBridge::ResetTextShadow));
5361     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContentModifierBuilder"),
5362         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetContentModifierBuilder));
5363     textTimer->Set(vm, panda::StringRef::NewFromUtf8(vm, "setTextTimerOptions"),
5364         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), TextTimerBridge::SetTextTimerOptions));
5365     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "textTimer"), textTimer);
5366 }
5367 #ifdef XCOMPONENT_SUPPORTED
RegisterXComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5368 void ArkUINativeModule::RegisterXComponentAttributes(Local<panda::ObjectRef> object, EcmaVM *vm)
5369 {
5370     auto xComponent = panda::ObjectRef::New(vm);
5371     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setXComponentInitialize"),
5372         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetXComponentInitialize));
5373     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetXComponentInitialize"),
5374         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetXComponentInitialize));
5375     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundColor"),
5376         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundColor));
5377     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundColor"),
5378         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundColor));
5379     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOpacity"),
5380         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOpacity));
5381     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOpacity"),
5382         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOpacity));
5383     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImage"),
5384         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImage));
5385     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImage"),
5386         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImage));
5387     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImageSize"),
5388         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImageSize));
5389     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImageSize"),
5390         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImageSize));
5391     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackgroundImagePosition"),
5392         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackgroundImagePosition));
5393     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackgroundImagePosition"),
5394         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackgroundImagePosition));
5395     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBlur"),
5396         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBlur));
5397     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBlur"),
5398         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBlur));
5399     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBackdropBlur"),
5400         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBackdropBlur));
5401     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBackdropBlur"),
5402         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBackdropBlur));
5403     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setGrayscale"),
5404         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetGrayscale));
5405     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetGrayscale"),
5406         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetGrayscale));
5407     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBrightness"),
5408         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetBrightness));
5409     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetBrightness"),
5410         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetBrightness));
5411     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSaturate"),
5412         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSaturate));
5413     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSaturate"),
5414         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSaturate));
5415     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setContrast"),
5416         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetContrast));
5417     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetContrast"),
5418         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetContrast));
5419     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInvert"),
5420         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetInvert));
5421     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInvert"),
5422         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetInvert));
5423     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSepia"),
5424         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5425     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSepia"),
5426         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5427     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setHueRotate"),
5428         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetHueRotate));
5429     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetHueRotate"),
5430         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetHueRotate));
5431     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setColorBlend"),
5432         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5433     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetColorBlend"),
5434         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5435     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setSphericalEffect"),
5436         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5437     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetSphericalEffect"),
5438         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5439     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLightUpEffect"),
5440         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5441     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLightUpEffect"),
5442         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5443     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setPixelStretchEffect"),
5444         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5445     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetPixelStretchEffect"),
5446         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5447     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLinearGradientBlur"),
5448         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetSepia));
5449     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLinearGradientBlur"),
5450         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetSepia));
5451     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnLoad"),
5452         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnLoad));
5453     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnLoad"),
5454         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnLoad));
5455     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnDestroy"),
5456         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetOnDestroy));
5457     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnDestroy"),
5458         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetOnDestroy));
5459     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableAnalyzer"),
5460         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableAnalyzer));
5461     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableAnalyzer"),
5462         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableAnalyzer));
5463     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setEnableSecure"),
5464         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetEnableSecure));
5465     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetEnableSecure"),
5466         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetEnableSecure));
5467     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setRenderFit"),
5468         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::SetRenderFit));
5469     xComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetRenderFit"),
5470         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentBridge::ResetRenderFit));
5471     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xComponent"), xComponent);
5472 }
5473 
RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5474 void ArkUINativeModule::RegisterXComponentNodeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5475 {
5476     auto xcomponentNode = panda::ObjectRef::New(vm);
5477     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "create"),
5478         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::Create));
5479     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "getFrameNode"),
5480         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::GetFrameNode));
5481     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnCreateCallback"),
5482         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnCreateCallback));
5483     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "registerOnDestroyCallback"),
5484         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::RegisterOnDestroyCallback));
5485     xcomponentNode->Set(vm, panda::StringRef::NewFromUtf8(vm, "changeRenderType"),
5486         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), XComponentNodeBridge::ChangeRenderType));
5487     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "xcomponentNode"), xcomponentNode);
5488 }
5489 #endif
5490 
RegisterFlexAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5491 void ArkUINativeModule::RegisterFlexAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5492 {
5493     auto flex = panda::ObjectRef::New(vm);
5494     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "setFlexInitialize"),
5495         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::SetFlexInitialize));
5496     flex->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetFlexInitialize"),
5497         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), FlexBridge::ResetFlexInitialize));
5498     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "flex"), flex);
5499 }
5500 
RegisterResourceAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5501 void ArkUINativeModule::RegisterResourceAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5502 {
5503     auto resource = panda::ObjectRef::New(vm);
5504     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "updateColorMode"),
5505         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::UpdateColorMode));
5506     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "restore"),
5507         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::Restore));
5508     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "getColorValue"),
5509         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::GetColorValue));
5510     resource->Set(vm, panda::StringRef::NewFromUtf8(vm, "clearCache"),
5511         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ResourceBridge::ClearCache));
5512     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "resource"), resource);
5513 }
5514 
RegisterBadgeAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5515 void ArkUINativeModule::RegisterBadgeAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5516 {
5517     auto badge = panda::ObjectRef::New(vm);
5518     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithNumber"),
5519         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithNumber));
5520     badge->Set(vm, panda::StringRef::NewFromUtf8(vm, "setBadgeParamWithString"),
5521         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), BadgeBridge::SetBadgeParamWithString));
5522     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "badge"), badge);
5523 }
5524 
RegisterScrollBarAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5525 void ArkUINativeModule::RegisterScrollBarAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5526 {
5527     auto ScrollBar = panda::ObjectRef::New(vm);
5528     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "setScrollBarEnableNestedScroll"),
5529         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::SetScrollBarEnableNestedScroll));
5530     ScrollBar->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetScrollBarEnableNestedScroll"),
5531         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), ScrollBarBridge::ResetScrollBarEnableNestedScroll));
5532     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "ScrollBar"), ScrollBar);
5533 }
5534 
RegisterIndicatorComponentAttributes(Local<panda::ObjectRef> object,EcmaVM * vm)5535 void ArkUINativeModule::RegisterIndicatorComponentAttributes(Local<panda::ObjectRef> object, EcmaVM* vm)
5536 {
5537     auto indicatorComponent = panda::ObjectRef::New(vm);
5538     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setInitialIndex"),
5539         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetInitialIndex));
5540     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetInitialIndex"),
5541         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetInitialIndex));
5542 
5543     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setCount"),
5544         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetCount));
5545     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetCount"),
5546         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetCount));
5547 
5548     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setStyle"),
5549         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetStyle));
5550     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetStyle"),
5551         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetStyle));
5552 
5553     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setLoop"),
5554         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetLoop));
5555     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetLoop"),
5556         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetLoop));
5557 
5558     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setVertical"),
5559         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetVertical));
5560     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetVertical"),
5561         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetVertical));
5562 
5563     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "setOnChange"),
5564         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::SetOnChange));
5565     indicatorComponent->Set(vm, panda::StringRef::NewFromUtf8(vm, "resetOnChange"),
5566         panda::FunctionRef::New(const_cast<panda::EcmaVM*>(vm), IndicatorComponentBridge::ResetOnChange));
5567 
5568     object->Set(vm, panda::StringRef::NewFromUtf8(vm, "indicatorComponent"), indicatorComponent);
5569 }
5570 } // namespace OHOS::Ace::NG
5571