@fctc/interface-logic 1.3.0 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-type-cZ3zwGsZ.d.mts +86 -0
- package/dist/api-type-cZ3zwGsZ.d.ts +86 -0
- package/dist/configs.d.mts +15 -0
- package/dist/configs.d.ts +15 -0
- package/dist/configs.js +2386 -0
- package/dist/configs.mjs +2349 -0
- package/dist/constants.d.mts +131 -0
- package/dist/constants.d.ts +131 -0
- package/dist/constants.js +205 -0
- package/dist/constants.mjs +166 -0
- package/dist/environment.d.mts +55 -0
- package/dist/environment.d.ts +55 -0
- package/dist/environment.js +3094 -0
- package/dist/environment.mjs +3054 -0
- package/dist/hooks.d.mts +370 -0
- package/dist/hooks.d.ts +370 -0
- package/dist/{index.js → hooks.js} +10 -1242
- package/dist/{index.mjs → hooks.mjs} +5 -1093
- package/dist/provider.d.mts +15 -0
- package/dist/provider.d.ts +15 -0
- package/dist/provider.js +3603 -0
- package/dist/provider.mjs +3564 -0
- package/dist/services.d.mts +268 -0
- package/dist/services.d.ts +268 -0
- package/dist/services.js +4661 -0
- package/dist/services.mjs +4616 -0
- package/dist/store.d.mts +643 -0
- package/dist/store.d.ts +643 -0
- package/dist/store.js +814 -0
- package/dist/store.mjs +709 -0
- package/dist/utils.d.mts +93 -0
- package/dist/utils.d.ts +93 -0
- package/dist/utils.js +2962 -0
- package/dist/utils.mjs +2896 -0
- package/package.json +6 -17
- package/dist/index.d.mts +0 -1709
- package/dist/index.d.ts +0 -1709
|
@@ -1,34 +1,5 @@
|
|
|
1
|
-
// src/
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
// src/constants/api/key-constant.ts
|
|
5
|
-
var KeyConstants = /* @__PURE__ */ ((KeyConstants2) => {
|
|
6
|
-
KeyConstants2["PROFILE"] = "userinfo";
|
|
7
|
-
KeyConstants2["CURRENT_COMPANY"] = "current_company";
|
|
8
|
-
KeyConstants2["LIST_COMPANY"] = "list_company";
|
|
9
|
-
KeyConstants2["COMPANY_INFO"] = "company_info";
|
|
10
|
-
KeyConstants2["MENU"] = "menus";
|
|
11
|
-
KeyConstants2["GET_VIEW_BY_ACTION"] = "get_view_by_action";
|
|
12
|
-
KeyConstants2["ACTION_DETAIL"] = "action_detail";
|
|
13
|
-
KeyConstants2["GET_DATA_SELECTION"] = "get_data_select";
|
|
14
|
-
KeyConstants2["WEB_SAVE"] = "web_save";
|
|
15
|
-
KeyConstants2["WEB_READ"] = "web_read";
|
|
16
|
-
KeyConstants2["GET_PROVIDER"] = "get_provider";
|
|
17
|
-
return KeyConstants2;
|
|
18
|
-
})(KeyConstants || {});
|
|
19
|
-
|
|
20
|
-
// src/constants/api/method-constant.ts
|
|
21
|
-
var MethodConstants = /* @__PURE__ */ ((MethodConstants2) => {
|
|
22
|
-
MethodConstants2["WEB_SEARCH_READ"] = "web_search_read";
|
|
23
|
-
MethodConstants2["WEB_READ_GROUP"] = "web_read_group";
|
|
24
|
-
MethodConstants2["WEB_READ"] = "web_read";
|
|
25
|
-
MethodConstants2["WEB_SAVE"] = "web_save";
|
|
26
|
-
MethodConstants2["UNLINK"] = "unlink";
|
|
27
|
-
MethodConstants2["ONCHANGE"] = "onchange";
|
|
28
|
-
MethodConstants2["GET_ONCHANGE_FIELDS"] = "get_fields_onchange";
|
|
29
|
-
MethodConstants2["GET_FIELD_VIEW"] = "get_fields_view_v2";
|
|
30
|
-
return MethodConstants2;
|
|
31
|
-
})(MethodConstants || {});
|
|
1
|
+
// src/hooks/auth/use-forgot-password.ts
|
|
2
|
+
import { useMutation } from "@tanstack/react-query";
|
|
32
3
|
|
|
33
4
|
// src/constants/api/uri-constant.ts
|
|
34
5
|
var UriConstants = /* @__PURE__ */ ((UriConstants2) => {
|
|
@@ -60,380 +31,11 @@ var UriConstants = /* @__PURE__ */ ((UriConstants2) => {
|
|
|
60
31
|
return UriConstants2;
|
|
61
32
|
})(UriConstants || {});
|
|
62
33
|
|
|
63
|
-
// src/
|
|
64
|
-
|
|
65
|
-
code;
|
|
66
|
-
constructor(message, code) {
|
|
67
|
-
super(message);
|
|
68
|
-
this.code = code;
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
function handleError(error, env2) {
|
|
72
|
-
if (error instanceof WesapError) {
|
|
73
|
-
env2.services.notification.error(error.message);
|
|
74
|
-
} else {
|
|
75
|
-
env2.services.notification.error("An unexpected error occurred");
|
|
76
|
-
}
|
|
77
|
-
}
|
|
34
|
+
// src/configs/axios-client.ts
|
|
35
|
+
import axios from "axios";
|
|
78
36
|
|
|
79
37
|
// src/utils/format.ts
|
|
80
38
|
import moment from "moment";
|
|
81
|
-
var formatCurrency = (amount, currency = "USD") => {
|
|
82
|
-
const formatter = new Intl.NumberFormat("vi-VN", {
|
|
83
|
-
style: "currency",
|
|
84
|
-
currency,
|
|
85
|
-
minimumFractionDigits: 0
|
|
86
|
-
});
|
|
87
|
-
return formatter.format(amount).replaceAll(".", ",");
|
|
88
|
-
};
|
|
89
|
-
var formatDate = (date, locale = "en-US") => {
|
|
90
|
-
return new Intl.DateTimeFormat(locale).format(new Date(date));
|
|
91
|
-
};
|
|
92
|
-
var validateAndParseDate = (input, isDateTime = false) => {
|
|
93
|
-
if (!input || typeof input !== "string") return null;
|
|
94
|
-
const cleanInput = input.replace(/[^0-9-\/:\s]/g, "");
|
|
95
|
-
const dateFormat = "YYYY-MM-DD";
|
|
96
|
-
const dateTimeFormat = "YYYY-MM-DD HH:mm:ss";
|
|
97
|
-
const currentDay = moment().format("DD");
|
|
98
|
-
const currentMonth = moment().format("MM");
|
|
99
|
-
const currentYear = moment().format("YYYY");
|
|
100
|
-
const defaultTime = "00:00:00";
|
|
101
|
-
const maxYear = parseInt(currentYear) + 10;
|
|
102
|
-
const isValidDate = (day, month, year) => {
|
|
103
|
-
const date = moment(`${day}-${month}-${year}`, "DD-MM-YYYY", true);
|
|
104
|
-
return date.isValid();
|
|
105
|
-
};
|
|
106
|
-
const isValidTime = (hour, minute = "00", second = "00") => {
|
|
107
|
-
const h = parseInt(hour, 10);
|
|
108
|
-
const m = parseInt(minute, 10);
|
|
109
|
-
const s = parseInt(second, 10);
|
|
110
|
-
return h >= 0 && h <= 23 && m >= 0 && m <= 59 && s >= 0 && s <= 59;
|
|
111
|
-
};
|
|
112
|
-
const formatOutput = (day, month, year, time = defaultTime) => {
|
|
113
|
-
let result = moment(
|
|
114
|
-
`${day}-${month}-${year} ${time}`,
|
|
115
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
116
|
-
);
|
|
117
|
-
if (!result.isValid()) return null;
|
|
118
|
-
if (isDateTime) {
|
|
119
|
-
result = result.subtract(7, "hours");
|
|
120
|
-
return result.format(dateTimeFormat);
|
|
121
|
-
}
|
|
122
|
-
return result.format(dateFormat);
|
|
123
|
-
};
|
|
124
|
-
if (isDateTime && input.match(
|
|
125
|
-
/^\d{1,2}[\/-]\d{1,2}[\/-]\d{2,4}\s+\d{1,2}(:\d{1,2}(:\d{1,2})?)?$/
|
|
126
|
-
)) {
|
|
127
|
-
const [datePart, timePart] = input.split(/\s+/);
|
|
128
|
-
const dateParts = datePart.split(/[\/-]/);
|
|
129
|
-
const timeParts = timePart.split(":");
|
|
130
|
-
const day = dateParts[0].padStart(2, "0");
|
|
131
|
-
const month = dateParts[1].padStart(2, "0");
|
|
132
|
-
const year = dateParts[2].length <= 2 ? `20${dateParts[2].padStart(2, "0")}` : dateParts[2].padStart(4, "0");
|
|
133
|
-
const hour = timeParts[0].padStart(2, "0");
|
|
134
|
-
const minute = timeParts[1] ? timeParts[1].padStart(2, "0") : "00";
|
|
135
|
-
const second = timeParts[2] ? timeParts[2].padStart(2, "0") : "00";
|
|
136
|
-
if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
|
|
137
|
-
let result = moment(
|
|
138
|
-
`${day}-${month}-${year} ${hour}:${minute}:${second}`,
|
|
139
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
140
|
-
);
|
|
141
|
-
if (!result.isValid()) return null;
|
|
142
|
-
result = result.subtract(7, "hours");
|
|
143
|
-
return result.format(dateTimeFormat);
|
|
144
|
-
}
|
|
145
|
-
return null;
|
|
146
|
-
}
|
|
147
|
-
if (cleanInput.match(/^\d{4}-\d{2}-\d{2}$/)) {
|
|
148
|
-
const [year, month, day] = cleanInput.split("-");
|
|
149
|
-
if (isValidDate(day, month, year)) {
|
|
150
|
-
return formatOutput(day, month, year);
|
|
151
|
-
}
|
|
152
|
-
return null;
|
|
153
|
-
}
|
|
154
|
-
if (cleanInput.match(/^\d{1,2}\/\d{1,2}\/\d{2,4}$/)) {
|
|
155
|
-
const [day, month, year] = cleanInput.split("/");
|
|
156
|
-
const paddedDay = day.padStart(2, "0");
|
|
157
|
-
const paddedMonth = month.padStart(2, "0");
|
|
158
|
-
const fullYear = year.length <= 2 ? `20${year.padStart(2, "0")}` : year.padStart(4, "0");
|
|
159
|
-
if (isValidDate(paddedDay, paddedMonth, fullYear)) {
|
|
160
|
-
return formatOutput(paddedDay, paddedMonth, fullYear);
|
|
161
|
-
}
|
|
162
|
-
return null;
|
|
163
|
-
}
|
|
164
|
-
if (cleanInput.match(/^\d{1,2}-\d{1,2}-\d{2,4}$/)) {
|
|
165
|
-
const [day, month, year] = cleanInput.split("-");
|
|
166
|
-
const paddedDay = day.padStart(2, "0");
|
|
167
|
-
const paddedMonth = month.padStart(2, "0");
|
|
168
|
-
const fullYear = year.length <= 2 ? `20${year.padStart(2, "0")}` : year.padStart(4, "0");
|
|
169
|
-
if (isValidDate(paddedDay, paddedMonth, fullYear)) {
|
|
170
|
-
return formatOutput(paddedDay, paddedMonth, fullYear);
|
|
171
|
-
}
|
|
172
|
-
return null;
|
|
173
|
-
}
|
|
174
|
-
if (cleanInput.match(/^\d{1,2}[\/-]\d{1,2}$/)) {
|
|
175
|
-
const [day, month] = cleanInput.split(/[\/-]/);
|
|
176
|
-
const paddedDay = day.padStart(2, "0");
|
|
177
|
-
const paddedMonth = month.padStart(2, "0");
|
|
178
|
-
if (isValidDate(paddedDay, paddedMonth, currentYear)) {
|
|
179
|
-
return formatOutput(paddedDay, paddedMonth, currentYear);
|
|
180
|
-
}
|
|
181
|
-
return null;
|
|
182
|
-
}
|
|
183
|
-
if (cleanInput.match(/^\d{4}$/)) {
|
|
184
|
-
const num = parseInt(cleanInput, 10);
|
|
185
|
-
if (num >= 2e3 && num <= maxYear) {
|
|
186
|
-
if (isValidDate(currentDay, currentMonth, num.toString())) {
|
|
187
|
-
return formatOutput(currentDay, currentMonth, num.toString());
|
|
188
|
-
}
|
|
189
|
-
return null;
|
|
190
|
-
}
|
|
191
|
-
const day = cleanInput.slice(0, 2);
|
|
192
|
-
const month = cleanInput.slice(2, 4);
|
|
193
|
-
if (isValidDate(day, month, currentYear)) {
|
|
194
|
-
return formatOutput(day, month, currentYear);
|
|
195
|
-
}
|
|
196
|
-
return null;
|
|
197
|
-
}
|
|
198
|
-
if (cleanInput.startsWith("-") && /^\-\d+$/.test(cleanInput)) {
|
|
199
|
-
const daysToSubtract = Math.abs(parseInt(cleanInput, 10));
|
|
200
|
-
let result = moment().subtract(daysToSubtract, "days");
|
|
201
|
-
if (isDateTime) {
|
|
202
|
-
result = result.subtract(7, "hours");
|
|
203
|
-
}
|
|
204
|
-
if (result.isValid()) {
|
|
205
|
-
return isDateTime ? result.format(dateTimeFormat) : result.format(dateFormat);
|
|
206
|
-
}
|
|
207
|
-
return null;
|
|
208
|
-
}
|
|
209
|
-
if (input.match(/^\d{1,2}[^0-9-\/]+\d{1,2}[^0-9-\/]+\d{2,4}.*$/)) {
|
|
210
|
-
const parts = input.split(/[^0-9-\/]+/).filter(Boolean);
|
|
211
|
-
const day = parts[0].padStart(2, "0");
|
|
212
|
-
const month = parts[1].padStart(2, "0");
|
|
213
|
-
let year = parts[2];
|
|
214
|
-
year = year.length === 2 ? `20${year}` : year.padStart(4, "0");
|
|
215
|
-
if (isValidDate(day, month, year)) {
|
|
216
|
-
return formatOutput(day, month, year);
|
|
217
|
-
}
|
|
218
|
-
return null;
|
|
219
|
-
}
|
|
220
|
-
if (isDateTime) {
|
|
221
|
-
if (cleanInput.length === 9) {
|
|
222
|
-
const day = cleanInput.slice(0, 2);
|
|
223
|
-
const month = cleanInput.slice(2, 4);
|
|
224
|
-
const year = cleanInput.slice(4, 8);
|
|
225
|
-
const hour = cleanInput.slice(8, 9).padStart(2, "0");
|
|
226
|
-
if (isValidDate(day, month, year) && isValidTime(hour)) {
|
|
227
|
-
let result = moment(
|
|
228
|
-
`${day}-${month}-${year} ${hour}:00:00`,
|
|
229
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
230
|
-
);
|
|
231
|
-
if (!result.isValid()) return null;
|
|
232
|
-
result = result.subtract(7, "hours");
|
|
233
|
-
return result.format(dateTimeFormat);
|
|
234
|
-
}
|
|
235
|
-
return null;
|
|
236
|
-
}
|
|
237
|
-
if (cleanInput.length === 10) {
|
|
238
|
-
const day = cleanInput.slice(0, 2);
|
|
239
|
-
const month = cleanInput.slice(2, 4);
|
|
240
|
-
const year = cleanInput.slice(4, 8);
|
|
241
|
-
const hour = cleanInput.slice(8, 10);
|
|
242
|
-
if (isValidDate(day, month, year) && isValidTime(hour)) {
|
|
243
|
-
let result = moment(
|
|
244
|
-
`${day}-${month}-${year} ${hour}:00:00`,
|
|
245
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
246
|
-
);
|
|
247
|
-
if (!result.isValid()) return null;
|
|
248
|
-
result = result.subtract(7, "hours");
|
|
249
|
-
return result.format(dateTimeFormat);
|
|
250
|
-
}
|
|
251
|
-
return null;
|
|
252
|
-
}
|
|
253
|
-
if (cleanInput.length === 11) {
|
|
254
|
-
const day = cleanInput.slice(0, 2);
|
|
255
|
-
const month = cleanInput.slice(2, 4);
|
|
256
|
-
const year = cleanInput.slice(4, 8);
|
|
257
|
-
const hour = cleanInput.slice(8, 10);
|
|
258
|
-
const minute = cleanInput.slice(10, 11).padStart(2, "0");
|
|
259
|
-
if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
|
|
260
|
-
let result = moment(
|
|
261
|
-
`${day}-${month}-${year} ${hour}:${minute}:00`,
|
|
262
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
263
|
-
);
|
|
264
|
-
if (!result.isValid()) return null;
|
|
265
|
-
result = result.subtract(7, "hours");
|
|
266
|
-
return result.format(dateTimeFormat);
|
|
267
|
-
}
|
|
268
|
-
return null;
|
|
269
|
-
}
|
|
270
|
-
if (cleanInput.length === 12) {
|
|
271
|
-
const day = cleanInput.slice(0, 2);
|
|
272
|
-
const month = cleanInput.slice(2, 4);
|
|
273
|
-
const year = cleanInput.slice(4, 8);
|
|
274
|
-
const hour = cleanInput.slice(8, 10);
|
|
275
|
-
const minute = cleanInput.slice(10, 12);
|
|
276
|
-
if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
|
|
277
|
-
let result = moment(
|
|
278
|
-
`${day}-${month}-${year} ${hour}:${minute}:00`,
|
|
279
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
280
|
-
);
|
|
281
|
-
if (!result.isValid()) return null;
|
|
282
|
-
result = result.subtract(7, "hours");
|
|
283
|
-
return result.format(dateTimeFormat);
|
|
284
|
-
}
|
|
285
|
-
return null;
|
|
286
|
-
}
|
|
287
|
-
if (cleanInput.length === 13) {
|
|
288
|
-
const day = cleanInput.slice(0, 2);
|
|
289
|
-
const month = cleanInput.slice(2, 4);
|
|
290
|
-
const year = cleanInput.slice(4, 8);
|
|
291
|
-
const hour = cleanInput.slice(8, 10);
|
|
292
|
-
const minute = cleanInput.slice(10, 12);
|
|
293
|
-
const second = cleanInput.slice(12, 13).padStart(2, "0");
|
|
294
|
-
if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
|
|
295
|
-
let result = moment(
|
|
296
|
-
`${day}-${month}-${year} ${hour}:${minute}:${second}`,
|
|
297
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
298
|
-
);
|
|
299
|
-
if (!result.isValid()) return null;
|
|
300
|
-
result = result.subtract(7, "hours");
|
|
301
|
-
return result.format(dateTimeFormat);
|
|
302
|
-
}
|
|
303
|
-
return null;
|
|
304
|
-
}
|
|
305
|
-
if (cleanInput.length === 14) {
|
|
306
|
-
const day = cleanInput.slice(0, 2);
|
|
307
|
-
const month = cleanInput.slice(2, 4);
|
|
308
|
-
const year = cleanInput.slice(4, 8);
|
|
309
|
-
const hour = cleanInput.slice(8, 10);
|
|
310
|
-
const minute = cleanInput.slice(10, 12);
|
|
311
|
-
const second = cleanInput.slice(12, 14);
|
|
312
|
-
if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
|
|
313
|
-
let result = moment(
|
|
314
|
-
`${day}-${month}-${year} ${hour}:${minute}:${second}`,
|
|
315
|
-
"DD-MM-YYYY HH:mm:ss"
|
|
316
|
-
);
|
|
317
|
-
if (!result.isValid()) return null;
|
|
318
|
-
result = result.subtract(7, "hours");
|
|
319
|
-
return result.format(dateTimeFormat);
|
|
320
|
-
}
|
|
321
|
-
return null;
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
const len = cleanInput.length;
|
|
325
|
-
if (len === 1 || len === 2) {
|
|
326
|
-
const paddedDay = cleanInput.padStart(2, "0");
|
|
327
|
-
if (isValidDate(paddedDay, currentMonth, currentYear)) {
|
|
328
|
-
return formatOutput(paddedDay, currentMonth, currentYear);
|
|
329
|
-
}
|
|
330
|
-
return null;
|
|
331
|
-
}
|
|
332
|
-
if (len === 3) {
|
|
333
|
-
const day = cleanInput.slice(0, 2);
|
|
334
|
-
const month = cleanInput.slice(2, 3).padStart(2, "0");
|
|
335
|
-
if (isValidDate(day, month, currentYear)) {
|
|
336
|
-
return formatOutput(day, month, currentYear);
|
|
337
|
-
}
|
|
338
|
-
return null;
|
|
339
|
-
}
|
|
340
|
-
if (len === 6) {
|
|
341
|
-
const day = cleanInput.slice(0, 2);
|
|
342
|
-
const month = cleanInput.slice(2, 4);
|
|
343
|
-
let year = cleanInput.slice(4, 6);
|
|
344
|
-
year = `20${year}`;
|
|
345
|
-
if (parseInt(month) > 12) {
|
|
346
|
-
if (isValidDate(day, currentMonth, currentYear)) {
|
|
347
|
-
return formatOutput(day, currentMonth, currentYear);
|
|
348
|
-
}
|
|
349
|
-
return null;
|
|
350
|
-
}
|
|
351
|
-
if (isValidDate(day, month, year)) {
|
|
352
|
-
return formatOutput(day, month, year);
|
|
353
|
-
}
|
|
354
|
-
return null;
|
|
355
|
-
}
|
|
356
|
-
if (len === 7) {
|
|
357
|
-
return null;
|
|
358
|
-
}
|
|
359
|
-
if (len === 8) {
|
|
360
|
-
const day = cleanInput.slice(0, 2);
|
|
361
|
-
const month = cleanInput.slice(2, 4);
|
|
362
|
-
const year = cleanInput.slice(4, 8);
|
|
363
|
-
if (isValidDate(day, month, year)) {
|
|
364
|
-
return formatOutput(day, month, year);
|
|
365
|
-
}
|
|
366
|
-
return null;
|
|
367
|
-
}
|
|
368
|
-
if (len > 8 && !isDateTime) {
|
|
369
|
-
return null;
|
|
370
|
-
}
|
|
371
|
-
return null;
|
|
372
|
-
};
|
|
373
|
-
|
|
374
|
-
// src/constants/field/field-type-constant.ts
|
|
375
|
-
var FieldTypeConstants = /* @__PURE__ */ ((FieldTypeConstants2) => {
|
|
376
|
-
FieldTypeConstants2["CHAR"] = "char";
|
|
377
|
-
FieldTypeConstants2["TEXT"] = "text";
|
|
378
|
-
FieldTypeConstants2["INTEGER"] = "integer";
|
|
379
|
-
FieldTypeConstants2["FLOAT"] = "float";
|
|
380
|
-
FieldTypeConstants2["BOOLEAN"] = "boolean";
|
|
381
|
-
FieldTypeConstants2["DATE"] = "date";
|
|
382
|
-
FieldTypeConstants2["DATETIME"] = "datetime";
|
|
383
|
-
FieldTypeConstants2["BINARY"] = "binary";
|
|
384
|
-
FieldTypeConstants2["SELECTION"] = "selection";
|
|
385
|
-
FieldTypeConstants2["HTML"] = "html";
|
|
386
|
-
FieldTypeConstants2["MANY2ONE"] = "many2one";
|
|
387
|
-
FieldTypeConstants2["ONE2MANY"] = "one2many";
|
|
388
|
-
FieldTypeConstants2["MANY2MANY"] = "many2many";
|
|
389
|
-
FieldTypeConstants2["MONETARY"] = "monetary";
|
|
390
|
-
FieldTypeConstants2["REFERENCE"] = "reference";
|
|
391
|
-
FieldTypeConstants2["FUNCTION"] = "function";
|
|
392
|
-
FieldTypeConstants2["PROPERTY"] = "property";
|
|
393
|
-
return FieldTypeConstants2;
|
|
394
|
-
})(FieldTypeConstants || {});
|
|
395
|
-
|
|
396
|
-
// src/constants/method/method-type-constant.ts
|
|
397
|
-
var MethodType = /* @__PURE__ */ ((MethodType2) => {
|
|
398
|
-
MethodType2[MethodType2["CREATE"] = 0] = "CREATE";
|
|
399
|
-
MethodType2[MethodType2["UPDATE"] = 1] = "UPDATE";
|
|
400
|
-
MethodType2[MethodType2["DELETE"] = 2] = "DELETE";
|
|
401
|
-
MethodType2[MethodType2["UNLINK"] = 3] = "UNLINK";
|
|
402
|
-
MethodType2[MethodType2["NO_CHANGE"] = 4] = "NO_CHANGE";
|
|
403
|
-
return MethodType2;
|
|
404
|
-
})(MethodType || {});
|
|
405
|
-
|
|
406
|
-
// src/constants/model/model-constant.ts
|
|
407
|
-
var ModelConstants = /* @__PURE__ */ ((ModelConstants2) => {
|
|
408
|
-
ModelConstants2["MENU"] = "ir.ui.menu";
|
|
409
|
-
ModelConstants2["USER"] = "res.users";
|
|
410
|
-
ModelConstants2["COMPANY"] = "res.company";
|
|
411
|
-
ModelConstants2["WINDOW_ACTION"] = "ir.actions.act_window";
|
|
412
|
-
ModelConstants2["BASE_IMPORT"] = "base_import.import";
|
|
413
|
-
ModelConstants2["GET_IMPORT"] = "get_import_templates";
|
|
414
|
-
return ModelConstants2;
|
|
415
|
-
})(ModelConstants || {});
|
|
416
|
-
|
|
417
|
-
// src/constants/type/index.ts
|
|
418
|
-
var ComponentType = /* @__PURE__ */ ((ComponentType2) => {
|
|
419
|
-
ComponentType2["GROUP"] = "group";
|
|
420
|
-
ComponentType2["FIELD"] = "field";
|
|
421
|
-
ComponentType2["TREE"] = "tree";
|
|
422
|
-
ComponentType2["DIV"] = "div";
|
|
423
|
-
ComponentType2["LIST"] = "list";
|
|
424
|
-
ComponentType2["FORM"] = "form";
|
|
425
|
-
ComponentType2["SETTINGS"] = "setting";
|
|
426
|
-
ComponentType2["SPAN"] = "span";
|
|
427
|
-
ComponentType2["KANBAN"] = "kanban";
|
|
428
|
-
ComponentType2["CALENDAR"] = "calendar";
|
|
429
|
-
ComponentType2["TYPE"] = "view-type";
|
|
430
|
-
return ComponentType2;
|
|
431
|
-
})(ComponentType || {});
|
|
432
|
-
var SearchType = {
|
|
433
|
-
FILTER: "filter_by",
|
|
434
|
-
SEARCH: "search_by",
|
|
435
|
-
GROUP: "group_by"
|
|
436
|
-
};
|
|
437
39
|
|
|
438
40
|
// src/constants/widget/widget-avatar-constant.ts
|
|
439
41
|
var WIDGETAVATAR = /* @__PURE__ */ ((WIDGETAVATAR2) => {
|
|
@@ -441,28 +43,6 @@ var WIDGETAVATAR = /* @__PURE__ */ ((WIDGETAVATAR2) => {
|
|
|
441
43
|
WIDGETAVATAR2["many2many_avatar_user"] = "many2many_avatar_user";
|
|
442
44
|
return WIDGETAVATAR2;
|
|
443
45
|
})(WIDGETAVATAR || {});
|
|
444
|
-
var WIDGETCURRENCY = /* @__PURE__ */ ((WIDGETCURRENCY2) => {
|
|
445
|
-
WIDGETCURRENCY2["many2one_avatar_user"] = "many2one_avatar_user";
|
|
446
|
-
WIDGETCURRENCY2["many2many_avatar_user"] = "many2many_avatar_user";
|
|
447
|
-
return WIDGETCURRENCY2;
|
|
448
|
-
})(WIDGETCURRENCY || {});
|
|
449
|
-
|
|
450
|
-
// src/constants/widget/widget-color-constant.ts
|
|
451
|
-
var WIDGETCOLOR = /* @__PURE__ */ ((WIDGETCOLOR2) => {
|
|
452
|
-
WIDGETCOLOR2["many2many_tags"] = "many2many_tags";
|
|
453
|
-
WIDGETCOLOR2["helpdesk_sla_many2many_tags"] = "helpdesk_sla_many2many_tags";
|
|
454
|
-
return WIDGETCOLOR2;
|
|
455
|
-
})(WIDGETCOLOR || {});
|
|
456
|
-
|
|
457
|
-
// src/constants/widget/widget-status-constant.ts
|
|
458
|
-
var WIDGETSTATUS = /* @__PURE__ */ ((WIDGETSTATUS2) => {
|
|
459
|
-
WIDGETSTATUS2["sla_status_ids"] = "sla_status_ids";
|
|
460
|
-
return WIDGETSTATUS2;
|
|
461
|
-
})(WIDGETSTATUS || {});
|
|
462
|
-
var WIDGETNOSTRING = /* @__PURE__ */ ((WIDGETNOSTRING2) => {
|
|
463
|
-
WIDGETNOSTRING2["sla_status_ids"] = "sla_status_ids";
|
|
464
|
-
return WIDGETNOSTRING2;
|
|
465
|
-
})(WIDGETNOSTRING || {});
|
|
466
46
|
|
|
467
47
|
// src/utils/domain/py_tokenizer.ts
|
|
468
48
|
var TokenizerError = class extends Error {
|
|
@@ -2231,48 +1811,6 @@ function parseExpr(expr) {
|
|
|
2231
1811
|
const tokens = tokenize(expr);
|
|
2232
1812
|
return parse(tokens);
|
|
2233
1813
|
}
|
|
2234
|
-
function evaluateExpr(expr, context = {}) {
|
|
2235
|
-
let ast;
|
|
2236
|
-
try {
|
|
2237
|
-
ast = parseExpr(expr);
|
|
2238
|
-
} catch (error) {
|
|
2239
|
-
throw new EvalError(
|
|
2240
|
-
`Can not parse python expression: (${expr})
|
|
2241
|
-
Error: ${error.message}`
|
|
2242
|
-
);
|
|
2243
|
-
}
|
|
2244
|
-
try {
|
|
2245
|
-
return evaluate(ast, context);
|
|
2246
|
-
} catch (error) {
|
|
2247
|
-
throw new EvalError(
|
|
2248
|
-
`Can not evaluate python expression: (${expr})
|
|
2249
|
-
Error: ${error.message}`
|
|
2250
|
-
);
|
|
2251
|
-
}
|
|
2252
|
-
}
|
|
2253
|
-
function evaluateBooleanExpr(expr, context = {}) {
|
|
2254
|
-
if (!expr || expr === "False" || expr === "0") {
|
|
2255
|
-
return false;
|
|
2256
|
-
}
|
|
2257
|
-
if (expr === "True" || expr === "1") {
|
|
2258
|
-
return true;
|
|
2259
|
-
}
|
|
2260
|
-
return evaluateExpr(`bool(${expr})`, context);
|
|
2261
|
-
}
|
|
2262
|
-
|
|
2263
|
-
// src/utils/domain/context.ts
|
|
2264
|
-
function evalPartialContext(_context, evaluationContext = {}) {
|
|
2265
|
-
const ast = parseExpr(_context);
|
|
2266
|
-
const context = {};
|
|
2267
|
-
for (const key in ast.value) {
|
|
2268
|
-
const value = ast.value[key];
|
|
2269
|
-
try {
|
|
2270
|
-
context[key] = evaluate(value, evaluationContext);
|
|
2271
|
-
} catch {
|
|
2272
|
-
}
|
|
2273
|
-
}
|
|
2274
|
-
return context;
|
|
2275
|
-
}
|
|
2276
1814
|
|
|
2277
1815
|
// src/utils/domain/objects.ts
|
|
2278
1816
|
function shallowEqual(obj1, obj2, comparisonFn = (a, b) => a === b) {
|
|
@@ -2611,280 +2149,14 @@ function matchDomain(record, domain) {
|
|
|
2611
2149
|
}
|
|
2612
2150
|
return matchCondition(record, condStack.pop());
|
|
2613
2151
|
}
|
|
2614
|
-
var checkDomain = (context, domain) => {
|
|
2615
|
-
try {
|
|
2616
|
-
if (domain === void 0 || domain === "0" || domain === "False" || domain === false) {
|
|
2617
|
-
return false;
|
|
2618
|
-
} else if (domain === "1" || domain === "True" || domain === true) {
|
|
2619
|
-
return true;
|
|
2620
|
-
}
|
|
2621
|
-
try {
|
|
2622
|
-
if (context && domain) {
|
|
2623
|
-
const d = new Domain(domain);
|
|
2624
|
-
return d.contains(context);
|
|
2625
|
-
}
|
|
2626
|
-
} catch (error) {
|
|
2627
|
-
if (context && domain) {
|
|
2628
|
-
const domainEval = evaluateBooleanExpr(domain, context);
|
|
2629
|
-
return domainEval;
|
|
2630
|
-
}
|
|
2631
|
-
return false;
|
|
2632
|
-
}
|
|
2633
|
-
return false;
|
|
2634
|
-
} catch (e) {
|
|
2635
|
-
return false;
|
|
2636
|
-
}
|
|
2637
|
-
};
|
|
2638
|
-
var matchDomains = (context, domains) => {
|
|
2639
|
-
if (Array.isArray(domains)) {
|
|
2640
|
-
if (domains?.length > 0) {
|
|
2641
|
-
return domains && domains.some((domain) => checkDomain(context, domain));
|
|
2642
|
-
}
|
|
2643
|
-
} else return checkDomain(context, domains);
|
|
2644
|
-
return false;
|
|
2645
|
-
};
|
|
2646
2152
|
|
|
2647
2153
|
// src/utils/function.ts
|
|
2648
2154
|
import { useEffect, useState } from "react";
|
|
2649
|
-
var evalJSONContext = (_context, context = {}) => {
|
|
2650
|
-
try {
|
|
2651
|
-
return evalPartialContext(_context, context);
|
|
2652
|
-
} catch (err) {
|
|
2653
|
-
return null;
|
|
2654
|
-
}
|
|
2655
|
-
};
|
|
2656
|
-
var evalJSONDomain = (domain, context) => {
|
|
2657
|
-
try {
|
|
2658
|
-
if (context) {
|
|
2659
|
-
Object.keys(context)?.forEach((key) => {
|
|
2660
|
-
if (Array.isArray(context[key])) {
|
|
2661
|
-
const isTypeObject = context[key]?.every(
|
|
2662
|
-
(item) => typeof item === "object" && item !== null && item?.id !== void 0
|
|
2663
|
-
);
|
|
2664
|
-
if (isTypeObject) {
|
|
2665
|
-
context[key] = context[key]?.map((item) => item?.id);
|
|
2666
|
-
}
|
|
2667
|
-
}
|
|
2668
|
-
});
|
|
2669
|
-
}
|
|
2670
|
-
const value = evaluateExpr(domain, context);
|
|
2671
|
-
return value;
|
|
2672
|
-
} catch (err) {
|
|
2673
|
-
try {
|
|
2674
|
-
const domainObject = new Domain(domain).toList(context);
|
|
2675
|
-
return domainObject;
|
|
2676
|
-
} catch (err2) {
|
|
2677
|
-
return [];
|
|
2678
|
-
}
|
|
2679
|
-
}
|
|
2680
|
-
};
|
|
2681
|
-
var formatSortingString = (input) => {
|
|
2682
|
-
if (!input) return null;
|
|
2683
|
-
return input.split(",").map((field) => {
|
|
2684
|
-
const [key, order] = field.trim().split(/\s+/);
|
|
2685
|
-
const sortOrder = order?.toUpperCase() === "DESC" ? "DESC" : "ASC";
|
|
2686
|
-
return `${key} ${sortOrder}`;
|
|
2687
|
-
}).join(", ");
|
|
2688
|
-
};
|
|
2689
|
-
var domainHelper = {
|
|
2690
|
-
checkDomain,
|
|
2691
|
-
matchDomains,
|
|
2692
|
-
Domain
|
|
2693
|
-
};
|
|
2694
2155
|
var toQueryString = (params) => {
|
|
2695
2156
|
return Object.keys(params).map(
|
|
2696
2157
|
(key) => encodeURIComponent(key) + "=" + encodeURIComponent(params[key].toString())
|
|
2697
2158
|
).join("&");
|
|
2698
2159
|
};
|
|
2699
|
-
var convertFloatToTime = (floatValue) => {
|
|
2700
|
-
const hours = Math.floor(floatValue);
|
|
2701
|
-
const minutes = Math.round((floatValue - hours) * 60);
|
|
2702
|
-
const formattedHours = String(hours).padStart(2, "0");
|
|
2703
|
-
const formattedMinutes = String(minutes).padStart(2, "0");
|
|
2704
|
-
return `${formattedHours}:${formattedMinutes}`;
|
|
2705
|
-
};
|
|
2706
|
-
var convertTimeToFloat = (timeString) => {
|
|
2707
|
-
const [hours, minutes] = timeString.split(":").map(Number);
|
|
2708
|
-
return hours + minutes / 60;
|
|
2709
|
-
};
|
|
2710
|
-
var stringToColor = (name, id) => {
|
|
2711
|
-
const combined = name + id / 2;
|
|
2712
|
-
let hash = 0;
|
|
2713
|
-
for (let i = 0; i < combined.length; i++) {
|
|
2714
|
-
hash = combined.charCodeAt(i) + ((hash << 5) - hash);
|
|
2715
|
-
}
|
|
2716
|
-
const r = hash >> 16 & 255;
|
|
2717
|
-
const g = hash >> 8 & 255;
|
|
2718
|
-
const b = hash & 255;
|
|
2719
|
-
const adjustedR = 120 + r % 61;
|
|
2720
|
-
const adjustedG = 120 + g % 61;
|
|
2721
|
-
const adjustedB = 120 + b % 61;
|
|
2722
|
-
return `#${adjustedR.toString(16).padStart(2, "0")}${adjustedG.toString(16).padStart(2, "0")}${adjustedB.toString(16).padStart(2, "0")}`;
|
|
2723
|
-
};
|
|
2724
|
-
var getFieldsOnChange = (fields) => {
|
|
2725
|
-
const result = [];
|
|
2726
|
-
function traverse(items) {
|
|
2727
|
-
for (const item of items) {
|
|
2728
|
-
if (item) {
|
|
2729
|
-
if (item?.type_co === "field" && matchDomains(fields, item?.on_change)) {
|
|
2730
|
-
result.push(item.name);
|
|
2731
|
-
}
|
|
2732
|
-
if (item?.fields && Array.isArray(item?.fields)) {
|
|
2733
|
-
traverse(item?.fields);
|
|
2734
|
-
}
|
|
2735
|
-
}
|
|
2736
|
-
}
|
|
2737
|
-
}
|
|
2738
|
-
traverse(fields);
|
|
2739
|
-
return result;
|
|
2740
|
-
};
|
|
2741
|
-
var filterFieldDirty = ({
|
|
2742
|
-
id,
|
|
2743
|
-
viewData,
|
|
2744
|
-
formValues,
|
|
2745
|
-
dirtyFields,
|
|
2746
|
-
model,
|
|
2747
|
-
defaultData
|
|
2748
|
-
}) => {
|
|
2749
|
-
const data = id ? { ...dirtyFields } : { ...formValues };
|
|
2750
|
-
for (const key in data) {
|
|
2751
|
-
if (viewData?.models?.[model]?.[key]?.type === "one2many" /* ONE2MANY */) {
|
|
2752
|
-
const lineData = [];
|
|
2753
|
-
(formValues[key] ?? []).forEach((itemData, index) => {
|
|
2754
|
-
if (typeof itemData?.id === "string" && itemData?.id.includes("virtual")) {
|
|
2755
|
-
delete itemData?.id;
|
|
2756
|
-
}
|
|
2757
|
-
if (!itemData?.id) {
|
|
2758
|
-
lineData.push([
|
|
2759
|
-
0 /* CREATE */,
|
|
2760
|
-
`virtual_${index}`,
|
|
2761
|
-
filterFieldDirty({
|
|
2762
|
-
id: itemData?.id,
|
|
2763
|
-
viewData,
|
|
2764
|
-
formValues: itemData,
|
|
2765
|
-
dirtyFields: {},
|
|
2766
|
-
model: viewData?.models?.[model]?.[key]?.relation,
|
|
2767
|
-
defaultData
|
|
2768
|
-
})
|
|
2769
|
-
]);
|
|
2770
|
-
} else if (dirtyFields[key]?.length) {
|
|
2771
|
-
dirtyFields[key].forEach((itemDirty, indexDirty) => {
|
|
2772
|
-
if (Object.values(itemDirty).includes(true) && indexDirty === index) {
|
|
2773
|
-
lineData.push([
|
|
2774
|
-
1 /* UPDATE */,
|
|
2775
|
-
itemData?.id,
|
|
2776
|
-
filterFieldDirty({
|
|
2777
|
-
id: itemData?.id,
|
|
2778
|
-
viewData,
|
|
2779
|
-
formValues: itemData,
|
|
2780
|
-
dirtyFields: itemDirty,
|
|
2781
|
-
model: viewData?.models?.[model]?.[key]?.relation,
|
|
2782
|
-
defaultData: {}
|
|
2783
|
-
})
|
|
2784
|
-
]);
|
|
2785
|
-
}
|
|
2786
|
-
});
|
|
2787
|
-
}
|
|
2788
|
-
});
|
|
2789
|
-
(defaultData[key] ?? []).forEach((item) => {
|
|
2790
|
-
if (!(formValues[key] ?? []).find(
|
|
2791
|
-
(itemData) => itemData?.id === item?.id
|
|
2792
|
-
)) {
|
|
2793
|
-
lineData.push([2 /* DELETE */, item?.id, item]);
|
|
2794
|
-
}
|
|
2795
|
-
});
|
|
2796
|
-
data[key] = lineData;
|
|
2797
|
-
} else if (viewData?.models?.[model]?.[key]?.type === "many2many" /* MANY2MANY */) {
|
|
2798
|
-
const lineData = [];
|
|
2799
|
-
(formValues[key] || []).forEach((itemData) => {
|
|
2800
|
-
if (itemData?.id) {
|
|
2801
|
-
lineData.push([4 /* NO_CHANGE */, itemData?.id]);
|
|
2802
|
-
}
|
|
2803
|
-
});
|
|
2804
|
-
(defaultData[key] ?? []).forEach((item) => {
|
|
2805
|
-
if (!(formValues[key] ?? []).find(
|
|
2806
|
-
(itemData) => itemData?.id === item?.id
|
|
2807
|
-
)) {
|
|
2808
|
-
lineData.push([3 /* UNLINK */, item?.id]);
|
|
2809
|
-
}
|
|
2810
|
-
});
|
|
2811
|
-
data[key] = lineData;
|
|
2812
|
-
} else {
|
|
2813
|
-
if (id && (typeof dirtyFields?.[key] === "object" && !dirtyFields?.[key]?.id || typeof dirtyFields[key] !== "object" && !dirtyFields[key])) {
|
|
2814
|
-
delete data[key];
|
|
2815
|
-
} else {
|
|
2816
|
-
if (!data[key]) {
|
|
2817
|
-
delete data[key];
|
|
2818
|
-
} else {
|
|
2819
|
-
data[key] = formValues?.[key]?.display_name ? formValues?.[key]?.id : formValues?.[key];
|
|
2820
|
-
}
|
|
2821
|
-
}
|
|
2822
|
-
}
|
|
2823
|
-
}
|
|
2824
|
-
return data;
|
|
2825
|
-
};
|
|
2826
|
-
var mergeObjects = (object1, object2) => {
|
|
2827
|
-
if (!object1 || !object2) return void 0;
|
|
2828
|
-
const mergedObject = { ...object2 };
|
|
2829
|
-
Object.keys(object1).forEach((key) => {
|
|
2830
|
-
if (Array.isArray(object1[key]) && Array.isArray(object2[key])) {
|
|
2831
|
-
mergedObject[key] = object2[key].map((item, index) => {
|
|
2832
|
-
if (object1[key][index]) {
|
|
2833
|
-
return {
|
|
2834
|
-
...item,
|
|
2835
|
-
...object1[key][index]
|
|
2836
|
-
};
|
|
2837
|
-
}
|
|
2838
|
-
return item;
|
|
2839
|
-
});
|
|
2840
|
-
} else if (typeof object1[key] === "object" && typeof object2[key] === "object" && object1[key] !== null && object2[key] !== null) {
|
|
2841
|
-
mergedObject[key] = mergeObjects(object1[key], object2[key]);
|
|
2842
|
-
} else {
|
|
2843
|
-
mergedObject[key] = object1[key] !== void 0 ? object1[key] : object2[key];
|
|
2844
|
-
}
|
|
2845
|
-
});
|
|
2846
|
-
if (object2) {
|
|
2847
|
-
Object.keys(object2).forEach((key) => {
|
|
2848
|
-
if (!mergedObject.hasOwnProperty(key)) {
|
|
2849
|
-
mergedObject[key] = object2[key];
|
|
2850
|
-
}
|
|
2851
|
-
});
|
|
2852
|
-
}
|
|
2853
|
-
return mergedObject;
|
|
2854
|
-
};
|
|
2855
|
-
var formatUrlPath = ({
|
|
2856
|
-
viewType,
|
|
2857
|
-
aid,
|
|
2858
|
-
model,
|
|
2859
|
-
id,
|
|
2860
|
-
actionPath
|
|
2861
|
-
}) => {
|
|
2862
|
-
let _url = `/${viewType}/${actionPath}?aid=${aid}&model=${model}`;
|
|
2863
|
-
if (id) {
|
|
2864
|
-
_url += `&id=${id}`;
|
|
2865
|
-
}
|
|
2866
|
-
return _url;
|
|
2867
|
-
};
|
|
2868
|
-
var removeUndefinedFields = (obj) => {
|
|
2869
|
-
const newObj = {};
|
|
2870
|
-
for (const key in obj) {
|
|
2871
|
-
if (obj[key] !== void 0) {
|
|
2872
|
-
newObj[key] = obj[key];
|
|
2873
|
-
}
|
|
2874
|
-
}
|
|
2875
|
-
return newObj;
|
|
2876
|
-
};
|
|
2877
|
-
var useTabModel = (viewData, onchangeData) => {
|
|
2878
|
-
const tabsData = viewData?.views?.form?.tabs?.filter((val) => {
|
|
2879
|
-
if (!val) return null;
|
|
2880
|
-
const hide = checkDomain(onchangeData, val.invisible);
|
|
2881
|
-
if (!hide) {
|
|
2882
|
-
return val;
|
|
2883
|
-
}
|
|
2884
|
-
return false;
|
|
2885
|
-
}) || [];
|
|
2886
|
-
return tabsData;
|
|
2887
|
-
};
|
|
2888
2160
|
var isBase64File = (str) => {
|
|
2889
2161
|
try {
|
|
2890
2162
|
const dataUriPattern = /^data:([a-zA-Z]+\/[a-zA-Z0-9-.+]+)?;base64,/;
|
|
@@ -2900,69 +2172,6 @@ var isBase64File = (str) => {
|
|
|
2900
2172
|
return false;
|
|
2901
2173
|
}
|
|
2902
2174
|
};
|
|
2903
|
-
var isBase64Image = (str) => {
|
|
2904
|
-
const base64Regex = /^data:image\/(png|jpeg|jpg|gif|webp);base64,/;
|
|
2905
|
-
if (!base64Regex.test(str)) {
|
|
2906
|
-
return false;
|
|
2907
|
-
}
|
|
2908
|
-
try {
|
|
2909
|
-
const base64Data = str.split(",")[1];
|
|
2910
|
-
return !!base64Data && atob(base64Data).length > 0;
|
|
2911
|
-
} catch (error) {
|
|
2912
|
-
return false;
|
|
2913
|
-
}
|
|
2914
|
-
};
|
|
2915
|
-
var checkIsImageLink = (url) => {
|
|
2916
|
-
const imageExtensions = /\.(jpg|jpeg|png|gif|bmp|webp|svg|tiff|ico)$/i;
|
|
2917
|
-
return imageExtensions.test(url) || isBase64Image(url);
|
|
2918
|
-
};
|
|
2919
|
-
var formatFileSize = (size) => {
|
|
2920
|
-
if (size < 1024) return `${size} B`;
|
|
2921
|
-
const i = Math.floor(Math.log(size) / Math.log(1024));
|
|
2922
|
-
const sizes = ["B", "KB", "MB", "GB", "TB"];
|
|
2923
|
-
return `${(size / Math.pow(1024, i)).toFixed(2)} ${sizes[i]}`;
|
|
2924
|
-
};
|
|
2925
|
-
var getSubdomain = (url = window.location.href) => {
|
|
2926
|
-
const parts = url?.split(".");
|
|
2927
|
-
if (parts.length > 2) {
|
|
2928
|
-
return parts[0].replace("https://", "").replace("http://", "");
|
|
2929
|
-
}
|
|
2930
|
-
return null;
|
|
2931
|
-
};
|
|
2932
|
-
var resequence = (arr, start, end) => {
|
|
2933
|
-
if (start < 0 || start >= arr.length || end < 0 || end >= arr.length) {
|
|
2934
|
-
return [];
|
|
2935
|
-
}
|
|
2936
|
-
const [element] = arr.splice(start, 1);
|
|
2937
|
-
arr.splice(end, 0, element);
|
|
2938
|
-
return arr.slice(Math.min(start, end), Math.max(start, end) + 1);
|
|
2939
|
-
};
|
|
2940
|
-
var getOffSet = (arr, start, end) => {
|
|
2941
|
-
if (start < 0 || start >= arr.length || end < 0 || end >= arr.length) {
|
|
2942
|
-
return 0;
|
|
2943
|
-
}
|
|
2944
|
-
if (start > end) {
|
|
2945
|
-
return end;
|
|
2946
|
-
}
|
|
2947
|
-
return arr.slice(0, start).length;
|
|
2948
|
-
};
|
|
2949
|
-
var copyTextToClipboard = async (text) => {
|
|
2950
|
-
if ("clipboard" in navigator) {
|
|
2951
|
-
return await navigator.clipboard.writeText(text);
|
|
2952
|
-
} else {
|
|
2953
|
-
const textArea = document.createElement("textarea");
|
|
2954
|
-
textArea.value = text;
|
|
2955
|
-
textArea.style.position = "fixed";
|
|
2956
|
-
document.body.appendChild(textArea);
|
|
2957
|
-
textArea.focus();
|
|
2958
|
-
textArea.select();
|
|
2959
|
-
try {
|
|
2960
|
-
document.execCommand("copy");
|
|
2961
|
-
} finally {
|
|
2962
|
-
document.body.removeChild(textArea);
|
|
2963
|
-
}
|
|
2964
|
-
}
|
|
2965
|
-
};
|
|
2966
2175
|
var updateTokenParamInOriginalRequest = (originalRequest, newAccessToken) => {
|
|
2967
2176
|
if (!originalRequest.data) return originalRequest.data;
|
|
2968
2177
|
if (typeof originalRequest.data === "string") {
|
|
@@ -2982,41 +2191,6 @@ var updateTokenParamInOriginalRequest = (originalRequest, newAccessToken) => {
|
|
|
2982
2191
|
}
|
|
2983
2192
|
return originalRequest.data;
|
|
2984
2193
|
};
|
|
2985
|
-
var isObjectEmpty = (obj) => {
|
|
2986
|
-
return Object.keys(obj).length === 0;
|
|
2987
|
-
};
|
|
2988
|
-
var useField = (props) => {
|
|
2989
|
-
const [invisible, setInvisible] = useState(true);
|
|
2990
|
-
const [required, setRequired] = useState(false);
|
|
2991
|
-
const [readonly, setReadOnly] = useState(false);
|
|
2992
|
-
const {
|
|
2993
|
-
invisible: inv,
|
|
2994
|
-
required: req,
|
|
2995
|
-
readonly: rea,
|
|
2996
|
-
onchangeData,
|
|
2997
|
-
rootField,
|
|
2998
|
-
index,
|
|
2999
|
-
name
|
|
3000
|
-
} = props;
|
|
3001
|
-
const nameField = rootField ? `${rootField?.name}.${index}.${name}` : null;
|
|
3002
|
-
useEffect(() => {
|
|
3003
|
-
if (onchangeData && Object.keys(onchangeData).length > 0) {
|
|
3004
|
-
setRequired(
|
|
3005
|
-
typeof req === "object" ? matchDomains(onchangeData, req) : checkDomain(onchangeData, req)
|
|
3006
|
-
);
|
|
3007
|
-
setInvisible(matchDomains(onchangeData, inv));
|
|
3008
|
-
setReadOnly(
|
|
3009
|
-
typeof req === "object" ? matchDomains(onchangeData, rea) : checkDomain(onchangeData, rea)
|
|
3010
|
-
);
|
|
3011
|
-
}
|
|
3012
|
-
}, [onchangeData]);
|
|
3013
|
-
return {
|
|
3014
|
-
invisible,
|
|
3015
|
-
required,
|
|
3016
|
-
readonly,
|
|
3017
|
-
nameField
|
|
3018
|
-
};
|
|
3019
|
-
};
|
|
3020
2194
|
|
|
3021
2195
|
// src/utils/storage/local-storage.ts
|
|
3022
2196
|
var localStorageUtils = () => {
|
|
@@ -3249,7 +2423,6 @@ var breadcrumbsSlice = createSlice({
|
|
|
3249
2423
|
}
|
|
3250
2424
|
});
|
|
3251
2425
|
var { setBreadCrumbs } = breadcrumbsSlice.actions;
|
|
3252
|
-
var selectBreadCrumbs = (state) => state.breadcrumbs;
|
|
3253
2426
|
var breadcrums_slice_default = breadcrumbsSlice.reducer;
|
|
3254
2427
|
|
|
3255
2428
|
// src/store/reducers/env-slice/index.ts
|
|
@@ -3318,7 +2491,6 @@ var {
|
|
|
3318
2491
|
setConfig,
|
|
3319
2492
|
setEnvFile
|
|
3320
2493
|
} = envSlice.actions;
|
|
3321
|
-
var selectEnv = (state) => state.env;
|
|
3322
2494
|
var env_slice_default = envSlice.reducer;
|
|
3323
2495
|
|
|
3324
2496
|
// src/store/reducers/excel-slice/index.ts
|
|
@@ -3363,7 +2535,6 @@ var {
|
|
|
3363
2535
|
setSelectedFile,
|
|
3364
2536
|
setErrorData
|
|
3365
2537
|
} = excelSlice.actions;
|
|
3366
|
-
var selectExcel = (state) => state.excel;
|
|
3367
2538
|
var excel_slice_default = excelSlice.reducer;
|
|
3368
2539
|
|
|
3369
2540
|
// src/store/reducers/form-slice/index.ts
|
|
@@ -3413,7 +2584,6 @@ var {
|
|
|
3413
2584
|
setListSubject,
|
|
3414
2585
|
setDataUser
|
|
3415
2586
|
} = formSlice.actions;
|
|
3416
|
-
var selectForm = (state) => state.form;
|
|
3417
2587
|
var form_slice_default = formSlice.reducer;
|
|
3418
2588
|
|
|
3419
2589
|
// src/store/reducers/header-slice/index.ts
|
|
@@ -3433,7 +2603,6 @@ var headerSlice = createSlice5({
|
|
|
3433
2603
|
}
|
|
3434
2604
|
});
|
|
3435
2605
|
var { setAllowedCompanyIds, setHeader } = headerSlice.actions;
|
|
3436
|
-
var selectHeader = (state) => state.header;
|
|
3437
2606
|
var header_slice_default = headerSlice.reducer;
|
|
3438
2607
|
|
|
3439
2608
|
// src/store/reducers/list-slice/index.ts
|
|
@@ -3499,7 +2668,6 @@ var {
|
|
|
3499
2668
|
setTransferDetail,
|
|
3500
2669
|
setDomainTable
|
|
3501
2670
|
} = listSlice.actions;
|
|
3502
|
-
var selectList = (state) => state.list;
|
|
3503
2671
|
var list_slice_default = listSlice.reducer;
|
|
3504
2672
|
|
|
3505
2673
|
// src/store/reducers/login-slice/index.ts
|
|
@@ -3525,7 +2693,6 @@ var loginSlice = createSlice7({
|
|
|
3525
2693
|
}
|
|
3526
2694
|
});
|
|
3527
2695
|
var { setDb, setRedirectTo, setForgotPasswordUrl } = loginSlice.actions;
|
|
3528
|
-
var selectLogin = (state) => state.login;
|
|
3529
2696
|
var login_slice_default = loginSlice.reducer;
|
|
3530
2697
|
|
|
3531
2698
|
// src/store/reducers/navbar-slice/index.ts
|
|
@@ -3555,7 +2722,6 @@ var navbarSlice = createSlice8({
|
|
|
3555
2722
|
}
|
|
3556
2723
|
});
|
|
3557
2724
|
var { setMenuFocus, setMenuFocusAction, setNavbarWidth, setMenuList } = navbarSlice.actions;
|
|
3558
|
-
var selectNavbar = (state) => state.navbar;
|
|
3559
2725
|
var navbar_slice_default = navbarSlice.reducer;
|
|
3560
2726
|
|
|
3561
2727
|
// src/store/reducers/profile-slice/index.ts
|
|
@@ -3573,7 +2739,6 @@ var profileSlice = createSlice9({
|
|
|
3573
2739
|
}
|
|
3574
2740
|
});
|
|
3575
2741
|
var { setProfile } = profileSlice.actions;
|
|
3576
|
-
var selectProfile = (state) => state.profile;
|
|
3577
2742
|
var profile_slice_default = profileSlice.reducer;
|
|
3578
2743
|
|
|
3579
2744
|
// src/store/reducers/search-slice/index.ts
|
|
@@ -3660,14 +2825,8 @@ var {
|
|
|
3660
2825
|
setGroupBy,
|
|
3661
2826
|
clearSearchMap
|
|
3662
2827
|
} = searchSlice.actions;
|
|
3663
|
-
var selectSearch = (state) => state.search;
|
|
3664
|
-
var selectSearchMap = (state) => state.search.searchMap;
|
|
3665
2828
|
var search_slice_default = searchSlice.reducer;
|
|
3666
2829
|
|
|
3667
|
-
// src/store/index.ts
|
|
3668
|
-
var useAppDispatch = useDispatch;
|
|
3669
|
-
var useAppSelector = useSelector;
|
|
3670
|
-
|
|
3671
2830
|
// src/store/store.ts
|
|
3672
2831
|
import { configureStore } from "@reduxjs/toolkit";
|
|
3673
2832
|
|
|
@@ -3935,22 +3094,12 @@ var EnvStore = class {
|
|
|
3935
3094
|
}
|
|
3936
3095
|
};
|
|
3937
3096
|
var env = null;
|
|
3938
|
-
function initEnv({
|
|
3939
|
-
localStorageUtils: localStorageUtils2,
|
|
3940
|
-
sessionStorageUtils: sessionStorageUtils2
|
|
3941
|
-
}) {
|
|
3942
|
-
env = new EnvStore(envStore, localStorageUtils2, sessionStorageUtils2);
|
|
3943
|
-
return env;
|
|
3944
|
-
}
|
|
3945
3097
|
function getEnv() {
|
|
3946
3098
|
if (!env)
|
|
3947
3099
|
env = new EnvStore(envStore, localStorageUtils(), sessionStorageUtils());
|
|
3948
3100
|
return env;
|
|
3949
3101
|
}
|
|
3950
3102
|
|
|
3951
|
-
// src/hooks/auth/use-forgot-password.ts
|
|
3952
|
-
import { useMutation } from "@tanstack/react-query";
|
|
3953
|
-
|
|
3954
3103
|
// src/services/action-service/index.ts
|
|
3955
3104
|
var ActionService = {
|
|
3956
3105
|
// Load Action
|
|
@@ -6692,241 +5841,7 @@ var useVerifyTotp = () => {
|
|
|
6692
5841
|
});
|
|
6693
5842
|
};
|
|
6694
5843
|
var use_verify_totp_default = useVerifyTotp;
|
|
6695
|
-
|
|
6696
|
-
// src/models/company-model/index.ts
|
|
6697
|
-
var CompanyModel = class extends base_model_default {
|
|
6698
|
-
constructor(init) {
|
|
6699
|
-
super(init);
|
|
6700
|
-
}
|
|
6701
|
-
async getCurrentCompany() {
|
|
6702
|
-
return await company_service_default.getCurrentCompany();
|
|
6703
|
-
}
|
|
6704
|
-
async getUserCompany(id) {
|
|
6705
|
-
return await company_service_default.getInfoCompany(id);
|
|
6706
|
-
}
|
|
6707
|
-
};
|
|
6708
|
-
var company_model_default = CompanyModel;
|
|
6709
|
-
|
|
6710
|
-
// src/models/user-model/index.ts
|
|
6711
|
-
var UserModel = class extends base_model_default {
|
|
6712
|
-
constructor(init) {
|
|
6713
|
-
super(init);
|
|
6714
|
-
}
|
|
6715
|
-
async getProfile() {
|
|
6716
|
-
return await user_service_default.getProfile();
|
|
6717
|
-
}
|
|
6718
|
-
};
|
|
6719
|
-
var user_model_default = UserModel;
|
|
6720
|
-
|
|
6721
|
-
// src/provider/react-query-provider.tsx
|
|
6722
|
-
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
6723
|
-
import { jsx } from "react/jsx-runtime";
|
|
6724
|
-
var ReactQueryProvider = ({ children }) => {
|
|
6725
|
-
const queryClient = new QueryClient({
|
|
6726
|
-
defaultOptions: {
|
|
6727
|
-
queries: {
|
|
6728
|
-
// placeholderData: keepPreviousData,
|
|
6729
|
-
refetchOnWindowFocus: false,
|
|
6730
|
-
refetchOnMount: false,
|
|
6731
|
-
refetchOnReconnect: false,
|
|
6732
|
-
retry: false
|
|
6733
|
-
}
|
|
6734
|
-
}
|
|
6735
|
-
});
|
|
6736
|
-
return /* @__PURE__ */ jsx(QueryClientProvider, { client: queryClient, children });
|
|
6737
|
-
};
|
|
6738
|
-
|
|
6739
|
-
// src/provider/redux-provider.tsx
|
|
6740
|
-
import { Provider } from "react-redux";
|
|
6741
|
-
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
6742
|
-
var ReduxProvider = ({ children }) => {
|
|
6743
|
-
return /* @__PURE__ */ jsx2(Provider, { store: envStore, children });
|
|
6744
|
-
};
|
|
6745
|
-
|
|
6746
|
-
// src/provider/main-provider.tsx
|
|
6747
|
-
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
6748
|
-
var MainProvider = ({ children }) => {
|
|
6749
|
-
return /* @__PURE__ */ jsx3(ReduxProvider, { children: /* @__PURE__ */ jsx3(ReactQueryProvider, { children }) });
|
|
6750
|
-
};
|
|
6751
|
-
|
|
6752
|
-
// src/provider/version-gate-provider.tsx
|
|
6753
|
-
import { useEffect as useEffect2, useState as useState2 } from "react";
|
|
6754
|
-
import { useQueryClient } from "@tanstack/react-query";
|
|
6755
|
-
import { Fragment, jsx as jsx4 } from "react/jsx-runtime";
|
|
6756
|
-
var VersionGate = ({ children }) => {
|
|
6757
|
-
const queryClient = useQueryClient();
|
|
6758
|
-
const [ready, setReady] = useState2(false);
|
|
6759
|
-
useEffect2(() => {
|
|
6760
|
-
const clearVersion = () => {
|
|
6761
|
-
queryClient.clear();
|
|
6762
|
-
localStorage.removeItem("__api_version__");
|
|
6763
|
-
};
|
|
6764
|
-
const validateVersion = async () => {
|
|
6765
|
-
const serverVersion = await view_service_default.getVersion();
|
|
6766
|
-
const cached = localStorage.getItem("__api_version__");
|
|
6767
|
-
if (cached !== serverVersion?.api_version) {
|
|
6768
|
-
clearVersion();
|
|
6769
|
-
localStorage.setItem("__api_version__", serverVersion?.api_version);
|
|
6770
|
-
} else {
|
|
6771
|
-
console.log("Api version:", serverVersion?.api_version);
|
|
6772
|
-
}
|
|
6773
|
-
setReady(true);
|
|
6774
|
-
};
|
|
6775
|
-
validateVersion();
|
|
6776
|
-
if (typeof window !== "undefined") {
|
|
6777
|
-
const onKey = (e) => {
|
|
6778
|
-
const key = e.key.toLowerCase();
|
|
6779
|
-
const isHardRefresh = (key === "f5" || key === "r") && e.ctrlKey && (key !== "r" || e.shiftKey) || key === "r" && e.metaKey && e.shiftKey || key === "r" && e.metaKey && e.altKey;
|
|
6780
|
-
if (isHardRefresh) clearVersion();
|
|
6781
|
-
};
|
|
6782
|
-
window.addEventListener("keydown", onKey);
|
|
6783
|
-
return () => window.removeEventListener("keydown", onKey);
|
|
6784
|
-
}
|
|
6785
|
-
}, [queryClient]);
|
|
6786
|
-
return ready ? /* @__PURE__ */ jsx4(Fragment, { children }) : null;
|
|
6787
|
-
};
|
|
6788
5844
|
export {
|
|
6789
|
-
action_service_default as ActionService,
|
|
6790
|
-
auth_service_default as AuthService,
|
|
6791
|
-
base_model_default as BaseModel,
|
|
6792
|
-
company_model_default as CompanyModel,
|
|
6793
|
-
company_service_default as CompanyService,
|
|
6794
|
-
ComponentType,
|
|
6795
|
-
EnvStore,
|
|
6796
|
-
excel_service_default as ExcelService,
|
|
6797
|
-
FieldTypeConstants,
|
|
6798
|
-
form_service_default as FormService,
|
|
6799
|
-
kanban_service_default as KanbanService,
|
|
6800
|
-
KeyConstants,
|
|
6801
|
-
MainProvider,
|
|
6802
|
-
MethodConstants,
|
|
6803
|
-
MethodType,
|
|
6804
|
-
ModelConstants,
|
|
6805
|
-
model_service_default as ModelService,
|
|
6806
|
-
ReactQueryProvider,
|
|
6807
|
-
SearchType,
|
|
6808
|
-
UriConstants,
|
|
6809
|
-
user_model_default as UserModel,
|
|
6810
|
-
user_service_default as UserService,
|
|
6811
|
-
VersionGate,
|
|
6812
|
-
view_service_default as ViewService,
|
|
6813
|
-
WIDGETAVATAR,
|
|
6814
|
-
WIDGETCOLOR,
|
|
6815
|
-
WIDGETCURRENCY,
|
|
6816
|
-
WIDGETNOSTRING,
|
|
6817
|
-
WIDGETSTATUS,
|
|
6818
|
-
WesapError,
|
|
6819
|
-
axiosClient,
|
|
6820
|
-
breadcrumbsSlice,
|
|
6821
|
-
checkIsImageLink,
|
|
6822
|
-
clearSearchMap,
|
|
6823
|
-
convertFloatToTime,
|
|
6824
|
-
convertTimeToFloat,
|
|
6825
|
-
copyTextToClipboard,
|
|
6826
|
-
domainHelper,
|
|
6827
|
-
env,
|
|
6828
|
-
envSlice,
|
|
6829
|
-
envStore,
|
|
6830
|
-
evalJSONContext,
|
|
6831
|
-
evalJSONDomain,
|
|
6832
|
-
excelSlice,
|
|
6833
|
-
filterFieldDirty,
|
|
6834
|
-
formSlice,
|
|
6835
|
-
formatCurrency,
|
|
6836
|
-
formatDate,
|
|
6837
|
-
formatFileSize,
|
|
6838
|
-
formatSortingString,
|
|
6839
|
-
formatUrlPath,
|
|
6840
|
-
getEnv,
|
|
6841
|
-
getFieldsOnChange,
|
|
6842
|
-
getOffSet,
|
|
6843
|
-
getSubdomain,
|
|
6844
|
-
handleError,
|
|
6845
|
-
headerSlice,
|
|
6846
|
-
initEnv,
|
|
6847
|
-
isBase64File,
|
|
6848
|
-
isBase64Image,
|
|
6849
|
-
isObjectEmpty,
|
|
6850
|
-
listSlice,
|
|
6851
|
-
localStorageUtils,
|
|
6852
|
-
loginSlice,
|
|
6853
|
-
mergeObjects,
|
|
6854
|
-
navbarSlice,
|
|
6855
|
-
profileSlice,
|
|
6856
|
-
removeKeyFromSearchMap,
|
|
6857
|
-
removeUndefinedFields,
|
|
6858
|
-
resequence,
|
|
6859
|
-
searchSlice,
|
|
6860
|
-
selectBreadCrumbs,
|
|
6861
|
-
selectEnv,
|
|
6862
|
-
selectExcel,
|
|
6863
|
-
selectForm,
|
|
6864
|
-
selectHeader,
|
|
6865
|
-
selectList,
|
|
6866
|
-
selectLogin,
|
|
6867
|
-
selectNavbar,
|
|
6868
|
-
selectProfile,
|
|
6869
|
-
selectSearch,
|
|
6870
|
-
selectSearchMap,
|
|
6871
|
-
sessionStorageUtils,
|
|
6872
|
-
setAllowCompanies,
|
|
6873
|
-
setAllowedCompanyIds,
|
|
6874
|
-
setBreadCrumbs,
|
|
6875
|
-
setCompanies,
|
|
6876
|
-
setConfig,
|
|
6877
|
-
setDataParse,
|
|
6878
|
-
setDataUser,
|
|
6879
|
-
setDb,
|
|
6880
|
-
setDefaultCompany,
|
|
6881
|
-
setDomainTable,
|
|
6882
|
-
setEnv,
|
|
6883
|
-
setEnvFile,
|
|
6884
|
-
setErrorData,
|
|
6885
|
-
setFieldTranslate,
|
|
6886
|
-
setFields,
|
|
6887
|
-
setFilterBy,
|
|
6888
|
-
setFirstDomain,
|
|
6889
|
-
setForgotPasswordUrl,
|
|
6890
|
-
setFormSubmitComponent,
|
|
6891
|
-
setGroupBy,
|
|
6892
|
-
setGroupByDomain,
|
|
6893
|
-
setHeader,
|
|
6894
|
-
setHoveredIndexSearchList,
|
|
6895
|
-
setIdFile,
|
|
6896
|
-
setIndexRowTableModal,
|
|
6897
|
-
setIsFileLoaded,
|
|
6898
|
-
setIsShowModalTranslate,
|
|
6899
|
-
setIsShowingModalDetail,
|
|
6900
|
-
setIsUpdateTableModal,
|
|
6901
|
-
setLang,
|
|
6902
|
-
setListSubject,
|
|
6903
|
-
setLoadingImport,
|
|
6904
|
-
setMenuFocus,
|
|
6905
|
-
setMenuFocusAction,
|
|
6906
|
-
setMenuList,
|
|
6907
|
-
setNavbarWidth,
|
|
6908
|
-
setOrder,
|
|
6909
|
-
setPage,
|
|
6910
|
-
setPageLimit,
|
|
6911
|
-
setProfile,
|
|
6912
|
-
setRedirectTo,
|
|
6913
|
-
setSearchBy,
|
|
6914
|
-
setSearchMap,
|
|
6915
|
-
setSearchString,
|
|
6916
|
-
setSelectedFile,
|
|
6917
|
-
setSelectedRadioKey,
|
|
6918
|
-
setSelectedRowKeys,
|
|
6919
|
-
setSelectedTags,
|
|
6920
|
-
setTransferDetail,
|
|
6921
|
-
setUid,
|
|
6922
|
-
setUser,
|
|
6923
|
-
setViewDataStore,
|
|
6924
|
-
stringToColor,
|
|
6925
|
-
toQueryString,
|
|
6926
|
-
updateSearchMap,
|
|
6927
|
-
updateTokenParamInOriginalRequest,
|
|
6928
|
-
useAppDispatch,
|
|
6929
|
-
useAppSelector,
|
|
6930
5845
|
use_button_default as useButton,
|
|
6931
5846
|
use_change_status_default as useChangeStatus,
|
|
6932
5847
|
use_delete_default as useDelete,
|
|
@@ -6934,7 +5849,6 @@ export {
|
|
|
6934
5849
|
use_duplicate_record_default as useDuplicateRecord,
|
|
6935
5850
|
uss_execute_import_default as useExecuteImport,
|
|
6936
5851
|
use_export_excel_default as useExportExcel,
|
|
6937
|
-
useField,
|
|
6938
5852
|
use_forgot_password_default as useForgotPassword,
|
|
6939
5853
|
use_forgotpassword_sso_default as useForgotPasswordSSO,
|
|
6940
5854
|
uset_get_2FA_method_default as useGet2FAMethods,
|
|
@@ -6990,12 +5904,10 @@ export {
|
|
|
6990
5904
|
use_settings_web_read_2fa_default as useSettingsWebRead2fa,
|
|
6991
5905
|
use_signin_sso_default as useSignInSSO,
|
|
6992
5906
|
use_switch_locale_default as useSwitchLocale,
|
|
6993
|
-
useTabModel,
|
|
6994
5907
|
use_update_password_default as useUpdatePassword,
|
|
6995
5908
|
use_upload_file_default as useUploadFile,
|
|
6996
5909
|
use_upload_id_file_default as useUploadIdFile,
|
|
6997
5910
|
use_upload_image_default as useUploadImage,
|
|
6998
5911
|
use_verify_2FA_default as useVerify2FA,
|
|
6999
|
-
use_verify_totp_default as useVerifyTotp
|
|
7000
|
-
validateAndParseDate
|
|
5912
|
+
use_verify_totp_default as useVerifyTotp
|
|
7001
5913
|
};
|