@formio/js 5.2.1-dev.6186.ffe4f6c → 5.2.1-dev.6202.2449b29
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/Changelog.md +24 -0
- package/dist/formio.embed.js +1 -1
- package/dist/formio.embed.min.js +1 -1
- package/dist/formio.embed.min.js.LICENSE.txt +1 -1
- package/dist/formio.form.js +11 -11
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.form.min.js.LICENSE.txt +1 -1
- package/dist/formio.full.js +12 -12
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +1 -1
- package/dist/formio.js +3 -3
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +1 -1
- package/dist/formio.utils.js +1 -1
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +1 -1
- package/lib/cjs/Embed.js +1 -1
- package/lib/cjs/Formio.js +1 -1
- package/lib/cjs/Webform.js +8 -0
- package/lib/cjs/WebformBuilder.js +11 -3
- package/lib/cjs/Wizard.js +5 -0
- package/lib/cjs/components/_classes/nested/NestedComponent.js +4 -3
- package/lib/cjs/components/datagrid/DataGrid.js +8 -1
- package/lib/cjs/components/radio/Radio.js +1 -1
- package/lib/mjs/Embed.js +1 -1
- package/lib/mjs/Formio.js +1 -1
- package/lib/mjs/Webform.js +8 -0
- package/lib/mjs/WebformBuilder.js +11 -3
- package/lib/mjs/Wizard.js +5 -0
- package/lib/mjs/components/_classes/nested/NestedComponent.js +3 -3
- package/lib/mjs/components/datagrid/DataGrid.js +7 -1
- package/lib/mjs/components/radio/Radio.js +1 -1
- package/package.json +3 -3
@@ -20,7 +20,7 @@
|
|
20
20
|
|
21
21
|
/*! @license DOMPurify 3.2.4 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.4/LICENSE */
|
22
22
|
|
23
|
-
/*! formiojs v5.2.1-rc.
|
23
|
+
/*! formiojs v5.2.1-rc.9 | https://unpkg.com/formiojs@5.2.1-rc.9/LICENSE.txt */
|
24
24
|
|
25
25
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
|
26
26
|
|
package/lib/cjs/Embed.js
CHANGED
@@ -418,7 +418,7 @@ Formio.formioReady = new Promise((ready, reject) => {
|
|
418
418
|
_a._formioReady = ready;
|
419
419
|
_a._formioReadyReject = reject;
|
420
420
|
});
|
421
|
-
Formio.version = '5.2.1-rc.
|
421
|
+
Formio.version = '5.2.1-rc.9';
|
422
422
|
// Create a report.
|
423
423
|
Formio.Report = {
|
424
424
|
create: (element, submission, options = {}) => __awaiter(void 0, void 0, void 0, function* () {
|
package/lib/cjs/Formio.js
CHANGED
@@ -11,7 +11,7 @@ const CDN_1 = __importDefault(require("./CDN"));
|
|
11
11
|
const providers_1 = __importDefault(require("./providers"));
|
12
12
|
sdk_1.Formio.cdn = new CDN_1.default();
|
13
13
|
sdk_1.Formio.Providers = providers_1.default;
|
14
|
-
sdk_1.Formio.version = '5.2.1-rc.
|
14
|
+
sdk_1.Formio.version = '5.2.1-rc.9';
|
15
15
|
CDN_1.default.defaultCDN = sdk_1.Formio.version.includes('rc') ? 'https://cdn.test-form.io' : 'https://cdn.form.io';
|
16
16
|
const isNil = (val) => val === null || val === undefined;
|
17
17
|
sdk_1.Formio.prototype.uploadFile = function (storage, file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, uploadStartCallback, abortCallback, multipartOptions) {
|
package/lib/cjs/Webform.js
CHANGED
@@ -351,6 +351,14 @@ class Webform extends NestedDataComponent_1.default {
|
|
351
351
|
get shadowRoot() {
|
352
352
|
return this.options.shadowRoot;
|
353
353
|
}
|
354
|
+
// Webforms have no default value setting, so this should be always false
|
355
|
+
// I does not affect setting default value to nested forms
|
356
|
+
get shouldAddDefaultValue() {
|
357
|
+
return false;
|
358
|
+
}
|
359
|
+
get componentsMap() {
|
360
|
+
return this.childComponentsMap || {};
|
361
|
+
}
|
354
362
|
/**
|
355
363
|
* Add a language for translations
|
356
364
|
* @param {string} code - The language code for the language being added.
|
@@ -83,8 +83,16 @@ class WebformBuilder extends Component_1.default {
|
|
83
83
|
}
|
84
84
|
this.groupOrder = this.groupOrder
|
85
85
|
.filter(group => group && !group.ignore)
|
86
|
-
.sort((a, b) => a.weight - b.weight)
|
87
|
-
|
86
|
+
.sort((a, b) => a.weight - b.weight);
|
87
|
+
const defaultOpenedGroup = this.groupOrder.find(x => x.key !== 'basic' && x.default);
|
88
|
+
if (defaultOpenedGroup) {
|
89
|
+
this.groupOrder.forEach(x => {
|
90
|
+
if ('default' in x && x.key !== defaultOpenedGroup.key) {
|
91
|
+
x.default = false;
|
92
|
+
}
|
93
|
+
});
|
94
|
+
}
|
95
|
+
this.groupOrder = this.groupOrder.map(group => group.key);
|
88
96
|
for (const type in Components_1.default.components) {
|
89
97
|
const component = Components_1.default.components[type];
|
90
98
|
if (component.builderInfo && component.builderInfo.schema) {
|
@@ -1100,7 +1108,7 @@ class WebformBuilder extends Component_1.default {
|
|
1100
1108
|
const newComp = parentComponent.addComponent(defaultValueComponent.component, defaultValueComponent.data, sibling);
|
1101
1109
|
lodash_1.default.pull(newComp.validators, 'required');
|
1102
1110
|
parentComponent.tabs[tabIndex].splice(index, 1, newComp);
|
1103
|
-
newComp.
|
1111
|
+
newComp.processOwnValidation = true;
|
1104
1112
|
newComp.build(defaultValueComponent.element);
|
1105
1113
|
if (this.preview && !this.preview.defaultChanged) {
|
1106
1114
|
const defaultValue = lodash_1.default.get(this.preview._data, this.editForm._data.key);
|
package/lib/cjs/Wizard.js
CHANGED
@@ -821,6 +821,11 @@ class Wizard extends Webform_1.default {
|
|
821
821
|
}
|
822
822
|
}
|
823
823
|
setValue(submission, flags = {}, ignoreEstablishment) {
|
824
|
+
if (!submission || !submission.data) {
|
825
|
+
submission = {
|
826
|
+
data: {},
|
827
|
+
};
|
828
|
+
}
|
824
829
|
const changed = this.getPages({ all: true }).reduce((changed, page) => {
|
825
830
|
return this.setNestedValue(page, submission.data, flags, changed) || changed;
|
826
831
|
}, false);
|
@@ -558,12 +558,16 @@ class NestedComponent extends Field_1.default {
|
|
558
558
|
* @param {boolean} [all] - If set to TRUE will cascade remove all components.
|
559
559
|
*/
|
560
560
|
removeComponent(component, components, all = false) {
|
561
|
+
var _a, _b;
|
561
562
|
components = components || this.components;
|
562
563
|
component.destroy(all);
|
563
564
|
lodash_1.default.remove(components, { id: component.id });
|
564
565
|
if (this.componentsMap[component.path]) {
|
565
566
|
delete this.componentsMap[component.path];
|
566
567
|
}
|
568
|
+
if ((_a = this.root) === null || _a === void 0 ? void 0 : _a.componentsMap[component.path]) {
|
569
|
+
(_b = this.root) === null || _b === void 0 ? true : delete _b.componentsMap[component.path];
|
570
|
+
}
|
567
571
|
}
|
568
572
|
/**
|
569
573
|
* Removes a component provided the API key of that component.
|
@@ -836,9 +840,6 @@ class NestedComponent extends Field_1.default {
|
|
836
840
|
}
|
837
841
|
}
|
838
842
|
setValue(value, flags = {}) {
|
839
|
-
if (!value) {
|
840
|
-
return false;
|
841
|
-
}
|
842
843
|
// If the value is equal to the empty value, then this means we need to reset the values.
|
843
844
|
if (lodash_1.default.isEqual(value, this.emptyValue)) {
|
844
845
|
// TO-DO: For a future major release, we need to investigate removing the need for the
|
@@ -477,11 +477,18 @@ class DataGridComponent extends NestedArrayComponent_1.default {
|
|
477
477
|
options.row = `${rowIndex}-${colIndex}`;
|
478
478
|
options.rowIndex = rowIndex;
|
479
479
|
options.onChange = (flags, changed, modified) => {
|
480
|
+
var _a, _b;
|
480
481
|
if (changed.component.type === 'form') {
|
481
482
|
const formComp = (0, utils_1.getComponent)(this.component.components, changed.component.key);
|
482
483
|
lodash_1.default.set(formComp, 'components', changed.component.components);
|
483
484
|
}
|
484
|
-
|
485
|
+
// If we're in a nested form we need to ensure our changes are triggered upstream
|
486
|
+
if (((_a = changed.instance.root) === null || _a === void 0 ? void 0 : _a.id) && (((_b = this.root) === null || _b === void 0 ? void 0 : _b.id) !== changed.instance.root.id)) {
|
487
|
+
changed.instance.root.triggerChange(flags, changed, modified);
|
488
|
+
}
|
489
|
+
else {
|
490
|
+
this.triggerChange({ modified });
|
491
|
+
}
|
485
492
|
};
|
486
493
|
let columnComponent;
|
487
494
|
if (this.builderMode) {
|
@@ -142,7 +142,7 @@ class RadioComponent extends ListComponent_1.default {
|
|
142
142
|
});
|
143
143
|
this.optionsLoaded = !this.component.dataSrc || this.component.dataSrc === 'values';
|
144
144
|
this.loadedOptions = [];
|
145
|
-
if (!this.visible) {
|
145
|
+
if (!this.visible || this.optionsLoaded) {
|
146
146
|
this.itemsLoadedResolve();
|
147
147
|
}
|
148
148
|
// Get the template keys for this radio component.
|
package/lib/mjs/Embed.js
CHANGED
@@ -14,7 +14,7 @@ export class Formio {
|
|
14
14
|
Formio._formioReady = ready;
|
15
15
|
Formio._formioReadyReject = reject;
|
16
16
|
});
|
17
|
-
static version = '5.2.1-rc.
|
17
|
+
static version = '5.2.1-rc.9';
|
18
18
|
static setLicense(license, norecurse = false) {
|
19
19
|
Formio.license = license;
|
20
20
|
if (!norecurse && Formio.FormioClass) {
|
package/lib/mjs/Formio.js
CHANGED
@@ -4,7 +4,7 @@ import CDN from './CDN';
|
|
4
4
|
import Providers from './providers';
|
5
5
|
FormioCore.cdn = new CDN();
|
6
6
|
FormioCore.Providers = Providers;
|
7
|
-
FormioCore.version = '5.2.1-rc.
|
7
|
+
FormioCore.version = '5.2.1-rc.9';
|
8
8
|
CDN.defaultCDN = FormioCore.version.includes('rc') ? 'https://cdn.test-form.io' : 'https://cdn.form.io';
|
9
9
|
const isNil = (val) => val === null || val === undefined;
|
10
10
|
FormioCore.prototype.uploadFile = function (storage, file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, uploadStartCallback, abortCallback, multipartOptions) {
|
package/lib/mjs/Webform.js
CHANGED
@@ -323,6 +323,14 @@ export default class Webform extends NestedDataComponent {
|
|
323
323
|
get shadowRoot() {
|
324
324
|
return this.options.shadowRoot;
|
325
325
|
}
|
326
|
+
// Webforms have no default value setting, so this should be always false
|
327
|
+
// I does not affect setting default value to nested forms
|
328
|
+
get shouldAddDefaultValue() {
|
329
|
+
return false;
|
330
|
+
}
|
331
|
+
get componentsMap() {
|
332
|
+
return this.childComponentsMap || {};
|
333
|
+
}
|
326
334
|
/**
|
327
335
|
* Add a language for translations
|
328
336
|
* @param {string} code - The language code for the language being added.
|
@@ -63,8 +63,16 @@ export default class WebformBuilder extends Component {
|
|
63
63
|
}
|
64
64
|
this.groupOrder = this.groupOrder
|
65
65
|
.filter(group => group && !group.ignore)
|
66
|
-
.sort((a, b) => a.weight - b.weight)
|
67
|
-
|
66
|
+
.sort((a, b) => a.weight - b.weight);
|
67
|
+
const defaultOpenedGroup = this.groupOrder.find(x => x.key !== 'basic' && x.default);
|
68
|
+
if (defaultOpenedGroup) {
|
69
|
+
this.groupOrder.forEach(x => {
|
70
|
+
if ('default' in x && x.key !== defaultOpenedGroup.key) {
|
71
|
+
x.default = false;
|
72
|
+
}
|
73
|
+
});
|
74
|
+
}
|
75
|
+
this.groupOrder = this.groupOrder.map(group => group.key);
|
68
76
|
for (const type in Components.components) {
|
69
77
|
const component = Components.components[type];
|
70
78
|
if (component.builderInfo && component.builderInfo.schema) {
|
@@ -1084,7 +1092,7 @@ export default class WebformBuilder extends Component {
|
|
1084
1092
|
const newComp = parentComponent.addComponent(defaultValueComponent.component, defaultValueComponent.data, sibling);
|
1085
1093
|
_.pull(newComp.validators, 'required');
|
1086
1094
|
parentComponent.tabs[tabIndex].splice(index, 1, newComp);
|
1087
|
-
newComp.
|
1095
|
+
newComp.processOwnValidation = true;
|
1088
1096
|
newComp.build(defaultValueComponent.element);
|
1089
1097
|
if (this.preview && !this.preview.defaultChanged) {
|
1090
1098
|
const defaultValue = _.get(this.preview._data, this.editForm._data.key);
|
package/lib/mjs/Wizard.js
CHANGED
@@ -810,6 +810,11 @@ export default class Wizard extends Webform {
|
|
810
810
|
}
|
811
811
|
}
|
812
812
|
setValue(submission, flags = {}, ignoreEstablishment) {
|
813
|
+
if (!submission || !submission.data) {
|
814
|
+
submission = {
|
815
|
+
data: {},
|
816
|
+
};
|
817
|
+
}
|
813
818
|
const changed = this.getPages({ all: true }).reduce((changed, page) => {
|
814
819
|
return this.setNestedValue(page, submission.data, flags, changed) || changed;
|
815
820
|
}, false);
|
@@ -560,6 +560,9 @@ export default class NestedComponent extends Field {
|
|
560
560
|
if (this.componentsMap[component.path]) {
|
561
561
|
delete this.componentsMap[component.path];
|
562
562
|
}
|
563
|
+
if (this.root?.componentsMap[component.path]) {
|
564
|
+
delete this.root?.componentsMap[component.path];
|
565
|
+
}
|
563
566
|
}
|
564
567
|
/**
|
565
568
|
* Removes a component provided the API key of that component.
|
@@ -831,9 +834,6 @@ export default class NestedComponent extends Field {
|
|
831
834
|
}
|
832
835
|
}
|
833
836
|
setValue(value, flags = {}) {
|
834
|
-
if (!value) {
|
835
|
-
return false;
|
836
|
-
}
|
837
837
|
// If the value is equal to the empty value, then this means we need to reset the values.
|
838
838
|
if (_.isEqual(value, this.emptyValue)) {
|
839
839
|
// TO-DO: For a future major release, we need to investigate removing the need for the
|
@@ -477,7 +477,13 @@ export default class DataGridComponent extends NestedArrayComponent {
|
|
477
477
|
const formComp = getComponent(this.component.components, changed.component.key);
|
478
478
|
_.set(formComp, 'components', changed.component.components);
|
479
479
|
}
|
480
|
-
|
480
|
+
// If we're in a nested form we need to ensure our changes are triggered upstream
|
481
|
+
if (changed.instance.root?.id && (this.root?.id !== changed.instance.root.id)) {
|
482
|
+
changed.instance.root.triggerChange(flags, changed, modified);
|
483
|
+
}
|
484
|
+
else {
|
485
|
+
this.triggerChange({ modified });
|
486
|
+
}
|
481
487
|
};
|
482
488
|
let columnComponent;
|
483
489
|
if (this.builderMode) {
|
@@ -142,7 +142,7 @@ export default class RadioComponent extends ListComponent {
|
|
142
142
|
});
|
143
143
|
this.optionsLoaded = !this.component.dataSrc || this.component.dataSrc === 'values';
|
144
144
|
this.loadedOptions = [];
|
145
|
-
if (!this.visible) {
|
145
|
+
if (!this.visible || this.optionsLoaded) {
|
146
146
|
this.itemsLoadedResolve();
|
147
147
|
}
|
148
148
|
// Get the template keys for this radio component.
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@formio/js",
|
3
|
-
"version": "5.2.1-dev.
|
3
|
+
"version": "5.2.1-dev.6202.2449b29",
|
4
4
|
"description": "JavaScript powered Forms with JSON Form Builder",
|
5
5
|
"main": "lib/cjs/index.js",
|
6
6
|
"exports": {
|
@@ -79,8 +79,8 @@
|
|
79
79
|
},
|
80
80
|
"homepage": "https://github.com/formio/formio.js#readme",
|
81
81
|
"dependencies": {
|
82
|
-
"@formio/bootstrap": "3.1.2-rc.
|
83
|
-
"@formio/core": "2.5.1-rc.
|
82
|
+
"@formio/bootstrap": "3.1.2-rc.3",
|
83
|
+
"@formio/core": "2.5.1-rc.8",
|
84
84
|
"@formio/text-mask-addons": "^3.8.0-formio.4",
|
85
85
|
"@formio/vanilla-text-mask": "^5.1.1-formio.1",
|
86
86
|
"abortcontroller-polyfill": "^1.7.5",
|