@fctc/interface-logic 1.7.1 → 1.7.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.
Files changed (38) hide show
  1. package/dist/{configs.mjs → configs.cjs} +161 -111
  2. package/dist/{configs.d.mts → configs.d.cts} +2 -1
  3. package/dist/configs.d.ts +1 -0
  4. package/dist/configs.js +124 -146
  5. package/dist/{constants.mjs → constants.cjs} +40 -2
  6. package/dist/constants.js +2 -41
  7. package/dist/{environment.mjs → environment.cjs} +2029 -1967
  8. package/dist/environment.d.cts +56 -0
  9. package/dist/environment.d.ts +24 -6
  10. package/dist/environment.js +2235 -2248
  11. package/dist/{hooks.mjs → hooks.cjs} +4021 -3773
  12. package/dist/{hooks.d.mts → hooks.d.cts} +2 -7
  13. package/dist/hooks.d.ts +1 -6
  14. package/dist/hooks.js +3916 -3873
  15. package/dist/{provider.mjs → provider.cjs} +688 -586
  16. package/dist/{provider.d.mts → provider.d.cts} +1 -1
  17. package/dist/provider.d.ts +1 -1
  18. package/dist/provider.js +648 -620
  19. package/dist/{services.mjs → services.cjs} +4186 -3980
  20. package/dist/{services.d.mts → services.d.cts} +1 -2
  21. package/dist/services.d.ts +0 -1
  22. package/dist/services.js +4141 -4021
  23. package/dist/{store.mjs → store.cjs} +149 -33
  24. package/dist/{store.d.mts → store.d.cts} +127 -155
  25. package/dist/store.d.ts +127 -155
  26. package/dist/store.js +44 -134
  27. package/dist/types.cjs +17 -0
  28. package/dist/{types.d.mts → types.d.cts} +1 -1
  29. package/dist/types.js +0 -18
  30. package/dist/{utils.mjs → utils.cjs} +202 -115
  31. package/dist/{utils.d.mts → utils.d.cts} +2 -2
  32. package/dist/utils.d.ts +2 -2
  33. package/dist/utils.js +135 -176
  34. package/package.json +82 -81
  35. package/dist/environment.d.mts +0 -38
  36. package/dist/types.mjs +0 -0
  37. /package/dist/{constants.d.mts → constants.d.cts} +0 -0
  38. /package/dist/{view-type-BGJfDe73.d.mts → view-type-BGJfDe73.d.cts} +0 -0
package/dist/utils.js CHANGED
@@ -1,71 +1,43 @@
1
- "use strict";
2
- var __create = Object.create;
3
1
  var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
3
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __pow = Math.pow;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
+ var __spreadValues = (a, b) => {
8
+ for (var prop in b || (b = {}))
9
+ if (__hasOwnProp.call(b, prop))
10
+ __defNormalProp(a, prop, b[prop]);
11
+ if (__getOwnPropSymbols)
12
+ for (var prop of __getOwnPropSymbols(b)) {
13
+ if (__propIsEnum.call(b, prop))
14
+ __defNormalProp(a, prop, b[prop]);
15
+ }
16
+ return a;
11
17
  };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
18
+ var __async = (__this, __arguments, generator) => {
19
+ return new Promise((resolve, reject) => {
20
+ var fulfilled = (value) => {
21
+ try {
22
+ step(generator.next(value));
23
+ } catch (e) {
24
+ reject(e);
25
+ }
26
+ };
27
+ var rejected = (value) => {
28
+ try {
29
+ step(generator.throw(value));
30
+ } catch (e) {
31
+ reject(e);
32
+ }
33
+ };
34
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
35
+ step((generator = generator.apply(__this, __arguments)).next());
36
+ });
19
37
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/utils.ts
31
- var utils_exports = {};
32
- __export(utils_exports, {
33
- WesapError: () => WesapError,
34
- checkIsImageLink: () => checkIsImageLink,
35
- convertFloatToTime: () => convertFloatToTime,
36
- convertTimeToFloat: () => convertTimeToFloat,
37
- copyTextToClipboard: () => copyTextToClipboard,
38
- domainHelper: () => domainHelper,
39
- evalJSONContext: () => evalJSONContext,
40
- evalJSONDomain: () => evalJSONDomain,
41
- filterFieldDirty: () => filterFieldDirty,
42
- formatCurrency: () => formatCurrency,
43
- formatDate: () => formatDate,
44
- formatFileSize: () => formatFileSize,
45
- formatSortingString: () => formatSortingString,
46
- formatUrlPath: () => formatUrlPath,
47
- getFieldsOnChange: () => getFieldsOnChange,
48
- getOffSet: () => getOffSet,
49
- getSubdomain: () => getSubdomain,
50
- handleError: () => handleError,
51
- isBase64File: () => isBase64File,
52
- isBase64Image: () => isBase64Image,
53
- isObjectEmpty: () => isObjectEmpty,
54
- mergeObjects: () => mergeObjects,
55
- removeUndefinedFields: () => removeUndefinedFields,
56
- resequence: () => resequence,
57
- stringToColor: () => stringToColor,
58
- toQueryString: () => toQueryString,
59
- updateTokenParamInOriginalRequest: () => updateTokenParamInOriginalRequest,
60
- useField: () => useField,
61
- useTabModel: () => useTabModel,
62
- validateAndParseDate: () => validateAndParseDate
63
- });
64
- module.exports = __toCommonJS(utils_exports);
65
38
 
66
39
  // src/utils/error-handler.ts
67
40
  var WesapError = class extends Error {
68
- code;
69
41
  constructor(message, code) {
70
42
  super(message);
71
43
  this.code = code;
@@ -80,7 +52,7 @@ function handleError(error, env) {
80
52
  }
81
53
 
82
54
  // src/utils/format.ts
83
- var import_moment = __toESM(require("moment"));
55
+ import moment from "moment";
84
56
  var formatCurrency = (amount, currency = "USD") => {
85
57
  const formatter = new Intl.NumberFormat("vi-VN", {
86
58
  style: "currency",
@@ -97,13 +69,13 @@ var validateAndParseDate = (input, isDateTime = false) => {
97
69
  const cleanInput = input.replace(/[^0-9-\/:\s]/g, "");
98
70
  const dateFormat = "YYYY-MM-DD";
99
71
  const dateTimeFormat = "YYYY-MM-DD HH:mm:ss";
100
- const currentDay = (0, import_moment.default)().format("DD");
101
- const currentMonth = (0, import_moment.default)().format("MM");
102
- const currentYear = (0, import_moment.default)().format("YYYY");
72
+ const currentDay = moment().format("DD");
73
+ const currentMonth = moment().format("MM");
74
+ const currentYear = moment().format("YYYY");
103
75
  const defaultTime = "00:00:00";
104
76
  const maxYear = parseInt(currentYear) + 10;
105
77
  const isValidDate = (day, month, year) => {
106
- const date = (0, import_moment.default)(`${day}-${month}-${year}`, "DD-MM-YYYY", true);
78
+ const date = moment(`${day}-${month}-${year}`, "DD-MM-YYYY", true);
107
79
  return date.isValid();
108
80
  };
109
81
  const isValidTime = (hour, minute = "00", second = "00") => {
@@ -113,7 +85,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
113
85
  return h >= 0 && h <= 23 && m >= 0 && m <= 59 && s >= 0 && s <= 59;
114
86
  };
115
87
  const formatOutput = (day, month, year, time = defaultTime) => {
116
- let result = (0, import_moment.default)(
88
+ let result = moment(
117
89
  `${day}-${month}-${year} ${time}`,
118
90
  "DD-MM-YYYY HH:mm:ss"
119
91
  );
@@ -137,7 +109,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
137
109
  const minute = timeParts[1] ? timeParts[1].padStart(2, "0") : "00";
138
110
  const second = timeParts[2] ? timeParts[2].padStart(2, "0") : "00";
139
111
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
140
- let result = (0, import_moment.default)(
112
+ let result = moment(
141
113
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
142
114
  "DD-MM-YYYY HH:mm:ss"
143
115
  );
@@ -200,7 +172,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
200
172
  }
201
173
  if (cleanInput.startsWith("-") && /^\-\d+$/.test(cleanInput)) {
202
174
  const daysToSubtract = Math.abs(parseInt(cleanInput, 10));
203
- let result = (0, import_moment.default)().subtract(daysToSubtract, "days");
175
+ let result = moment().subtract(daysToSubtract, "days");
204
176
  if (isDateTime) {
205
177
  result = result.subtract(7, "hours");
206
178
  }
@@ -227,7 +199,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
227
199
  const year = cleanInput.slice(4, 8);
228
200
  const hour = cleanInput.slice(8, 9).padStart(2, "0");
229
201
  if (isValidDate(day, month, year) && isValidTime(hour)) {
230
- let result = (0, import_moment.default)(
202
+ let result = moment(
231
203
  `${day}-${month}-${year} ${hour}:00:00`,
232
204
  "DD-MM-YYYY HH:mm:ss"
233
205
  );
@@ -243,7 +215,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
243
215
  const year = cleanInput.slice(4, 8);
244
216
  const hour = cleanInput.slice(8, 10);
245
217
  if (isValidDate(day, month, year) && isValidTime(hour)) {
246
- let result = (0, import_moment.default)(
218
+ let result = moment(
247
219
  `${day}-${month}-${year} ${hour}:00:00`,
248
220
  "DD-MM-YYYY HH:mm:ss"
249
221
  );
@@ -260,7 +232,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
260
232
  const hour = cleanInput.slice(8, 10);
261
233
  const minute = cleanInput.slice(10, 11).padStart(2, "0");
262
234
  if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
263
- let result = (0, import_moment.default)(
235
+ let result = moment(
264
236
  `${day}-${month}-${year} ${hour}:${minute}:00`,
265
237
  "DD-MM-YYYY HH:mm:ss"
266
238
  );
@@ -277,7 +249,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
277
249
  const hour = cleanInput.slice(8, 10);
278
250
  const minute = cleanInput.slice(10, 12);
279
251
  if (isValidDate(day, month, year) && isValidTime(hour, minute)) {
280
- let result = (0, import_moment.default)(
252
+ let result = moment(
281
253
  `${day}-${month}-${year} ${hour}:${minute}:00`,
282
254
  "DD-MM-YYYY HH:mm:ss"
283
255
  );
@@ -295,7 +267,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
295
267
  const minute = cleanInput.slice(10, 12);
296
268
  const second = cleanInput.slice(12, 13).padStart(2, "0");
297
269
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
298
- let result = (0, import_moment.default)(
270
+ let result = moment(
299
271
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
300
272
  "DD-MM-YYYY HH:mm:ss"
301
273
  );
@@ -313,7 +285,7 @@ var validateAndParseDate = (input, isDateTime = false) => {
313
285
  const minute = cleanInput.slice(10, 12);
314
286
  const second = cleanInput.slice(12, 14);
315
287
  if (isValidDate(day, month, year) && isValidTime(hour, minute, second)) {
316
- let result = (0, import_moment.default)(
288
+ let result = moment(
317
289
  `${day}-${month}-${year} ${hour}:${minute}:${second}`,
318
290
  "DD-MM-YYYY HH:mm:ss"
319
291
  );
@@ -1452,22 +1424,6 @@ var PyRelativeDelta = class _PyRelativeDelta {
1452
1424
  this.microsecond = params.microsecond;
1453
1425
  this.weekday = params.weekday;
1454
1426
  }
1455
- years;
1456
- months;
1457
- days;
1458
- hours;
1459
- minutes;
1460
- seconds;
1461
- microseconds;
1462
- leapDays;
1463
- year;
1464
- month;
1465
- day;
1466
- hour;
1467
- minute;
1468
- second;
1469
- microsecond;
1470
- weekday;
1471
1427
  negate() {
1472
1428
  return new _PyRelativeDelta(this, -1);
1473
1429
  }
@@ -1582,7 +1538,7 @@ function execOnIterable(iterable, func) {
1582
1538
  if (typeof iterable === "object" && !Array.isArray(iterable) && !(iterable instanceof Set)) {
1583
1539
  iterable = Object.keys(iterable);
1584
1540
  }
1585
- if (typeof iterable?.[Symbol.iterator] !== "function") {
1541
+ if (typeof (iterable == null ? void 0 : iterable[Symbol.iterator]) !== "function") {
1586
1542
  throw new EvaluationError("value not iterable");
1587
1543
  }
1588
1544
  return func(iterable);
@@ -1905,7 +1861,7 @@ function applyBinaryOp(ast, context) {
1905
1861
  }
1906
1862
  return Math.floor(left / right);
1907
1863
  case "**":
1908
- return left ** right;
1864
+ return __pow(left, right);
1909
1865
  case "==":
1910
1866
  return isEqual(left, right);
1911
1867
  case "<>":
@@ -2027,7 +1983,7 @@ function evaluate(ast, context = {}) {
2027
1983
  const dicts = /* @__PURE__ */ new Set();
2028
1984
  let pyContext;
2029
1985
  const evalContext = Object.create(context);
2030
- if (!evalContext?.context) {
1986
+ if (!(evalContext == null ? void 0 : evalContext.context)) {
2031
1987
  Object.defineProperty(evalContext, "context", {
2032
1988
  get() {
2033
1989
  if (!pyContext) {
@@ -2038,17 +1994,18 @@ function evaluate(ast, context = {}) {
2038
1994
  });
2039
1995
  }
2040
1996
  function _innerEvaluate(ast2) {
2041
- switch (ast2?.type) {
1997
+ var _a, _b, _c;
1998
+ switch (ast2 == null ? void 0 : ast2.type) {
2042
1999
  case 0:
2043
2000
  // Number
2044
2001
  case 1:
2045
2002
  return ast2.value;
2046
2003
  case 5:
2047
2004
  if (ast2.value in evalContext) {
2048
- if (typeof evalContext[ast2.value] === "object" && evalContext[ast2.value]?.id) {
2049
- return evalContext[ast2.value]?.id;
2005
+ if (typeof evalContext[ast2.value] === "object" && ((_a = evalContext[ast2.value]) == null ? void 0 : _a.id)) {
2006
+ return (_b = evalContext[ast2.value]) == null ? void 0 : _b.id;
2050
2007
  }
2051
- return evalContext[ast2.value] ?? false;
2008
+ return (_c = evalContext[ast2.value]) != null ? _c : false;
2052
2009
  } else if (ast2.value in BUILTINS) {
2053
2010
  return BUILTINS[ast2.value];
2054
2011
  } else {
@@ -2085,7 +2042,7 @@ function evaluate(ast, context = {}) {
2085
2042
  const args = ast2.args.map(_evaluate);
2086
2043
  const kwargs = {};
2087
2044
  for (const kwarg in ast2.kwargs) {
2088
- kwargs[kwarg] = _evaluate(ast2?.kwargs[kwarg]);
2045
+ kwargs[kwarg] = _evaluate(ast2 == null ? void 0 : ast2.kwargs[kwarg]);
2089
2046
  }
2090
2047
  if (fnValue === PyDate || fnValue === PyDateTime || fnValue === PyTime || fnValue === PyRelativeDelta || fnValue === PyTimeDelta) {
2091
2048
  return fnValue.create(...args, kwargs);
@@ -2178,7 +2135,7 @@ function evalPartialContext(_context, evaluationContext = {}) {
2178
2135
  const value = ast.value[key];
2179
2136
  try {
2180
2137
  context[key] = evaluate(value, evaluationContext);
2181
- } catch {
2138
+ } catch (e) {
2182
2139
  }
2183
2140
  }
2184
2141
  return context;
@@ -2206,9 +2163,25 @@ function escapeRegExp(str) {
2206
2163
  var InvalidDomainError = class extends Error {
2207
2164
  };
2208
2165
  var Domain = class _Domain {
2209
- ast = { type: -1, value: null };
2210
- static TRUE;
2211
- static FALSE;
2166
+ constructor(descr = []) {
2167
+ this.ast = { type: -1, value: null };
2168
+ if (descr instanceof _Domain) {
2169
+ return new _Domain(descr.toString());
2170
+ } else {
2171
+ let rawAST;
2172
+ try {
2173
+ rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
2174
+ } catch (error) {
2175
+ throw new InvalidDomainError(
2176
+ `Invalid domain representation: ${descr}`,
2177
+ {
2178
+ cause: error
2179
+ }
2180
+ );
2181
+ }
2182
+ this.ast = normalizeDomainAST(rawAST);
2183
+ }
2184
+ }
2212
2185
  static combine(domains, operator) {
2213
2186
  if (domains.length === 0) {
2214
2187
  return new _Domain([]);
@@ -2287,24 +2260,6 @@ var Domain = class _Domain {
2287
2260
  processLeaf(d.ast.value, 0, "&", newDomain);
2288
2261
  return newDomain;
2289
2262
  }
2290
- constructor(descr = []) {
2291
- if (descr instanceof _Domain) {
2292
- return new _Domain(descr.toString());
2293
- } else {
2294
- let rawAST;
2295
- try {
2296
- rawAST = typeof descr === "string" ? parseExpr(descr) : toAST(descr);
2297
- } catch (error) {
2298
- throw new InvalidDomainError(
2299
- `Invalid domain representation: ${descr}`,
2300
- {
2301
- cause: error
2302
- }
2303
- );
2304
- }
2305
- this.ast = normalizeDomainAST(rawAST);
2306
- }
2307
- }
2308
2263
  contains(record) {
2309
2264
  const expr = evaluate(this.ast, record);
2310
2265
  return matchDomain(record, expr);
@@ -2323,7 +2278,7 @@ var Domain = class _Domain {
2323
2278
  return evaluatedAsList;
2324
2279
  }
2325
2280
  return this.toString();
2326
- } catch {
2281
+ } catch (e) {
2327
2282
  return this.toString();
2328
2283
  }
2329
2284
  }
@@ -2547,7 +2502,7 @@ var checkDomain = (context, domain) => {
2547
2502
  };
2548
2503
  var matchDomains = (context, domains) => {
2549
2504
  if (Array.isArray(domains)) {
2550
- if (domains?.length > 0) {
2505
+ if ((domains == null ? void 0 : domains.length) > 0) {
2551
2506
  return domains && domains.some((domain) => checkDomain(context, domain));
2552
2507
  }
2553
2508
  } else return checkDomain(context, domains);
@@ -2555,7 +2510,7 @@ var matchDomains = (context, domains) => {
2555
2510
  };
2556
2511
 
2557
2512
  // src/utils/function.ts
2558
- var import_react = require("react");
2513
+ import { useEffect, useState } from "react";
2559
2514
  var evalJSONContext = (_context, context = {}) => {
2560
2515
  try {
2561
2516
  return evalPartialContext(_context, context);
@@ -2564,15 +2519,17 @@ var evalJSONContext = (_context, context = {}) => {
2564
2519
  }
2565
2520
  };
2566
2521
  var evalJSONDomain = (domain, context) => {
2522
+ var _a;
2567
2523
  try {
2568
2524
  if (context) {
2569
- Object.keys(context)?.forEach((key) => {
2525
+ (_a = Object.keys(context)) == null ? void 0 : _a.forEach((key) => {
2526
+ var _a2, _b;
2570
2527
  if (Array.isArray(context[key])) {
2571
- const isTypeObject = context[key]?.every(
2572
- (item) => typeof item === "object" && item !== null && item?.id !== void 0
2528
+ const isTypeObject = (_a2 = context[key]) == null ? void 0 : _a2.every(
2529
+ (item) => typeof item === "object" && item !== null && (item == null ? void 0 : item.id) !== void 0
2573
2530
  );
2574
2531
  if (isTypeObject) {
2575
- context[key] = context[key]?.map((item) => item?.id);
2532
+ context[key] = (_b = context[key]) == null ? void 0 : _b.map((item) => item == null ? void 0 : item.id);
2576
2533
  }
2577
2534
  }
2578
2535
  });
@@ -2592,7 +2549,7 @@ var formatSortingString = (input) => {
2592
2549
  if (!input) return null;
2593
2550
  return input.split(",").map((field) => {
2594
2551
  const [key, order] = field.trim().split(/\s+/);
2595
- const sortOrder = order?.toUpperCase() === "DESC" ? "DESC" : "ASC";
2552
+ const sortOrder = (order == null ? void 0 : order.toUpperCase()) === "DESC" ? "DESC" : "ASC";
2596
2553
  return `${key} ${sortOrder}`;
2597
2554
  }).join(", ");
2598
2555
  };
@@ -2636,11 +2593,11 @@ var getFieldsOnChange = (fields) => {
2636
2593
  function traverse(items) {
2637
2594
  for (const item of items) {
2638
2595
  if (item) {
2639
- if (item?.type_co === "field" && matchDomains(fields, item?.on_change)) {
2596
+ if ((item == null ? void 0 : item.type_co) === "field" && matchDomains(fields, item == null ? void 0 : item.on_change)) {
2640
2597
  result.push(item.name);
2641
2598
  }
2642
- if (item?.fields && Array.isArray(item?.fields)) {
2643
- traverse(item?.fields);
2599
+ if ((item == null ? void 0 : item.fields) && Array.isArray(item == null ? void 0 : item.fields)) {
2600
+ traverse(item == null ? void 0 : item.fields);
2644
2601
  }
2645
2602
  }
2646
2603
  }
@@ -2656,39 +2613,42 @@ var filterFieldDirty = ({
2656
2613
  model,
2657
2614
  defaultData
2658
2615
  }) => {
2659
- const data = id ? { ...dirtyFields } : { ...formValues };
2616
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
2617
+ const data = id ? __spreadValues({}, dirtyFields) : __spreadValues({}, formValues);
2660
2618
  for (const key in data) {
2661
- if (viewData?.models?.[model]?.[key]?.type === "one2many" /* ONE2MANY */) {
2619
+ 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 */) {
2662
2620
  const lineData = [];
2663
- (formValues[key] ?? []).forEach((itemData, index) => {
2664
- if (typeof itemData?.id === "string" && itemData?.id.includes("virtual")) {
2665
- delete itemData?.id;
2621
+ ((_d = formValues[key]) != null ? _d : []).forEach((itemData, index) => {
2622
+ var _a2, _b2, _c2, _d2;
2623
+ if (typeof (itemData == null ? void 0 : itemData.id) === "string" && (itemData == null ? void 0 : itemData.id.includes("virtual"))) {
2624
+ itemData == null ? true : delete itemData.id;
2666
2625
  }
2667
- if (!itemData?.id) {
2626
+ if (!(itemData == null ? void 0 : itemData.id)) {
2668
2627
  lineData.push([
2669
2628
  0 /* CREATE */,
2670
2629
  `virtual_${index}`,
2671
2630
  filterFieldDirty({
2672
- id: itemData?.id,
2631
+ id: itemData == null ? void 0 : itemData.id,
2673
2632
  viewData,
2674
2633
  formValues: itemData,
2675
2634
  dirtyFields: {},
2676
- model: viewData?.models?.[model]?.[key]?.relation,
2635
+ 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,
2677
2636
  defaultData
2678
2637
  })
2679
2638
  ]);
2680
- } else if (dirtyFields[key]?.length) {
2639
+ } else if ((_d2 = dirtyFields[key]) == null ? void 0 : _d2.length) {
2681
2640
  dirtyFields[key].forEach((itemDirty, indexDirty) => {
2641
+ var _a3, _b3, _c3;
2682
2642
  if (Object.values(itemDirty).includes(true) && indexDirty === index) {
2683
2643
  lineData.push([
2684
2644
  1 /* UPDATE */,
2685
- itemData?.id,
2645
+ itemData == null ? void 0 : itemData.id,
2686
2646
  filterFieldDirty({
2687
- id: itemData?.id,
2647
+ id: itemData == null ? void 0 : itemData.id,
2688
2648
  viewData,
2689
2649
  formValues: itemData,
2690
2650
  dirtyFields: itemDirty,
2691
- model: viewData?.models?.[model]?.[key]?.relation,
2651
+ 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,
2692
2652
  defaultData: {}
2693
2653
  })
2694
2654
  ]);
@@ -2696,37 +2656,39 @@ var filterFieldDirty = ({
2696
2656
  });
2697
2657
  }
2698
2658
  });
2699
- (defaultData[key] ?? []).forEach((item) => {
2700
- if (!(formValues[key] ?? []).find(
2701
- (itemData) => itemData?.id === item?.id
2659
+ ((_e = defaultData[key]) != null ? _e : []).forEach((item) => {
2660
+ var _a2;
2661
+ if (!((_a2 = formValues[key]) != null ? _a2 : []).find(
2662
+ (itemData) => (itemData == null ? void 0 : itemData.id) === (item == null ? void 0 : item.id)
2702
2663
  )) {
2703
- lineData.push([2 /* DELETE */, item?.id, item]);
2664
+ lineData.push([2 /* DELETE */, item == null ? void 0 : item.id, item]);
2704
2665
  }
2705
2666
  });
2706
2667
  data[key] = lineData;
2707
- } else if (viewData?.models?.[model]?.[key]?.type === "many2many" /* MANY2MANY */) {
2668
+ } 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 */) {
2708
2669
  const lineData = [];
2709
2670
  (formValues[key] || []).forEach((itemData) => {
2710
- if (itemData?.id) {
2711
- lineData.push([4 /* NO_CHANGE */, itemData?.id]);
2671
+ if (itemData == null ? void 0 : itemData.id) {
2672
+ lineData.push([4 /* NO_CHANGE */, itemData == null ? void 0 : itemData.id]);
2712
2673
  }
2713
2674
  });
2714
- (defaultData[key] ?? []).forEach((item) => {
2715
- if (!(formValues[key] ?? []).find(
2716
- (itemData) => itemData?.id === item?.id
2675
+ ((_i = defaultData[key]) != null ? _i : []).forEach((item) => {
2676
+ var _a2;
2677
+ if (!((_a2 = formValues[key]) != null ? _a2 : []).find(
2678
+ (itemData) => (itemData == null ? void 0 : itemData.id) === (item == null ? void 0 : item.id)
2717
2679
  )) {
2718
- lineData.push([3 /* UNLINK */, item?.id]);
2680
+ lineData.push([3 /* UNLINK */, item == null ? void 0 : item.id]);
2719
2681
  }
2720
2682
  });
2721
2683
  data[key] = lineData;
2722
2684
  } else {
2723
- if (id && (typeof dirtyFields?.[key] === "object" && !dirtyFields?.[key]?.id || typeof dirtyFields[key] !== "object" && !dirtyFields[key])) {
2685
+ 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])) {
2724
2686
  delete data[key];
2725
2687
  } else {
2726
2688
  if (!data[key]) {
2727
2689
  delete data[key];
2728
2690
  } else {
2729
- data[key] = formValues?.[key]?.display_name ? formValues?.[key]?.id : formValues?.[key];
2691
+ 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];
2730
2692
  }
2731
2693
  }
2732
2694
  }
@@ -2735,15 +2697,12 @@ var filterFieldDirty = ({
2735
2697
  };
2736
2698
  var mergeObjects = (object1, object2) => {
2737
2699
  if (!object1 || !object2) return void 0;
2738
- const mergedObject = { ...object2 };
2700
+ const mergedObject = __spreadValues({}, object2);
2739
2701
  Object.keys(object1).forEach((key) => {
2740
2702
  if (Array.isArray(object1[key]) && Array.isArray(object2[key])) {
2741
2703
  mergedObject[key] = object2[key].map((item, index) => {
2742
2704
  if (object1[key][index]) {
2743
- return {
2744
- ...item,
2745
- ...object1[key][index]
2746
- };
2705
+ return __spreadValues(__spreadValues({}, item), object1[key][index]);
2747
2706
  }
2748
2707
  return item;
2749
2708
  });
@@ -2785,14 +2744,15 @@ var removeUndefinedFields = (obj) => {
2785
2744
  return newObj;
2786
2745
  };
2787
2746
  var useTabModel = (viewData, onchangeData) => {
2788
- const tabsData = viewData?.views?.form?.tabs?.filter((val) => {
2747
+ var _a, _b, _c;
2748
+ 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) => {
2789
2749
  if (!val) return null;
2790
2750
  const hide = checkDomain(onchangeData, val.invisible);
2791
2751
  if (!hide) {
2792
2752
  return val;
2793
2753
  }
2794
2754
  return false;
2795
- }) || [];
2755
+ })) || [];
2796
2756
  return tabsData;
2797
2757
  };
2798
2758
  var isBase64File = (str) => {
@@ -2833,7 +2793,7 @@ var formatFileSize = (size) => {
2833
2793
  return `${(size / Math.pow(1024, i)).toFixed(2)} ${sizes[i]}`;
2834
2794
  };
2835
2795
  var getSubdomain = (url = window.location.href) => {
2836
- const parts = url?.split(".");
2796
+ const parts = url == null ? void 0 : url.split(".");
2837
2797
  if (parts.length > 2) {
2838
2798
  return parts[0].replace("https://", "").replace("http://", "");
2839
2799
  }
@@ -2856,9 +2816,9 @@ var getOffSet = (arr, start, end) => {
2856
2816
  }
2857
2817
  return arr.slice(0, start).length;
2858
2818
  };
2859
- var copyTextToClipboard = async (text) => {
2819
+ var copyTextToClipboard = (text) => __async(null, null, function* () {
2860
2820
  if ("clipboard" in navigator) {
2861
- return await navigator.clipboard.writeText(text);
2821
+ return yield navigator.clipboard.writeText(text);
2862
2822
  } else {
2863
2823
  const textArea = document.createElement("textarea");
2864
2824
  textArea.value = text;
@@ -2872,7 +2832,7 @@ var copyTextToClipboard = async (text) => {
2872
2832
  document.body.removeChild(textArea);
2873
2833
  }
2874
2834
  }
2875
- };
2835
+ });
2876
2836
  var updateTokenParamInOriginalRequest = (originalRequest, newAccessToken) => {
2877
2837
  if (!originalRequest.data) return originalRequest.data;
2878
2838
  if (typeof originalRequest.data === "string") {
@@ -2896,9 +2856,9 @@ var isObjectEmpty = (obj) => {
2896
2856
  return Object.keys(obj).length === 0;
2897
2857
  };
2898
2858
  var useField = (props) => {
2899
- const [invisible, setInvisible] = (0, import_react.useState)(true);
2900
- const [required, setRequired] = (0, import_react.useState)(false);
2901
- const [readonly, setReadOnly] = (0, import_react.useState)(false);
2859
+ const [invisible, setInvisible] = useState(true);
2860
+ const [required, setRequired] = useState(false);
2861
+ const [readonly, setReadOnly] = useState(false);
2902
2862
  const {
2903
2863
  invisible: inv,
2904
2864
  required: req,
@@ -2908,8 +2868,8 @@ var useField = (props) => {
2908
2868
  index,
2909
2869
  name
2910
2870
  } = props;
2911
- const nameField = rootField ? `${rootField?.name}.${index}.${name}` : null;
2912
- (0, import_react.useEffect)(() => {
2871
+ const nameField = rootField ? `${rootField == null ? void 0 : rootField.name}.${index}.${name}` : null;
2872
+ useEffect(() => {
2913
2873
  if (onchangeData && Object.keys(onchangeData).length > 0) {
2914
2874
  setRequired(
2915
2875
  typeof req === "object" ? matchDomains(onchangeData, req) : checkDomain(onchangeData, req)
@@ -2927,8 +2887,7 @@ var useField = (props) => {
2927
2887
  nameField
2928
2888
  };
2929
2889
  };
2930
- // Annotate the CommonJS export names for ESM import in node:
2931
- 0 && (module.exports = {
2890
+ export {
2932
2891
  WesapError,
2933
2892
  checkIsImageLink,
2934
2893
  convertFloatToTime,
@@ -2959,4 +2918,4 @@ var useField = (props) => {
2959
2918
  useField,
2960
2919
  useTabModel,
2961
2920
  validateAndParseDate
2962
- });
2921
+ };