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 #pragma once
17 
18 #include <cstdint>
19 
20 namespace OHOS::Ace {
21 
22 // Common error code
23 constexpr int32_t ERROR_CODE_NO_ERROR = 0;
24 constexpr int32_t ERROR_CODE_PERMISSION_DENIED = 201; // The application does not have permission to call the interface.
25 constexpr int32_t ERROR_CODE_PARAM_INVALID = 401;     // Invalid input parameter.
26 constexpr int32_t ERROR_CODE_SYSTEMCAP_ERROR = 801;   // The specified SystemCapability names was not found.
27 
28 // Notification error code
29 constexpr int32_t ERROR_CODE_INTERNAL_ERROR = 100001;    // Internal error.
30 constexpr int32_t ERROR_CODE_URI_ERROR = 100002;         // Uri error.
31 constexpr int32_t ERROR_CODE_PAGE_STACK_FULL = 100003;   // The pages are pushed too much.
32 constexpr int32_t ERROR_CODE_NAMED_ROUTE_ERROR = 100004; // Named route error.
33 constexpr int32_t ERROR_CODE_LOAD_PAGE_ERROR = 100007;   // Load page root component failed.
34 constexpr int32_t ERROR_CODE_URI_ERROR_LITE = 200002;    // Uri error for lite.
35 
36 // push destination error code
37 constexpr int32_t ERROR_CODE_BUILDER_FUNCTION_NOT_REGISTERED = 100005; // builder function not registered
38 constexpr int32_t ERROR_CODE_DESTINATION_NOT_FOUND = 100006;           // navDestination not found
39 
40 // Send synchronous message error code
41 // No callback has been registered to process synchronous data transferring.
42 constexpr int32_t ERROR_CODE_UIEXTENSION_NOT_REGISTER_SYNC_CALLBACK = 100011;
43 // Transferring data failed
44 constexpr int32_t ERROR_CODE_UIEXTENSION_TRANSFER_DATA_FAILED = 100012;
45 // Forbid cascade uiextension
46 constexpr int32_t ERROR_CODE_UIEXTENSION_FORBID_CASCADE = 100013;
47 // The uiextension ability exited abnormally.
48 constexpr int32_t ERROR_CODE_UIEXTENSION_EXITED_ABNORMALLY = 100014;
49 // The lifecycle of uiextension ability is timeout.
50 constexpr int32_t ERROR_CODE_UIEXTENSION_LIFECYCLE_TIMEOUT = 100015;
51 // The uiextension ability has timed out processing the key event.
52 constexpr int32_t ERROR_CODE_UIEXTENSION_EVENT_TIMEOUT = 100016;
53 // The component not supported prevent function.
54 constexpr int32_t ERROR_CODE_COMPONENT_NOT_SUPPORTED_PREVENT_FUNCTION = 100017;
55 // The uiextension ability foreground failed.
56 constexpr int32_t ERROR_CODE_UIEXTENSION_FOREGROUND_FAILED = 100018;
57 // The uiextension ability background failed.
58 constexpr int32_t ERROR_CODE_UIEXTENSION_BACKGROUND_FAILED = 100019;
59 // The uiextension ability destruction failed.
60 constexpr int32_t ERROR_CODE_UIEXTENSION_DESTRUCTION_FAILED = 100020;
61 // The uiextension transparent node detected.
62 constexpr int32_t ERROR_CODE_UIEXTENSION_TRANSPARENT = 100021;
63 
64 // C-API errors
65 constexpr int32_t ERROR_CODE_NATIVE_IMPL_LIBRARY_NOT_FOUND = 106101;
66 constexpr int32_t ERROR_CODE_NATIVE_IMPL_TYPE_NOT_SUPPORTED = 106102;
67 constexpr int32_t ERROR_CODE_NATIVE_IMPL_BUILDER_NODE_ERROR = 106103;
68 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_ADAPTER_NO_LISTENER_ERROR = 106104;
69 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_ADAPTER_EXIST = 106105;
70 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_ADAPTER_CHILD_NODE_EXIST = 106106;
71 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_EVENT_PARAM_INDEX_OUT_OF_RANGE = 106107;
72 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_EVENT_PARAM_INVALID = 106108;
73 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_EVENT_NO_RETURN = 106109;
74 constexpr int32_t ERROR_CODE_NATIVE_IMPL_NODE_INDEX_INVALID  = 106200;
75 constexpr int32_t ERROR_CODE_NATIVE_IMPL_GET_INFO_FAILED  = 106201;
76 constexpr int32_t ERROR_CODE_NATIVE_IMPL_BUFFER_SIZE_ERROR  = 106202;
77 
78 // AI error for Canvas,XComponent
79 constexpr int32_t ERROR_CODE_AI_ANALYSIS_UNSUPPORTED = 110001;
80 constexpr int32_t ERROR_CODE_AI_ANALYSIS_IS_ONGOING = 110002;
81 constexpr int32_t ERROR_CODE_AI_ANALYSIS_IS_STOPPED = 110003;
82 
83 // Drag event error code
84 constexpr int32_t ERROR_CODE_DRAG_DATA_NOT_FOUND = 190001; // GetData failed, data not found.
85 constexpr int32_t ERROR_CODE_DRAG_DATA_ERROR = 190002;     // GetData failed, data error.
86 
87 // custom dialog error code
88 constexpr int32_t ERROR_CODE_DIALOG_CONTENT_ERROR = 103301;
89 constexpr int32_t ERROR_CODE_DIALOG_CONTENT_ALREADY_EXIST = 103302;
90 constexpr int32_t ERROR_CODE_DIALOG_CONTENT_NOT_FOUND = 103303;
91 
92 // toast error code
93 constexpr int32_t ERROR_CODE_TOAST_NOT_FOUND = 103401;
94 
95 // BindSheet error code
96 constexpr int32_t ERROR_CODE_BIND_SHEET_CONTENT_ERROR = 120001;
97 constexpr int32_t ERROR_CODE_BIND_SHEET_CONTENT_ALREADY_EXIST = 120002;
98 constexpr int32_t ERROR_CODE_BIND_SHEET_CONTENT_NOT_FOUND = 120003;
99 constexpr int32_t ERROR_CODE_TARGET_ID_NOT_EXIST = 120004;
100 constexpr int32_t ERROR_CODE_TARGET_NOT_ON_MAIN_TREE = 120005;
101 constexpr int32_t ERROR_CODE_TARGET_NOT_PAGE_CHILD = 120006;
102 
103 // RequestFocus error code
104 constexpr int32_t ERROR_CODE_NON_FOCUSABLE = 150001;
105 constexpr int32_t ERROR_CODE_NON_FOCUSABLE_ANCESTOR = 150002;
106 constexpr int32_t ERROR_CODE_NON_EXIST = 150003;
107 
108 // ComponentSnapshot error code
109 constexpr int32_t ERROR_CODE_COMPONENT_SNAPSHOT_IMAGE_LOAD_ERROR = 160001;
110 constexpr int32_t ERROR_CODE_COMPONENT_SNAPSHOT_TIMEOUT = 160002;
111 
112 // FromHtml error code
113 constexpr int32_t ERROR_CODE_FROM_HTML_CONVERT_ERROR = 170001;
114 constexpr int32_t ERROR_CODE_STYLED_STRING_CONVERT_ERROR = 170002;
115 
116 // Gesture error code
117 constexpr int32_t ERROR_CODE_NON_SCROLLABLE_CONTAINER = 180001;
118 constexpr int32_t ERROR_CODE_BUFFER_SIZE_NOT_ENOUGH = 180002;
119 } // namespace OHOS::Ace
120