@bgroup/wise-form 1.0.3 → 1.0.6
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/README.md +1 -1
- package/package.json +23 -4
- package/postcss.config.js +6 -0
- package/src/form/styles.css +11 -37
- package/src/form/view/components/containers/index.tsx +33 -4
- package/src/form/view/components/error.tsx +0 -3
- package/src/form/view/components/field/container.tsx +1 -1
- package/src/form/view/components/field/index.tsx +42 -7
- package/src/form/view/components/rows/row-container.tsx +37 -9
- package/src/form/view/components/rows/wrapper.tsx +17 -6
- package/src/form/view/components/wrapped-form.tsx +38 -5
- package/src/form/view/hooks/use-model.ts +91 -25
- package/src/form/view/index.tsx +32 -6
- package/src/formulas/variants/array-formula.ts +6 -1
- package/src/models/base.ts +31 -5
- package/src/models/callback-manager.ts +169 -91
- package/src/models/field.ts +504 -538
- package/src/models/wrapper.ts +32 -7
- package/tailwind.config.js +11 -0
- package/tsconfig.json +2 -0
- package/vite.config.ts +59 -0
- package/dist/components/ui/Checkbox.d.ts +0 -14
- package/dist/components/ui/Checkbox.d.ts.map +0 -1
- package/dist/components/ui/Checkbox.js +0 -43
- package/dist/components/ui/Checkbox.js.map +0 -1
- package/dist/components/ui/CheckboxGroup.d.ts +0 -15
- package/dist/components/ui/CheckboxGroup.d.ts.map +0 -1
- package/dist/components/ui/CheckboxGroup.js +0 -33
- package/dist/components/ui/CheckboxGroup.js.map +0 -1
- package/dist/components/ui/Input.d.ts +0 -14
- package/dist/components/ui/Input.d.ts.map +0 -1
- package/dist/components/ui/Input.js +0 -49
- package/dist/components/ui/Input.js.map +0 -1
- package/dist/components/ui/Radio.d.ts +0 -14
- package/dist/components/ui/Radio.d.ts.map +0 -1
- package/dist/components/ui/Radio.js +0 -43
- package/dist/components/ui/Radio.js.map +0 -1
- package/dist/components/ui/Select.d.ts +0 -18
- package/dist/components/ui/Select.d.ts.map +0 -1
- package/dist/components/ui/Select.js +0 -44
- package/dist/components/ui/Select.js.map +0 -1
- package/dist/components/ui/Textarea.d.ts +0 -13
- package/dist/components/ui/Textarea.d.ts.map +0 -1
- package/dist/components/ui/Textarea.js +0 -42
- package/dist/components/ui/Textarea.js.map +0 -1
- package/dist/components/ui/index.d.ts +0 -13
- package/dist/components/ui/index.d.ts.map +0 -1
- package/dist/components/ui/index.js +0 -7
- package/dist/components/ui/index.js.map +0 -1
- package/dist/form/index.d.ts +0 -10
- package/dist/form/index.d.ts.map +0 -1
- package/dist/form/index.js +0 -5
- package/dist/form/index.js.map +0 -1
- package/dist/form/interfaces/field-container.d.ts +0 -8
- package/dist/form/interfaces/field-container.d.ts.map +0 -1
- package/dist/form/interfaces/field-container.js +0 -2
- package/dist/form/interfaces/field-container.js.map +0 -1
- package/dist/form/interfaces/interfaces.d.ts +0 -8
- package/dist/form/interfaces/interfaces.d.ts.map +0 -1
- package/dist/form/interfaces/interfaces.js +0 -2
- package/dist/form/interfaces/interfaces.js.map +0 -1
- package/dist/form/interfaces/settings.d.ts +0 -10
- package/dist/form/interfaces/settings.d.ts.map +0 -1
- package/dist/form/interfaces/settings.js +0 -2
- package/dist/form/interfaces/settings.js.map +0 -1
- package/dist/form/interfaces/template.d.ts +0 -6
- package/dist/form/interfaces/template.d.ts.map +0 -1
- package/dist/form/interfaces/template.js +0 -2
- package/dist/form/interfaces/template.js.map +0 -1
- package/dist/form/interfaces/wise-form-specs.d.ts +0 -9
- package/dist/form/interfaces/wise-form-specs.d.ts.map +0 -1
- package/dist/form/interfaces/wise-form-specs.js +0 -2
- package/dist/form/interfaces/wise-form-specs.js.map +0 -1
- package/dist/form/view/components/containers/index.d.ts +0 -3
- package/dist/form/view/components/containers/index.d.ts.map +0 -1
- package/dist/form/view/components/containers/index.js +0 -12
- package/dist/form/view/components/containers/index.js.map +0 -1
- package/dist/form/view/components/error.d.ts +0 -5
- package/dist/form/view/components/error.d.ts.map +0 -1
- package/dist/form/view/components/error.js +0 -8
- package/dist/form/view/components/error.js.map +0 -1
- package/dist/form/view/components/field/container.d.ts +0 -5
- package/dist/form/view/components/field/container.d.ts.map +0 -1
- package/dist/form/view/components/field/container.js +0 -5
- package/dist/form/view/components/field/container.js.map +0 -1
- package/dist/form/view/components/field/index.d.ts +0 -18
- package/dist/form/view/components/field/index.d.ts.map +0 -1
- package/dist/form/view/components/field/index.js +0 -89
- package/dist/form/view/components/field/index.js.map +0 -1
- package/dist/form/view/components/field/selection.d.ts +0 -2
- package/dist/form/view/components/field/selection.d.ts.map +0 -1
- package/dist/form/view/components/field/selection.js +0 -35
- package/dist/form/view/components/field/selection.js.map +0 -1
- package/dist/form/view/components/field/use-field.d.ts +0 -4
- package/dist/form/view/components/field/use-field.d.ts.map +0 -1
- package/dist/form/view/components/field/use-field.js +0 -41
- package/dist/form/view/components/field/use-field.js.map +0 -1
- package/dist/form/view/components/rows/row-container.d.ts +0 -18
- package/dist/form/view/components/rows/row-container.d.ts.map +0 -1
- package/dist/form/view/components/rows/row-container.js +0 -89
- package/dist/form/view/components/rows/row-container.js.map +0 -1
- package/dist/form/view/components/rows/wrapper.d.ts +0 -12
- package/dist/form/view/components/rows/wrapper.d.ts.map +0 -1
- package/dist/form/view/components/rows/wrapper.js +0 -27
- package/dist/form/view/components/rows/wrapper.js.map +0 -1
- package/dist/form/view/components/wrapped-form.d.ts +0 -6
- package/dist/form/view/components/wrapped-form.d.ts.map +0 -1
- package/dist/form/view/components/wrapped-form.js +0 -26
- package/dist/form/view/components/wrapped-form.js.map +0 -1
- package/dist/form/view/context.d.ts +0 -23
- package/dist/form/view/context.d.ts.map +0 -1
- package/dist/form/view/context.js +0 -7
- package/dist/form/view/context.js.map +0 -1
- package/dist/form/view/hooks/use-model.d.ts +0 -10
- package/dist/form/view/hooks/use-model.d.ts.map +0 -1
- package/dist/form/view/hooks/use-model.js +0 -31
- package/dist/form/view/hooks/use-model.js.map +0 -1
- package/dist/form/view/hooks/use-template.d.ts +0 -14
- package/dist/form/view/hooks/use-template.d.ts.map +0 -1
- package/dist/form/view/hooks/use-template.js +0 -57
- package/dist/form/view/hooks/use-template.js.map +0 -1
- package/dist/form/view/hooks/use-types.d.ts +0 -2
- package/dist/form/view/hooks/use-types.d.ts.map +0 -1
- package/dist/form/view/hooks/use-types.js +0 -19
- package/dist/form/view/hooks/use-types.js.map +0 -1
- package/dist/form/view/index.d.ts +0 -3
- package/dist/form/view/index.d.ts.map +0 -1
- package/dist/form/view/index.js +0 -38
- package/dist/form/view/index.js.map +0 -1
- package/dist/formulas/helpers/condition-types.d.ts +0 -5
- package/dist/formulas/helpers/condition-types.d.ts.map +0 -1
- package/dist/formulas/helpers/condition-types.js +0 -5
- package/dist/formulas/helpers/condition-types.js.map +0 -1
- package/dist/formulas/helpers/evaluations.d.ts +0 -15
- package/dist/formulas/helpers/evaluations.d.ts.map +0 -1
- package/dist/formulas/helpers/evaluations.js +0 -44
- package/dist/formulas/helpers/evaluations.js.map +0 -1
- package/dist/formulas/helpers/formula.d.ts +0 -6
- package/dist/formulas/helpers/formula.d.ts.map +0 -1
- package/dist/formulas/helpers/formula.js +0 -26
- package/dist/formulas/helpers/formula.js.map +0 -1
- package/dist/formulas/helpers/lexer.d.ts +0 -10
- package/dist/formulas/helpers/lexer.d.ts.map +0 -1
- package/dist/formulas/helpers/lexer.js +0 -73
- package/dist/formulas/helpers/lexer.js.map +0 -1
- package/dist/formulas/helpers/parser.d.ts +0 -24
- package/dist/formulas/helpers/parser.d.ts.map +0 -1
- package/dist/formulas/helpers/parser.js +0 -48
- package/dist/formulas/helpers/parser.js.map +0 -1
- package/dist/formulas/helpers/token.d.ts +0 -14
- package/dist/formulas/helpers/token.d.ts.map +0 -1
- package/dist/formulas/helpers/token.js +0 -14
- package/dist/formulas/helpers/token.js.map +0 -1
- package/dist/formulas/index.d.ts +0 -59
- package/dist/formulas/index.d.ts.map +0 -1
- package/dist/formulas/index.js +0 -186
- package/dist/formulas/index.js.map +0 -1
- package/dist/formulas/types/formulas.d.ts +0 -68
- package/dist/formulas/types/formulas.d.ts.map +0 -1
- package/dist/formulas/types/formulas.js +0 -2
- package/dist/formulas/types/formulas.js.map +0 -1
- package/dist/formulas/types/index.d.ts +0 -5
- package/dist/formulas/types/index.d.ts.map +0 -1
- package/dist/formulas/types/index.js +0 -2
- package/dist/formulas/types/index.js.map +0 -1
- package/dist/formulas/variants/array-formula.d.ts +0 -24
- package/dist/formulas/variants/array-formula.d.ts.map +0 -1
- package/dist/formulas/variants/array-formula.js +0 -142
- package/dist/formulas/variants/array-formula.js.map +0 -1
- package/dist/formulas/variants/base.d.ts +0 -6
- package/dist/formulas/variants/base.d.ts.map +0 -1
- package/dist/formulas/variants/base.js +0 -3
- package/dist/formulas/variants/base.js.map +0 -1
- package/dist/formulas/variants/basic.d.ts +0 -18
- package/dist/formulas/variants/basic.d.ts.map +0 -1
- package/dist/formulas/variants/basic.js +0 -128
- package/dist/formulas/variants/basic.js.map +0 -1
- package/dist/formulas/variants/comparison.d.ts +0 -25
- package/dist/formulas/variants/comparison.d.ts.map +0 -1
- package/dist/formulas/variants/comparison.js +0 -153
- package/dist/formulas/variants/comparison.js.map +0 -1
- package/dist/formulas/variants/conditional.d.ts +0 -18
- package/dist/formulas/variants/conditional.d.ts.map +0 -1
- package/dist/formulas/variants/conditional.js +0 -183
- package/dist/formulas/variants/conditional.js.map +0 -1
- package/dist/formulas/variants/iterative-array.d.ts +0 -20
- package/dist/formulas/variants/iterative-array.d.ts.map +0 -1
- package/dist/formulas/variants/iterative-array.js +0 -155
- package/dist/formulas/variants/iterative-array.js.map +0 -1
- package/dist/formulas/variants/per-value.d.ts +0 -20
- package/dist/formulas/variants/per-value.d.ts.map +0 -1
- package/dist/formulas/variants/per-value.js +0 -154
- package/dist/formulas/variants/per-value.js.map +0 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -6
- package/dist/index.js.map +0 -1
- package/dist/models/base.d.ts +0 -55
- package/dist/models/base.d.ts.map +0 -1
- package/dist/models/base.js +0 -146
- package/dist/models/base.js.map +0 -1
- package/dist/models/callback-manager.d.ts +0 -7
- package/dist/models/callback-manager.d.ts.map +0 -1
- package/dist/models/callback-manager.js +0 -89
- package/dist/models/callback-manager.js.map +0 -1
- package/dist/models/field.d.ts +0 -121
- package/dist/models/field.d.ts.map +0 -1
- package/dist/models/field.js +0 -515
- package/dist/models/field.js.map +0 -1
- package/dist/models/index.d.ts +0 -13
- package/dist/models/index.d.ts.map +0 -1
- package/dist/models/index.js +0 -7
- package/dist/models/index.js.map +0 -1
- package/dist/models/model.d.ts +0 -37
- package/dist/models/model.d.ts.map +0 -1
- package/dist/models/model.js +0 -245
- package/dist/models/model.js.map +0 -1
- package/dist/models/plugins/base.d.ts +0 -9
- package/dist/models/plugins/base.d.ts.map +0 -1
- package/dist/models/plugins/base.js +0 -3
- package/dist/models/plugins/base.js.map +0 -1
- package/dist/models/plugins/formula.d.ts +0 -18
- package/dist/models/plugins/formula.d.ts.map +0 -1
- package/dist/models/plugins/formula.js +0 -82
- package/dist/models/plugins/formula.js.map +0 -1
- package/dist/models/plugins/index.d.ts +0 -11
- package/dist/models/plugins/index.d.ts.map +0 -1
- package/dist/models/plugins/index.js +0 -52
- package/dist/models/plugins/index.js.map +0 -1
- package/dist/models/plugins/plugins.d.ts +0 -7
- package/dist/models/plugins/plugins.d.ts.map +0 -1
- package/dist/models/plugins/plugins.js +0 -7
- package/dist/models/plugins/plugins.js.map +0 -1
- package/dist/models/types/base-wise-model.d.ts +0 -7
- package/dist/models/types/base-wise-model.d.ts.map +0 -1
- package/dist/models/types/base-wise-model.js +0 -2
- package/dist/models/types/base-wise-model.js.map +0 -1
- package/dist/models/types/callbacks.d.ts +0 -19
- package/dist/models/types/callbacks.d.ts.map +0 -1
- package/dist/models/types/callbacks.js +0 -2
- package/dist/models/types/callbacks.js.map +0 -1
- package/dist/models/types/disabled.d.ts +0 -8
- package/dist/models/types/disabled.d.ts.map +0 -1
- package/dist/models/types/disabled.js +0 -2
- package/dist/models/types/disabled.js.map +0 -1
- package/dist/models/types/form-field.d.ts +0 -25
- package/dist/models/types/form-field.d.ts.map +0 -1
- package/dist/models/types/form-field.js +0 -2
- package/dist/models/types/form-field.js.map +0 -1
- package/dist/models/types/model.d.ts +0 -13
- package/dist/models/types/model.d.ts.map +0 -1
- package/dist/models/types/model.js +0 -2
- package/dist/models/types/model.js.map +0 -1
- package/dist/models/types/plugins.d.ts +0 -13
- package/dist/models/types/plugins.d.ts.map +0 -1
- package/dist/models/types/plugins.js +0 -2
- package/dist/models/types/plugins.js.map +0 -1
- package/dist/models/types/wrapped-form-model-props.d.ts +0 -11
- package/dist/models/types/wrapped-form-model-props.d.ts.map +0 -1
- package/dist/models/types/wrapped-form-model-props.js +0 -2
- package/dist/models/types/wrapped-form-model-props.js.map +0 -1
- package/dist/models/wrapper.d.ts +0 -30
- package/dist/models/wrapper.d.ts.map +0 -1
- package/dist/models/wrapper.js +0 -213
- package/dist/models/wrapper.js.map +0 -1
- package/dist/settings/index.d.ts +0 -7
- package/dist/settings/index.d.ts.map +0 -1
- package/dist/settings/index.js +0 -26
- package/dist/settings/index.js.map +0 -1
- package/dist/utils/pending-promise.d.ts +0 -6
- package/dist/utils/pending-promise.d.ts.map +0 -1
- package/dist/utils/pending-promise.js +0 -24
- package/dist/utils/pending-promise.js.map +0 -1
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
-
};
|
|
6
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
7
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
10
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
|
-
};
|
|
12
|
-
var _IterativeArrayFormula_plugin, _IterativeArrayFormula_specs, _IterativeArrayFormula_tokens, _IterativeArrayFormula_value, _IterativeArrayFormula_emptyValue, _IterativeArrayFormula_variables, _IterativeArrayFormula_round, _IterativeArrayFormula_ceil, _IterativeArrayFormula_parent, _IterativeArrayFormula_isNotListenToChanges;
|
|
13
|
-
import { EvaluationsManager } from '../helpers/evaluations';
|
|
14
|
-
import { parse } from 'mathjs';
|
|
15
|
-
export class IterativeArrayFormula {
|
|
16
|
-
get formula() {
|
|
17
|
-
return __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").formula;
|
|
18
|
-
}
|
|
19
|
-
get base() {
|
|
20
|
-
const formula = __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").formula;
|
|
21
|
-
return formula.base;
|
|
22
|
-
}
|
|
23
|
-
get value() {
|
|
24
|
-
return __classPrivateFieldGet(this, _IterativeArrayFormula_value, "f");
|
|
25
|
-
}
|
|
26
|
-
get name() {
|
|
27
|
-
return __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").name;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Represents the fields defined in the plugin settings
|
|
31
|
-
*/
|
|
32
|
-
get fields() {
|
|
33
|
-
const formula = this.formula;
|
|
34
|
-
return typeof formula?.fields === 'string' ? [formula?.fields] : formula?.fields;
|
|
35
|
-
}
|
|
36
|
-
get conditions() {
|
|
37
|
-
if (typeof __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").formula === 'string')
|
|
38
|
-
return;
|
|
39
|
-
const formula = __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").formula;
|
|
40
|
-
return formula.conditions;
|
|
41
|
-
}
|
|
42
|
-
get variables() {
|
|
43
|
-
return __classPrivateFieldGet(this, _IterativeArrayFormula_variables, "f");
|
|
44
|
-
}
|
|
45
|
-
constructor(parent, plugin, specs) {
|
|
46
|
-
_IterativeArrayFormula_plugin.set(this, void 0);
|
|
47
|
-
_IterativeArrayFormula_specs.set(this, void 0);
|
|
48
|
-
_IterativeArrayFormula_tokens.set(this, void 0);
|
|
49
|
-
_IterativeArrayFormula_value.set(this, void 0);
|
|
50
|
-
_IterativeArrayFormula_emptyValue.set(this, void 0);
|
|
51
|
-
_IterativeArrayFormula_variables.set(this, []);
|
|
52
|
-
_IterativeArrayFormula_round.set(this, void 0);
|
|
53
|
-
_IterativeArrayFormula_ceil.set(this, void 0);
|
|
54
|
-
_IterativeArrayFormula_parent.set(this, void 0);
|
|
55
|
-
_IterativeArrayFormula_isNotListenToChanges.set(this, false);
|
|
56
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_parent, parent, "f");
|
|
57
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_plugin, plugin, "f");
|
|
58
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_specs, specs, "f");
|
|
59
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_round, specs.round, "f");
|
|
60
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_ceil, specs.ceil, "f");
|
|
61
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_emptyValue, __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").emptyValue, "f");
|
|
62
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_isNotListenToChanges, specs.isNotListenToChanges, "f");
|
|
63
|
-
}
|
|
64
|
-
initialize() {
|
|
65
|
-
const fieldArray = __classPrivateFieldGet(this, _IterativeArrayFormula_plugin, "f").form.getField(__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldName);
|
|
66
|
-
if (!fieldArray) {
|
|
67
|
-
console.error(`Field ${__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldName} does NOT exist.`);
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
fieldArray.on('change', this.calculate.bind(this));
|
|
71
|
-
}
|
|
72
|
-
async calculate() {
|
|
73
|
-
const formulaField = __classPrivateFieldGet(this, _IterativeArrayFormula_plugin, "f").form.getField(this.name);
|
|
74
|
-
const fieldArray = __classPrivateFieldGet(this, _IterativeArrayFormula_plugin, "f").form.getField(__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldName);
|
|
75
|
-
if (!fieldArray) {
|
|
76
|
-
console.error(`Field ${__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldName} does NOT exist.`);
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
const entries = fieldArray[__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldProperty];
|
|
80
|
-
if (!Array.isArray(entries)) {
|
|
81
|
-
console.error(`Property ${__classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").arrayFieldProperty} is not an array.`);
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
const empty = !entries.length;
|
|
85
|
-
const formula = __classPrivateFieldGet(this, _IterativeArrayFormula_specs, "f").formula;
|
|
86
|
-
let formulaEvaluate = formula?.formula || formula;
|
|
87
|
-
if (empty) {
|
|
88
|
-
// If all models are empty, set the input to empty if exists.
|
|
89
|
-
if (formulaField)
|
|
90
|
-
formulaField.set({ value: __classPrivateFieldGet(this, _IterativeArrayFormula_emptyValue, "f") !== undefined ? __classPrivateFieldGet(this, _IterativeArrayFormula_emptyValue, "f") : '' });
|
|
91
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_value, undefined, "f");
|
|
92
|
-
__classPrivateFieldGet(this, _IterativeArrayFormula_parent, "f").trigger('change');
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
try {
|
|
96
|
-
let totalResult = 0;
|
|
97
|
-
for (let item of entries) {
|
|
98
|
-
if (formula.conditions) {
|
|
99
|
-
for (const condition of formula.conditions) {
|
|
100
|
-
const comparisonValue = item[condition.property];
|
|
101
|
-
let conditionMet = EvaluationsManager.validate(condition.condition, comparisonValue, condition.value);
|
|
102
|
-
if (conditionMet) {
|
|
103
|
-
formulaEvaluate = condition.formula;
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
formulaEvaluate = formula.base;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
const attrs = this.sanitizeData(item);
|
|
112
|
-
let result = parse(formulaEvaluate).evaluate(attrs);
|
|
113
|
-
const isInvalidResult = [-Infinity, Infinity, undefined, null, NaN].includes(result);
|
|
114
|
-
if (__classPrivateFieldGet(this, _IterativeArrayFormula_round, "f") && !isInvalidResult)
|
|
115
|
-
result = Math.round(result);
|
|
116
|
-
if (__classPrivateFieldGet(this, _IterativeArrayFormula_ceil, "f") && !isInvalidResult)
|
|
117
|
-
result = Math.ceil(result);
|
|
118
|
-
totalResult = isInvalidResult ? totalResult : Number(totalResult) + Number(result.toFixed(2));
|
|
119
|
-
}
|
|
120
|
-
const isInvalidResult = [-Infinity, Infinity, undefined, null, NaN, ''].includes(totalResult);
|
|
121
|
-
__classPrivateFieldSet(this, _IterativeArrayFormula_value, isInvalidResult ? __classPrivateFieldGet(this, _IterativeArrayFormula_emptyValue, "f") : totalResult, "f");
|
|
122
|
-
if (formulaField)
|
|
123
|
-
formulaField.set({ value: __classPrivateFieldGet(this, _IterativeArrayFormula_value, "f") });
|
|
124
|
-
__classPrivateFieldGet(this, _IterativeArrayFormula_parent, "f").trigger('change');
|
|
125
|
-
}
|
|
126
|
-
catch (e) {
|
|
127
|
-
console.log('formula', this.name, this.formula);
|
|
128
|
-
console.trace(e);
|
|
129
|
-
throw new Error(`Error calculating the formula: ${e.message} ${this.name}`);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
;
|
|
133
|
-
sanitizeData(data) {
|
|
134
|
-
if (Array.isArray(data)) {
|
|
135
|
-
return data.map(item => this.sanitizeData(item));
|
|
136
|
-
}
|
|
137
|
-
else if (typeof data === 'object' && data !== null) {
|
|
138
|
-
const sanitizedData = {};
|
|
139
|
-
for (const key in data) {
|
|
140
|
-
if (data.hasOwnProperty(key)) {
|
|
141
|
-
sanitizedData[key] = this.sanitizeData(data[key]);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
return sanitizedData;
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
return this.sanitizeValue(data);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
sanitizeValue(value, defaultValue = 0) {
|
|
151
|
-
return (value === null || value === undefined || isNaN(value)) ? defaultValue : Number(value);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
_IterativeArrayFormula_plugin = new WeakMap(), _IterativeArrayFormula_specs = new WeakMap(), _IterativeArrayFormula_tokens = new WeakMap(), _IterativeArrayFormula_value = new WeakMap(), _IterativeArrayFormula_emptyValue = new WeakMap(), _IterativeArrayFormula_variables = new WeakMap(), _IterativeArrayFormula_round = new WeakMap(), _IterativeArrayFormula_ceil = new WeakMap(), _IterativeArrayFormula_parent = new WeakMap(), _IterativeArrayFormula_isNotListenToChanges = new WeakMap();
|
|
155
|
-
//# sourceMappingURL=iterative-array.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iterative-array.js","sourceRoot":"","sources":["../../../src/formulas/variants/iterative-array.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { IComplexCondition } from '../types/formulas';
|
|
2
|
-
export declare class FormulaPerValue {
|
|
3
|
-
#private;
|
|
4
|
-
get formula(): string | IComplexCondition;
|
|
5
|
-
get value(): string | number;
|
|
6
|
-
get name(): string;
|
|
7
|
-
get observers(): string[];
|
|
8
|
-
/**
|
|
9
|
-
* Represents the fields defined in the plugin settings
|
|
10
|
-
*/
|
|
11
|
-
get fields(): string[];
|
|
12
|
-
get conditions(): import("../types/formulas").IConditionalField | import("../types/formulas").IConditionalField[];
|
|
13
|
-
constructor(parent: any, plugin: any, specs: any);
|
|
14
|
-
initialize(): void;
|
|
15
|
-
calculateAll(): void;
|
|
16
|
-
listenConditionals(): void;
|
|
17
|
-
calculate(field: any): Promise<void>;
|
|
18
|
-
evaluate(value: any): any;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=per-value.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"per-value.d.ts","sourceRoot":"","sources":["../../../src/formulas/variants/per-value.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmB,iBAAiB,EAAc,MAAM,mBAAmB,CAAC;AAGnF,qBAAa,eAAe;;IAI3B,IAAI,OAAO,+BAEV;IAED,IAAI,KAAK,oBAER;IACD,IAAI,IAAI,WAEP;IAGD,IAAI,SAAS,aAEZ;IACD;;OAEG;IACH,IAAI,MAAM,aAGT;IAED,IAAI,UAAU,oGAIb;gBAMW,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA;IAQjC,UAAU;IA2CV,YAAY;IAGZ,kBAAkB;IAOZ,SAAS,CAAC,KAAK,KAAA;IAyBrB,QAAQ,CAAC,KAAK,KAAA;CAqBd"}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
-
};
|
|
6
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
7
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
10
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
|
-
};
|
|
12
|
-
var _FormulaPerValue_plugin, _FormulaPerValue_emptyValue, _FormulaPerValue_specs, _FormulaPerValue_value, _FormulaPerValue_observers, _FormulaPerValue_parent, _FormulaPerValue_parsers, _FormulaPerValue_mainFields, _FormulaPerValue_isNotListenToChanges;
|
|
13
|
-
import { EvaluationsManager } from '../helpers/evaluations';
|
|
14
|
-
import { parse } from 'mathjs';
|
|
15
|
-
export class FormulaPerValue {
|
|
16
|
-
get formula() {
|
|
17
|
-
return __classPrivateFieldGet(this, _FormulaPerValue_specs, "f").formula;
|
|
18
|
-
}
|
|
19
|
-
get value() {
|
|
20
|
-
return __classPrivateFieldGet(this, _FormulaPerValue_value, "f");
|
|
21
|
-
}
|
|
22
|
-
get name() {
|
|
23
|
-
return __classPrivateFieldGet(this, _FormulaPerValue_specs, "f").name;
|
|
24
|
-
}
|
|
25
|
-
get observers() {
|
|
26
|
-
return __classPrivateFieldGet(this, _FormulaPerValue_observers, "f");
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Represents the fields defined in the plugin settings
|
|
30
|
-
*/
|
|
31
|
-
get fields() {
|
|
32
|
-
const formula = this.formula;
|
|
33
|
-
return typeof formula?.fields === 'string' ? [formula?.fields] : formula?.fields;
|
|
34
|
-
}
|
|
35
|
-
get conditions() {
|
|
36
|
-
if (typeof __classPrivateFieldGet(this, _FormulaPerValue_specs, "f").formula === 'string')
|
|
37
|
-
return;
|
|
38
|
-
const formula = __classPrivateFieldGet(this, _FormulaPerValue_specs, "f").formula;
|
|
39
|
-
return formula.conditions;
|
|
40
|
-
}
|
|
41
|
-
constructor(parent, plugin, specs) {
|
|
42
|
-
_FormulaPerValue_plugin.set(this, void 0);
|
|
43
|
-
_FormulaPerValue_emptyValue.set(this, void 0);
|
|
44
|
-
_FormulaPerValue_specs.set(this, void 0);
|
|
45
|
-
_FormulaPerValue_value.set(this, void 0);
|
|
46
|
-
_FormulaPerValue_observers.set(this, void 0);
|
|
47
|
-
_FormulaPerValue_parent.set(this, void 0);
|
|
48
|
-
_FormulaPerValue_parsers.set(this, void 0);
|
|
49
|
-
_FormulaPerValue_mainFields.set(this, void 0);
|
|
50
|
-
_FormulaPerValue_isNotListenToChanges.set(this, false);
|
|
51
|
-
__classPrivateFieldSet(this, _FormulaPerValue_parent, parent, "f");
|
|
52
|
-
__classPrivateFieldSet(this, _FormulaPerValue_plugin, plugin, "f");
|
|
53
|
-
__classPrivateFieldSet(this, _FormulaPerValue_specs, specs, "f");
|
|
54
|
-
__classPrivateFieldSet(this, _FormulaPerValue_observers, specs.formula.observers, "f");
|
|
55
|
-
__classPrivateFieldSet(this, _FormulaPerValue_isNotListenToChanges, specs.isNotListenToChanges, "f");
|
|
56
|
-
}
|
|
57
|
-
initialize() {
|
|
58
|
-
const { form } = __classPrivateFieldGet(this, _FormulaPerValue_plugin, "f");
|
|
59
|
-
const fields = new Set();
|
|
60
|
-
__classPrivateFieldSet(this, _FormulaPerValue_mainFields, __classPrivateFieldGet(this, _FormulaPerValue_parent, "f").getModels(this.fields), "f");
|
|
61
|
-
/**
|
|
62
|
-
* The method will iterate over the conditions to get the parser for each value
|
|
63
|
-
* and get access to the fields that are part of the formula and be able to evaluate it
|
|
64
|
-
* changes.
|
|
65
|
-
*/
|
|
66
|
-
const conditionsArray = Array.isArray(this.conditions) ? this.conditions : [];
|
|
67
|
-
conditionsArray.forEach(condition => {
|
|
68
|
-
if (!condition.condition) {
|
|
69
|
-
throw new Error('the formula per value must contain a condition property in the condition`s item');
|
|
70
|
-
}
|
|
71
|
-
if (!condition.values) {
|
|
72
|
-
throw new Error('the formula per value must contain a values property in the condition`s item');
|
|
73
|
-
}
|
|
74
|
-
const parsers = condition.values.map(item => __classPrivateFieldGet(this, _FormulaPerValue_parent, "f").getParser(item));
|
|
75
|
-
__classPrivateFieldSet(this, _FormulaPerValue_parsers, parsers, "f");
|
|
76
|
-
parsers.forEach(parser => {
|
|
77
|
-
parser.tokens.filter(token => token.type === 'variable').forEach(token => fields.add(token.value));
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
fields.forEach(field => {
|
|
81
|
-
const model = form.getField(field);
|
|
82
|
-
if (model)
|
|
83
|
-
model.on('change', this.listenConditionals.bind(this));
|
|
84
|
-
});
|
|
85
|
-
this.listenConditionals();
|
|
86
|
-
if (!__classPrivateFieldGet(this, _FormulaPerValue_isNotListenToChanges, "f"))
|
|
87
|
-
__classPrivateFieldGet(this, _FormulaPerValue_mainFields, "f").forEach(item => item.on('change', this.calculate.bind(this)));
|
|
88
|
-
if (!__classPrivateFieldGet(this, _FormulaPerValue_isNotListenToChanges, "f"))
|
|
89
|
-
if (__classPrivateFieldGet(this, _FormulaPerValue_observers, "f") && Array.isArray(__classPrivateFieldGet(this, _FormulaPerValue_observers, "f")) && !!__classPrivateFieldGet(this, _FormulaPerValue_observers, "f").length) {
|
|
90
|
-
const fields = __classPrivateFieldGet(this, _FormulaPerValue_parent, "f").getModels(__classPrivateFieldGet(this, _FormulaPerValue_observers, "f"));
|
|
91
|
-
fields.forEach(field => {
|
|
92
|
-
if (!field)
|
|
93
|
-
return;
|
|
94
|
-
field.on('change', this.calculateAll.bind(this));
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
calculateAll() {
|
|
99
|
-
__classPrivateFieldGet(this, _FormulaPerValue_mainFields, "f").forEach(field => this.calculate(field));
|
|
100
|
-
}
|
|
101
|
-
listenConditionals() {
|
|
102
|
-
__classPrivateFieldGet(this, _FormulaPerValue_mainFields, "f").forEach(field => {
|
|
103
|
-
if (!field)
|
|
104
|
-
return;
|
|
105
|
-
field.on('change', this.calculate.bind(this));
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
async calculate(field) {
|
|
109
|
-
if (!field)
|
|
110
|
-
return;
|
|
111
|
-
const { form } = __classPrivateFieldGet(this, _FormulaPerValue_plugin, "f");
|
|
112
|
-
const formula = this.evaluate(field.value);
|
|
113
|
-
if (!formula)
|
|
114
|
-
return;
|
|
115
|
-
const variables = formula.tokens.filter(token => token.type === 'variable').map(item => item.value);
|
|
116
|
-
const params = await __classPrivateFieldGet(this, _FormulaPerValue_parent, "f").getParams(variables);
|
|
117
|
-
const formulaField = form.getField(this.name);
|
|
118
|
-
try {
|
|
119
|
-
const keys = Object.keys(params);
|
|
120
|
-
const result = keys.length === 1 ? params[keys[0]] : parse(formula.formula).evaluate(params);
|
|
121
|
-
__classPrivateFieldSet(this, _FormulaPerValue_value, [-Infinity, Infinity, undefined, null, NaN].includes(result)
|
|
122
|
-
? __classPrivateFieldGet(this, _FormulaPerValue_emptyValue, "f")
|
|
123
|
-
: Number(result.toFixed(2)), "f");
|
|
124
|
-
formulaField && formulaField.set({ value: __classPrivateFieldGet(this, _FormulaPerValue_value, "f") });
|
|
125
|
-
__classPrivateFieldGet(this, _FormulaPerValue_parent, "f").trigger('change');
|
|
126
|
-
}
|
|
127
|
-
catch (e) {
|
|
128
|
-
console.log(e);
|
|
129
|
-
throw new Error('Error calculating the formula');
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
evaluate(value) {
|
|
133
|
-
let formula = undefined;
|
|
134
|
-
if ([null, undefined].includes(value)) {
|
|
135
|
-
return;
|
|
136
|
-
}
|
|
137
|
-
const conditionsArray = Array.isArray(this.conditions) ? this.conditions : [];
|
|
138
|
-
conditionsArray.forEach(item => {
|
|
139
|
-
const { condition, values } = item;
|
|
140
|
-
if (!condition) {
|
|
141
|
-
throw new Error('the formula per value must contain a condition property in the condition`s item');
|
|
142
|
-
}
|
|
143
|
-
if (!values) {
|
|
144
|
-
throw new Error('the formula per value must contain a values property in the condition`s item');
|
|
145
|
-
}
|
|
146
|
-
const index = values.findIndex(item => EvaluationsManager.validate(condition, value, item.value));
|
|
147
|
-
if (index > -1)
|
|
148
|
-
formula = __classPrivateFieldGet(this, _FormulaPerValue_parent, "f").getParser(values[index]);
|
|
149
|
-
});
|
|
150
|
-
return formula;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
_FormulaPerValue_plugin = new WeakMap(), _FormulaPerValue_emptyValue = new WeakMap(), _FormulaPerValue_specs = new WeakMap(), _FormulaPerValue_value = new WeakMap(), _FormulaPerValue_observers = new WeakMap(), _FormulaPerValue_parent = new WeakMap(), _FormulaPerValue_parsers = new WeakMap(), _FormulaPerValue_mainFields = new WeakMap(), _FormulaPerValue_isNotListenToChanges = new WeakMap();
|
|
154
|
-
//# sourceMappingURL=per-value.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"per-value.js","sourceRoot":"","sources":["../../../src/formulas/variants/per-value.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,OAAO,eAAe;IAI3B,IAAI,OAAO;QACV,OAAO,uBAAA,IAAI,8BAAO,CAAC,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,uBAAA,IAAI,8BAAO,CAAC;IACpB,CAAC;IACD,IAAI,IAAI;QACP,OAAO,uBAAA,IAAI,8BAAO,CAAC,IAAI,CAAC;IACzB,CAAC;IAGD,IAAI,SAAS;QACZ,OAAO,uBAAA,IAAI,kCAAW,CAAC;IACxB,CAAC;IACD;;OAEG;IACH,IAAI,MAAM;QACT,MAAM,OAAO,GAAsB,IAAI,CAAC,OAAO,CAAC;QAChD,OAAO,OAAO,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC;IAClF,CAAC;IAED,IAAI,UAAU;QACb,IAAI,OAAO,uBAAA,IAAI,8BAAO,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO;QACpD,MAAM,OAAO,GAAG,uBAAA,IAAI,8BAAO,CAAC,OAA4B,CAAC;QACzD,OAAO,OAAO,CAAC,UAAU,CAAC;IAC3B,CAAC;IAMD,YAAY,MAAM,EAAE,MAAM,EAAE,KAAK;QApCjC,0CAAa;QACb,8CAAuB;QACvB,yCAAwB;QAIxB,yCAAwC;QAQxC,6CAAqB;QAkBrB,0CAAwB;QACxB,2CAAuB;QACvB,8CAAmB;QACnB,gDAAwB,KAAK,EAAA;QAE5B,uBAAA,IAAI,2BAAW,MAAM,MAAA,CAAC;QACtB,uBAAA,IAAI,2BAAW,MAAM,MAAA,CAAC;QACtB,uBAAA,IAAI,0BAAU,KAAK,MAAA,CAAC;QACpB,uBAAA,IAAI,8BAAc,KAAK,CAAC,OAAO,CAAC,SAAS,MAAA,CAAC;QAC1C,uBAAA,IAAI,yCAAyB,KAAK,CAAC,oBAAoB,MAAA,CAAA;IACxD,CAAC;IAED,UAAU;QACT,MAAM,EAAE,IAAI,EAAE,GAAG,uBAAA,IAAI,+BAAQ,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;QAEjC,uBAAA,IAAI,+BAAe,uBAAA,IAAI,+BAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAA,CAAC;QAEvD;;;;WAIG;QACH,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YACnC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;YACpG,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;YACjG,CAAC;YAED,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAA,IAAI,+BAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3E,uBAAA,IAAI,4BAAY,OAAO,MAAA,CAAC;YACxB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACxB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACpG,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,KAAK;gBAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,uBAAA,IAAI,6CAAsB;YAAE,uBAAA,IAAI,mCAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChH,IAAI,CAAC,uBAAA,IAAI,6CAAsB;YAAE,IAAI,uBAAA,IAAI,kCAAW,IAAI,KAAK,CAAC,OAAO,CAAC,uBAAA,IAAI,kCAAW,CAAC,IAAI,CAAC,CAAC,uBAAA,IAAI,kCAAW,CAAC,MAAM,EAAE,CAAC;gBACpH,MAAM,MAAM,GAAG,uBAAA,IAAI,+BAAQ,CAAC,SAAS,CAAC,uBAAA,IAAI,kCAAW,CAAC,CAAC;gBACvD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACtB,IAAI,CAAC,KAAK;wBAAE,OAAO;oBACnB,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClD,CAAC,CAAC,CAAC;YACJ,CAAC;IACF,CAAC;IAED,YAAY;QACX,uBAAA,IAAI,mCAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,kBAAkB;QACjB,uBAAA,IAAI,mCAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAChC,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAK;QACpB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,EAAE,IAAI,EAAE,GAAG,uBAAA,IAAI,+BAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpG,MAAM,MAAM,GAAG,MAAM,uBAAA,IAAI,+BAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9C,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAiB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvG,uBAAA,IAAI,0BAAU,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzE,CAAC,CAAC,uBAAA,IAAI,mCAAY;gBAClB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAA,CAAC;YAC7B,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,uBAAA,IAAI,8BAAO,EAAE,CAAC,CAAC;YACzD,uBAAA,IAAI,+BAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAClD,CAAC;IACF,CAAC;IAED,QAAQ,CAAC,KAAK;QACb,IAAI,OAAO,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO;QACR,CAAC;QACD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACnC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;YACpG,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;YACjG,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAElG,IAAI,KAAK,GAAG,CAAC,CAAC;gBAAE,OAAO,GAAG,uBAAA,IAAI,+BAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IAChB,CAAC;CACD"}
|
package/dist/index.d.ts
DELETED
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
|
package/dist/index.js
DELETED
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
|
package/dist/models/base.d.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { ReactiveModel } from '@beyond-js/reactive/model';
|
|
2
|
-
import type { WrappedFormModel } from './wrapper';
|
|
3
|
-
import type { FormField } from './field';
|
|
4
|
-
import { PendingPromise } from '../utils/pending-promise';
|
|
5
|
-
import { FieldOrAlias } from './types/callbacks';
|
|
6
|
-
import { IFormModelProps } from './types/model';
|
|
7
|
-
import { IBaseWiseModel } from './types/base-wise-model';
|
|
8
|
-
export declare class BaseWiseModel extends ReactiveModel<IBaseWiseModel> {
|
|
9
|
-
#private;
|
|
10
|
-
get settings(): any;
|
|
11
|
-
set settings(value: any);
|
|
12
|
-
get callbacks(): Record<string, (...args: any[]) => void>;
|
|
13
|
-
set callbacks(value: Record<string, (...args: any[]) => void>);
|
|
14
|
-
get originalValues(): Record<string, string>;
|
|
15
|
-
get name(): any;
|
|
16
|
-
get template(): any;
|
|
17
|
-
get wrappers(): Map<string, WrappedFormModel>;
|
|
18
|
-
set wrappers(value: Map<string, WrappedFormModel>);
|
|
19
|
-
get fields(): Map<string, WrappedFormModel | FormField>;
|
|
20
|
-
get values(): Record<string, any>;
|
|
21
|
-
get specs(): any;
|
|
22
|
-
set specs(value: any);
|
|
23
|
-
protected loadedPromise: PendingPromise<boolean>;
|
|
24
|
-
protected childWrappersReady: number;
|
|
25
|
-
constructor(settings: IFormModelProps, reactiveProps?: any);
|
|
26
|
-
/**
|
|
27
|
-
* Sets the value of a specified field within the wrapper. If the field exists, its value is updated.
|
|
28
|
-
* @param {string} name - The name of the field to update.
|
|
29
|
-
* @param {any} value - The new value for the field.
|
|
30
|
-
*/
|
|
31
|
-
setField(name: string, value: any): void;
|
|
32
|
-
/**
|
|
33
|
-
* Retrieves a field or nested wrapper by name. Supports dot notation for accessing deeply nested fields.
|
|
34
|
-
* @param {string} name - The name of the field or nested wrapper to retrieve.
|
|
35
|
-
* @returns {FormField | WrappedFormModel | undefined} The requested instance, or undefined if not found.
|
|
36
|
-
*/
|
|
37
|
-
getField(name: string): any;
|
|
38
|
-
/**
|
|
39
|
-
* Extracts the field name from a FieldOrAlias type. The input can either be a string directly representing
|
|
40
|
-
* the field name or an object where the key is the field name and the value is an alias.
|
|
41
|
-
* This function returns the field name if it is a string, or the first key (field name) if it is an object,
|
|
42
|
-
* assuming the object contains exactly one key-value pair.
|
|
43
|
-
*
|
|
44
|
-
* @param {FieldOrAlias} field - The field identifier which could be a string or an object with one key-value pair.
|
|
45
|
-
* @returns {string} - The field name extracted from the input.
|
|
46
|
-
* @throws {Error} - Throws an error if the input is an object that does not contain exactly one key.
|
|
47
|
-
*/
|
|
48
|
-
getFieldName(field: FieldOrAlias): string;
|
|
49
|
-
/**
|
|
50
|
-
* Clears all fields within the wrapper, resetting their values to their initial state.
|
|
51
|
-
*/
|
|
52
|
-
clear: () => void;
|
|
53
|
-
getParams(param: any): any;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=base.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/models/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,qBAAa,aAAc,SAAQ,aAAa,CAAC,cAAc,CAAC;;IAE/D,IAAI,QAAQ,QAEX;IAED,IAAI,QAAQ,CAAC,KAAK,KAAA,EAEjB;IAGD,IAAI,SAAS,uCAD2B,IAAI,EAG3C;IAED,IAAI,SAAS,CAAC,KAAK,qCALqB,IAAI,CAKzB,EAElB;IAGD,IAAI,cAAc,2BAEjB;IAED,IAAI,IAAI,QAEP;IACD,IAAI,QAAQ,QAEX;IAGD,IAAI,QAAQ,kCAEX;IAED,IAAI,QAAQ,CAAC,KAAK,+BAAA,EAEjB;IAGD,IAAI,MAAM,8CAET;IACD,IAAI,MAAM,wBAST;IAGD,IAAI,KAAK,QAER;IACD,IAAI,KAAK,CAAC,KAAK,KAAA,EAEd;IAID,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,OAAO,CAAC,CAAwB;IACxE,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAK;gBAE7B,QAAQ,EAAE,eAAe,EAAE,aAAa,CAAC,KAAA;IAQrD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,KAAA;IAU5B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM;IAsBrB;;;;;;;;;OASG;IACH,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM;IAYzC;;OAEG;IACH,KAAK,aAIH;IAEF,SAAS,CAAC,KAAK,KAAA;CAKf"}
|
package/dist/models/base.js
DELETED
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
2
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
3
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
|
-
};
|
|
6
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
7
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
10
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
11
|
-
};
|
|
12
|
-
var _BaseWiseModel_settings, _BaseWiseModel_callbacks, _BaseWiseModel_initialValues, _BaseWiseModel_wrappers, _BaseWiseModel_fields, _BaseWiseModel_specs, _BaseWiseModel_params;
|
|
13
|
-
import { ReactiveModel } from '@beyond-js/reactive/model';
|
|
14
|
-
import { PendingPromise } from '../utils/pending-promise';
|
|
15
|
-
export class BaseWiseModel extends ReactiveModel {
|
|
16
|
-
get settings() {
|
|
17
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_settings, "f");
|
|
18
|
-
}
|
|
19
|
-
set settings(value) {
|
|
20
|
-
__classPrivateFieldSet(this, _BaseWiseModel_settings, value, "f");
|
|
21
|
-
}
|
|
22
|
-
get callbacks() {
|
|
23
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_callbacks, "f");
|
|
24
|
-
}
|
|
25
|
-
set callbacks(value) {
|
|
26
|
-
__classPrivateFieldSet(this, _BaseWiseModel_callbacks, value, "f");
|
|
27
|
-
}
|
|
28
|
-
get originalValues() {
|
|
29
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_initialValues, "f");
|
|
30
|
-
}
|
|
31
|
-
get name() {
|
|
32
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_settings, "f").name;
|
|
33
|
-
}
|
|
34
|
-
get template() {
|
|
35
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_settings, "f").template;
|
|
36
|
-
}
|
|
37
|
-
get wrappers() {
|
|
38
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_wrappers, "f");
|
|
39
|
-
}
|
|
40
|
-
set wrappers(value) {
|
|
41
|
-
__classPrivateFieldSet(this, _BaseWiseModel_wrappers, value, "f");
|
|
42
|
-
}
|
|
43
|
-
get fields() {
|
|
44
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_fields, "f");
|
|
45
|
-
}
|
|
46
|
-
get values() {
|
|
47
|
-
const data = {};
|
|
48
|
-
__classPrivateFieldGet(this, _BaseWiseModel_fields, "f").forEach((field, key) => {
|
|
49
|
-
// FormField has value, WrappedFormModel doesn't
|
|
50
|
-
if ('value' in field) {
|
|
51
|
-
data[key] = field.value;
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
return data;
|
|
55
|
-
}
|
|
56
|
-
get specs() {
|
|
57
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_specs, "f");
|
|
58
|
-
}
|
|
59
|
-
set specs(value) {
|
|
60
|
-
__classPrivateFieldSet(this, _BaseWiseModel_specs, value, "f");
|
|
61
|
-
}
|
|
62
|
-
constructor(settings, reactiveProps) {
|
|
63
|
-
super(settings);
|
|
64
|
-
_BaseWiseModel_settings.set(this, void 0);
|
|
65
|
-
_BaseWiseModel_callbacks.set(this, {});
|
|
66
|
-
_BaseWiseModel_initialValues.set(this, {});
|
|
67
|
-
_BaseWiseModel_wrappers.set(this, new Map());
|
|
68
|
-
_BaseWiseModel_fields.set(this, new Map());
|
|
69
|
-
_BaseWiseModel_specs.set(this, void 0);
|
|
70
|
-
_BaseWiseModel_params.set(this, {});
|
|
71
|
-
this.loadedPromise = new PendingPromise();
|
|
72
|
-
this.childWrappersReady = 0;
|
|
73
|
-
/**
|
|
74
|
-
* Clears all fields within the wrapper, resetting their values to their initial state.
|
|
75
|
-
*/
|
|
76
|
-
this.clear = () => {
|
|
77
|
-
this.fields.forEach(field => field.clear());
|
|
78
|
-
this.triggerEvent();
|
|
79
|
-
this.triggerEvent('clear');
|
|
80
|
-
};
|
|
81
|
-
__classPrivateFieldSet(this, _BaseWiseModel_params, settings.params ?? {}, "f");
|
|
82
|
-
__classPrivateFieldSet(this, _BaseWiseModel_settings, settings, "f");
|
|
83
|
-
__classPrivateFieldSet(this, _BaseWiseModel_callbacks, settings.callbacks ?? {}, "f");
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Sets the value of a specified field within the wrapper. If the field exists, its value is updated.
|
|
87
|
-
* @param {string} name - The name of the field to update.
|
|
88
|
-
* @param {any} value - The new value for the field.
|
|
89
|
-
*/
|
|
90
|
-
setField(name, value) {
|
|
91
|
-
if (!this.getField(name)) {
|
|
92
|
-
console.error('Field not found', name, this.settings.name, this.fields.keys());
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
const field = this.getField(this.getFieldName(name));
|
|
96
|
-
field.setValue(value);
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Retrieves a field or nested wrapper by name. Supports dot notation for accessing deeply nested fields.
|
|
100
|
-
* @param {string} name - The name of the field or nested wrapper to retrieve.
|
|
101
|
-
* @returns {FormField | WrappedFormModel | undefined} The requested instance, or undefined if not found.
|
|
102
|
-
*/
|
|
103
|
-
getField(name) {
|
|
104
|
-
if (!name)
|
|
105
|
-
return console.warn('You need to provide a name to get a field in form ', __classPrivateFieldGet(this, _BaseWiseModel_settings, "f").name);
|
|
106
|
-
if (!name.includes('.')) {
|
|
107
|
-
let field = __classPrivateFieldGet(this, _BaseWiseModel_fields, "f").get(name);
|
|
108
|
-
if (!field) {
|
|
109
|
-
__classPrivateFieldGet(this, _BaseWiseModel_wrappers, "f").forEach(item => {
|
|
110
|
-
const foundField = item.getField(name);
|
|
111
|
-
if (foundField)
|
|
112
|
-
field = foundField;
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
return field;
|
|
116
|
-
}
|
|
117
|
-
const [wrapperName, ...others] = name.split('.');
|
|
118
|
-
const currentWrapper = __classPrivateFieldGet(this, _BaseWiseModel_wrappers, "f").get(wrapperName);
|
|
119
|
-
const otherWrapper = others.join('.');
|
|
120
|
-
return currentWrapper.getField(otherWrapper);
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Extracts the field name from a FieldOrAlias type. The input can either be a string directly representing
|
|
124
|
-
* the field name or an object where the key is the field name and the value is an alias.
|
|
125
|
-
* This function returns the field name if it is a string, or the first key (field name) if it is an object,
|
|
126
|
-
* assuming the object contains exactly one key-value pair.
|
|
127
|
-
*
|
|
128
|
-
* @param {FieldOrAlias} field - The field identifier which could be a string or an object with one key-value pair.
|
|
129
|
-
* @returns {string} - The field name extracted from the input.
|
|
130
|
-
* @throws {Error} - Throws an error if the input is an object that does not contain exactly one key.
|
|
131
|
-
*/
|
|
132
|
-
getFieldName(field) {
|
|
133
|
-
if (typeof field === 'object' && Object.keys(field).length !== 1) {
|
|
134
|
-
throw new Error('Field object must contain exactly one key.');
|
|
135
|
-
}
|
|
136
|
-
if (typeof field === 'string') {
|
|
137
|
-
return field;
|
|
138
|
-
}
|
|
139
|
-
return Object.keys(field)[0];
|
|
140
|
-
}
|
|
141
|
-
getParams(param) {
|
|
142
|
-
return __classPrivateFieldGet(this, _BaseWiseModel_params, "f")[param];
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
_BaseWiseModel_settings = new WeakMap(), _BaseWiseModel_callbacks = new WeakMap(), _BaseWiseModel_initialValues = new WeakMap(), _BaseWiseModel_wrappers = new WeakMap(), _BaseWiseModel_fields = new WeakMap(), _BaseWiseModel_specs = new WeakMap(), _BaseWiseModel_params = new WeakMap();
|
|
146
|
-
//# sourceMappingURL=base.js.map
|
package/dist/models/base.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/models/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"callback-manager.d.ts","sourceRoot":"","sources":["../../src/models/callback-manager.ts"],"names":[],"mappings":"AAIA,qBAAa,eAAe;;gBAKZ,KAAK,KAAA,EAAE,KAAK,KAAA;IAOxB,UAAU;IAkCV,eAAe,GAAU,aAAQ,mBAiD/B;CACL"}
|