@formio/js 5.3.3 → 5.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +21 -21
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.form.min.js.LICENSE.txt +2 -2
- package/dist/formio.full.js +21 -21
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +2 -2
- package/dist/formio.js +10 -10
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +2 -2
- package/dist/formio.utils.js +9 -9
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +2 -2
- package/lib/cjs/Element.d.ts +11 -0
- package/lib/cjs/Element.js +24 -0
- package/lib/cjs/Embed.js +1 -1
- package/lib/cjs/Formio.js +1 -1
- package/lib/cjs/Webform.js +7 -4
- package/lib/cjs/Wizard.js +15 -11
- package/lib/cjs/components/Components.js +9 -1
- package/lib/cjs/components/_classes/component/Component.js +13 -18
- package/lib/cjs/components/_classes/nested/NestedComponent.js +9 -6
- package/lib/cjs/components/datagrid/DataGrid.js +3 -2
- package/lib/cjs/components/editgrid/EditGrid.js +2 -2
- package/lib/cjs/components/file/File.js +6 -5
- package/lib/cjs/components/form/Form.d.ts +1 -0
- package/lib/cjs/components/form/Form.js +18 -7
- package/lib/cjs/package.json +1 -1
- package/lib/cjs/utils/formUtils.d.ts +2 -2
- package/lib/cjs/utils/index.d.ts +2 -2
- package/lib/mjs/Element.d.ts +11 -0
- package/lib/mjs/Element.js +23 -0
- package/lib/mjs/Embed.js +1 -1
- package/lib/mjs/Formio.js +1 -1
- package/lib/mjs/Webform.js +5 -1
- package/lib/mjs/Wizard.js +9 -10
- package/lib/mjs/components/Components.js +9 -1
- package/lib/mjs/components/_classes/component/Component.js +12 -18
- package/lib/mjs/components/_classes/nested/NestedComponent.js +8 -5
- package/lib/mjs/components/datagrid/DataGrid.js +3 -2
- package/lib/mjs/components/editgrid/EditGrid.js +1 -1
- package/lib/mjs/components/file/File.js +6 -5
- package/lib/mjs/components/form/Form.d.ts +1 -0
- package/lib/mjs/components/form/Form.js +16 -5
- package/lib/mjs/package.json +1 -1
- package/lib/mjs/utils/formUtils.d.ts +2 -2
- package/lib/mjs/utils/index.d.ts +2 -2
- package/package.json +2 -2
package/lib/mjs/Wizard.js
CHANGED
|
@@ -200,7 +200,7 @@ export default class Wizard extends Webform {
|
|
|
200
200
|
wizardNav,
|
|
201
201
|
components: this.renderComponents([
|
|
202
202
|
...this.prefixComps,
|
|
203
|
-
...this.currentPage
|
|
203
|
+
...this.currentPage?.components || [],
|
|
204
204
|
...this.suffixComps,
|
|
205
205
|
]),
|
|
206
206
|
}, this.builderMode ? 'builder' : 'form');
|
|
@@ -262,7 +262,7 @@ export default class Wizard extends Webform {
|
|
|
262
262
|
this.hook('attachWebform', element, this);
|
|
263
263
|
const promises = this.attachComponents(this.refs[this.wizardKey], [
|
|
264
264
|
...this.prefixComps,
|
|
265
|
-
...this.currentPage
|
|
265
|
+
...this.currentPage?.components || [],
|
|
266
266
|
...this.suffixComps,
|
|
267
267
|
]);
|
|
268
268
|
this.attachNav();
|
|
@@ -289,7 +289,7 @@ export default class Wizard extends Webform {
|
|
|
289
289
|
isBreadcrumbClickable() {
|
|
290
290
|
let currentPage = null;
|
|
291
291
|
this.pages.map((page) => {
|
|
292
|
-
if (_.isEqual(this.currentPage
|
|
292
|
+
if (_.isEqual(this.currentPage?.component, page.component)) {
|
|
293
293
|
currentPage = page;
|
|
294
294
|
}
|
|
295
295
|
});
|
|
@@ -304,11 +304,11 @@ export default class Wizard extends Webform {
|
|
|
304
304
|
isAllowPrevious() {
|
|
305
305
|
let currentPage = null;
|
|
306
306
|
this.pages.map((page) => {
|
|
307
|
-
if (_.isEqual(this.currentPage
|
|
307
|
+
if (_.isEqual(this.currentPage?.component, page.component)) {
|
|
308
308
|
currentPage = page;
|
|
309
309
|
}
|
|
310
310
|
});
|
|
311
|
-
return _.get(currentPage
|
|
311
|
+
return _.get(currentPage?.component, 'allowPrevious', this.options.allowPrevious);
|
|
312
312
|
}
|
|
313
313
|
/**
|
|
314
314
|
* Handles navigate on 'Enter' key event in a wizard form.
|
|
@@ -537,7 +537,7 @@ export default class Wizard extends Webform {
|
|
|
537
537
|
const forceShow = this.shouldForceShow(item);
|
|
538
538
|
const forceHide = this.shouldForceHide(item);
|
|
539
539
|
let isVisible = !page
|
|
540
|
-
? checkCondition(item, data, data, this.component, this) && !item.hidden
|
|
540
|
+
? (checkCondition(item, data, data, this.component, this) && !item.hidden)
|
|
541
541
|
: page.visible;
|
|
542
542
|
if (forceShow) {
|
|
543
543
|
isVisible = true;
|
|
@@ -608,7 +608,7 @@ export default class Wizard extends Webform {
|
|
|
608
608
|
}
|
|
609
609
|
return this.redraw().then(() => {
|
|
610
610
|
this.checkData(this.submission.data);
|
|
611
|
-
this.triggerCaptcha(this.currentPage
|
|
611
|
+
this.triggerCaptcha(this.currentPage?.components);
|
|
612
612
|
const errors = this.submitted
|
|
613
613
|
? this.validate(this.localData, { dirty: true })
|
|
614
614
|
: this.validateCurrentPage();
|
|
@@ -822,8 +822,7 @@ export default class Wizard extends Webform {
|
|
|
822
822
|
return super.setForm(form, flags);
|
|
823
823
|
}
|
|
824
824
|
onSetForm(clonedForm, initialForm) {
|
|
825
|
-
this.component.components =
|
|
826
|
-
(this.parent ? initialForm.components : clonedForm.components) || [];
|
|
825
|
+
this.component.components = (this.parent ? initialForm.components : clonedForm.components) || [];
|
|
827
826
|
this.setComponentSchema();
|
|
828
827
|
}
|
|
829
828
|
setEditMode(submission) {
|
|
@@ -936,7 +935,7 @@ export default class Wizard extends Webform {
|
|
|
936
935
|
this.setCustomValidity('');
|
|
937
936
|
return true;
|
|
938
937
|
}
|
|
939
|
-
const components = !currentPageOnly || this.isLastPage() ? this.getComponents() : this.currentPage
|
|
938
|
+
const components = !currentPageOnly || this.isLastPage() ? this.getComponents() : this.currentPage?.components;
|
|
940
939
|
return components.reduce((check, comp) => comp.checkValidity(data, dirty, row, currentPageOnly, childErrors) && check, true);
|
|
941
940
|
}
|
|
942
941
|
get errors() {
|
|
@@ -66,7 +66,15 @@ export default class Components {
|
|
|
66
66
|
comp = new Component(component, options, data);
|
|
67
67
|
}
|
|
68
68
|
if (comp.path) {
|
|
69
|
-
|
|
69
|
+
let currentRoot = comp.root;
|
|
70
|
+
let prevRootId = null;
|
|
71
|
+
while (currentRoot && currentRoot.id !== prevRootId) {
|
|
72
|
+
if (currentRoot.childComponentsMap) {
|
|
73
|
+
currentRoot.childComponentsMap[comp.path] = comp;
|
|
74
|
+
}
|
|
75
|
+
prevRootId = currentRoot.id;
|
|
76
|
+
currentRoot = currentRoot.root;
|
|
77
|
+
}
|
|
70
78
|
}
|
|
71
79
|
// Reset the componentMatches on the root element if any new component is created.
|
|
72
80
|
let parent = comp.parent;
|
|
@@ -2266,29 +2266,23 @@ export default class Component extends Element {
|
|
|
2266
2266
|
* @returns {void}
|
|
2267
2267
|
*/
|
|
2268
2268
|
setErrorClasses(elements, dirty, hasErrors, hasMessages, element = this.element) {
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
this.setElementInvalid(this.performInputMapping(element), hasErrors);
|
|
2269
|
+
elements.forEach((el) => {
|
|
2270
|
+
this.setElementInvalid(this.performInputMapping(el), hasErrors);
|
|
2272
2271
|
});
|
|
2273
2272
|
this.setInputWidgetErrorClasses(elements, hasErrors);
|
|
2274
2273
|
// do not set error classes for hidden components
|
|
2275
2274
|
if (!this.visible) {
|
|
2275
|
+
this.clearErrorClasses(element);
|
|
2276
2276
|
return;
|
|
2277
2277
|
}
|
|
2278
|
-
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
else {
|
|
2287
|
-
this.addClass(element, 'has-error');
|
|
2288
|
-
}
|
|
2289
|
-
}
|
|
2290
|
-
if (hasMessages) {
|
|
2291
|
-
this.addClass(element, 'has-message');
|
|
2278
|
+
const wantHighlight = hasErrors && !!dirty && !!this.options.highlightErrors;
|
|
2279
|
+
const wantHasError = hasErrors && !wantHighlight;
|
|
2280
|
+
this.toggleClass(element, this.options.componentErrorClass, wantHighlight);
|
|
2281
|
+
this.toggleClass(element, 'has-error', wantHasError);
|
|
2282
|
+
this.toggleClass(element, 'has-message', hasMessages);
|
|
2283
|
+
// Preserve previous clearErrorClasses() behavior: drop the 'alert alert-danger' pair if left over.
|
|
2284
|
+
if (element?.classList?.contains('alert-danger')) {
|
|
2285
|
+
this.removeClass(element, 'alert alert-danger');
|
|
2292
2286
|
}
|
|
2293
2287
|
}
|
|
2294
2288
|
/**
|
|
@@ -3182,7 +3176,7 @@ export default class Component extends Element {
|
|
|
3182
3176
|
if (flags.silentCheck) {
|
|
3183
3177
|
return [];
|
|
3184
3178
|
}
|
|
3185
|
-
let isDirty = flags.dirty
|
|
3179
|
+
let isDirty = flags.dirty || this.dirty;
|
|
3186
3180
|
if (this.options.alwaysDirty) {
|
|
3187
3181
|
isDirty = true;
|
|
3188
3182
|
}
|
|
@@ -556,11 +556,14 @@ export default class NestedComponent extends Field {
|
|
|
556
556
|
components = components || this.components;
|
|
557
557
|
component.destroy(all);
|
|
558
558
|
_.remove(components, { id: component.id });
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
559
|
+
let currentRoot = component.root;
|
|
560
|
+
let prevRootId = null;
|
|
561
|
+
while (currentRoot && currentRoot.id !== prevRootId) {
|
|
562
|
+
if (currentRoot.childComponentsMap?.[component.path]) {
|
|
563
|
+
delete currentRoot.childComponentsMap[component.path];
|
|
564
|
+
}
|
|
565
|
+
prevRootId = currentRoot.id;
|
|
566
|
+
currentRoot = currentRoot.root;
|
|
564
567
|
}
|
|
565
568
|
}
|
|
566
569
|
/**
|
|
@@ -530,8 +530,9 @@ export default class DataGridComponent extends NestedArrayComponent {
|
|
|
530
530
|
options.row = `${rowIndex}-${colIndex}`;
|
|
531
531
|
options.rowIndex = rowIndex;
|
|
532
532
|
options.onChange = (flags, changed, modified) => {
|
|
533
|
-
|
|
534
|
-
|
|
533
|
+
const changedComponent = changed.component;
|
|
534
|
+
if (changedComponent?.type === 'form' && changedComponent?.key) {
|
|
535
|
+
const formComp = getComponent(this.component.components, changedComponent.key);
|
|
535
536
|
_.set(formComp, 'components', changed.component.components);
|
|
536
537
|
}
|
|
537
538
|
// If we're in a nested form we need to ensure our changes are triggered upstream
|
|
@@ -859,7 +859,7 @@ export default class EditGridComponent extends NestedArrayComponent {
|
|
|
859
859
|
if (this.component.rowDrafts) {
|
|
860
860
|
editRow.components.forEach((comp) => comp.setPristine(this.pristine));
|
|
861
861
|
}
|
|
862
|
-
this.checkValidity(null,
|
|
862
|
+
this.checkValidity(null, !this.component.rowDrafts || this.root?.submitted);
|
|
863
863
|
this.redraw();
|
|
864
864
|
if (editRow.alerts) {
|
|
865
865
|
editRow.alerts = false;
|
|
@@ -941,16 +941,17 @@ export default class FileComponent extends Field {
|
|
|
941
941
|
: false;
|
|
942
942
|
}
|
|
943
943
|
async uploadFile(fileToSync) {
|
|
944
|
-
|
|
944
|
+
const filePromise = this.fileService.uploadFile(fileToSync.storage, fileToSync.file, fileToSync.name, fileToSync.dir,
|
|
945
945
|
// Progress callback
|
|
946
946
|
this.updateProgress.bind(this, fileToSync), fileToSync.url, fileToSync.options, fileToSync.fileKey, fileToSync.groupPermissions, fileToSync.groupResourceId, () => {
|
|
947
|
-
this.emit('fileUploadingStart');
|
|
947
|
+
this.emit('fileUploadingStart', filePromise);
|
|
948
948
|
},
|
|
949
949
|
// Abort upload callback
|
|
950
950
|
(abort) => this.abortUploads.push({
|
|
951
951
|
id: fileToSync.id,
|
|
952
952
|
abort,
|
|
953
953
|
}), this.getMultipartOptions(fileToSync));
|
|
954
|
+
return await filePromise;
|
|
954
955
|
}
|
|
955
956
|
async upload() {
|
|
956
957
|
if (!this.filesToSync.filesToUpload.length) {
|
|
@@ -970,7 +971,7 @@ export default class FileComponent extends Field {
|
|
|
970
971
|
fileToSync.message = this.t('Succefully uploaded');
|
|
971
972
|
fileInfo.originalName = fileToSync.originalName;
|
|
972
973
|
fileInfo.hash = fileToSync.hash;
|
|
973
|
-
this.emit('fileUploadingEnd');
|
|
974
|
+
this.emit('fileUploadingEnd', Promise.resolve(fileInfo));
|
|
974
975
|
}
|
|
975
976
|
catch (response) {
|
|
976
977
|
fileToSync.status = 'error';
|
|
@@ -981,8 +982,8 @@ export default class FileComponent extends Field {
|
|
|
981
982
|
: response.type === 'abort'
|
|
982
983
|
? this.t('Request was aborted')
|
|
983
984
|
: response.toString();
|
|
984
|
-
this.emit('fileUploadingEnd');
|
|
985
|
-
this.emit('fileUploadError', {
|
|
985
|
+
this.emit('fileUploadingEnd', Promise.reject(response));
|
|
986
|
+
this.emit(_.get(response, 'type') === 'abort' ? 'fileUploadCanceled' : 'fileUploadError', {
|
|
986
987
|
fileToSync,
|
|
987
988
|
response,
|
|
988
989
|
});
|
|
@@ -42,6 +42,7 @@ export default class FormComponent extends Component {
|
|
|
42
42
|
everyComponent(...args: any[]): any;
|
|
43
43
|
setSubFormDisabled(subForm: any): void;
|
|
44
44
|
updateSubWizards(subForm: any): void;
|
|
45
|
+
updateTopLevelComponentsMap(): void;
|
|
45
46
|
setComponentsMap(): void;
|
|
46
47
|
/**
|
|
47
48
|
* Create a subform instance.
|
|
@@ -393,13 +393,22 @@ export default class FormComponent extends Component {
|
|
|
393
393
|
this.emit('subWizardsUpdated', subForm);
|
|
394
394
|
}
|
|
395
395
|
}
|
|
396
|
+
updateTopLevelComponentsMap() {
|
|
397
|
+
let prevRootId = null;
|
|
398
|
+
let currentRoot = this.root;
|
|
399
|
+
const subFormComponentMap = this.subForm.componentsMap;
|
|
400
|
+
// update components map for all top forms
|
|
401
|
+
while (currentRoot && prevRootId !== currentRoot.id) {
|
|
402
|
+
_.assign(currentRoot.componentsMap, subFormComponentMap);
|
|
403
|
+
prevRootId = currentRoot.id;
|
|
404
|
+
currentRoot = currentRoot.root;
|
|
405
|
+
}
|
|
406
|
+
}
|
|
396
407
|
setComponentsMap() {
|
|
397
408
|
if (!this.subForm) {
|
|
398
409
|
return;
|
|
399
410
|
}
|
|
400
|
-
|
|
401
|
-
const formComponentsMap = this.subForm.componentsMap;
|
|
402
|
-
_.assign(componentsMap, formComponentsMap);
|
|
411
|
+
this.updateTopLevelComponentsMap();
|
|
403
412
|
}
|
|
404
413
|
/**
|
|
405
414
|
* Create a subform instance.
|
|
@@ -428,7 +437,7 @@ export default class FormComponent extends Component {
|
|
|
428
437
|
this.subForm.currentForm = this;
|
|
429
438
|
this.subForm.parentVisible = this.visible;
|
|
430
439
|
this.setComponentsMap();
|
|
431
|
-
this.component.components = this.subForm.
|
|
440
|
+
this.component.components = this.subForm.components.map((comp) => comp.component);
|
|
432
441
|
this.component.display = this.subForm._form?.display;
|
|
433
442
|
this.subForm.on('change', () => {
|
|
434
443
|
if (this.subForm && !this.shouldConditionallyClear()) {
|
|
@@ -759,7 +768,9 @@ export default class FormComponent extends Component {
|
|
|
759
768
|
}
|
|
760
769
|
this.updateSubFormVisibility();
|
|
761
770
|
this.clearOnHide();
|
|
762
|
-
|
|
771
|
+
if (!isNestedWizard) {
|
|
772
|
+
this.redraw();
|
|
773
|
+
}
|
|
763
774
|
}
|
|
764
775
|
if (!value && isNestedWizard) {
|
|
765
776
|
this.root?.redraw();
|
package/lib/mjs/package.json
CHANGED
|
@@ -26,8 +26,8 @@ export const getBestMatch: typeof Utils.getBestMatch;
|
|
|
26
26
|
export const getComponentFromPath: typeof Utils.getComponentFromPath;
|
|
27
27
|
export const getComponentValue: typeof Utils.getComponentValue;
|
|
28
28
|
export const findComponents: typeof Utils.findComponents;
|
|
29
|
-
export const 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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataAsyncCallback | undefined) => Promise<void>;
|
|
30
|
-
export const 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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataCallback | undefined) => void;
|
|
29
|
+
export const 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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataAsyncCallback | undefined, localRoot?: import("@formio/core").LocalRoot | undefined) => Promise<void>;
|
|
30
|
+
export const 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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataCallback | undefined, localRoot?: import("@formio/core").LocalRoot | undefined) => void;
|
|
31
31
|
export const getComponentKey: typeof Utils.getComponentKey;
|
|
32
32
|
export const getContextualRowPath: any;
|
|
33
33
|
export const getContextualRowData: typeof Utils.getContextualRowData;
|
package/lib/mjs/utils/index.d.ts
CHANGED
|
@@ -37,8 +37,8 @@ declare const FormioUtils: {
|
|
|
37
37
|
getComponentFromPath: typeof import("@formio/core/lib/utils/formUtil").getComponentFromPath;
|
|
38
38
|
getComponentValue: typeof import("@formio/core/lib/utils/formUtil").getComponentValue;
|
|
39
39
|
findComponents: typeof import("@formio/core/lib/utils/formUtil").findComponents;
|
|
40
|
-
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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataAsyncCallback | undefined) => Promise<void>;
|
|
41
|
-
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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataCallback | undefined) => void;
|
|
40
|
+
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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataAsyncCallback | undefined, localRoot?: import("@formio/core").LocalRoot | undefined) => Promise<void>;
|
|
41
|
+
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, noScopeReset?: boolean | undefined, afterFn?: import("@formio/core").EachComponentDataCallback | undefined, localRoot?: import("@formio/core").LocalRoot | undefined) => void;
|
|
42
42
|
getComponentKey: typeof import("@formio/core/lib/utils/formUtil").getComponentKey;
|
|
43
43
|
getContextualRowPath: any;
|
|
44
44
|
getContextualRowData: typeof import("@formio/core/lib/utils/formUtil").getContextualRowData;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@formio/js",
|
|
3
|
-
"version": "5.3.
|
|
3
|
+
"version": "5.3.4",
|
|
4
4
|
"description": "JavaScript powered Forms with JSON Form Builder",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"uuid": "^9.0.0",
|
|
90
90
|
"vanilla-picker": "^2.12.3",
|
|
91
91
|
"@formio/bootstrap": "^3.2.2",
|
|
92
|
-
"@formio/core": "^2.6.
|
|
92
|
+
"@formio/core": "^2.6.4"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@types/node": "^22.15.19",
|