1 /*
2  * Copyright (c) 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 
16 #ifndef FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_JS_UI_INDEX_H
17 #define FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_JS_UI_INDEX_H
18 
19 namespace OHOS::Ace::Framework {
20 
21 #define ARK_UI_KEY(FUNCTION)      \
22     FUNCTION("action", ACTION)       \
23     FUNCTION("align", ALIGN)       \
24     FUNCTION("angle", ANGLE)       \
25     FUNCTION("backgroundColor", BACKGROUND_COLOR)       \
26     FUNCTION("backgroundBlurStyle", BACKGROUND_BLUR_STYLE)       \
27     FUNCTION("borderRadius", BORDER_RADIUS)       \
28     FUNCTION("bottom", BOTTOM)       \
29     FUNCTION("bottomValue", BOTTOM_VALUE)       \
30     FUNCTION("bundleName", BUNDLE_NAME)       \
31     FUNCTION("builder", BUILDER)       \
32     FUNCTION("center", CENTER)       \
33     FUNCTION("centerX", CENTER_X)       \
34     FUNCTION("centerY", CENTER_Y)       \
35     FUNCTION("centerZ", CENTER_Z)       \
36     FUNCTION("color", COLOR)       \
37     FUNCTION("colors", COLORS)       \
38     FUNCTION("colorValue", COLOR_VALUE)       \
39     FUNCTION("direction", DIRECTION)       \
40     FUNCTION("end", END)       \
41     FUNCTION("endValue", END_VALUE)       \
42     FUNCTION("enabled", ENABLED)       \
43     FUNCTION("family", FAMILY)       \
44     FUNCTION("fill", FILL)       \
45     FUNCTION("height", HEIGHT)       \
46     FUNCTION("icon", ICON)       \
47     FUNCTION("id", ID)       \
48     FUNCTION("itemHeightValue", ITEM_HEIGHT_VALUE)       \
49     FUNCTION("itemWidthValue", ITEM_WIDTH_VALUE)       \
50     FUNCTION("left", LEFT)       \
51     FUNCTION("leftValue", LEFT_VALUE)       \
52     FUNCTION("length", LENGTH)       \
53     FUNCTION("matrix4x4", MATRIX4X4)       \
54     FUNCTION("maskValue", MASK_VALUE)       \
55     FUNCTION("moduleName", MODULE_NAME)       \
56     FUNCTION("offsetX", OFFSET_X)       \
57     FUNCTION("offsetY", OFFSET_Y)       \
58     FUNCTION("params", PARAMS)       \
59     FUNCTION("perspective", PERSPECTIVE)       \
60     FUNCTION("radius", RADIUS)       \
61     FUNCTION("repeat", REPEAT)       \
62     FUNCTION("repeating", REPEATING)       \
63     FUNCTION("right", RIGHT)       \
64     FUNCTION("rightValue", RIGHT_VALUE)       \
65     FUNCTION("rotation", ROTATION)       \
66     FUNCTION("selectedColorValue", SELECTED_COLOR_VALUE)       \
67     FUNCTION("selectedItemHeightValue", SELECTED_ITEM_HEIGHT_VALUE)       \
68     FUNCTION("selectedItemWidthValue", SELECTED_ITEM_WIDTH_VALUE)       \
69     FUNCTION("maxDisplayCountValue", MAX_DISPLAY_COUNT_VALUE)       \
70     FUNCTION("size", SIZE)       \
71     FUNCTION("slice", SLICE)       \
72     FUNCTION("source", SOURCE)       \
73     FUNCTION("start", START)       \
74     FUNCTION("startValue", START_VALUE)       \
75     FUNCTION("style", STYLE)       \
76     FUNCTION("symbolIcon", SYMBOL_ICON)       \
77     FUNCTION("top", TOP)       \
78     FUNCTION("topValue", TOP_VALUE)       \
79     FUNCTION("topStart", TOP_START)       \
80     FUNCTION("topEnd", TOP_END)       \
81     FUNCTION("bottomStart", BOTTOM_START)       \
82     FUNCTION("bottomEnd", BOTTOM_END)       \
83     FUNCTION("type", TYPE)       \
84     FUNCTION("unit", UNIT)       \
85     FUNCTION("value", VALUE)       \
86     FUNCTION("weight", WEIGHT)       \
87     FUNCTION("width", WIDTH)       \
88     FUNCTION("x", X)       \
89     FUNCTION("y", Y)       \
90     FUNCTION("z", Z)
91 
92 #define PROPERTY_NAME_INDEX(propertyName, index) index,
93 enum class ArkUIIndex : uint32_t {
94     ARK_UI_KEY(PROPERTY_NAME_INDEX)
95 };
96 #undef PROPERTY_NAME_INDEX
97 } // namespace OHOS::Ace::Framework
98 #endif  // FRAMEWORKS_BRIDGE_DECLARATIVE_FRONTEND_ENGINE_JSI_JS_UI_INDEX_H
99