@formio/js 5.2.4-rc.0 → 5.2.5
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 +50 -161
- package/dist/formio.builder.min.css +1 -1
- 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.css +49 -158
- package/dist/formio.form.js +108 -152
- package/dist/formio.form.min.css +1 -1
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.form.min.js.LICENSE.txt +1 -1
- package/dist/formio.full.css +50 -161
- package/dist/formio.full.js +227 -401
- package/dist/formio.full.min.css +1 -1
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +1 -1
- package/dist/formio.js +18 -51
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +1 -1
- package/dist/formio.utils.js +14 -47
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +1 -1
- package/lib/cjs/CDN.js +12 -12
- package/lib/cjs/Element.d.ts +2 -3
- package/lib/cjs/Element.js +26 -29
- package/lib/cjs/Embed.js +42 -75
- package/lib/cjs/EventEmitter.js +1 -1
- package/lib/cjs/Form.d.ts +341 -371
- package/lib/cjs/Form.js +39 -153
- package/lib/cjs/FormBuilder.d.ts +3 -3
- package/lib/cjs/FormBuilder.js +3 -2
- package/lib/cjs/Formio.js +23 -26
- package/lib/cjs/InlineEmbed.js +17 -23
- package/lib/cjs/PDF.d.ts +0 -1
- package/lib/cjs/PDF.js +15 -18
- package/lib/cjs/PDFBuilder.js +36 -51
- package/lib/cjs/Webform.d.ts +366 -8
- package/lib/cjs/Webform.js +238 -177
- package/lib/cjs/WebformBuilder.js +152 -221
- package/lib/cjs/Wizard.js +65 -95
- package/lib/cjs/WizardBuilder.js +19 -27
- package/lib/cjs/addons/FormioAddon.js +1 -1
- package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +57 -59
- package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +16 -24
- package/lib/cjs/addons/index.js +3 -3
- package/lib/cjs/components/Components.js +4 -0
- package/lib/cjs/components/_classes/component/Component.form.js +11 -11
- package/lib/cjs/components/_classes/component/Component.js +198 -309
- package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.js +4 -2
- package/lib/cjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
- package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +11 -9
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.js +25 -39
- package/lib/cjs/components/_classes/component/editForm/Component.edit.display.js +29 -47
- package/lib/cjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
- package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +7 -5
- package/lib/cjs/components/_classes/component/editForm/Component.edit.validation.js +34 -37
- package/lib/cjs/components/_classes/component/editForm/utils.js +16 -12
- package/lib/cjs/components/_classes/componentModal/ComponentModal.js +6 -6
- package/lib/cjs/components/_classes/field/Field.js +1 -7
- package/lib/cjs/components/_classes/input/Input.js +26 -30
- package/lib/cjs/components/_classes/list/ListComponent.form.js +1 -1
- package/lib/cjs/components/_classes/list/ListComponent.js +18 -27
- package/lib/cjs/components/_classes/list/editForm/ListComponent.edit.data.js +9 -36
- package/lib/cjs/components/_classes/multivalue/Multivalue.js +13 -32
- package/lib/cjs/components/_classes/nested/NestedComponent.d.ts +1 -1
- package/lib/cjs/components/_classes/nested/NestedComponent.form.js +3 -3
- package/lib/cjs/components/_classes/nested/NestedComponent.js +75 -67
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +14 -19
- package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +17 -19
- package/lib/cjs/components/address/Address.d.ts +0 -1
- package/lib/cjs/components/address/Address.js +52 -57
- package/lib/cjs/components/address/editForm/Address.edit.data.js +2 -2
- package/lib/cjs/components/address/editForm/Address.edit.display.js +2 -2
- package/lib/cjs/components/address/editForm/Address.edit.provider.js +11 -53
- package/lib/cjs/components/alert/Alert.js +15 -21
- package/lib/cjs/components/button/Button.form.js +1 -1
- package/lib/cjs/components/button/Button.js +47 -64
- package/lib/cjs/components/button/editForm/Button.edit.display.js +9 -49
- package/lib/cjs/components/checkbox/Checkbox.d.ts +1 -1
- package/lib/cjs/components/checkbox/Checkbox.form.js +3 -3
- package/lib/cjs/components/checkbox/Checkbox.js +20 -28
- package/lib/cjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
- package/lib/cjs/components/checkbox/editForm/Checkbox.edit.display.js +3 -13
- package/lib/cjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
- package/lib/cjs/components/columns/Columns.form.js +1 -1
- package/lib/cjs/components/columns/Columns.js +12 -24
- package/lib/cjs/components/columns/editForm/Columns.edit.display.js +17 -17
- package/lib/cjs/components/container/Container.form.js +2 -2
- package/lib/cjs/components/container/Container.js +4 -6
- package/lib/cjs/components/container/editForm/Container.edit.data.js +3 -3
- package/lib/cjs/components/container/editForm/Container.edit.display.js +4 -4
- package/lib/cjs/components/content/Content.form.js +2 -4
- package/lib/cjs/components/content/Content.js +8 -10
- package/lib/cjs/components/content/editForm/Content.edit.display.js +10 -10
- package/lib/cjs/components/currency/Currency.form.js +3 -3
- package/lib/cjs/components/currency/Currency.js +10 -19
- package/lib/cjs/components/currency/editForm/Currency.edit.data.js +5 -5
- package/lib/cjs/components/currency/editForm/Currency.edit.display.js +8 -8
- package/lib/cjs/components/datagrid/DataGrid.form.js +3 -3
- package/lib/cjs/components/datagrid/DataGrid.js +42 -92
- package/lib/cjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
- package/lib/cjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
- package/lib/cjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
- package/lib/cjs/components/datamap/DataMap.form.js +2 -2
- package/lib/cjs/components/datamap/DataMap.js +35 -46
- package/lib/cjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
- package/lib/cjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
- package/lib/cjs/components/datetime/DateTime.form.js +5 -5
- package/lib/cjs/components/datetime/DateTime.js +15 -30
- package/lib/cjs/components/datetime/editForm/DateTime.edit.data.js +3 -4
- package/lib/cjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
- package/lib/cjs/components/datetime/editForm/DateTime.edit.display.js +17 -22
- package/lib/cjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
- package/lib/cjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
- package/lib/cjs/components/day/Day.form.js +5 -5
- package/lib/cjs/components/day/Day.js +58 -147
- package/lib/cjs/components/day/editForm/Day.edit.day.js +9 -13
- package/lib/cjs/components/day/editForm/Day.edit.display.js +7 -7
- package/lib/cjs/components/day/editForm/Day.edit.month.js +8 -12
- package/lib/cjs/components/day/editForm/Day.edit.validation.js +7 -7
- package/lib/cjs/components/day/editForm/Day.edit.year.js +8 -8
- package/lib/cjs/components/editgrid/EditGrid.form.js +2 -2
- package/lib/cjs/components/editgrid/EditGrid.js +96 -142
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +2 -7
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
- package/lib/cjs/components/email/Email.js +4 -4
- package/lib/cjs/components/email/editForm/Email.edit.display.js +3 -3
- package/lib/cjs/components/email/editForm/Email.edit.validation.js +6 -6
- package/lib/cjs/components/fieldset/Fieldset.form.js +1 -1
- package/lib/cjs/components/fieldset/Fieldset.js +2 -2
- package/lib/cjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
- package/lib/cjs/components/file/File.form.js +4 -4
- package/lib/cjs/components/file/File.js +90 -131
- package/lib/cjs/components/file/editForm/File.edit.display.js +5 -9
- package/lib/cjs/components/file/editForm/File.edit.file.js +53 -97
- package/lib/cjs/components/file/editForm/File.edit.validation.js +2 -2
- package/lib/cjs/components/form/Form.form.js +3 -3
- package/lib/cjs/components/form/Form.js +58 -68
- package/lib/cjs/components/form/editForm/Form.edit.data.js +3 -1
- package/lib/cjs/components/form/editForm/Form.edit.display.js +7 -6
- package/lib/cjs/components/form/editForm/Form.edit.form.js +9 -11
- package/lib/cjs/components/hidden/Hidden.form.js +4 -4
- package/lib/cjs/components/hidden/Hidden.js +2 -2
- package/lib/cjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
- package/lib/cjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
- package/lib/cjs/components/html/HTML.js +17 -23
- package/lib/cjs/components/html/editForm/HTML.edit.display.js +17 -17
- package/lib/cjs/components/html/editForm/HTML.edit.logic.js +2 -2
- package/lib/cjs/components/number/Number.form.js +3 -3
- package/lib/cjs/components/number/Number.js +11 -27
- package/lib/cjs/components/number/editForm/Number.edit.data.js +3 -3
- package/lib/cjs/components/number/editForm/Number.edit.display.js +4 -4
- package/lib/cjs/components/number/editForm/Number.edit.validation.js +9 -9
- package/lib/cjs/components/panel/Panel.form.js +1 -1
- package/lib/cjs/components/panel/Panel.js +2 -2
- package/lib/cjs/components/panel/editForm/Panel.edit.conditional.js +7 -5
- package/lib/cjs/components/panel/editForm/Panel.edit.display.js +29 -55
- package/lib/cjs/components/password/Password.form.js +3 -3
- package/lib/cjs/components/password/Password.js +2 -5
- package/lib/cjs/components/password/editForm/Password.edit.data.js +11 -11
- package/lib/cjs/components/password/editForm/Password.edit.display.js +3 -3
- package/lib/cjs/components/password/editForm/Password.edit.validation.js +3 -3
- package/lib/cjs/components/phonenumber/PhoneNumber.form.js +8 -8
- package/lib/cjs/components/phonenumber/PhoneNumber.js +3 -3
- package/lib/cjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
- package/lib/cjs/components/radio/Radio.form.js +3 -3
- package/lib/cjs/components/radio/Radio.js +32 -58
- package/lib/cjs/components/radio/editForm/Radio.edit.data.js +9 -23
- package/lib/cjs/components/radio/editForm/Radio.edit.display.js +6 -6
- package/lib/cjs/components/radio/editForm/Radio.edit.validation.js +2 -2
- package/lib/cjs/components/recaptcha/ReCaptcha.form.js +5 -5
- package/lib/cjs/components/recaptcha/ReCaptcha.js +10 -10
- package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
- package/lib/cjs/components/select/Select.form.js +3 -3
- package/lib/cjs/components/select/Select.js +140 -235
- package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.js +57 -191
- package/lib/cjs/components/select/editForm/Select.edit.display.js +2 -2
- package/lib/cjs/components/select/editForm/Select.edit.validation.js +4 -4
- package/lib/cjs/components/selectboxes/SelectBoxes.form.js +3 -3
- package/lib/cjs/components/selectboxes/SelectBoxes.js +16 -29
- package/lib/cjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
- package/lib/cjs/components/signature/Signature.form.js +3 -3
- package/lib/cjs/components/signature/Signature.js +17 -26
- package/lib/cjs/components/signature/editForm/Signature.edit.display.js +10 -19
- package/lib/cjs/components/survey/Survey.form.js +3 -3
- package/lib/cjs/components/survey/Survey.js +17 -30
- package/lib/cjs/components/survey/editForm/Survey.edit.data.js +11 -23
- package/lib/cjs/components/survey/editForm/Survey.edit.display.js +1 -1
- package/lib/cjs/components/survey/editForm/Survey.edit.validation.js +1 -1
- package/lib/cjs/components/table/Table.form.js +1 -1
- package/lib/cjs/components/table/Table.js +7 -8
- package/lib/cjs/components/table/editForm/Table.edit.display.js +22 -22
- package/lib/cjs/components/tabs/Tabs.form.js +1 -1
- package/lib/cjs/components/tabs/Tabs.js +10 -27
- package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +17 -21
- package/lib/cjs/components/tags/Tags.form.js +1 -1
- package/lib/cjs/components/tags/Tags.js +12 -28
- package/lib/cjs/components/tags/editForm/Tags.edit.data.js +7 -7
- package/lib/cjs/components/textarea/TextArea.form.js +2 -2
- package/lib/cjs/components/textarea/TextArea.js +45 -63
- package/lib/cjs/components/textarea/editForm/TextArea.edit.display.js +72 -96
- package/lib/cjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
- package/lib/cjs/components/textfield/TextField.form.js +3 -3
- package/lib/cjs/components/textfield/TextField.js +21 -32
- package/lib/cjs/components/textfield/editForm/TextField.edit.data.js +13 -15
- package/lib/cjs/components/textfield/editForm/TextField.edit.display.js +21 -31
- package/lib/cjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
- package/lib/cjs/components/time/Time.js +10 -17
- package/lib/cjs/components/time/editForm/Time.edit.display.js +2 -2
- package/lib/cjs/components/unknown/Unknown.form.js +5 -5
- package/lib/cjs/components/unknown/Unknown.js +2 -2
- package/lib/cjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
- package/lib/cjs/components/url/Url.form.js +3 -3
- package/lib/cjs/components/url/Url.js +2 -2
- package/lib/cjs/components/url/editForm/Url.edit.display.js +3 -3
- package/lib/cjs/components/url/editForm/Url.edit.validation.js +1 -1
- package/lib/cjs/components/well/Well.form.js +1 -1
- package/lib/cjs/components/well/Well.js +2 -2
- package/lib/cjs/components/well/editForm/Well.edit.display.js +10 -10
- package/lib/cjs/formio.form.d.ts +1 -2
- package/lib/cjs/formio.form.js +12 -38
- package/lib/cjs/i18n.d.ts +0 -4
- package/lib/cjs/i18n.js +3 -7
- package/lib/cjs/package.json +1 -1
- package/lib/cjs/pdf.image.d.ts +2 -0
- package/lib/cjs/pdf.image.js +94 -0
- package/lib/cjs/providers/address/AddressProvider.js +5 -8
- package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +3 -3
- package/lib/cjs/providers/address/GoogleAddressProvider.js +13 -24
- package/lib/cjs/providers/processor/fileProcessor.js +1 -3
- package/lib/cjs/providers/storage/azure.js +2 -5
- package/lib/cjs/providers/storage/dropbox.js +5 -4
- package/lib/cjs/providers/storage/googleDrive.js +4 -3
- package/lib/cjs/providers/storage/index.js +1 -1
- package/lib/cjs/providers/storage/indexeddb.js +6 -16
- package/lib/cjs/providers/storage/s3.js +6 -17
- package/lib/cjs/providers/storage/uploadAdapter.js +11 -17
- package/lib/cjs/providers/storage/url.js +11 -13
- package/lib/cjs/providers/storage/xhr.js +9 -17
- package/lib/cjs/templates/index.js +1 -1
- package/lib/cjs/translations/en.d.ts +2 -0
- package/lib/cjs/translations/en.js +9 -7
- package/lib/cjs/utils/ChoicesWrapper.js +2 -2
- package/lib/cjs/utils/builder.js +7 -31
- package/lib/cjs/utils/calendarUtils.js +5 -7
- package/lib/cjs/utils/conditionOperators/ConditionOperator.js +1 -1
- package/lib/cjs/utils/conditionOperators/DateGreaterThan.js +4 -12
- package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +1 -3
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +6 -10
- package/lib/cjs/utils/conditionOperators/index.js +1 -1
- package/lib/cjs/utils/formUtils.js +1 -1
- package/lib/cjs/utils/i18n.js +1 -7
- package/lib/cjs/utils/index.d.ts +1 -2
- package/lib/cjs/utils/index.js +2 -2
- package/lib/cjs/utils/jsonlogic/operators.d.ts +1 -0
- package/lib/cjs/utils/jsonlogic/operators.js +265 -0
- package/lib/cjs/utils/utils.d.ts +1 -10
- package/lib/cjs/utils/utils.js +92 -175
- package/lib/cjs/widgets/CalendarWidget.js +49 -66
- package/lib/cjs/widgets/InputWidget.js +4 -6
- package/lib/cjs/widgets/index.js +1 -1
- package/lib/mjs/CDN.js +12 -12
- package/lib/mjs/Element.d.ts +2 -3
- package/lib/mjs/Element.js +23 -29
- package/lib/mjs/Embed.js +43 -77
- package/lib/mjs/EventEmitter.js +1 -1
- package/lib/mjs/Form.d.ts +341 -371
- package/lib/mjs/Form.js +126 -142
- package/lib/mjs/FormBuilder.d.ts +3 -3
- package/lib/mjs/FormBuilder.js +3 -2
- package/lib/mjs/Formio.js +23 -26
- package/lib/mjs/InlineEmbed.js +17 -23
- package/lib/mjs/PDF.d.ts +0 -1
- package/lib/mjs/PDF.js +15 -18
- package/lib/mjs/PDFBuilder.js +36 -51
- package/lib/mjs/Webform.d.ts +366 -8
- package/lib/mjs/Webform.js +251 -184
- package/lib/mjs/WebformBuilder.js +151 -224
- package/lib/mjs/Wizard.js +64 -94
- package/lib/mjs/WizardBuilder.js +19 -27
- package/lib/mjs/addons/FormioAddon.js +1 -1
- package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +57 -59
- package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +16 -24
- package/lib/mjs/addons/index.js +3 -3
- package/lib/mjs/components/Components.js +4 -0
- package/lib/mjs/components/_classes/component/Component.form.js +11 -11
- package/lib/mjs/components/_classes/component/Component.js +194 -313
- package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.js +4 -2
- package/lib/mjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
- package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +11 -9
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.js +25 -39
- package/lib/mjs/components/_classes/component/editForm/Component.edit.display.js +29 -47
- package/lib/mjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
- package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +7 -5
- package/lib/mjs/components/_classes/component/editForm/Component.edit.validation.js +34 -37
- package/lib/mjs/components/_classes/component/editForm/utils.js +16 -12
- package/lib/mjs/components/_classes/componentModal/ComponentModal.js +2 -2
- package/lib/mjs/components/_classes/field/Field.js +2 -8
- package/lib/mjs/components/_classes/input/Input.js +23 -27
- package/lib/mjs/components/_classes/list/ListComponent.form.js +1 -1
- package/lib/mjs/components/_classes/list/ListComponent.js +18 -27
- package/lib/mjs/components/_classes/list/editForm/ListComponent.edit.data.js +9 -36
- package/lib/mjs/components/_classes/multivalue/Multivalue.js +13 -32
- package/lib/mjs/components/_classes/nested/NestedComponent.d.ts +1 -1
- package/lib/mjs/components/_classes/nested/NestedComponent.form.js +3 -3
- package/lib/mjs/components/_classes/nested/NestedComponent.js +33 -41
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +15 -20
- package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +17 -19
- package/lib/mjs/components/address/Address.d.ts +0 -1
- package/lib/mjs/components/address/Address.js +49 -60
- package/lib/mjs/components/address/editForm/Address.edit.data.js +2 -2
- package/lib/mjs/components/address/editForm/Address.edit.display.js +2 -2
- package/lib/mjs/components/address/editForm/Address.edit.provider.js +11 -53
- package/lib/mjs/components/alert/Alert.js +16 -22
- package/lib/mjs/components/button/Button.form.js +1 -1
- package/lib/mjs/components/button/Button.js +42 -65
- package/lib/mjs/components/button/editForm/Button.edit.display.js +9 -49
- package/lib/mjs/components/checkbox/Checkbox.d.ts +1 -1
- package/lib/mjs/components/checkbox/Checkbox.form.js +3 -3
- package/lib/mjs/components/checkbox/Checkbox.js +21 -29
- package/lib/mjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
- package/lib/mjs/components/checkbox/editForm/Checkbox.edit.display.js +3 -13
- package/lib/mjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
- package/lib/mjs/components/columns/Columns.form.js +1 -1
- package/lib/mjs/components/columns/Columns.js +12 -24
- package/lib/mjs/components/columns/editForm/Columns.edit.display.js +17 -17
- package/lib/mjs/components/container/Container.form.js +2 -2
- package/lib/mjs/components/container/Container.js +4 -6
- package/lib/mjs/components/container/editForm/Container.edit.data.js +3 -3
- package/lib/mjs/components/container/editForm/Container.edit.display.js +4 -4
- package/lib/mjs/components/content/Content.form.js +2 -4
- package/lib/mjs/components/content/Content.js +8 -10
- package/lib/mjs/components/content/editForm/Content.edit.display.js +10 -10
- package/lib/mjs/components/currency/Currency.form.js +3 -3
- package/lib/mjs/components/currency/Currency.js +10 -19
- package/lib/mjs/components/currency/editForm/Currency.edit.data.js +5 -5
- package/lib/mjs/components/currency/editForm/Currency.edit.display.js +8 -8
- package/lib/mjs/components/datagrid/DataGrid.form.js +3 -3
- package/lib/mjs/components/datagrid/DataGrid.js +41 -92
- package/lib/mjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
- package/lib/mjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
- package/lib/mjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
- package/lib/mjs/components/datamap/DataMap.form.js +2 -2
- package/lib/mjs/components/datamap/DataMap.js +33 -46
- package/lib/mjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
- package/lib/mjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
- package/lib/mjs/components/datetime/DateTime.form.js +5 -5
- package/lib/mjs/components/datetime/DateTime.js +16 -31
- package/lib/mjs/components/datetime/editForm/DateTime.edit.data.js +3 -4
- package/lib/mjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
- package/lib/mjs/components/datetime/editForm/DateTime.edit.display.js +17 -22
- package/lib/mjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
- package/lib/mjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
- package/lib/mjs/components/day/Day.form.js +5 -5
- package/lib/mjs/components/day/Day.js +58 -148
- package/lib/mjs/components/day/editForm/Day.edit.day.js +9 -13
- package/lib/mjs/components/day/editForm/Day.edit.display.js +7 -7
- package/lib/mjs/components/day/editForm/Day.edit.month.js +8 -12
- package/lib/mjs/components/day/editForm/Day.edit.validation.js +7 -7
- package/lib/mjs/components/day/editForm/Day.edit.year.js +8 -8
- package/lib/mjs/components/editgrid/EditGrid.form.js +2 -2
- package/lib/mjs/components/editgrid/EditGrid.js +92 -140
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +2 -7
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
- package/lib/mjs/components/email/Email.js +4 -4
- package/lib/mjs/components/email/editForm/Email.edit.display.js +3 -3
- package/lib/mjs/components/email/editForm/Email.edit.validation.js +6 -6
- package/lib/mjs/components/fieldset/Fieldset.form.js +1 -1
- package/lib/mjs/components/fieldset/Fieldset.js +2 -2
- package/lib/mjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
- package/lib/mjs/components/file/File.form.js +4 -4
- package/lib/mjs/components/file/File.js +89 -136
- package/lib/mjs/components/file/editForm/File.edit.display.js +5 -9
- package/lib/mjs/components/file/editForm/File.edit.file.js +53 -97
- package/lib/mjs/components/file/editForm/File.edit.validation.js +2 -2
- package/lib/mjs/components/form/Form.form.js +3 -3
- package/lib/mjs/components/form/Form.js +55 -68
- package/lib/mjs/components/form/editForm/Form.edit.data.js +3 -1
- package/lib/mjs/components/form/editForm/Form.edit.display.js +7 -6
- package/lib/mjs/components/form/editForm/Form.edit.form.js +8 -10
- package/lib/mjs/components/hidden/Hidden.form.js +4 -4
- package/lib/mjs/components/hidden/Hidden.js +2 -2
- package/lib/mjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
- package/lib/mjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
- package/lib/mjs/components/html/HTML.js +17 -23
- package/lib/mjs/components/html/editForm/HTML.edit.display.js +17 -17
- package/lib/mjs/components/html/editForm/HTML.edit.logic.js +2 -2
- package/lib/mjs/components/number/Number.form.js +3 -3
- package/lib/mjs/components/number/Number.js +12 -28
- package/lib/mjs/components/number/editForm/Number.edit.data.js +3 -3
- package/lib/mjs/components/number/editForm/Number.edit.display.js +4 -4
- package/lib/mjs/components/number/editForm/Number.edit.validation.js +9 -9
- package/lib/mjs/components/panel/Panel.form.js +1 -1
- package/lib/mjs/components/panel/Panel.js +2 -2
- package/lib/mjs/components/panel/editForm/Panel.edit.conditional.js +8 -6
- package/lib/mjs/components/panel/editForm/Panel.edit.display.js +29 -55
- package/lib/mjs/components/password/Password.form.js +3 -3
- package/lib/mjs/components/password/Password.js +2 -5
- package/lib/mjs/components/password/editForm/Password.edit.data.js +11 -11
- package/lib/mjs/components/password/editForm/Password.edit.display.js +3 -3
- package/lib/mjs/components/password/editForm/Password.edit.validation.js +3 -3
- package/lib/mjs/components/phonenumber/PhoneNumber.form.js +8 -8
- package/lib/mjs/components/phonenumber/PhoneNumber.js +3 -3
- package/lib/mjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
- package/lib/mjs/components/radio/Radio.form.js +3 -3
- package/lib/mjs/components/radio/Radio.js +30 -59
- package/lib/mjs/components/radio/editForm/Radio.edit.data.js +9 -23
- package/lib/mjs/components/radio/editForm/Radio.edit.display.js +6 -6
- package/lib/mjs/components/radio/editForm/Radio.edit.validation.js +2 -2
- package/lib/mjs/components/recaptcha/ReCaptcha.form.js +5 -5
- package/lib/mjs/components/recaptcha/ReCaptcha.js +8 -10
- package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
- package/lib/mjs/components/select/Select.form.js +3 -3
- package/lib/mjs/components/select/Select.js +145 -240
- package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.js +57 -191
- package/lib/mjs/components/select/editForm/Select.edit.display.js +2 -2
- package/lib/mjs/components/select/editForm/Select.edit.validation.js +4 -4
- package/lib/mjs/components/selectboxes/SelectBoxes.form.js +3 -3
- package/lib/mjs/components/selectboxes/SelectBoxes.js +16 -30
- package/lib/mjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
- package/lib/mjs/components/signature/Signature.form.js +3 -3
- package/lib/mjs/components/signature/Signature.js +16 -26
- package/lib/mjs/components/signature/editForm/Signature.edit.display.js +10 -19
- package/lib/mjs/components/survey/Survey.form.js +3 -3
- package/lib/mjs/components/survey/Survey.js +17 -30
- package/lib/mjs/components/survey/editForm/Survey.edit.data.js +11 -23
- package/lib/mjs/components/survey/editForm/Survey.edit.display.js +1 -1
- package/lib/mjs/components/survey/editForm/Survey.edit.validation.js +1 -1
- package/lib/mjs/components/table/Table.form.js +1 -1
- package/lib/mjs/components/table/Table.js +6 -8
- package/lib/mjs/components/table/editForm/Table.edit.display.js +22 -22
- package/lib/mjs/components/tabs/Tabs.form.js +1 -1
- package/lib/mjs/components/tabs/Tabs.js +9 -27
- package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +17 -21
- package/lib/mjs/components/tags/Tags.form.js +1 -1
- package/lib/mjs/components/tags/Tags.js +12 -28
- package/lib/mjs/components/tags/editForm/Tags.edit.data.js +7 -7
- package/lib/mjs/components/textarea/TextArea.form.js +2 -2
- package/lib/mjs/components/textarea/TextArea.js +51 -75
- package/lib/mjs/components/textarea/editForm/TextArea.edit.display.js +72 -96
- package/lib/mjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
- package/lib/mjs/components/textfield/TextField.form.js +3 -3
- package/lib/mjs/components/textfield/TextField.js +23 -34
- package/lib/mjs/components/textfield/editForm/TextField.edit.data.js +13 -15
- package/lib/mjs/components/textfield/editForm/TextField.edit.display.js +21 -31
- package/lib/mjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
- package/lib/mjs/components/time/Time.js +10 -17
- package/lib/mjs/components/time/editForm/Time.edit.display.js +2 -2
- package/lib/mjs/components/unknown/Unknown.form.js +5 -5
- package/lib/mjs/components/unknown/Unknown.js +2 -2
- package/lib/mjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
- package/lib/mjs/components/url/Url.form.js +3 -3
- package/lib/mjs/components/url/Url.js +2 -2
- package/lib/mjs/components/url/editForm/Url.edit.display.js +3 -3
- package/lib/mjs/components/url/editForm/Url.edit.validation.js +1 -1
- package/lib/mjs/components/well/Well.form.js +1 -1
- package/lib/mjs/components/well/Well.js +2 -2
- package/lib/mjs/components/well/editForm/Well.edit.display.js +10 -10
- package/lib/mjs/formio.form.d.ts +1 -2
- package/lib/mjs/formio.form.js +8 -10
- package/lib/mjs/i18n.d.ts +0 -4
- package/lib/mjs/i18n.js +3 -7
- package/lib/mjs/package.json +1 -1
- package/lib/mjs/pdf.image.d.ts +2 -0
- package/lib/mjs/pdf.image.js +94 -0
- package/lib/mjs/providers/address/AddressProvider.js +5 -8
- package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +3 -3
- package/lib/mjs/providers/address/GoogleAddressProvider.js +13 -24
- package/lib/mjs/providers/processor/fileProcessor.js +1 -3
- package/lib/mjs/providers/storage/azure.js +2 -5
- package/lib/mjs/providers/storage/dropbox.js +5 -4
- package/lib/mjs/providers/storage/googleDrive.js +4 -3
- package/lib/mjs/providers/storage/index.js +1 -1
- package/lib/mjs/providers/storage/indexeddb.js +6 -16
- package/lib/mjs/providers/storage/s3.js +8 -19
- package/lib/mjs/providers/storage/uploadAdapter.js +11 -17
- package/lib/mjs/providers/storage/url.js +11 -13
- package/lib/mjs/providers/storage/xhr.js +9 -17
- package/lib/mjs/templates/index.js +1 -1
- package/lib/mjs/translations/en.d.ts +2 -0
- package/lib/mjs/translations/en.js +9 -7
- package/lib/mjs/utils/ChoicesWrapper.js +2 -2
- package/lib/mjs/utils/builder.js +7 -31
- package/lib/mjs/utils/calendarUtils.js +5 -7
- package/lib/mjs/utils/conditionOperators/ConditionOperator.js +1 -1
- package/lib/mjs/utils/conditionOperators/DateGreaterThan.js +5 -16
- package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +1 -3
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +6 -10
- package/lib/mjs/utils/conditionOperators/index.js +1 -1
- package/lib/mjs/utils/formUtils.js +2 -2
- package/lib/mjs/utils/i18n.js +1 -7
- package/lib/mjs/utils/index.d.ts +1 -2
- package/lib/mjs/utils/index.js +3 -3
- package/lib/mjs/utils/jsonlogic/operators.d.ts +1 -0
- package/lib/mjs/utils/jsonlogic/operators.js +262 -0
- package/lib/mjs/utils/utils.d.ts +1 -10
- package/lib/mjs/utils/utils.js +91 -178
- package/lib/mjs/widgets/CalendarWidget.js +50 -67
- package/lib/mjs/widgets/InputWidget.js +4 -6
- package/lib/mjs/widgets/index.js +1 -1
- package/package.json +3 -3
- package/lib/cjs/translations/de.d.ts +0 -80
- package/lib/cjs/translations/de.js +0 -81
- package/lib/mjs/translations/de.d.ts +0 -80
- package/lib/mjs/translations/de.js +0 -79
|
@@ -9,7 +9,8 @@ class FormioUploadAdapter {
|
|
|
9
9
|
this.component = component;
|
|
10
10
|
}
|
|
11
11
|
upload() {
|
|
12
|
-
return this.loader.file
|
|
12
|
+
return this.loader.file
|
|
13
|
+
.then(file => new Promise((resolve, reject) => {
|
|
13
14
|
const { uploadStorage, uploadUrl, uploadOptions, uploadDir, fileKey } = this.component.component;
|
|
14
15
|
const uploadParams = [
|
|
15
16
|
uploadStorage,
|
|
@@ -21,23 +22,18 @@ class FormioUploadAdapter {
|
|
|
21
22
|
uploadOptions,
|
|
22
23
|
fileKey,
|
|
23
24
|
null,
|
|
24
|
-
null
|
|
25
|
+
null
|
|
25
26
|
];
|
|
26
|
-
this.fileService
|
|
27
|
-
.uploadFile(...uploadParams, () => this.component.emit('fileUploadingStart'))
|
|
28
|
-
.then((result) => {
|
|
27
|
+
this.fileService.uploadFile(...uploadParams, () => this.component.emit('fileUploadingStart')).then((result) => {
|
|
29
28
|
return this.fileService.downloadFile(result);
|
|
30
|
-
})
|
|
31
|
-
.then((result) => {
|
|
29
|
+
}).then((result) => {
|
|
32
30
|
return resolve({
|
|
33
|
-
default: result.url
|
|
31
|
+
default: result.url
|
|
34
32
|
});
|
|
35
|
-
})
|
|
36
|
-
.catch((err) => {
|
|
33
|
+
}).catch((err) => {
|
|
37
34
|
console.warn('An Error occured while uploading file', err);
|
|
38
35
|
reject(err);
|
|
39
|
-
})
|
|
40
|
-
.finally(() => {
|
|
36
|
+
}).finally(() => {
|
|
41
37
|
this.component.emit('fileUploadingEnd');
|
|
42
38
|
});
|
|
43
39
|
}));
|
|
@@ -50,11 +46,9 @@ class FormioUploadAdapter {
|
|
|
50
46
|
}
|
|
51
47
|
}
|
|
52
48
|
}
|
|
53
|
-
const getFormioUploadAdapterPlugin = (fileService, component) => {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return new FormioUploadAdapter(loader, fileService, component);
|
|
57
|
-
};
|
|
49
|
+
const getFormioUploadAdapterPlugin = (fileService, component) => (editor) => {
|
|
50
|
+
editor.plugins.get('FileRepository').createUploadAdapter = (loader) => {
|
|
51
|
+
return new FormioUploadAdapter(loader, fileService, component);
|
|
58
52
|
};
|
|
59
53
|
};
|
|
60
54
|
export { getFormioUploadAdapterPlugin };
|
|
@@ -26,7 +26,7 @@ function url(formio) {
|
|
|
26
26
|
const xhrRequest = (url, name, query, data, options, progressCallback, abortCallback) => {
|
|
27
27
|
return new Promise((resolve, reject) => {
|
|
28
28
|
const xhr = new XMLHttpRequest();
|
|
29
|
-
const json = typeof data === 'string';
|
|
29
|
+
const json = (typeof data === 'string');
|
|
30
30
|
const fd = new FormData();
|
|
31
31
|
if (typeof progressCallback === 'function') {
|
|
32
32
|
xhr.upload.onprogress = progressCallback;
|
|
@@ -44,16 +44,14 @@ function url(formio) {
|
|
|
44
44
|
// Need to test if xhr.response is decoded or not.
|
|
45
45
|
let respData = {};
|
|
46
46
|
try {
|
|
47
|
-
respData = typeof xhr.response === 'string' ? JSON.parse(xhr.response) : {};
|
|
48
|
-
respData = respData && respData.data ? respData.data : respData;
|
|
47
|
+
respData = (typeof xhr.response === 'string') ? JSON.parse(xhr.response) : {};
|
|
48
|
+
respData = (respData && respData.data) ? respData.data : respData;
|
|
49
49
|
}
|
|
50
|
-
catch (
|
|
50
|
+
catch (err) {
|
|
51
51
|
respData = {};
|
|
52
52
|
}
|
|
53
53
|
// Get the url of the file.
|
|
54
|
-
let respUrl = respData.hasOwnProperty('url')
|
|
55
|
-
? respData.url
|
|
56
|
-
: `${xhr.responseURL}/${name}`;
|
|
54
|
+
let respUrl = respData.hasOwnProperty('url') ? respData.url : `${xhr.responseURL}/${name}`;
|
|
57
55
|
// If they provide relative url, then prepend the url.
|
|
58
56
|
if (respUrl && respUrl[0] === '/') {
|
|
59
57
|
respUrl = `${url}${respUrl}`;
|
|
@@ -96,12 +94,12 @@ function url(formio) {
|
|
|
96
94
|
return xhrRequest(url, name, {
|
|
97
95
|
baseUrl: encodeURIComponent(formio.projectUrl),
|
|
98
96
|
project: form ? form.project : '',
|
|
99
|
-
form: form ? form._id : ''
|
|
97
|
+
form: form ? form._id : ''
|
|
100
98
|
}, {
|
|
101
99
|
[fileKey]: file,
|
|
102
100
|
name,
|
|
103
|
-
dir
|
|
104
|
-
}, options, progressCallback, abortCallback).then(
|
|
101
|
+
dir
|
|
102
|
+
}, options, progressCallback, abortCallback).then(response => {
|
|
105
103
|
// Store the project and form url along with the metadata.
|
|
106
104
|
response.data = response.data || {};
|
|
107
105
|
response.data.baseUrl = formio.projectUrl;
|
|
@@ -113,7 +111,7 @@ function url(formio) {
|
|
|
113
111
|
url: response.url,
|
|
114
112
|
size: file.size,
|
|
115
113
|
type: file.type,
|
|
116
|
-
data: response.data
|
|
114
|
+
data: response.data
|
|
117
115
|
};
|
|
118
116
|
});
|
|
119
117
|
};
|
|
@@ -147,11 +145,11 @@ function url(formio) {
|
|
|
147
145
|
if (formio.submissionId && file.data) {
|
|
148
146
|
file.data.submission = formio.submissionId;
|
|
149
147
|
}
|
|
150
|
-
return xhrRequest(file.url, file.name, {}, JSON.stringify(file)).then(
|
|
148
|
+
return xhrRequest(file.url, file.name, {}, JSON.stringify(file)).then(response => response.data);
|
|
151
149
|
}
|
|
152
150
|
// Return the original as there is nothing to do.
|
|
153
151
|
return Promise.resolve(file);
|
|
154
|
-
}
|
|
152
|
+
}
|
|
155
153
|
};
|
|
156
154
|
}
|
|
157
155
|
url.title = 'Url';
|
|
@@ -4,7 +4,7 @@ export const setXhrHeaders = (formio, xhr) => {
|
|
|
4
4
|
if (headers) {
|
|
5
5
|
const ValidHeaders = {
|
|
6
6
|
'Content-Disposition': true,
|
|
7
|
-
Authorization: true,
|
|
7
|
+
'Authorization': true,
|
|
8
8
|
};
|
|
9
9
|
for (const header in headers) {
|
|
10
10
|
if (ValidHeaders[header]) {
|
|
@@ -18,10 +18,7 @@ const XHR = {
|
|
|
18
18
|
return _trim(text, '/');
|
|
19
19
|
},
|
|
20
20
|
path(items) {
|
|
21
|
-
return items
|
|
22
|
-
.filter((item) => !!item)
|
|
23
|
-
.map(XHR.trim)
|
|
24
|
-
.join('/');
|
|
21
|
+
return items.filter(item => !!item).map(XHR.trim).join('/');
|
|
25
22
|
},
|
|
26
23
|
async upload(formio, type, xhrCallback, file, fileName, dir, progressCallback, groupPermissions, groupId, abortCallback, multipartOptions) {
|
|
27
24
|
// make request to Form.io server
|
|
@@ -31,21 +28,18 @@ const XHR = {
|
|
|
31
28
|
response = await fetch(`${formio.formUrl}/storage/${type}`, {
|
|
32
29
|
method: 'POST',
|
|
33
30
|
headers: {
|
|
34
|
-
Accept: 'application/json',
|
|
31
|
+
'Accept': 'application/json',
|
|
35
32
|
'Content-Type': 'application/json; charset=UTF-8',
|
|
36
33
|
...(token ? { 'x-jwt-token': token } : {}),
|
|
37
34
|
},
|
|
38
35
|
body: JSON.stringify({
|
|
39
|
-
name: XHR.path([
|
|
40
|
-
dir,
|
|
41
|
-
fileName,
|
|
42
|
-
]),
|
|
36
|
+
name: XHR.path([dir, fileName]),
|
|
43
37
|
size: file.size,
|
|
44
38
|
type: file.type,
|
|
45
39
|
groupPermissions,
|
|
46
40
|
groupId,
|
|
47
|
-
multipart: multipartOptions
|
|
48
|
-
})
|
|
41
|
+
multipart: multipartOptions
|
|
42
|
+
})
|
|
49
43
|
});
|
|
50
44
|
}
|
|
51
45
|
catch (err) {
|
|
@@ -73,8 +67,7 @@ const XHR = {
|
|
|
73
67
|
xhr.open(...params);
|
|
74
68
|
setXhrHeaders(formio, xhr);
|
|
75
69
|
};
|
|
76
|
-
Promise.resolve(xhrCallback(xhr, serverResponse, abortCallback))
|
|
77
|
-
.then((payload) => {
|
|
70
|
+
Promise.resolve(xhrCallback(xhr, serverResponse, abortCallback)).then((payload) => {
|
|
78
71
|
// if payload is nullish we can assume the provider took care of the entire upload process
|
|
79
72
|
if (!payload) {
|
|
80
73
|
return resolve(serverResponse);
|
|
@@ -113,9 +106,8 @@ const XHR = {
|
|
|
113
106
|
};
|
|
114
107
|
// Get the request and send it to the server.
|
|
115
108
|
xhr.send(payload);
|
|
116
|
-
})
|
|
117
|
-
.catch(reject);
|
|
109
|
+
}).catch(reject);
|
|
118
110
|
});
|
|
119
|
-
}
|
|
111
|
+
}
|
|
120
112
|
};
|
|
121
113
|
export default XHR;
|
|
@@ -4,6 +4,8 @@ export default {
|
|
|
4
4
|
invalidRowError: 'Invalid row. Please correct it or delete.',
|
|
5
5
|
invalidOption: '{{field}} is an invalid value.',
|
|
6
6
|
invalidDay: '{{field}} is not a valid day.',
|
|
7
|
+
alertMessageWithLabel: '{{label}}: {{message}}',
|
|
8
|
+
alertMessage: '{{message}}',
|
|
7
9
|
complete: 'Submission Complete',
|
|
8
10
|
error: 'Please fix the following errors before submitting.',
|
|
9
11
|
errorListHotkey: 'Press Ctrl + Alt + X to go back to the error list.',
|
|
@@ -12,7 +14,7 @@ export default {
|
|
|
12
14
|
required: '{{field}} is required',
|
|
13
15
|
unique: '{{field}} must be unique',
|
|
14
16
|
array: '{{field}} must be an array',
|
|
15
|
-
array_nonempty: '{{field}} must be a non-empty array',
|
|
17
|
+
array_nonempty: '{{field}} must be a non-empty array', // eslint-disable-line camelcase
|
|
16
18
|
nonarray: '{{field}} must not be an array',
|
|
17
19
|
select: '{{field}} contains an invalid selection',
|
|
18
20
|
pattern: '{{field}} does not match the pattern {{pattern}}',
|
|
@@ -28,11 +30,11 @@ export default {
|
|
|
28
30
|
minYear: '{{field}} should not contain year less than {{minYear}}',
|
|
29
31
|
minSelectedCount: 'You must select at least {{minCount}} items',
|
|
30
32
|
maxSelectedCount: 'You may only select up to {{maxCount}} items',
|
|
31
|
-
invalid_email: '{{field}} must be a valid email.',
|
|
32
|
-
invalid_url: '{{field}} must be a valid url.',
|
|
33
|
-
invalid_regex: '{{field}} does not match the pattern {{regex}}.',
|
|
34
|
-
invalid_date: '{{field}} is not a valid date.',
|
|
35
|
-
invalid_day: '{{field}} is not a valid day.',
|
|
33
|
+
invalid_email: '{{field}} must be a valid email.', // eslint-disable-line camelcase
|
|
34
|
+
invalid_url: '{{field}} must be a valid url.', // eslint-disable-line camelcase
|
|
35
|
+
invalid_regex: '{{field}} does not match the pattern {{regex}}.', // eslint-disable-line camelcase
|
|
36
|
+
invalid_date: '{{field}} is not a valid date.', // eslint-disable-line camelcase
|
|
37
|
+
invalid_day: '{{field}} is not a valid day.', // eslint-disable-line camelcase
|
|
36
38
|
invalidValueProperty: 'Invalid Value Property',
|
|
37
39
|
mask: '{{field}} does not match the mask.',
|
|
38
40
|
valueIsNotAvailable: '{{ field }} is an invalid value.',
|
|
@@ -75,5 +77,5 @@ export default {
|
|
|
75
77
|
requiredDayField: '{{ field }} is required',
|
|
76
78
|
requiredDayEmpty: '{{ field }} is required',
|
|
77
79
|
requiredMonthField: '{{ field }} is required',
|
|
78
|
-
requiredYearField: '{{ field }} is required'
|
|
80
|
+
requiredYearField: '{{ field }} is required'
|
|
79
81
|
};
|
|
@@ -30,7 +30,7 @@ class ChoicesWrapper extends Choices {
|
|
|
30
30
|
this._wasTap = true;
|
|
31
31
|
}
|
|
32
32
|
_onEnterKey(...args) {
|
|
33
|
-
const [event
|
|
33
|
+
const [event] = args;
|
|
34
34
|
// Prevent dropdown form opening when removeItemButton was pressed using 'Enter' on keyboard
|
|
35
35
|
if (event.target.className === 'choices__button') {
|
|
36
36
|
this.shouldOpenDropDown = false;
|
|
@@ -67,7 +67,7 @@ class ChoicesWrapper extends Choices {
|
|
|
67
67
|
groupId: choice.groupId,
|
|
68
68
|
customProperties: choice.customProperties,
|
|
69
69
|
placeholder: choice.placeholder,
|
|
70
|
-
keyCode: choice.keyCode
|
|
70
|
+
keyCode: choice.keyCode
|
|
71
71
|
});
|
|
72
72
|
this._triggerChange(choice.value);
|
|
73
73
|
}
|
package/lib/mjs/utils/builder.js
CHANGED
|
@@ -12,23 +12,12 @@ export default {
|
|
|
12
12
|
const formKeys = {};
|
|
13
13
|
eachComponent(container, (comp) => {
|
|
14
14
|
formKeys[comp.key] = true;
|
|
15
|
-
if ([
|
|
16
|
-
'address',
|
|
17
|
-
'container',
|
|
18
|
-
'datagrid',
|
|
19
|
-
'editgrid',
|
|
20
|
-
'dynamicWizard',
|
|
21
|
-
'tree',
|
|
22
|
-
].includes(comp.type) ||
|
|
23
|
-
comp.tree ||
|
|
24
|
-
comp.arrayTree) {
|
|
15
|
+
if (['address', 'container', 'datagrid', 'editgrid', 'dynamicWizard', 'tree'].includes(comp.type) || comp.tree || comp.arrayTree) {
|
|
25
16
|
return true;
|
|
26
17
|
}
|
|
27
18
|
}, true);
|
|
28
19
|
// Recurse into all child components.
|
|
29
|
-
eachComponent([
|
|
30
|
-
component,
|
|
31
|
-
], (component) => {
|
|
20
|
+
eachComponent([component], (component) => {
|
|
32
21
|
// Skip key uniquification if this component doesn't have a key.
|
|
33
22
|
if (!component.key) {
|
|
34
23
|
return;
|
|
@@ -39,16 +28,7 @@ export default {
|
|
|
39
28
|
changed = true;
|
|
40
29
|
}
|
|
41
30
|
formKeys[newKey] = true;
|
|
42
|
-
if ([
|
|
43
|
-
'address',
|
|
44
|
-
'container',
|
|
45
|
-
'datagrid',
|
|
46
|
-
'editgrid',
|
|
47
|
-
'dynamicWizard',
|
|
48
|
-
'tree',
|
|
49
|
-
].includes(component.type) ||
|
|
50
|
-
component.tree ||
|
|
51
|
-
component.arrayTree) {
|
|
31
|
+
if (['address', 'container', 'datagrid', 'editgrid', 'dynamicWizard', 'tree'].includes(component.type) || component.tree || component.arrayTree) {
|
|
52
32
|
return true;
|
|
53
33
|
}
|
|
54
34
|
}, true);
|
|
@@ -60,8 +40,8 @@ export default {
|
|
|
60
40
|
additionalShortcuts: {
|
|
61
41
|
button: [
|
|
62
42
|
'Enter',
|
|
63
|
-
'Esc'
|
|
64
|
-
]
|
|
43
|
+
'Esc'
|
|
44
|
+
]
|
|
65
45
|
},
|
|
66
46
|
/**
|
|
67
47
|
* Returns the alpha character shortcuts.
|
|
@@ -96,13 +76,9 @@ export default {
|
|
|
96
76
|
if (!component) {
|
|
97
77
|
return [];
|
|
98
78
|
}
|
|
99
|
-
return [
|
|
100
|
-
'',
|
|
101
|
-
]
|
|
102
|
-
.concat(_.difference(this.getAlphaShortcuts().concat(this.getAdditionalShortcuts(component.type)), this.getBindedShortcuts(form.components, component)))
|
|
103
|
-
.map((shortcut) => ({
|
|
79
|
+
return [''].concat(_.difference(this.getAlphaShortcuts().concat(this.getAdditionalShortcuts(component.type)), this.getBindedShortcuts(form.components, component))).map((shortcut) => ({
|
|
104
80
|
label: shortcut,
|
|
105
81
|
value: shortcut,
|
|
106
82
|
}));
|
|
107
|
-
}
|
|
83
|
+
}
|
|
108
84
|
};
|
|
@@ -8,7 +8,7 @@ export const CALENDAR_ERROR_MESSAGES = {
|
|
|
8
8
|
},
|
|
9
9
|
less(date, format) {
|
|
10
10
|
return `The entered date is less than ${date.format(format)}`;
|
|
11
|
-
}
|
|
11
|
+
}
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
14
|
* Builds the response for checkInvalidDate.
|
|
@@ -21,7 +21,7 @@ export const CALENDAR_ERROR_MESSAGES = {
|
|
|
21
21
|
function buildResponse(message, result) {
|
|
22
22
|
return {
|
|
23
23
|
message,
|
|
24
|
-
result
|
|
24
|
+
result
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
@@ -55,7 +55,7 @@ export function lessOrGreater(value, format, maxDate, minDate) {
|
|
|
55
55
|
}
|
|
56
56
|
return {
|
|
57
57
|
message,
|
|
58
|
-
result
|
|
58
|
+
result
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
@@ -73,11 +73,9 @@ export function checkInvalidDate(value, format, minDate, maxDate) {
|
|
|
73
73
|
const delimeters = value.match(/[^a-z0-9_]/gi);
|
|
74
74
|
const delimetersRegEx = new RegExp(delimeters.join('|'), 'gi');
|
|
75
75
|
const inputParts = value.replace(/_*/gi, '').split(delimetersRegEx);
|
|
76
|
-
const formatParts = format[1]
|
|
77
|
-
? format[1].split(delimetersRegEx)
|
|
78
|
-
: format[0].split(delimetersRegEx);
|
|
76
|
+
const formatParts = format[1] ? format[1].split(delimetersRegEx) : format[0].split(delimetersRegEx);
|
|
79
77
|
const timeIndex = _.findIndex(formatParts, (part, index) => part.length === 1 && index === formatParts.length - 1);
|
|
80
|
-
const yearIndex = _.findIndex(formatParts,
|
|
78
|
+
const yearIndex = _.findIndex(formatParts, part => part.match(/yyyy/gi));
|
|
81
79
|
if (inputParts[yearIndex] / 1000 < 1) {
|
|
82
80
|
return buildResponse(CALENDAR_ERROR_MESSAGES.INVALID, false);
|
|
83
81
|
}
|
|
@@ -16,7 +16,7 @@ export default class ConditionOperator {
|
|
|
16
16
|
getResult(options = {}) {
|
|
17
17
|
const { value } = options;
|
|
18
18
|
if (_.isArray(value)) {
|
|
19
|
-
return _.some(value,
|
|
19
|
+
return _.some(value, valueItem => this.execute({ ...options, value: valueItem }));
|
|
20
20
|
}
|
|
21
21
|
return this.execute(options);
|
|
22
22
|
}
|
|
@@ -8,15 +8,9 @@ export default class DateGeaterThan extends ConditionOperator {
|
|
|
8
8
|
return 'Greater Than';
|
|
9
9
|
}
|
|
10
10
|
getFormattedDates({ value, comparedValue, conditionTriggerComponent }) {
|
|
11
|
-
const hasValidationFormat = conditionTriggerComponent
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const date = hasValidationFormat
|
|
15
|
-
? moment(value, conditionTriggerComponent.getValidationFormat())
|
|
16
|
-
: moment(value);
|
|
17
|
-
const comparedDate = hasValidationFormat
|
|
18
|
-
? moment(comparedValue, conditionTriggerComponent.getValidationFormat())
|
|
19
|
-
: moment(comparedValue);
|
|
11
|
+
const hasValidationFormat = conditionTriggerComponent ? conditionTriggerComponent.getValidationFormat : null;
|
|
12
|
+
const date = hasValidationFormat ? moment(value, conditionTriggerComponent.getValidationFormat()) : moment(value);
|
|
13
|
+
const comparedDate = hasValidationFormat ? moment(comparedValue, conditionTriggerComponent.getValidationFormat()) : moment(comparedValue);
|
|
20
14
|
return { date, comparedDate };
|
|
21
15
|
}
|
|
22
16
|
execute(options, functionName = 'isAfter') {
|
|
@@ -28,15 +22,10 @@ export default class DateGeaterThan extends ConditionOperator {
|
|
|
28
22
|
if (instance?.root?.getComponent) {
|
|
29
23
|
conditionTriggerComponent = instance.root.getComponent(path);
|
|
30
24
|
}
|
|
31
|
-
if (conditionTriggerComponent &&
|
|
32
|
-
conditionTriggerComponent.isPartialDay &&
|
|
33
|
-
conditionTriggerComponent.isPartialDay(value)) {
|
|
25
|
+
if (conditionTriggerComponent && conditionTriggerComponent.isPartialDay && conditionTriggerComponent.isPartialDay(value)) {
|
|
34
26
|
return false;
|
|
35
27
|
}
|
|
36
|
-
const { date, comparedDate } = this.getFormattedDates({
|
|
37
|
-
...options,
|
|
38
|
-
conditionTriggerComponent,
|
|
39
|
-
});
|
|
28
|
+
const { date, comparedDate } = this.getFormattedDates({ ...options, conditionTriggerComponent });
|
|
40
29
|
return date[functionName](comparedDate);
|
|
41
30
|
}
|
|
42
31
|
}
|
|
@@ -14,9 +14,7 @@ export default class IsEmptyValue extends ConditionOperator {
|
|
|
14
14
|
const isEmptyValue = _.isEmpty(_.isNumber(value) ? String(value) : value);
|
|
15
15
|
if (instance?.root?.getComponent) {
|
|
16
16
|
const conditionTriggerComponent = instance.root.getComponent(path);
|
|
17
|
-
return conditionTriggerComponent?.isEmpty
|
|
18
|
-
? conditionTriggerComponent.isEmpty()
|
|
19
|
-
: isEmptyValue;
|
|
17
|
+
return conditionTriggerComponent?.isEmpty ? conditionTriggerComponent.isEmpty() : isEmptyValue;
|
|
20
18
|
}
|
|
21
19
|
return isEmptyValue;
|
|
22
20
|
}
|
|
@@ -9,22 +9,18 @@ export default class IsEqualTo extends ConditionOperator {
|
|
|
9
9
|
return 'Is Equal To';
|
|
10
10
|
}
|
|
11
11
|
execute({ value, comparedValue, instance, path }) {
|
|
12
|
-
if ((value || value === false) &&
|
|
13
|
-
comparedValue &&
|
|
14
|
-
typeof value !== typeof comparedValue &&
|
|
15
|
-
_.isString(comparedValue)) {
|
|
12
|
+
if ((value || value === false) && comparedValue && typeof value !== typeof comparedValue && _.isString(comparedValue)) {
|
|
16
13
|
try {
|
|
17
14
|
comparedValue = JSON.parse(comparedValue);
|
|
18
15
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
16
|
+
// eslint-disable-next-line no-empty
|
|
17
|
+
catch (e) { }
|
|
22
18
|
}
|
|
23
19
|
if (instance?.root?.getComponent) {
|
|
24
20
|
const conditionTriggerComponent = instance.root.getComponent(path);
|
|
25
|
-
if (conditionTriggerComponent
|
|
26
|
-
isSelectResourceWithObjectValue(conditionTriggerComponent.component)
|
|
27
|
-
conditionTriggerComponent.component?.template) {
|
|
21
|
+
if (conditionTriggerComponent
|
|
22
|
+
&& isSelectResourceWithObjectValue(conditionTriggerComponent.component)
|
|
23
|
+
&& conditionTriggerComponent.component?.template) {
|
|
28
24
|
return compareSelectResourceWithObjectTypeValues(value, comparedValue, conditionTriggerComponent.component);
|
|
29
25
|
}
|
|
30
26
|
}
|
|
@@ -34,6 +34,6 @@ const ConditionOperators = {
|
|
|
34
34
|
[`${LessThanOrEqual.operatorKey}`]: LessThanOrEqual,
|
|
35
35
|
[`${GreaterThanOrEqual.operatorKey}`]: GreaterThanOrEqual,
|
|
36
36
|
[`${IsDateEqual.operatorKey}`]: IsDateEqual,
|
|
37
|
-
[`${IsNotDateEqual.operatorKey}`]: IsNotDateEqual
|
|
37
|
+
[`${IsNotDateEqual.operatorKey}`]: IsNotDateEqual
|
|
38
38
|
};
|
|
39
39
|
export default ConditionOperators;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Utils } from '@formio/core';
|
|
2
|
-
const { flattenComponents, guid, uniqueName, MODEL_TYPES_OF_KNOWN_COMPONENTS, getModelType, getComponentPath, setComponentScope, resetComponentScope, isComponentNestedDataType, componentPath, getComponentPaths, componentMatches, getBestMatch, getComponentFromPath, getComponentValue, findComponents, eachComponentDataAsync, eachComponentData, getComponentKey, getContextualRowPath, getContextualRowData, componentInfo, eachComponent, eachComponentAsync, getComponentData, getComponentActualValue, isLayoutComponent, matchComponent, getComponent, searchComponents, removeComponent, hasCondition, parseFloatExt, formatAsCurrency, escapeRegExCharacters, getValue, getStrings, generateFormChange, applyFormChanges, findComponent, getEmptyValue, isComponentDataEmpty, isSelectResourceWithObjectValue, compareSelectResourceWithObjectTypeValues, getItemTemplateKeys
|
|
3
|
-
export { flattenComponents, guid, uniqueName, MODEL_TYPES_OF_KNOWN_COMPONENTS, getModelType, getComponentPath, setComponentScope, resetComponentScope, isComponentNestedDataType, componentPath, getComponentPaths, componentMatches, getBestMatch, getComponentFromPath, getComponentValue, findComponents, eachComponentDataAsync, eachComponentData, getComponentKey, getContextualRowPath, getContextualRowData, componentInfo, eachComponent, eachComponentAsync, getComponentData, getComponentActualValue, isLayoutComponent, matchComponent, getComponent, searchComponents, removeComponent, hasCondition, parseFloatExt, formatAsCurrency, escapeRegExCharacters, getValue, getStrings, generateFormChange, applyFormChanges, findComponent, getEmptyValue, isComponentDataEmpty, isSelectResourceWithObjectValue, compareSelectResourceWithObjectTypeValues, getItemTemplateKeys
|
|
2
|
+
const { flattenComponents, guid, uniqueName, MODEL_TYPES_OF_KNOWN_COMPONENTS, getModelType, getComponentPath, setComponentScope, resetComponentScope, isComponentNestedDataType, componentPath, getComponentPaths, componentMatches, getBestMatch, getComponentFromPath, getComponentValue, findComponents, eachComponentDataAsync, eachComponentData, getComponentKey, getContextualRowPath, getContextualRowData, componentInfo, eachComponent, eachComponentAsync, getComponentData, getComponentActualValue, isLayoutComponent, matchComponent, getComponent, searchComponents, removeComponent, hasCondition, parseFloatExt, formatAsCurrency, escapeRegExCharacters, getValue, getStrings, generateFormChange, applyFormChanges, findComponent, getEmptyValue, isComponentDataEmpty, isSelectResourceWithObjectValue, compareSelectResourceWithObjectTypeValues, getItemTemplateKeys } = Utils;
|
|
3
|
+
export { flattenComponents, guid, uniqueName, MODEL_TYPES_OF_KNOWN_COMPONENTS, getModelType, getComponentPath, setComponentScope, resetComponentScope, isComponentNestedDataType, componentPath, getComponentPaths, componentMatches, getBestMatch, getComponentFromPath, getComponentValue, findComponents, eachComponentDataAsync, eachComponentData, getComponentKey, getContextualRowPath, getContextualRowData, componentInfo, eachComponent, eachComponentAsync, getComponentData, getComponentActualValue, isLayoutComponent, matchComponent, getComponent, searchComponents, removeComponent, hasCondition, parseFloatExt, formatAsCurrency, escapeRegExCharacters, getValue, getStrings, generateFormChange, applyFormChanges, findComponent, getEmptyValue, isComponentDataEmpty, isSelectResourceWithObjectValue, compareSelectResourceWithObjectTypeValues, getItemTemplateKeys };
|
package/lib/mjs/utils/i18n.js
CHANGED
|
@@ -53,13 +53,7 @@ export class I18n {
|
|
|
53
53
|
}
|
|
54
54
|
dir(lang = '') {
|
|
55
55
|
lang = lang || this.language;
|
|
56
|
-
const rtls = [
|
|
57
|
-
'ar',
|
|
58
|
-
'he',
|
|
59
|
-
'fa',
|
|
60
|
-
'ps',
|
|
61
|
-
'ur',
|
|
62
|
-
];
|
|
56
|
+
const rtls = ['ar', 'he', 'fa', 'ps', 'ur'];
|
|
63
57
|
return rtls.includes(lang) ? 'rtl' : 'ltr';
|
|
64
58
|
}
|
|
65
59
|
static createInstance() {
|
package/lib/mjs/utils/index.d.ts
CHANGED
|
@@ -110,7 +110,7 @@ declare const FormioUtils: {
|
|
|
110
110
|
decimalSeparator: string;
|
|
111
111
|
};
|
|
112
112
|
getNumberDecimalLimit(component: import("@formio/core").Component, defaultLimit: number): number;
|
|
113
|
-
getCurrencyAffixes({ currency, decimalLimit, decimalSeparator, lang }: {
|
|
113
|
+
getCurrencyAffixes({ currency, decimalLimit, decimalSeparator, lang, }: {
|
|
114
114
|
currency: string;
|
|
115
115
|
decimalLimit: number;
|
|
116
116
|
decimalSeparator: string;
|
|
@@ -149,7 +149,6 @@ declare const FormioUtils: {
|
|
|
149
149
|
isPromise(value: any): boolean;
|
|
150
150
|
getFocusableElements(element: HTMLElement): NodeList<HTMLElement>;
|
|
151
151
|
getComponentSavedTypes(fullSchema: import("@formio/core").Component): string[] | null;
|
|
152
|
-
hasEncodedTimezone(value: string): boolean;
|
|
153
152
|
firstNonNil: any;
|
|
154
153
|
componentValueTypes: {
|
|
155
154
|
number: string;
|
package/lib/mjs/utils/index.js
CHANGED
|
@@ -11,10 +11,10 @@ const FormioUtils = {
|
|
|
11
11
|
interpolate,
|
|
12
12
|
ConditionOperators,
|
|
13
13
|
_,
|
|
14
|
-
moment
|
|
14
|
+
moment
|
|
15
15
|
};
|
|
16
|
-
if (typeof
|
|
17
|
-
|
|
16
|
+
if (typeof global === 'object') {
|
|
17
|
+
global.FormioUtils = FormioUtils;
|
|
18
18
|
}
|
|
19
19
|
export { FormioUtils as Utils };
|
|
20
20
|
export { Evaluator, registerEvaluator, DefaultEvaluator };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const lodashOperators: string[];
|