@fctc/interface-logic 1.7.2 → 1.7.4

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.
Files changed (40) hide show
  1. package/dist/{configs.d.cts → configs.d.mts} +1 -4
  2. package/dist/configs.d.ts +1 -4
  3. package/dist/configs.js +146 -124
  4. package/dist/{configs.cjs → configs.mjs} +111 -161
  5. package/dist/constants.js +41 -2
  6. package/dist/{constants.cjs → constants.mjs} +2 -40
  7. package/dist/environment.d.mts +37 -0
  8. package/dist/environment.d.ts +35 -54
  9. package/dist/environment.js +2850 -2906
  10. package/dist/{environment.cjs → environment.mjs} +2816 -2945
  11. package/dist/{hooks.d.cts → hooks.d.mts} +7 -2
  12. package/dist/hooks.d.ts +7 -2
  13. package/dist/hooks.js +4181 -4520
  14. package/dist/{hooks.cjs → hooks.mjs} +4081 -4625
  15. package/dist/{provider.d.cts → provider.d.mts} +1 -1
  16. package/dist/provider.d.ts +1 -1
  17. package/dist/provider.js +530 -854
  18. package/dist/{provider.cjs → provider.mjs} +496 -894
  19. package/dist/{services.d.cts → services.d.mts} +2 -1
  20. package/dist/services.d.ts +2 -1
  21. package/dist/services.js +3866 -4282
  22. package/dist/{services.cjs → services.mjs} +3826 -4328
  23. package/dist/{store.d.cts → store.d.mts} +323 -127
  24. package/dist/store.d.ts +323 -127
  25. package/dist/store.js +147 -45
  26. package/dist/{store.cjs → store.mjs} +46 -150
  27. package/dist/{types.d.cts → types.d.mts} +1 -1
  28. package/dist/types.d.ts +1 -1
  29. package/dist/types.js +18 -0
  30. package/dist/types.mjs +0 -0
  31. package/dist/{utils.d.cts → utils.d.mts} +2 -2
  32. package/dist/utils.d.ts +2 -2
  33. package/dist/utils.js +176 -135
  34. package/dist/{utils.cjs → utils.mjs} +115 -202
  35. package/dist/{view-type-BGJfDe73.d.ts → view-type-D8ukwj_2.d.mts} +1 -1
  36. package/dist/{view-type-BGJfDe73.d.cts → view-type-D8ukwj_2.d.ts} +1 -1
  37. package/package.json +81 -82
  38. package/dist/environment.d.cts +0 -56
  39. package/dist/types.cjs +0 -17
  40. /package/dist/{constants.d.cts → constants.d.mts} +0 -0
@@ -1,104 +1,6 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __pow = Math.pow;
10
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
- var __spreadValues = (a, b) => {
12
- for (var prop in b || (b = {}))
13
- if (__hasOwnProp.call(b, prop))
14
- __defNormalProp(a, prop, b[prop]);
15
- if (__getOwnPropSymbols)
16
- for (var prop of __getOwnPropSymbols(b)) {
17
- if (__propIsEnum.call(b, prop))
18
- __defNormalProp(a, prop, b[prop]);
19
- }
20
- return a;
21
- };
22
- var __export = (target, all) => {
23
- for (var name in all)
24
- __defProp(target, name, { get: all[name], enumerable: true });
25
- };
26
- var __copyProps = (to, from, except, desc) => {
27
- if (from && typeof from === "object" || typeof from === "function") {
28
- for (let key of __getOwnPropNames(from))
29
- if (!__hasOwnProp.call(to, key) && key !== except)
30
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
31
- }
32
- return to;
33
- };
34
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
35
- // If the importer is in node compatibility mode or this is not an ESM
36
- // file that has been converted to a CommonJS file using a Babel-
37
- // compatible transform (i.e. "__esModule" has not been set), then set
38
- // "default" to the CommonJS "module.exports" for node compatibility.
39
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
40
- mod
41
- ));
42
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
43
- var __async = (__this, __arguments, generator) => {
44
- return new Promise((resolve, reject) => {
45
- var fulfilled = (value) => {
46
- try {
47
- step(generator.next(value));
48
- } catch (e) {
49
- reject(e);
50
- }
51
- };
52
- var rejected = (value) => {
53
- try {
54
- step(generator.throw(value));
55
- } catch (e) {
56
- reject(e);
57
- }
58
- };
59
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
60
- step((generator = generator.apply(__this, __arguments)).next());
61
- });
62
- };
63
-
64
- // src/utils.ts
65
- var utils_exports = {};
66
- __export(utils_exports, {
67
- WesapError: () => WesapError,
68
- checkIsImageLink: () => checkIsImageLink,
69
- convertFloatToTime: () => convertFloatToTime,
70
- convertTimeToFloat: () => convertTimeToFloat,
71
- copyTextToClipboard: () => copyTextToClipboard,
72
- domainHelper: () => domainHelper,
73
- evalJSONContext: () => evalJSONContext,
74
- evalJSONDomain: () => evalJSONDomain,
75
- filterFieldDirty: () => filterFieldDirty,
76
- formatCurrency: () => formatCurrency,
77
- formatDate: () => formatDate,
78
- formatFileSize: () => formatFileSize,
79
- formatSortingString: () => formatSortingString,
80
- formatUrlPath: () => formatUrlPath,
81
- getFieldsOnChange: () => getFieldsOnChange,
82
- getOffSet: () => getOffSet,
83
- getSubdomain: () => getSubdomain,
84
- handleError: () => handleError,
85
- isBase64File: () => isBase64File,
86
- isBase64Image: () => isBase64Image,
87
- isObjectEmpty: () => isObjectEmpty,
88
- mergeObjects: () => mergeObjects,
89
- removeUndefinedFields: () => removeUndefinedFields,
90
- resequence: () => resequence,
91
- stringToColor: () => stringToColor,
92
- toQueryString: () => toQueryString,
93
- updateTokenParamInOriginalRequest: () => updateTokenParamInOriginalRequest,
94
- useField: () => useField,
95
- useTabModel: () => useTabModel,
96
- validateAndParseDate: () => validateAndParseDate
97
- });
98
- module.exports = __toCommonJS(utils_exports);
99
-
100
1
  // src/utils/error-handler.ts
101
2
  var WesapError = class extends Error {
3
+ code;
102
4
  constructor(message, code) {
103
5
  super(message);
104
6
  this.code = code;
@@ -113,7 +15,7 @@ function handleError(error, env) {
113
15
  }
114
16
 
115
17
  // src/utils/format.ts
116
- var import_moment = __toESM(require("moment"), 1);
18
+ import moment from "moment";
117
19
  var formatCurrency = (amount, currency = "USD") => {
118
20
  const formatter = new Intl.NumberFormat("vi-VN", {
119
21
  style: "currency",
@@ -130,13 +32,13 @@ var validateAndParseDate = (input, isDateTime = false) => {
130
32
  const cleanInput = input.replace(/[^0-9-\/:\s]/g, "");
131
33
  const dateFormat = "YYYY-MM-DD";
132
34
  const dateTimeFormat = "YYYY-MM-DD HH:mm:ss";
133
- const currentDay = (0, import_moment.default)().format("DD");
134
- const currentMonth = (0, import_moment.default)().format("MM");
135
- const currentYear = (0, import_moment.default)().format("YYYY");
35
+ const currentDay = moment().format("DD");
36
+ const currentMonth = moment().format("MM");
37
+ const currentYear = moment().format("YYYY");
136
38
  const defaultTime = "00:00:00";
137
39
  const maxYear = parseInt(currentYear) + 10;
138
40
  const isValidDate = (day, month, year) => {
139
- const date = (0, import_moment.default)(`${day}-${month}-${year}`, "DD-MM-YYYY", true);
41
+ const date = moment(`${day}-${month}-${year}`, "DD-MM-YYYY", true);
140
42
  return date.isValid();
141
43
  };
142
44
  const isValidTime = (hour, minute = "00", second = "00") => {
@@ -146,7 +48,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
146
48
  return h >= 0 && h <= 23 && m >= 0 && m <= 59 && s >= 0 && s <= 59;
147
49
  };
148
50
  const formatOutput = (day, month, year, time = defaultTime) => {
149
- let result = (0, import_moment.default)(
51
+ let result = moment(
150
52
  `${day}-${month}-${year} ${time}`,
151
53
  "DD-MM-YYYY HH:mm:ss"
152
54
  );
@@ -170,7 +72,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
170
72
  const minute = timeParts[1] ? timeParts[1].padStart(2, "0") : "00";
171
73
  const second = timeParts[2] ? timeParts[2].padStart(2, "0") : "00";
172
74
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
173
- let result = (0, import_moment.default)(
75
+ let result = moment(
174
76
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
175
77
  "DD-MM-YYYY HH:mm:ss"
176
78
  );
@@ -233,7 +135,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
233
135
  }
234
136
  if (cleanInput.startsWith("-") && /^\-\d+$/.test(cleanInput)) {
235
137
  const daysToSubtract = Math.abs(parseInt(cleanInput, 10));
236
- let result = (0, import_moment.default)().subtract(daysToSubtract, "days");
138
+ let result = moment().subtract(daysToSubtract, "days");
237
139
  if (isDateTime) {
238
140
  result = result.subtract(7, "hours");
239
141
  }
@@ -260,7 +162,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
260
162
  const year = cleanInput.slice(4, 8);
261
163
  const hour = cleanInput.slice(8, 9).padStart(2, "0");
262
164
  if (isValidDate(day, month, year) && isValidTime(hour)) {
263
- let result = (0, import_moment.default)(
165
+ let result = moment(
264
166
  `${day}-${month}-${year} ${hour}:00:00`,
265
167
  "DD-MM-YYYY HH:mm:ss"
266
168
  );
@@ -276,7 +178,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
276
178
  const year = cleanInput.slice(4, 8);
277
179
  const hour = cleanInput.slice(8, 10);
278
180
  if (isValidDate(day, month, year) && isValidTime(hour)) {
279
- let result = (0, import_moment.default)(
181
+ let result = moment(
280
182
  `${day}-${month}-${year} ${hour}:00:00`,
281
183
  "DD-MM-YYYY HH:mm:ss"
282
184
  );
@@ -293,7 +195,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
293
195
  const hour = cleanInput.slice(8, 10);
294
196
  const minute = cleanInput.slice(10, 11).padStart(2, "0");
295
197
  if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
296
- let result = (0, import_moment.default)(
198
+ let result = moment(
297
199
  `${day}-${month}-${year} ${hour}:${minute}:00`,
298
200
  "DD-MM-YYYY HH:mm:ss"
299
201
  );
@@ -310,7 +212,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
310
212
  const hour = cleanInput.slice(8, 10);
311
213
  const minute = cleanInput.slice(10, 12);
312
214
  if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
313
- let result = (0, import_moment.default)(
215
+ let result = moment(
314
216
  `${day}-${month}-${year} ${hour}:${minute}:00`,
315
217
  "DD-MM-YYYY HH:mm:ss"
316
218
  );
@@ -328,7 +230,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
328
230
  const minute = cleanInput.slice(10, 12);
329
231
  const second = cleanInput.slice(12, 13).padStart(2, "0");
330
232
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
331
- let result = (0, import_moment.default)(
233
+ let result = moment(
332
234
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
333
235
  "DD-MM-YYYY HH:mm:ss"
334
236
  );
@@ -346,7 +248,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
346
248
  const minute = cleanInput.slice(10, 12);
347
249
  const second = cleanInput.slice(12, 14);
348
250
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
349
- let result = (0, import_moment.default)(
251
+ let result = moment(
350
252
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
351
253
  "DD-MM-YYYY HH:mm:ss"
352
254
  );
@@ -1485,6 +1387,22 @@ var PyRelativeDelta = class _PyRelativeDelta {
1485
1387
  this.microsecond = params.microsecond;
1486
1388
  this.weekday = params.weekday;
1487
1389
  }
1390
+ years;
1391
+ months;
1392
+ days;
1393
+ hours;
1394
+ minutes;
1395
+ seconds;
1396
+ microseconds;
1397
+ leapDays;
1398
+ year;
1399
+ month;
1400
+ day;
1401
+ hour;
1402
+ minute;
1403
+ second;
1404
+ microsecond;
1405
+ weekday;
1488
1406
  negate() {
1489
1407
  return new _PyRelativeDelta(this, -1);
1490
1408
  }
@@ -1599,7 +1517,7 @@ function execOnIterable(iterable, func) {
1599
1517
  if (typeof iterable === "object" && !Array.isArray(iterable) && !(iterable instanceof Set)) {
1600
1518
  iterable = Object.keys(iterable);
1601
1519
  }
1602
- if (typeof (iterable == null ? void 0 : iterable[Symbol.iterator]) !== "function") {
1520
+ if (typeof iterable?.[Symbol.iterator] !== "function") {
1603
1521
  throw new EvaluationError("value not iterable");
1604
1522
  }
1605
1523
  return func(iterable);
@@ -1922,7 +1840,7 @@ function applyBinaryOp(ast, context) {
1922
1840
  }
1923
1841
  return Math.floor(left / right);
1924
1842
  case "**":
1925
- return __pow(left, right);
1843
+ return left ** right;
1926
1844
  case "==":
1927
1845
  return isEqual(left, right);
1928
1846
  case "<>":
@@ -2044,7 +1962,7 @@ function evaluate(ast, context = {}) {
2044
1962
  const dicts = /* @__PURE__ */ new Set();
2045
1963
  let pyContext;
2046
1964
  const evalContext = Object.create(context);
2047
- if (!(evalContext == null ? void 0 : evalContext.context)) {
1965
+ if (!evalContext?.context) {
2048
1966
  Object.defineProperty(evalContext, "context", {
2049
1967
  get() {
2050
1968
  if (!pyContext) {
@@ -2055,18 +1973,17 @@ function evaluate(ast, context = {}) {
2055
1973
  });
2056
1974
  }
2057
1975
  function _innerEvaluate(ast2) {
2058
- var _a, _b, _c;
2059
- switch (ast2 == null ? void 0 : ast2.type) {
1976
+ switch (ast2?.type) {
2060
1977
  case 0:
2061
1978
  // Number
2062
1979
  case 1:
2063
1980
  return ast2.value;
2064
1981
  case 5:
2065
1982
  if (ast2.value in evalContext) {
2066
- if (typeof evalContext[ast2.value] === "object" && ((_a = evalContext[ast2.value]) == null ? void 0 : _a.id)) {
2067
- return (_b = evalContext[ast2.value]) == null ? void 0 : _b.id;
1983
+ if (typeof evalContext[ast2.value] === "object" && evalContext[ast2.value]?.id) {
1984
+ return evalContext[ast2.value]?.id;
2068
1985
  }
2069
- return (_c = evalContext[ast2.value]) != null ? _c : false;
1986
+ return evalContext[ast2.value] ?? false;
2070
1987
  } else if (ast2.value in BUILTINS) {
2071
1988
  return BUILTINS[ast2.value];
2072
1989
  } else {
@@ -2103,7 +2020,7 @@ function evaluate(ast, context = {}) {
2103
2020
  const args = ast2.args.map(_evaluate);
2104
2021
  const kwargs = {};
2105
2022
  for (const kwarg in ast2.kwargs) {
2106
- kwargs[kwarg] = _evaluate(ast2 == null ? void 0 : ast2.kwargs[kwarg]);
2023
+ kwargs[kwarg] = _evaluate(ast2?.kwargs[kwarg]);
2107
2024
  }
2108
2025
  if (fnValue === PyDate || fnValue === PyDateTime || fnValue === PyTime || fnValue === PyRelativeDelta || fnValue === PyTimeDelta) {
2109
2026
  return fnValue.create(...args, kwargs);
@@ -2196,7 +2113,7 @@ function evalPartialContext(_context, evaluationContext = {}) {
2196
2113
  const value = ast.value[key];
2197
2114
  try {
2198
2115
  context[key] = evaluate(value, evaluationContext);
2199
- } catch (e) {
2116
+ } catch {
2200
2117
  }
2201
2118
  }
2202
2119
  return context;
@@ -2224,25 +2141,9 @@ function escapeRegExp(str) {
2224
2141
  var InvalidDomainError = class extends Error {
2225
2142
  };
2226
2143
  var Domain = class _Domain {
2227
- constructor(descr = []) {
2228
- this.ast = { type: -1, value: null };
2229
- if (descr instanceof _Domain) {
2230
- return new _Domain(descr.toString());
2231
- } else {
2232
- let rawAST;
2233
- try {
2234
- rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
2235
- } catch (error) {
2236
- throw new InvalidDomainError(
2237
- `Invalid domain representation: ${descr}`,
2238
- {
2239
- cause: error
2240
- }
2241
- );
2242
- }
2243
- this.ast = normalizeDomainAST(rawAST);
2244
- }
2245
- }
2144
+ ast = { type: -1, value: null };
2145
+ static TRUE;
2146
+ static FALSE;
2246
2147
  static combine(domains, operator) {
2247
2148
  if (domains.length === 0) {
2248
2149
  return new _Domain([]);
@@ -2321,6 +2222,24 @@ var Domain = class _Domain {
2321
2222
  processLeaf(d.ast.value, 0, "&", newDomain);
2322
2223
  return newDomain;
2323
2224
  }
2225
+ constructor(descr = []) {
2226
+ if (descr instanceof _Domain) {
2227
+ return new _Domain(descr.toString());
2228
+ } else {
2229
+ let rawAST;
2230
+ try {
2231
+ rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
2232
+ } catch (error) {
2233
+ throw new InvalidDomainError(
2234
+ `Invalid domain representation: ${descr}`,
2235
+ {
2236
+ cause: error
2237
+ }
2238
+ );
2239
+ }
2240
+ this.ast = normalizeDomainAST(rawAST);
2241
+ }
2242
+ }
2324
2243
  contains(record) {
2325
2244
  const expr = evaluate(this.ast, record);
2326
2245
  return matchDomain(record, expr);
@@ -2339,7 +2258,7 @@ var Domain = class _Domain {
2339
2258
  return evaluatedAsList;
2340
2259
  }
2341
2260
  return this.toString();
2342
- } catch (e) {
2261
+ } catch {
2343
2262
  return this.toString();
2344
2263
  }
2345
2264
  }
@@ -2563,7 +2482,7 @@ var checkDomain = (context, domain) => {
2563
2482
  };
2564
2483
  var matchDomains = (context, domains) => {
2565
2484
  if (Array.isArray(domains)) {
2566
- if ((domains == null ? void 0 : domains.length) > 0) {
2485
+ if (domains?.length > 0) {
2567
2486
  return domains && domains.some((domain) => checkDomain(context, domain));
2568
2487
  }
2569
2488
  } else return checkDomain(context, domains);
@@ -2571,7 +2490,7 @@ var matchDomains = (context, domains) => {
2571
2490
  };
2572
2491
 
2573
2492
  // src/utils/function.ts
2574
- var import_react = require("react");
2493
+ import { useEffect, useState } from "react";
2575
2494
  var evalJSONContext = (_context, context = {}) => {
2576
2495
  try {
2577
2496
  return evalPartialContext(_context, context);
@@ -2580,17 +2499,15 @@ var evalJSONContext = (_context, context = {}) => {
2580
2499
  }
2581
2500
  };
2582
2501
  var evalJSONDomain = (domain, context) => {
2583
- var _a;
2584
2502
  try {
2585
2503
  if (context) {
2586
- (_a = Object.keys(context)) == null ? void 0 : _a.forEach((key) => {
2587
- var _a2, _b;
2504
+ Object.keys(context)?.forEach((key) => {
2588
2505
  if (Array.isArray(context[key])) {
2589
- const isTypeObject = (_a2 = context[key]) == null ? void 0 : _a2.every(
2590
- (item) => typeof item === "object" && item !== null && (item == null ? void 0 : item.id) !== void 0
2506
+ const isTypeObject = context[key]?.every(
2507
+ (item) => typeof item === "object" && item !== null && item?.id !== void 0
2591
2508
  );
2592
2509
  if (isTypeObject) {
2593
- context[key] = (_b = context[key]) == null ? void 0 : _b.map((item) => item == null ? void 0 : item.id);
2510
+ context[key] = context[key]?.map((item) => item?.id);
2594
2511
  }
2595
2512
  }
2596
2513
  });
@@ -2610,7 +2527,7 @@ var formatSortingString = (input) => {
2610
2527
  if (!input) return null;
2611
2528
  return input.split(",").map((field) => {
2612
2529
  const [key, order] = field.trim().split(/\s+/);
2613
- const sortOrder = (order == null ? void 0 : order.toUpperCase()) === "DESC" ? "DESC" : "ASC";
2530
+ const sortOrder = order?.toUpperCase() === "DESC" ? "DESC" : "ASC";
2614
2531
  return `${key} ${sortOrder}`;
2615
2532
  }).join(", ");
2616
2533
  };
@@ -2654,11 +2571,11 @@ var getFieldsOnChange = (fields) => {
2654
2571
  function traverse(items) {
2655
2572
  for (const item of items) {
2656
2573
  if (item) {
2657
- if ((item == null ? void 0 : item.type_co) === "field" && matchDomains(fields, item == null ? void 0 : item.on_change)) {
2574
+ if (item?.type_co === "field" && matchDomains(fields, item?.on_change)) {
2658
2575
  result.push(item.name);
2659
2576
  }
2660
- if ((item == null ? void 0 : item.fields) && Array.isArray(item == null ? void 0 : item.fields)) {
2661
- traverse(item == null ? void 0 : item.fields);
2577
+ if (item?.fields && Array.isArray(item?.fields)) {
2578
+ traverse(item?.fields);
2662
2579
  }
2663
2580
  }
2664
2581
  }
@@ -2674,42 +2591,39 @@ var filterFieldDirty = ({
2674
2591
  model,
2675
2592
  defaultData
2676
2593
  }) => {
2677
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
2678
- const data = id ? __spreadValues({}, dirtyFields) : __spreadValues({}, formValues);
2594
+ const data = id ? { ...dirtyFields } : { ...formValues };
2679
2595
  for (const key in data) {
2680
- if (((_c = (_b = (_a = viewData == null ? void 0 : viewData.models) == null ? void 0 : _a[model]) == null ? void 0 : _b[key]) == null ? void 0 : _c.type) === "one2many" /* ONE2MANY */) {
2596
+ if (viewData?.models?.[model]?.[key]?.type === "one2many" /* ONE2MANY */) {
2681
2597
  const lineData = [];
2682
- ((_d = formValues[key]) != null ? _d : []).forEach((itemData, index) => {
2683
- var _a2, _b2, _c2, _d2;
2684
- if (typeof (itemData == null ? void 0 : itemData.id) === "string" && (itemData == null ? void 0 : itemData.id.includes("virtual"))) {
2685
- itemData == null ? true : delete itemData.id;
2598
+ (formValues[key] ?? []).forEach((itemData, index) => {
2599
+ if (typeof itemData?.id === "string" && itemData?.id.includes("virtual")) {
2600
+ delete itemData?.id;
2686
2601
  }
2687
- if (!(itemData == null ? void 0 : itemData.id)) {
2602
+ if (!itemData?.id) {
2688
2603
  lineData.push([
2689
2604
  0 /* CREATE */,
2690
2605
  `virtual_${index}`,
2691
2606
  filterFieldDirty({
2692
- id: itemData == null ? void 0 : itemData.id,
2607
+ id: itemData?.id,
2693
2608
  viewData,
2694
2609
  formValues: itemData,
2695
2610
  dirtyFields: {},
2696
- model: (_c2 = (_b2 = (_a2 = viewData == null ? void 0 : viewData.models) == null ? void 0 : _a2[model]) == null ? void 0 : _b2[key]) == null ? void 0 : _c2.relation,
2611
+ model: viewData?.models?.[model]?.[key]?.relation,
2697
2612
  defaultData
2698
2613
  })
2699
2614
  ]);
2700
- } else if ((_d2 = dirtyFields[key]) == null ? void 0 : _d2.length) {
2615
+ } else if (dirtyFields[key]?.length) {
2701
2616
  dirtyFields[key].forEach((itemDirty, indexDirty) => {
2702
- var _a3, _b3, _c3;
2703
2617
  if (Object.values(itemDirty).includes(true) && indexDirty === index) {
2704
2618
  lineData.push([
2705
2619
  1 /* UPDATE */,
2706
- itemData == null ? void 0 : itemData.id,
2620
+ itemData?.id,
2707
2621
  filterFieldDirty({
2708
- id: itemData == null ? void 0 : itemData.id,
2622
+ id: itemData?.id,
2709
2623
  viewData,
2710
2624
  formValues: itemData,
2711
2625
  dirtyFields: itemDirty,
2712
- model: (_c3 = (_b3 = (_a3 = viewData == null ? void 0 : viewData.models) == null ? void 0 : _a3[model]) == null ? void 0 : _b3[key]) == null ? void 0 : _c3.relation,
2626
+ model: viewData?.models?.[model]?.[key]?.relation,
2713
2627
  defaultData: {}
2714
2628
  })
2715
2629
  ]);
@@ -2717,39 +2631,37 @@ var filterFieldDirty = ({
2717
2631
  });
2718
2632
  }
2719
2633
  });
2720
- ((_e = defaultData[key]) != null ? _e : []).forEach((item) => {
2721
- var _a2;
2722
- if (!((_a2 = formValues[key]) != null ? _a2 : []).find(
2723
- (itemData) => (itemData == null ? void 0 : itemData.id) === (item == null ? void 0 : item.id)
2634
+ (defaultData[key] ?? []).forEach((item) => {
2635
+ if (!(formValues[key] ?? []).find(
2636
+ (itemData) => itemData?.id === item?.id
2724
2637
  )) {
2725
- lineData.push([2 /* DELETE */, item == null ? void 0 : item.id, item]);
2638
+ lineData.push([2 /* DELETE */, item?.id, item]);
2726
2639
  }
2727
2640
  });
2728
2641
  data[key] = lineData;
2729
- } else if (((_h = (_g = (_f = viewData == null ? void 0 : viewData.models) == null ? void 0 : _f[model]) == null ? void 0 : _g[key]) == null ? void 0 : _h.type) === "many2many" /* MANY2MANY */) {
2642
+ } else if (viewData?.models?.[model]?.[key]?.type === "many2many" /* MANY2MANY */) {
2730
2643
  const lineData = [];
2731
2644
  (formValues[key] || []).forEach((itemData) => {
2732
- if (itemData == null ? void 0 : itemData.id) {
2733
- lineData.push([4 /* NO_CHANGE */, itemData == null ? void 0 : itemData.id]);
2645
+ if (itemData?.id) {
2646
+ lineData.push([4 /* NO_CHANGE */, itemData?.id]);
2734
2647
  }
2735
2648
  });
2736
- ((_i = defaultData[key]) != null ? _i : []).forEach((item) => {
2737
- var _a2;
2738
- if (!((_a2 = formValues[key]) != null ? _a2 : []).find(
2739
- (itemData) => (itemData == null ? void 0 : itemData.id) === (item == null ? void 0 : item.id)
2649
+ (defaultData[key] ?? []).forEach((item) => {
2650
+ if (!(formValues[key] ?? []).find(
2651
+ (itemData) => itemData?.id === item?.id
2740
2652
  )) {
2741
- lineData.push([3 /* UNLINK */, item == null ? void 0 : item.id]);
2653
+ lineData.push([3 /* UNLINK */, item?.id]);
2742
2654
  }
2743
2655
  });
2744
2656
  data[key] = lineData;
2745
2657
  } else {
2746
- if (id && (typeof (dirtyFields == null ? void 0 : dirtyFields[key]) === "object" && !((_j = dirtyFields == null ? void 0 : dirtyFields[key]) == null ? void 0 : _j.id) || typeof dirtyFields[key] !== "object" && !dirtyFields[key])) {
2658
+ if (id && (typeof dirtyFields?.[key] === "object" && !dirtyFields?.[key]?.id || typeof dirtyFields[key] !== "object" && !dirtyFields[key])) {
2747
2659
  delete data[key];
2748
2660
  } else {
2749
2661
  if (!data[key]) {
2750
2662
  delete data[key];
2751
2663
  } else {
2752
- data[key] = ((_k = formValues == null ? void 0 : formValues[key]) == null ? void 0 : _k.display_name) ? (_l = formValues == null ? void 0 : formValues[key]) == null ? void 0 : _l.id : formValues == null ? void 0 : formValues[key];
2664
+ data[key] = formValues?.[key]?.display_name ? formValues?.[key]?.id : formValues?.[key];
2753
2665
  }
2754
2666
  }
2755
2667
  }
@@ -2758,12 +2670,15 @@ var filterFieldDirty = ({
2758
2670
  };
2759
2671
  var mergeObjects = (object1, object2) => {
2760
2672
  if (!object1 || !object2) return void 0;
2761
- const mergedObject = __spreadValues({}, object2);
2673
+ const mergedObject = { ...object2 };
2762
2674
  Object.keys(object1).forEach((key) => {
2763
2675
  if (Array.isArray(object1[key]) && Array.isArray(object2[key])) {
2764
2676
  mergedObject[key] = object2[key].map((item, index) => {
2765
2677
  if (object1[key][index]) {
2766
- return __spreadValues(__spreadValues({}, item), object1[key][index]);
2678
+ return {
2679
+ ...item,
2680
+ ...object1[key][index]
2681
+ };
2767
2682
  }
2768
2683
  return item;
2769
2684
  });
@@ -2805,15 +2720,14 @@ var removeUndefinedFields = (obj) => {
2805
2720
  return newObj;
2806
2721
  };
2807
2722
  var useTabModel = (viewData, onchangeData) => {
2808
- var _a, _b, _c;
2809
- const tabsData = ((_c = (_b = (_a = viewData == null ? void 0 : viewData.views) == null ? void 0 : _a.form) == null ? void 0 : _b.tabs) == null ? void 0 : _c.filter((val) => {
2723
+ const tabsData = viewData?.views?.form?.tabs?.filter((val) => {
2810
2724
  if (!val) return null;
2811
2725
  const hide = checkDomain(onchangeData, val.invisible);
2812
2726
  if (!hide) {
2813
2727
  return val;
2814
2728
  }
2815
2729
  return false;
2816
- })) || [];
2730
+ }) || [];
2817
2731
  return tabsData;
2818
2732
  };
2819
2733
  var isBase64File = (str) => {
@@ -2854,7 +2768,7 @@ var formatFileSize = (size) => {
2854
2768
  return `${(size / Math.pow(1024, i)).toFixed(2)} ${sizes[i]}`;
2855
2769
  };
2856
2770
  var getSubdomain = (url = window.location.href) => {
2857
- const parts = url == null ? void 0 : url.split(".");
2771
+ const parts = url?.split(".");
2858
2772
  if (parts.length > 2) {
2859
2773
  return parts[0].replace("https://", "").replace("http://", "");
2860
2774
  }
@@ -2877,9 +2791,9 @@ var getOffSet = (arr, start, end) => {
2877
2791
  }
2878
2792
  return arr.slice(0, start).length;
2879
2793
  };
2880
- var copyTextToClipboard = (text) => __async(null, null, function* () {
2794
+ var copyTextToClipboard = async (text) => {
2881
2795
  if ("clipboard" in navigator) {
2882
- return yield navigator.clipboard.writeText(text);
2796
+ return await navigator.clipboard.writeText(text);
2883
2797
  } else {
2884
2798
  const textArea = document.createElement("textarea");
2885
2799
  textArea.value = text;
@@ -2893,7 +2807,7 @@ var copyTextToClipboard = (text) => __async(null, null, function* () {
2893
2807
  document.body.removeChild(textArea);
2894
2808
  }
2895
2809
  }
2896
- });
2810
+ };
2897
2811
  var updateTokenParamInOriginalRequest = (originalRequest, newAccessToken) => {
2898
2812
  if (!originalRequest.data) return originalRequest.data;
2899
2813
  if (typeof originalRequest.data === "string") {
@@ -2917,9 +2831,9 @@ var isObjectEmpty = (obj) => {
2917
2831
  return Object.keys(obj).length === 0;
2918
2832
  };
2919
2833
  var useField = (props) => {
2920
- const [invisible, setInvisible] = (0, import_react.useState)(true);
2921
- const [required, setRequired] = (0, import_react.useState)(false);
2922
- const [readonly, setReadOnly] = (0, import_react.useState)(false);
2834
+ const [invisible, setInvisible] = useState(true);
2835
+ const [required, setRequired] = useState(false);
2836
+ const [readonly, setReadOnly] = useState(false);
2923
2837
  const {
2924
2838
  invisible: inv,
2925
2839
  required: req,
@@ -2929,8 +2843,8 @@ var useField = (props) => {
2929
2843
  index,
2930
2844
  name
2931
2845
  } = props;
2932
- const nameField = rootField ? `${rootField == null ? void 0 : rootField.name}.${index}.${name}` : null;
2933
- (0, import_react.useEffect)(() => {
2846
+ const nameField = rootField ? `${rootField?.name}.${index}.${name}` : null;
2847
+ useEffect(() => {
2934
2848
  if (onchangeData && Object.keys(onchangeData).length > 0) {
2935
2849
  setRequired(
2936
2850
  typeof req === "object" ? matchDomains(onchangeData, req) : checkDomain(onchangeData, req)
@@ -2948,8 +2862,7 @@ var useField = (props) => {
2948
2862
  nameField
2949
2863
  };
2950
2864
  };
2951
- // Annotate the CommonJS export names for ESM import in node:
2952
- 0 && (module.exports = {
2865
+ export {
2953
2866
  WesapError,
2954
2867
  checkIsImageLink,
2955
2868
  convertFloatToTime,
@@ -2980,4 +2893,4 @@ var useField = (props) => {
2980
2893
  useField,
2981
2894
  useTabModel,
2982
2895
  validateAndParseDate
2983
- });
2896
+ };
@@ -110,4 +110,4 @@ interface GetViewParams {
110
110
  aid?: number | string | null | boolean;
111
111
  }
112
112
 
113
- export type { ContextApi as C, DeleteParams as D, ForgotPasswordBody as F, GetAllParams as G, LoginCredentialBody as L, OnChangeParams as O, ResetPasswordRequest as R, SaveParams as S, UpdatePasswordRequest as U, ViewData as V, GetDetailParams as a, GetListParams as b, GetSelectionType as c, SocialTokenBody as d, Specification as e, GetViewParams as f, View as g, updatePasswordBody as u };
113
+ export type { ContextApi as C, DeleteParams as D, ForgotPasswordBody as F, GetSelectionType as G, LoginCredentialBody as L, OnChangeParams as O, ResetPasswordRequest as R, SocialTokenBody as S, UpdatePasswordRequest as U, ViewData as V, GetViewParams as a, GetListParams as b, GetDetailParams as c, SaveParams as d, GetAllParams as e, Specification as f, View as g, updatePasswordBody as u };
@@ -110,4 +110,4 @@ interface GetViewParams {
110
110
  aid?: number | string | null | boolean;
111
111
  }
112
112
 
113
- export type { ContextApi as C, DeleteParams as D, ForgotPasswordBody as F, GetAllParams as G, LoginCredentialBody as L, OnChangeParams as O, ResetPasswordRequest as R, SaveParams as S, UpdatePasswordRequest as U, ViewData as V, GetDetailParams as a, GetListParams as b, GetSelectionType as c, SocialTokenBody as d, Specification as e, GetViewParams as f, View as g, updatePasswordBody as u };
113
+ export type { ContextApi as C, DeleteParams as D, ForgotPasswordBody as F, GetSelectionType as G, LoginCredentialBody as L, OnChangeParams as O, ResetPasswordRequest as R, SocialTokenBody as S, UpdatePasswordRequest as U, ViewData as V, GetViewParams as a, GetListParams as b, GetDetailParams as c, SaveParams as d, GetAllParams as e, Specification as f, View as g, updatePasswordBody as u };