@formio/js 5.1.0-dev.6114.02b6d9c → 5.1.0-dev.6123.055aa35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/formio.builder.css +6 -0
- package/dist/formio.builder.min.css +1 -1
- package/dist/formio.embed.css +1 -1
- package/dist/formio.embed.min.css +1 -1
- package/dist/formio.form.css +6 -0
- package/dist/formio.form.js +112 -123
- package/dist/formio.form.min.css +1 -1
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.full.css +6 -0
- package/dist/formio.full.js +119 -130
- package/dist/formio.full.min.css +1 -1
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.js +61 -50
- package/dist/formio.min.js +1 -1
- package/dist/formio.utils.js +72 -72
- package/dist/formio.utils.min.js +1 -1
- package/lib/cjs/Element.js +13 -36
- package/lib/cjs/EventEmitter.js +2 -25
- package/lib/cjs/Form.js +2 -25
- package/lib/cjs/PDF.js +1 -1
- package/lib/cjs/PDFBuilder.js +4 -5
- package/lib/cjs/Webform.js +5 -6
- package/lib/cjs/WebformBuilder.js +9 -10
- package/lib/cjs/Wizard.js +1 -1
- package/lib/cjs/WizardBuilder.js +1 -1
- package/lib/cjs/components/_classes/component/Component.js +29 -52
- package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
- package/lib/cjs/components/_classes/componentModal/ComponentModal.js +1 -1
- package/lib/cjs/components/_classes/input/Input.js +1 -1
- package/lib/cjs/components/_classes/list/ListComponent.js +1 -1
- package/lib/cjs/components/_classes/nested/NestedComponent.js +6 -6
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
- package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
- package/lib/cjs/components/address/Address.js +1 -1
- package/lib/cjs/components/alert/Alert.js +1 -1
- package/lib/cjs/components/button/Button.d.ts +1 -1
- package/lib/cjs/components/button/Button.js +4 -4
- package/lib/cjs/components/checkbox/Checkbox.js +1 -1
- package/lib/cjs/components/container/Container.js +1 -1
- package/lib/cjs/components/currency/Currency.js +1 -1
- package/lib/cjs/components/datagrid/DataGrid.js +1 -1
- package/lib/cjs/components/datamap/DataMap.d.ts +1 -1
- package/lib/cjs/components/datamap/DataMap.js +4 -4
- package/lib/cjs/components/datetime/DateTime.d.ts +1 -1
- package/lib/cjs/components/datetime/DateTime.js +15 -13
- package/lib/cjs/components/day/Day.js +1 -1
- package/lib/cjs/components/editgrid/EditGrid.js +1 -1
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
- package/lib/cjs/components/file/File.js +1 -1
- package/lib/cjs/components/form/Form.js +14 -2
- package/lib/cjs/components/form/editForm/Form.edit.form.js +4 -3
- package/lib/cjs/components/number/Number.js +1 -1
- package/lib/cjs/components/panel/Panel.js +1 -1
- package/lib/cjs/components/radio/Radio.js +1 -1
- package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
- package/lib/cjs/components/select/Select.js +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.js +1 -1
- package/lib/cjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/cjs/components/signature/Signature.js +1 -1
- package/lib/cjs/components/survey/Survey.js +1 -1
- package/lib/cjs/components/tags/Tags.js +1 -1
- package/lib/cjs/components/textarea/TextArea.js +3 -3
- package/lib/cjs/components/textfield/TextField.js +7 -30
- package/lib/cjs/components/time/Time.js +1 -1
- package/lib/cjs/formio.form.js +3 -3
- package/lib/cjs/i18n.js +1 -1
- package/lib/cjs/providers/storage/uploadAdapter.js +1 -1
- package/lib/cjs/utils/Evaluator.d.ts +13 -6
- package/lib/cjs/utils/Evaluator.js +27 -15
- package/lib/cjs/utils/builder.js +5 -5
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +3 -3
- package/lib/cjs/utils/i18n.js +3 -3
- package/lib/cjs/utils/index.d.ts +161 -2
- package/lib/cjs/utils/index.js +12 -2
- package/lib/cjs/utils/utils.d.ts +18 -33
- package/lib/cjs/utils/utils.js +52 -130
- package/lib/cjs/widgets/CalendarWidget.d.ts +0 -7
- package/lib/cjs/widgets/CalendarWidget.js +15 -39
- package/lib/mjs/Element.js +6 -6
- package/lib/mjs/EventEmitter.js +2 -2
- package/lib/mjs/Form.js +1 -1
- package/lib/mjs/PDF.js +1 -1
- package/lib/mjs/PDFBuilder.js +1 -2
- package/lib/mjs/Webform.js +3 -4
- package/lib/mjs/WebformBuilder.js +1 -2
- package/lib/mjs/Wizard.js +1 -1
- package/lib/mjs/WizardBuilder.js +1 -1
- package/lib/mjs/components/_classes/component/Component.js +2 -2
- package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
- package/lib/mjs/components/_classes/componentModal/ComponentModal.js +1 -1
- package/lib/mjs/components/_classes/input/Input.js +1 -1
- package/lib/mjs/components/_classes/list/ListComponent.js +1 -1
- package/lib/mjs/components/_classes/nested/NestedComponent.js +6 -6
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
- package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
- package/lib/mjs/components/address/Address.js +1 -1
- package/lib/mjs/components/alert/Alert.js +1 -1
- package/lib/mjs/components/button/Button.d.ts +1 -1
- package/lib/mjs/components/button/Button.js +1 -1
- package/lib/mjs/components/checkbox/Checkbox.js +1 -1
- package/lib/mjs/components/container/Container.js +1 -1
- package/lib/mjs/components/currency/Currency.js +1 -1
- package/lib/mjs/components/datagrid/DataGrid.js +1 -1
- package/lib/mjs/components/datamap/DataMap.d.ts +1 -1
- package/lib/mjs/components/datamap/DataMap.js +1 -1
- package/lib/mjs/components/datetime/DateTime.d.ts +1 -1
- package/lib/mjs/components/datetime/DateTime.js +15 -13
- package/lib/mjs/components/day/Day.js +1 -1
- package/lib/mjs/components/editgrid/EditGrid.js +1 -1
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
- package/lib/mjs/components/file/File.js +1 -1
- package/lib/mjs/components/form/Form.js +13 -2
- package/lib/mjs/components/form/editForm/Form.edit.form.js +3 -2
- package/lib/mjs/components/number/Number.js +1 -1
- package/lib/mjs/components/panel/Panel.js +1 -1
- package/lib/mjs/components/radio/Radio.js +1 -1
- package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
- package/lib/mjs/components/select/Select.js +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.js +1 -1
- package/lib/mjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/mjs/components/signature/Signature.js +1 -1
- package/lib/mjs/components/survey/Survey.js +1 -1
- package/lib/mjs/components/tags/Tags.js +1 -1
- package/lib/mjs/components/textarea/TextArea.js +3 -3
- package/lib/mjs/components/textfield/TextField.js +1 -1
- package/lib/mjs/components/time/Time.js +1 -1
- package/lib/mjs/formio.form.js +2 -2
- package/lib/mjs/i18n.js +1 -1
- package/lib/mjs/providers/storage/uploadAdapter.js +1 -1
- package/lib/mjs/utils/Evaluator.d.ts +13 -6
- package/lib/mjs/utils/Evaluator.js +21 -13
- package/lib/mjs/utils/builder.js +1 -1
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +1 -1
- package/lib/mjs/utils/i18n.js +1 -1
- package/lib/mjs/utils/index.d.ts +161 -2
- package/lib/mjs/utils/index.js +11 -1
- package/lib/mjs/utils/utils.d.ts +18 -33
- package/lib/mjs/utils/utils.js +45 -105
- package/lib/mjs/widgets/CalendarWidget.d.ts +0 -7
- package/lib/mjs/widgets/CalendarWidget.js +15 -39
- package/package.json +3 -2
@@ -1,27 +1,4 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
-
}
|
8
|
-
Object.defineProperty(o, k2, desc);
|
9
|
-
}) : (function(o, m, k, k2) {
|
10
|
-
if (k2 === undefined) k2 = k;
|
11
|
-
o[k2] = m[k];
|
12
|
-
}));
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
-
}) : function(o, v) {
|
16
|
-
o["default"] = v;
|
17
|
-
});
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
19
|
-
if (mod && mod.__esModule) return mod;
|
20
|
-
var result = {};
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
-
__setModuleDefault(result, mod);
|
23
|
-
return result;
|
24
|
-
};
|
25
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
26
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
27
4
|
};
|
@@ -29,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
6
|
const Input_1 = __importDefault(require("../_classes/input/Input"));
|
30
7
|
const vanilla_text_mask_1 = require("@formio/vanilla-text-mask");
|
31
8
|
const inputmask_1 = __importDefault(require("inputmask"));
|
32
|
-
const
|
9
|
+
const utils_1 = __importDefault(require("../../utils"));
|
33
10
|
const lodash_1 = __importDefault(require("lodash"));
|
34
11
|
class TextFieldComponent extends Input_1.default {
|
35
12
|
static schema(...extend) {
|
@@ -71,7 +48,7 @@ class TextFieldComponent extends Input_1.default {
|
|
71
48
|
} });
|
72
49
|
}
|
73
50
|
static savedValueTypes(schema) {
|
74
|
-
return
|
51
|
+
return utils_1.default.getComponentSavedTypes(schema) || [utils_1.default.componentValueTypes.string];
|
75
52
|
}
|
76
53
|
get defaultSchema() {
|
77
54
|
return TextFieldComponent.schema();
|
@@ -104,7 +81,7 @@ class TextFieldComponent extends Input_1.default {
|
|
104
81
|
displayInTimezone, locale: this.component.widget.locale || this.options.language, saveAs: 'text' });
|
105
82
|
// update originalComponent to include widget settings after component initialization
|
106
83
|
// originalComponent is used to restore the component (and widget) after evaluating field logic
|
107
|
-
this.originalComponent =
|
84
|
+
this.originalComponent = utils_1.default.fastCloneDeep(this.component);
|
108
85
|
}
|
109
86
|
}
|
110
87
|
attach(element) {
|
@@ -175,7 +152,7 @@ class TextFieldComponent extends Input_1.default {
|
|
175
152
|
}
|
176
153
|
else {
|
177
154
|
const placeholderChar = this.placeholderChar;
|
178
|
-
textInput.value = (0, vanilla_text_mask_1.conformToMask)(textValue,
|
155
|
+
textInput.value = (0, vanilla_text_mask_1.conformToMask)(textValue, utils_1.default.getInputMask(mask), { placeholderChar }).conformedValue;
|
179
156
|
}
|
180
157
|
}
|
181
158
|
else {
|
@@ -183,8 +160,8 @@ class TextFieldComponent extends Input_1.default {
|
|
183
160
|
}
|
184
161
|
}
|
185
162
|
unmaskValue(value, format = this.component.displayMask) {
|
186
|
-
const mask =
|
187
|
-
return
|
163
|
+
const mask = utils_1.default.getInputMask(format, this.placeholderChar);
|
164
|
+
return utils_1.default.unmaskValue(value, mask, this.placeholderChar);
|
188
165
|
}
|
189
166
|
/**
|
190
167
|
* Returns the value at this index.
|
@@ -245,7 +222,7 @@ class TextFieldComponent extends Input_1.default {
|
|
245
222
|
return;
|
246
223
|
}
|
247
224
|
inputMask = inputMask || this.component.displayMask || this.component.inputMask;
|
248
|
-
const mask =
|
225
|
+
const mask = utils_1.default.getInputMask(inputMask, this.placeholderChar);
|
249
226
|
this.defaultMask = mask;
|
250
227
|
if (input && inputMask) {
|
251
228
|
try {
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const moment_1 = __importDefault(require("moment"));
|
7
7
|
const TextField_1 = __importDefault(require("../textfield/TextField"));
|
8
|
-
const utils_1 = require("../../utils
|
8
|
+
const utils_1 = require("../../utils");
|
9
9
|
const defaultDataFormat = 'HH:mm:ss';
|
10
10
|
class TimeComponent extends TextField_1.default {
|
11
11
|
static schema(...extend) {
|
package/lib/cjs/formio.form.js
CHANGED
@@ -22,7 +22,6 @@ const Form_1 = __importDefault(require("./Form"));
|
|
22
22
|
exports.Form = Form_1.default;
|
23
23
|
const utils_1 = __importDefault(require("./utils"));
|
24
24
|
exports.Utils = utils_1.default;
|
25
|
-
const Evaluator_1 = require("./utils/Evaluator");
|
26
25
|
const licenses_1 = __importDefault(require("./licenses"));
|
27
26
|
exports.Licenses = licenses_1.default;
|
28
27
|
const EventEmitter_1 = __importDefault(require("./EventEmitter"));
|
@@ -30,6 +29,7 @@ exports.EventEmitter = EventEmitter_1.default;
|
|
30
29
|
const Webform_1 = __importDefault(require("./Webform"));
|
31
30
|
exports.Webform = Webform_1.default;
|
32
31
|
const i18n_1 = require("./utils/i18n");
|
32
|
+
const utils_2 = require("./utils");
|
33
33
|
Formio_1.Formio.loadModules = (path = `${Formio_1.Formio.getApiUrl()}/externalModules.js`, name = 'externalModules') => {
|
34
34
|
Formio_1.Formio.requireLibrary(name, name, path, true)
|
35
35
|
.then((modules) => {
|
@@ -45,7 +45,7 @@ Formio_1.Formio.Form = Form_1.default;
|
|
45
45
|
Formio_1.Formio.Displays = Displays_1.default;
|
46
46
|
Formio_1.Formio.Providers = providers_1.default;
|
47
47
|
Formio_1.Formio.Widgets = widgets_1.default;
|
48
|
-
Formio_1.Formio.Evaluator =
|
48
|
+
Formio_1.Formio.Evaluator = utils_2.Evaluator;
|
49
49
|
Formio_1.Formio.AllComponents = components_1.default;
|
50
50
|
Formio_1.Formio.Licenses = licenses_1.default;
|
51
51
|
// This is strange, but is needed for "premium" components to import correctly.
|
@@ -100,7 +100,7 @@ function registerModule(mod, defaultFn = null, options = {}) {
|
|
100
100
|
Formio_1.Formio.Displays.addDisplays(mod.displays);
|
101
101
|
break;
|
102
102
|
case 'evaluator':
|
103
|
-
|
103
|
+
(0, utils_2.registerEvaluator)(mod.evaluator);
|
104
104
|
break;
|
105
105
|
case 'translations':
|
106
106
|
i18n_1.I18n.setDefaultTranslations(mod.translations);
|
package/lib/cjs/i18n.js
CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const en_1 = __importDefault(require("./translations/en"));
|
7
|
-
const utils_1 = require("./utils
|
7
|
+
const utils_1 = require("./utils");
|
8
8
|
exports.default = {
|
9
9
|
lng: 'en',
|
10
10
|
nsSeparator: '::',
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.getFormioUploadAdapterPlugin = void 0;
|
4
|
-
const utils_1 = require("../../utils
|
4
|
+
const utils_1 = require("../../utils");
|
5
5
|
/**
|
6
6
|
* UploadAdapter for CKEditor https://ckeditor.com/docs/ckeditor5/latest/framework/guides/deep-dive/upload-adapter.html
|
7
7
|
*/
|
@@ -1,7 +1,14 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
1
|
+
/**
|
2
|
+
* Set the evaluator to use for evaluating expressions.
|
3
|
+
* @param {CoreEvaluator} override - The new evaluator instance to use.
|
4
|
+
* @returns {void}
|
5
|
+
*/
|
6
|
+
export function registerEvaluator(override: CoreEvaluator): void;
|
7
|
+
export class DefaultEvaluator extends CoreEvaluator {
|
8
|
+
cache: {};
|
9
|
+
protectedEval: boolean;
|
10
|
+
template(template: any, hash: any): any;
|
11
|
+
interpolate(rawTemplate: any, data: any, _options: any): any;
|
7
12
|
}
|
13
|
+
export let Evaluator: DefaultEvaluator;
|
14
|
+
import { DefaultEvaluator as CoreEvaluator } from '@formio/core';
|
@@ -3,26 +3,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.Evaluator = void 0;
|
6
|
+
exports.registerEvaluator = exports.Evaluator = exports.DefaultEvaluator = void 0;
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
8
|
const string_hash_1 = __importDefault(require("string-hash"));
|
9
|
-
const
|
10
|
-
class
|
11
|
-
|
9
|
+
const core_1 = require("@formio/core");
|
10
|
+
class DefaultEvaluator extends core_1.DefaultEvaluator {
|
11
|
+
constructor() {
|
12
|
+
super(...arguments);
|
13
|
+
this.cache = {};
|
14
|
+
this.protectedEval = false;
|
15
|
+
}
|
16
|
+
template(template, hash) {
|
12
17
|
hash = hash || (0, string_hash_1.default)(template);
|
13
|
-
if (
|
14
|
-
return
|
18
|
+
if (this.cache[hash]) {
|
19
|
+
return this.cache[hash];
|
15
20
|
}
|
16
21
|
try {
|
17
22
|
// Ensure we handle copied templates from the ejs files.
|
18
23
|
template = template.replace(/ctx\./g, '');
|
19
|
-
return (
|
24
|
+
return (this.cache[hash] = lodash_1.default.template(template, this.templateSettings));
|
20
25
|
}
|
21
26
|
catch (err) {
|
22
27
|
console.warn('Error while processing template', err, template);
|
23
28
|
}
|
24
29
|
}
|
25
|
-
|
30
|
+
interpolate(rawTemplate, data, _options) {
|
26
31
|
// Ensure reverse compatability.
|
27
32
|
const options = lodash_1.default.isObject(_options) ? _options : { noeval: _options };
|
28
33
|
if (typeof rawTemplate === 'function') {
|
@@ -36,11 +41,11 @@ class Evaluator extends utils_1.JSONLogicEvaluator {
|
|
36
41
|
}
|
37
42
|
rawTemplate = String(rawTemplate);
|
38
43
|
let template;
|
39
|
-
if (
|
40
|
-
return
|
44
|
+
if (this.noeval || options.noeval) {
|
45
|
+
return this.interpolateString(rawTemplate, data, _options);
|
41
46
|
}
|
42
47
|
else {
|
43
|
-
template =
|
48
|
+
template = this.template(rawTemplate);
|
44
49
|
}
|
45
50
|
if (typeof template === 'function') {
|
46
51
|
try {
|
@@ -54,7 +59,14 @@ class Evaluator extends utils_1.JSONLogicEvaluator {
|
|
54
59
|
return template;
|
55
60
|
}
|
56
61
|
}
|
57
|
-
exports.
|
58
|
-
Evaluator
|
59
|
-
|
60
|
-
|
62
|
+
exports.DefaultEvaluator = DefaultEvaluator;
|
63
|
+
exports.Evaluator = new DefaultEvaluator();
|
64
|
+
/**
|
65
|
+
* Set the evaluator to use for evaluating expressions.
|
66
|
+
* @param {CoreEvaluator} override - The new evaluator instance to use.
|
67
|
+
* @returns {void}
|
68
|
+
*/
|
69
|
+
function registerEvaluator(override) {
|
70
|
+
exports.Evaluator = override;
|
71
|
+
}
|
72
|
+
exports.registerEvaluator = registerEvaluator;
|
package/lib/cjs/utils/builder.js
CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const lodash_1 = __importDefault(require("lodash"));
|
7
|
-
const
|
7
|
+
const index_1 = require("./index");
|
8
8
|
exports.default = {
|
9
9
|
/**
|
10
10
|
* Appends a number to a component.key to keep it unique
|
@@ -15,19 +15,19 @@ exports.default = {
|
|
15
15
|
uniquify(container, component) {
|
16
16
|
let changed = false;
|
17
17
|
const formKeys = {};
|
18
|
-
(0,
|
18
|
+
(0, index_1.eachComponent)(container, (comp) => {
|
19
19
|
formKeys[comp.key] = true;
|
20
20
|
if (['address', 'container', 'datagrid', 'editgrid', 'dynamicWizard', 'tree'].includes(comp.type) || comp.tree || comp.arrayTree) {
|
21
21
|
return true;
|
22
22
|
}
|
23
23
|
}, true);
|
24
24
|
// Recurse into all child components.
|
25
|
-
(0,
|
25
|
+
(0, index_1.eachComponent)([component], (component) => {
|
26
26
|
// Skip key uniquification if this component doesn't have a key.
|
27
27
|
if (!component.key) {
|
28
28
|
return;
|
29
29
|
}
|
30
|
-
const newKey = (0,
|
30
|
+
const newKey = (0, index_1.uniqueKey)(formKeys, component.key);
|
31
31
|
if (newKey !== component.key) {
|
32
32
|
component.key = newKey;
|
33
33
|
changed = true;
|
@@ -60,7 +60,7 @@ exports.default = {
|
|
60
60
|
},
|
61
61
|
getBindedShortcuts(components, input) {
|
62
62
|
const result = [];
|
63
|
-
(0,
|
63
|
+
(0, index_1.eachComponent)(components, (component) => {
|
64
64
|
if (component === input) {
|
65
65
|
return;
|
66
66
|
}
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const ConditionOperator_1 = __importDefault(require("./ConditionOperator"));
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
|
-
const
|
8
|
+
const __1 = require("../");
|
9
9
|
class IsEqualTo extends ConditionOperator_1.default {
|
10
10
|
static get operatorKey() {
|
11
11
|
return 'isEqual';
|
@@ -25,9 +25,9 @@ class IsEqualTo extends ConditionOperator_1.default {
|
|
25
25
|
if ((_a = instance === null || instance === void 0 ? void 0 : instance.root) === null || _a === void 0 ? void 0 : _a.getComponent) {
|
26
26
|
const conditionTriggerComponent = instance.root.getComponent(path);
|
27
27
|
if (conditionTriggerComponent
|
28
|
-
&& (0,
|
28
|
+
&& (0, __1.isSelectResourceWithObjectValue)(conditionTriggerComponent.component)
|
29
29
|
&& ((_b = conditionTriggerComponent.component) === null || _b === void 0 ? void 0 : _b.template)) {
|
30
|
-
return (0,
|
30
|
+
return (0, __1.compareSelectResourceWithObjectTypeValues)(value, comparedValue, conditionTriggerComponent.component);
|
31
31
|
}
|
32
32
|
}
|
33
33
|
//special check for select boxes
|
package/lib/cjs/utils/i18n.js
CHANGED
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.I18n = void 0;
|
7
|
-
const
|
7
|
+
const Evaluator_1 = require("./Evaluator");
|
8
8
|
const i18n_1 = __importDefault(require("../i18n"));
|
9
9
|
const lodash_1 = require("lodash");
|
10
10
|
const core_1 = require("@formio/core");
|
@@ -111,9 +111,9 @@ class I18n {
|
|
111
111
|
if (customTranslationFieldName && this.currentLanguage[customTranslationFieldName]) {
|
112
112
|
args[0].field = this.currentLanguage[customTranslationFieldName];
|
113
113
|
}
|
114
|
-
return
|
114
|
+
return Evaluator_1.Evaluator.interpolateString(currentTranslation, ...args);
|
115
115
|
}
|
116
|
-
return
|
116
|
+
return Evaluator_1.Evaluator.interpolateString(text, ...args);
|
117
117
|
}
|
118
118
|
}
|
119
119
|
exports.I18n = I18n;
|
package/lib/cjs/utils/index.d.ts
CHANGED
@@ -1,3 +1,162 @@
|
|
1
|
-
export
|
1
|
+
export * from "./utils";
|
2
|
+
export * from "./formUtils";
|
2
3
|
export default FormioUtils;
|
3
|
-
|
4
|
+
declare const FormioUtils: {
|
5
|
+
Evaluator: import("./Evaluator").DefaultEvaluator;
|
6
|
+
flattenComponents: typeof import("@formio/core/lib/utils/formUtil").flattenComponents;
|
7
|
+
guid: typeof import("@formio/core/lib/utils/formUtil").guid;
|
8
|
+
uniqueName: typeof import("@formio/core/lib/utils/formUtil").uniqueName;
|
9
|
+
MODEL_TYPES_OF_KNOWN_COMPONENTS: {
|
10
|
+
nestedArray: string[];
|
11
|
+
nestedDataArray: string[];
|
12
|
+
dataObject: string[];
|
13
|
+
object: string[];
|
14
|
+
map: string[];
|
15
|
+
content: string[];
|
16
|
+
string: string[];
|
17
|
+
number: string[];
|
18
|
+
boolean: string[];
|
19
|
+
none: string[];
|
20
|
+
any: string[];
|
21
|
+
};
|
22
|
+
getModelType: typeof import("@formio/core/lib/utils/formUtil").getModelType;
|
23
|
+
getComponentPath: any;
|
24
|
+
setComponentScope: typeof import("@formio/core/lib/utils/formUtil").setComponentScope;
|
25
|
+
resetComponentScope: typeof import("@formio/core/lib/utils/formUtil").resetComponentScope;
|
26
|
+
isComponentNestedDataType: typeof import("@formio/core/lib/utils/formUtil").isComponentNestedDataType;
|
27
|
+
componentPath: typeof import("@formio/core/lib/utils/formUtil").componentPath;
|
28
|
+
getComponentPaths: typeof import("@formio/core/lib/utils/formUtil").getComponentPaths;
|
29
|
+
componentMatches: typeof import("@formio/core/lib/utils/formUtil").componentMatches;
|
30
|
+
getBestMatch: typeof import("@formio/core/lib/utils/formUtil").getBestMatch;
|
31
|
+
getComponentFromPath: typeof import("@formio/core/lib/utils/formUtil").getComponentFromPath;
|
32
|
+
getComponentValue: typeof import("@formio/core/lib/utils/formUtil").getComponentValue;
|
33
|
+
findComponents: typeof import("@formio/core/lib/utils/formUtil").findComponents;
|
34
|
+
eachComponentDataAsync: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataAsyncCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => Promise<void>;
|
35
|
+
eachComponentData: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => void;
|
36
|
+
getComponentKey: typeof import("@formio/core/lib/utils/formUtil").getComponentKey;
|
37
|
+
getContextualRowPath: typeof import("@formio/core/lib/utils/formUtil").getContextualRowPath;
|
38
|
+
getContextualRowData: typeof import("@formio/core/lib/utils/formUtil").getContextualRowData;
|
39
|
+
componentInfo: typeof import("@formio/core/lib/utils/formUtil").componentInfo;
|
40
|
+
eachComponent: typeof import("@formio/core/lib/utils/formUtil").eachComponent;
|
41
|
+
eachComponentAsync: typeof import("@formio/core/lib/utils/formUtil").eachComponentAsync;
|
42
|
+
getComponentData: typeof import("@formio/core/lib/utils/formUtil").getComponentData;
|
43
|
+
getComponentActualValue: any;
|
44
|
+
isLayoutComponent: typeof import("@formio/core/lib/utils/formUtil").isLayoutComponent;
|
45
|
+
matchComponent: typeof import("@formio/core/lib/utils/formUtil").matchComponent;
|
46
|
+
getComponent: typeof import("@formio/core/lib/utils/formUtil").getComponent;
|
47
|
+
searchComponents: typeof import("@formio/core/lib/utils/formUtil").searchComponents;
|
48
|
+
removeComponent: typeof import("@formio/core/lib/utils/formUtil").removeComponent;
|
49
|
+
hasCondition: typeof import("@formio/core/lib/utils/formUtil").hasCondition;
|
50
|
+
parseFloatExt: typeof import("@formio/core/lib/utils/formUtil").parseFloatExt;
|
51
|
+
formatAsCurrency: typeof import("@formio/core/lib/utils/formUtil").formatAsCurrency;
|
52
|
+
escapeRegExCharacters: typeof import("@formio/core/lib/utils/formUtil").escapeRegExCharacters;
|
53
|
+
getValue: typeof import("@formio/core/lib/utils/formUtil").getValue;
|
54
|
+
getStrings: typeof import("@formio/core/lib/utils/formUtil").getStrings;
|
55
|
+
generateFormChange: typeof import("@formio/core/lib/utils/formUtil").generateFormChange;
|
56
|
+
applyFormChanges: typeof import("@formio/core/lib/utils/formUtil").applyFormChanges;
|
57
|
+
findComponent: typeof import("@formio/core/lib/utils/formUtil").findComponent;
|
58
|
+
getEmptyValue: typeof import("@formio/core/lib/utils/formUtil").getEmptyValue;
|
59
|
+
isComponentDataEmpty: typeof import("@formio/core/lib/utils/formUtil").isComponentDataEmpty;
|
60
|
+
isSelectResourceWithObjectValue: typeof import("@formio/core/lib/utils/formUtil").isSelectResourceWithObjectValue;
|
61
|
+
compareSelectResourceWithObjectTypeValues: typeof import("@formio/core/lib/utils/formUtil").compareSelectResourceWithObjectTypeValues;
|
62
|
+
getItemTemplateKeys: typeof import("@formio/core/lib/utils/formUtil").getItemTemplateKeys;
|
63
|
+
evaluate(func: string | object | Function, args: any, ret: string, interpolate: boolean, options?: import("@formio/core").EvaluatorOptions): any;
|
64
|
+
getRandomComponentId(): string;
|
65
|
+
getPropertyValue(style: CSSStyleDeclaration, prop: string): number;
|
66
|
+
getElementRect(element: HTMLElement): {
|
67
|
+
x: number;
|
68
|
+
y: number;
|
69
|
+
width: number;
|
70
|
+
height: number;
|
71
|
+
};
|
72
|
+
getScriptPlugin(property: string): any;
|
73
|
+
boolValue(value: string | boolean): boolean;
|
74
|
+
isMongoId(text: string): boolean;
|
75
|
+
checkCalculated(component: import("@formio/core").Component, submission: import("@formio/core").Submission, rowData: any): void;
|
76
|
+
checkSimpleConditional(component: any, condition: any, row: any, data: any, instance: any): boolean;
|
77
|
+
checkCustomConditional(component: import("@formio/core").Component, custom: string, row: any, data: any, form: import("@formio/core").Form, variable: string, onError: any, instance: any): any;
|
78
|
+
checkJsonConditional(component: import("@formio/core").Component, json: import("@formio/core").JSONConditional, row: any, data: any, form: import("@formio/core").Form, onError: any): boolean;
|
79
|
+
checkCondition(component: import("@formio/core").Component, row: any, data: any, form: import("@formio/core").Form, instance: any): boolean;
|
80
|
+
checkTrigger(component: import("@formio/core").Component, trigger: any, row: import("@formio/core").DataObject, data: import("@formio/core").DataObject, form: import("@formio/core").Form, instance: any): boolean;
|
81
|
+
setActionProperty(component: import("@formio/core").Component, action: any, result: string, row: import("@formio/core").DataObject, data: import("@formio/core").DataObject, instance: any): import("@formio/core").Component;
|
82
|
+
removeHTML(str: string): string;
|
83
|
+
unescapeHTML(str: string): string;
|
84
|
+
convertStringToHTMLElement(str: string, selector: string): HTMLElement;
|
85
|
+
getDateSetting(date: string | Date): import("dayjs").Dayjs | null;
|
86
|
+
isValidDate(date: string | Date): boolean;
|
87
|
+
currentTimezone(): string;
|
88
|
+
offsetDate(date: Date, timezone: string): {
|
89
|
+
date: Date;
|
90
|
+
abbr: string;
|
91
|
+
};
|
92
|
+
shouldHandleTimezone(timezone: string): boolean;
|
93
|
+
dayjsDate(value: string | Date, format: string, timezone: string, options: object): import("dayjs").Dayjs;
|
94
|
+
formatDate(value: string | Date, format: string, timezone: string, flatPickrInputFormat: string): string;
|
95
|
+
formatOffset(formatFn: Function, date: string | Date, format: string, timezone: string): string;
|
96
|
+
getLocaleDateFormatInfo(locale: Intl.LocalesArgument): object;
|
97
|
+
convertFormatToFlatpickr(format: string): string;
|
98
|
+
convertFormatToDayjs(format: string): string;
|
99
|
+
convertFormatToMask(format: string): string;
|
100
|
+
getInputMask(mask: string, placeholderChar: string): any[];
|
101
|
+
unmaskValue(value: string, mask: string, placeholderChar: string): string;
|
102
|
+
matchInputMask(value: string, inputMask: string): boolean;
|
103
|
+
getNumberSeparators(lang?: string): {
|
104
|
+
delimiter: string;
|
105
|
+
decimalSeparator: string;
|
106
|
+
};
|
107
|
+
getNumberDecimalLimit(component: import("@formio/core").Component, defaultLimit: number): number;
|
108
|
+
getCurrencyAffixes({ currency, decimalLimit, decimalSeparator, lang, }: {
|
109
|
+
currency: string;
|
110
|
+
decimalLimit: number;
|
111
|
+
decimalSeparator: string;
|
112
|
+
lang: string;
|
113
|
+
}): {
|
114
|
+
prefix: string;
|
115
|
+
suffix: string;
|
116
|
+
};
|
117
|
+
fieldData(data: import("@formio/core").DataObject, component: import("@formio/core").Component): any;
|
118
|
+
delay(fn: Function, delay?: number, ...args: any[]): any;
|
119
|
+
iterateKey(key: string): string;
|
120
|
+
uniqueKey(map: Record<string, string>, base: string): string;
|
121
|
+
bootstrapVersion(options: {
|
122
|
+
bootstrap: string;
|
123
|
+
}): number;
|
124
|
+
unfold(e: any): any;
|
125
|
+
withSwitch(a: any, b: any): Functions[];
|
126
|
+
observeOverload(callback: Function, options?: {
|
127
|
+
limit: number;
|
128
|
+
delay: number;
|
129
|
+
}): Function;
|
130
|
+
getContextComponents(context: any, excludeNested: boolean, excludedTypes?: string[]): any[];
|
131
|
+
getContextButtons(context: any): any[];
|
132
|
+
translateHTMLTemplate(template: string, translate: Function): string;
|
133
|
+
sanitize(string: string, options: any): string;
|
134
|
+
fastCloneDeep(obj: any): any;
|
135
|
+
isInputComponent(componentJson: import("@formio/core").Component): bool;
|
136
|
+
getArrayFromComponentPath(pathStr: string): Arryay<number>;
|
137
|
+
isChildOf(child: any, parent: any): boolean;
|
138
|
+
getStringFromComponentPath(path: number[]): string;
|
139
|
+
round(number: number, precision: number): string;
|
140
|
+
getIEBrowserVersion(): number | null;
|
141
|
+
getBrowserInfo(): object;
|
142
|
+
getComponentPathWithoutIndicies(path?: string): string;
|
143
|
+
getDataParentComponent(componentInstance: Component): any;
|
144
|
+
isPromise(value: any): boolean;
|
145
|
+
getFocusableElements(element: HTMLElement): NodeList<HTMLElement>;
|
146
|
+
getComponentSavedTypes(fullSchema: import("@formio/core").Component): string[] | null;
|
147
|
+
hasEncodedTimezone(value: string): boolean;
|
148
|
+
firstNonNil: any;
|
149
|
+
componentValueTypes: {
|
150
|
+
number: string;
|
151
|
+
string: string;
|
152
|
+
boolean: string;
|
153
|
+
array: string;
|
154
|
+
object: string;
|
155
|
+
date: string;
|
156
|
+
any: string;
|
157
|
+
};
|
158
|
+
interpolateErrors: (component: Component, errors: FieldError[], interpolateFn: Function) => [];
|
159
|
+
};
|
160
|
+
import { Evaluator } from './Evaluator';
|
161
|
+
import { registerEvaluator } from './Evaluator';
|
162
|
+
export { FormioUtils as Utils, Evaluator, registerEvaluator };
|
package/lib/cjs/utils/index.js
CHANGED
@@ -22,11 +22,21 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
22
22
|
__setModuleDefault(result, mod);
|
23
23
|
return result;
|
24
24
|
};
|
25
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
26
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
27
|
+
};
|
25
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
-
exports.Utils = void 0;
|
27
|
-
const
|
29
|
+
exports.registerEvaluator = exports.Evaluator = exports.Utils = void 0;
|
30
|
+
const utils = __importStar(require("./utils"));
|
31
|
+
const formUtils = __importStar(require("./formUtils"));
|
32
|
+
const Evaluator_1 = require("./Evaluator");
|
33
|
+
Object.defineProperty(exports, "Evaluator", { enumerable: true, get: function () { return Evaluator_1.Evaluator; } });
|
34
|
+
Object.defineProperty(exports, "registerEvaluator", { enumerable: true, get: function () { return Evaluator_1.registerEvaluator; } });
|
35
|
+
const FormioUtils = Object.assign(Object.assign(Object.assign({}, utils), formUtils), { Evaluator: Evaluator_1.Evaluator });
|
28
36
|
exports.Utils = FormioUtils;
|
29
37
|
if (typeof global === 'object') {
|
30
38
|
global.FormioUtils = FormioUtils;
|
31
39
|
}
|
40
|
+
__exportStar(require("./utils"), exports);
|
41
|
+
__exportStar(require("./formUtils"), exports);
|
32
42
|
exports.default = FormioUtils;
|
package/lib/cjs/utils/utils.d.ts
CHANGED
@@ -164,9 +164,9 @@ export function guid(): string;
|
|
164
164
|
/**
|
165
165
|
* Return a translated date setting.
|
166
166
|
* @param {string|Date} date - The date to translate.
|
167
|
-
* @returns {(null|
|
167
|
+
* @returns {(null|dayjs.Dayjs)} - The translated date.
|
168
168
|
*/
|
169
|
-
export function getDateSetting(date: string | Date): (null |
|
169
|
+
export function getDateSetting(date: string | Date): (null | dayjs.Dayjs);
|
170
170
|
/**
|
171
171
|
* Returns true if the date is a valid date. False otherwise.
|
172
172
|
* @param {Date|string} date - The date to check for validity.
|
@@ -182,56 +182,45 @@ export function currentTimezone(): string;
|
|
182
182
|
* Get an offset date provided a date object and timezone object.
|
183
183
|
* @param {Date} date - The date to offset.
|
184
184
|
* @param {string} timezone - The timezone to offset the date to.
|
185
|
-
* @returns {Date} - The offset date.
|
185
|
+
* @returns {{date: Date, abbr: string}} - The offset date.
|
186
186
|
*/
|
187
|
-
export function offsetDate(date: Date, timezone: string):
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
*/
|
192
|
-
export function zonesLoaded(): boolean;
|
187
|
+
export function offsetDate(date: Date, timezone: string): {
|
188
|
+
date: Date;
|
189
|
+
abbr: string;
|
190
|
+
};
|
193
191
|
/**
|
194
|
-
* Returns if we should
|
192
|
+
* Returns if we should handle a timezone difference.
|
195
193
|
* @param {string} timezone - The timezone to check if we should load the zones.
|
196
|
-
* @returns {boolean} - TRUE if we should
|
197
|
-
*/
|
198
|
-
export function shouldLoadZones(timezone: string): boolean;
|
199
|
-
/**
|
200
|
-
* Externally load the timezone data.
|
201
|
-
* @param {string} url - The URL to load the timezone data from.
|
202
|
-
* @param {string} timezone - The timezone to load.
|
203
|
-
* @returns {Promise<any> | *} - Resolves when the zones for this timezone are loaded.
|
194
|
+
* @returns {boolean} - TRUE if we should handle timezones; FALSE otherwise.
|
204
195
|
*/
|
205
|
-
export function
|
196
|
+
export function shouldHandleTimezone(timezone: string): boolean;
|
206
197
|
/**
|
207
|
-
* Get the
|
208
|
-
* @param {string|Date} value - The value to convert into a
|
198
|
+
* Get the Dayjs date object for translating dates with timezones.
|
199
|
+
* @param {string|Date} value - The value to convert into a dayjs date.
|
209
200
|
* @param {string} format - The format to convert the date to.
|
210
201
|
* @param {string} timezone - The timezone to convert the date to.
|
211
202
|
* @param {object} options - The options object
|
212
|
-
* @returns {
|
203
|
+
* @returns {dayjs.Dayjs} - The dayjs date object.
|
213
204
|
*/
|
214
|
-
export function
|
205
|
+
export function dayjsDate(value: string | Date, format: string, timezone: string, options: object): dayjs.Dayjs;
|
215
206
|
/**
|
216
207
|
* Format a date provided a value, format, and timezone object.
|
217
|
-
* @param {string} timezonesUrl - The URL to load the timezone data from.
|
218
208
|
* @param {string|Date} value - The value to format.
|
219
209
|
* @param {string} format - The format to format the date to.
|
220
210
|
* @param {string} timezone - The timezone to format the date to.
|
221
211
|
* @param {string} flatPickrInputFormat - The format to use for flatpickr input.
|
222
212
|
* @returns {string} - The formatted date.
|
223
213
|
*/
|
224
|
-
export function formatDate(
|
214
|
+
export function formatDate(value: string | Date, format: string, timezone: string, flatPickrInputFormat: string): string;
|
225
215
|
/**
|
226
216
|
* Pass a format function to format within a timezone.
|
227
|
-
* @param {string} timezonesUrl - The URL to load the timezone data from.
|
228
217
|
* @param {Function} formatFn - The format function to use.
|
229
218
|
* @param {Date|string} date - The date to format.
|
230
219
|
* @param {string} format - The format to format the date to.
|
231
220
|
* @param {string} timezone - The timezone to format the date to.
|
232
221
|
* @returns {string} - The formatted date.
|
233
222
|
*/
|
234
|
-
export function formatOffset(
|
223
|
+
export function formatOffset(formatFn: Function, date: Date | string, format: string, timezone: string): string;
|
235
224
|
/**
|
236
225
|
* Returns the local date format information.
|
237
226
|
* @param {Intl.LocalesArgument} locale - The locale to get the date format for.
|
@@ -249,7 +238,7 @@ export function convertFormatToFlatpickr(format: string): string;
|
|
249
238
|
* @param {string} format - The format to convert.
|
250
239
|
* @returns {string} - The converted format.
|
251
240
|
*/
|
252
|
-
export function
|
241
|
+
export function convertFormatToDayjs(format: string): string;
|
253
242
|
/**
|
254
243
|
* Convert the format from the angular-datepicker module to mask format.
|
255
244
|
* @param {string} format - The format to convert.
|
@@ -499,7 +488,6 @@ export function getComponentSavedTypes(fullSchema: import('@formio/core').Compon
|
|
499
488
|
* @returns {boolean} if value has encoded timezone
|
500
489
|
*/
|
501
490
|
export function hasEncodedTimezone(value: string): boolean;
|
502
|
-
export * from "./formUtils";
|
503
491
|
/**
|
504
492
|
* Map values through unfold and return first non-nil value.
|
505
493
|
* @param {Array<T>} collection - The collection to map through unfold.;
|
@@ -516,7 +504,4 @@ export namespace componentValueTypes {
|
|
516
504
|
let any: string;
|
517
505
|
}
|
518
506
|
export function interpolateErrors(component: Component, errors: FieldError[], interpolateFn: Function): [];
|
519
|
-
import
|
520
|
-
import { Evaluator } from './Evaluator';
|
521
|
-
export const interpolate: typeof Evaluator.interpolate;
|
522
|
-
export { jsonLogic, ConditionOperators, moment, Evaluator, _ };
|
507
|
+
import dayjs from "dayjs";
|