@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
|
@@ -11,14 +11,14 @@ export const AddressComponentMode = {
|
|
|
11
11
|
Manual: 'manual',
|
|
12
12
|
};
|
|
13
13
|
const RemoveValueIconHiddenClass = 'address-autocomplete-remove-value-icon--hidden';
|
|
14
|
-
const ChildConditional =
|
|
14
|
+
const ChildConditional = 'show = _.get(instance, \'parent.manualMode\', false);';
|
|
15
15
|
export default class AddressComponent extends ContainerComponent {
|
|
16
16
|
static schema(...extend) {
|
|
17
17
|
return ContainerComponent.schema({
|
|
18
18
|
type: 'address',
|
|
19
19
|
label: 'Address',
|
|
20
20
|
key: 'address',
|
|
21
|
-
switchToManualModeLabel:
|
|
21
|
+
switchToManualModeLabel: 'Can\'t find address? Switch to manual mode.',
|
|
22
22
|
provider: '',
|
|
23
23
|
manualModeViewString: '',
|
|
24
24
|
hideLabel: false,
|
|
@@ -78,9 +78,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
78
78
|
}
|
|
79
79
|
static savedValueTypes(schema) {
|
|
80
80
|
schema = schema || {};
|
|
81
|
-
return
|
|
82
|
-
componentValueTypes.object,
|
|
83
|
-
]);
|
|
81
|
+
return getComponentSavedTypes(schema) || [componentValueTypes.object];
|
|
84
82
|
}
|
|
85
83
|
static get builderInfo() {
|
|
86
84
|
return {
|
|
@@ -98,10 +96,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
98
96
|
static get conditionOperatorsSettings() {
|
|
99
97
|
return {
|
|
100
98
|
...super.conditionOperatorsSettings,
|
|
101
|
-
operators: [
|
|
102
|
-
'isEmpty',
|
|
103
|
-
'isNotEmpty',
|
|
104
|
-
],
|
|
99
|
+
operators: ['isEmpty', 'isNotEmpty'],
|
|
105
100
|
};
|
|
106
101
|
}
|
|
107
102
|
mergeSchema(component = {}) {
|
|
@@ -144,7 +139,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
144
139
|
else if (map) {
|
|
145
140
|
// Fallback to legacy version where Google Maps was the only provider.
|
|
146
141
|
provider = this.component.provider = GoogleAddressProvider.name;
|
|
147
|
-
const { key, region } = map;
|
|
142
|
+
const { key, region, } = map;
|
|
148
143
|
if (key) {
|
|
149
144
|
_.set(providerOptions, 'params.key', key);
|
|
150
145
|
}
|
|
@@ -201,14 +196,10 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
201
196
|
}
|
|
202
197
|
get address() {
|
|
203
198
|
if (this.isMultiple) {
|
|
204
|
-
return _.isArray(this.dataValue)
|
|
205
|
-
? this.dataValue
|
|
206
|
-
: [
|
|
207
|
-
this.dataValue,
|
|
208
|
-
];
|
|
199
|
+
return _.isArray(this.dataValue) ? this.dataValue : [this.dataValue];
|
|
209
200
|
}
|
|
210
201
|
// Manual mode is not implementing for multiple value
|
|
211
|
-
return this.manualModeEnabled && this.dataValue ? this.dataValue.address : this.dataValue;
|
|
202
|
+
return (this.manualModeEnabled && this.dataValue) ? this.dataValue.address : this.dataValue;
|
|
212
203
|
}
|
|
213
204
|
set address(value) {
|
|
214
205
|
if (this.manualModeEnabled && !this.isMultiple && !_.isEqual(value, this.emptyValue)) {
|
|
@@ -221,11 +212,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
221
212
|
get defaultValue() {
|
|
222
213
|
let defaultValue = super.defaultValue;
|
|
223
214
|
if (this.isMultiple) {
|
|
224
|
-
defaultValue = _.isArray(defaultValue)
|
|
225
|
-
? defaultValue
|
|
226
|
-
: [
|
|
227
|
-
defaultValue,
|
|
228
|
-
];
|
|
215
|
+
defaultValue = _.isArray(defaultValue) ? defaultValue : [defaultValue];
|
|
229
216
|
}
|
|
230
217
|
return defaultValue;
|
|
231
218
|
}
|
|
@@ -241,14 +228,12 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
241
228
|
get dataValue() {
|
|
242
229
|
const resultValue = _.get(this._data, this.path);
|
|
243
230
|
if (!_.isArray(resultValue) && this.component.multiple) {
|
|
244
|
-
return [
|
|
245
|
-
resultValue,
|
|
246
|
-
];
|
|
231
|
+
return [resultValue];
|
|
247
232
|
}
|
|
248
233
|
return super.dataValue;
|
|
249
234
|
}
|
|
250
235
|
normalizeValue(value) {
|
|
251
|
-
return this.manualModeEnabled && this.isValueInLegacyFormat(value)
|
|
236
|
+
return (this.manualModeEnabled && this.isValueInLegacyFormat(value))
|
|
252
237
|
? {
|
|
253
238
|
mode: AddressComponentMode.Autocomplete,
|
|
254
239
|
address: value,
|
|
@@ -260,7 +245,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
260
245
|
if (this.manualMode) {
|
|
261
246
|
this.restoreComponentsContext();
|
|
262
247
|
}
|
|
263
|
-
if (changed ||
|
|
248
|
+
if (changed || !_.isEmpty(value) && flags.fromSubmission) {
|
|
264
249
|
this.redraw();
|
|
265
250
|
}
|
|
266
251
|
return changed;
|
|
@@ -281,33 +266,39 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
281
266
|
return 'removeRow';
|
|
282
267
|
}
|
|
283
268
|
get modeSwitcher() {
|
|
284
|
-
return this.refs
|
|
269
|
+
return this.refs
|
|
270
|
+
? (this.refs[AddressComponent.modeSwitcherRef] || null)
|
|
271
|
+
: null;
|
|
285
272
|
}
|
|
286
273
|
get providerOptions() {
|
|
287
274
|
return {
|
|
288
|
-
params: {
|
|
289
|
-
subscriptionKey: this.component.subscriptionKey,
|
|
290
|
-
key: this.component.apiKey,
|
|
291
|
-
...this.component.params,
|
|
292
|
-
},
|
|
275
|
+
params: { subscriptionKey: this.component.subscriptionKey, key: this.component.apiKey, ...this.component.params },
|
|
293
276
|
url: this.component.url,
|
|
294
277
|
queryProperty: this.component.queryProperty,
|
|
295
278
|
responseProperty: this.component.responseProperty,
|
|
296
279
|
displayValueProperty: this.component.displayValueProperty,
|
|
297
|
-
autocompleteOptions: this.component.autocompleteOptions
|
|
280
|
+
autocompleteOptions: this.component.autocompleteOptions
|
|
298
281
|
};
|
|
299
282
|
}
|
|
300
283
|
get removeValueIcon() {
|
|
301
|
-
return this.refs
|
|
284
|
+
return this.refs
|
|
285
|
+
? (this.refs[AddressComponent.removeValueIconRef] || null)
|
|
286
|
+
: null;
|
|
302
287
|
}
|
|
303
288
|
get searchInput() {
|
|
304
|
-
return this.refs
|
|
289
|
+
return this.refs
|
|
290
|
+
? (this.refs[AddressComponent.searchInputRef] || null)
|
|
291
|
+
: null;
|
|
305
292
|
}
|
|
306
293
|
get addRowButton() {
|
|
307
|
-
return this.refs
|
|
294
|
+
return this.refs
|
|
295
|
+
? (this.refs[AddressComponent.addRowButtonRef] || null)
|
|
296
|
+
: null;
|
|
308
297
|
}
|
|
309
298
|
get removeRowButton() {
|
|
310
|
-
return this.refs
|
|
299
|
+
return this.refs
|
|
300
|
+
? (this.refs[AddressComponent.removeRowButtonRef] || null)
|
|
301
|
+
: null;
|
|
311
302
|
}
|
|
312
303
|
get searchInputAttributes() {
|
|
313
304
|
const attr = {
|
|
@@ -318,7 +309,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
318
309
|
tabindex: this.component.tabindex || 0,
|
|
319
310
|
};
|
|
320
311
|
if (this.component.placeholder) {
|
|
321
|
-
|
|
312
|
+
attr.placeholder = this.t(this.component.placeholder), { _userInput: true };
|
|
322
313
|
}
|
|
323
314
|
if (this.disabled) {
|
|
324
315
|
attr.disabled = 'disabled';
|
|
@@ -381,14 +372,12 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
381
372
|
onSelectAddress(address, element, index) {
|
|
382
373
|
if (this.isMultiple) {
|
|
383
374
|
this.address[index] = address;
|
|
384
|
-
this.address = [
|
|
385
|
-
...this.address,
|
|
386
|
-
];
|
|
375
|
+
this.address = [...this.address];
|
|
387
376
|
}
|
|
388
377
|
else {
|
|
389
378
|
this.address = address;
|
|
390
379
|
}
|
|
391
|
-
this.triggerChange({
|
|
380
|
+
this.triggerChange?.({
|
|
392
381
|
modified: true,
|
|
393
382
|
});
|
|
394
383
|
if (element) {
|
|
@@ -401,7 +390,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
401
390
|
super.redraw();
|
|
402
391
|
}
|
|
403
392
|
attach(element) {
|
|
404
|
-
const result = (this.builderMode || this.manualMode ? super.attach : Field.prototype.attach).call(this, element);
|
|
393
|
+
const result = ((this.builderMode || this.manualMode) ? super.attach : Field.prototype.attach).call(this, element);
|
|
405
394
|
if (!this.builderMode) {
|
|
406
395
|
if (!this.provider && this.component.provider) {
|
|
407
396
|
const provider = this.component.provider;
|
|
@@ -458,13 +447,13 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
458
447
|
}
|
|
459
448
|
});
|
|
460
449
|
if (this.addRowButton) {
|
|
461
|
-
this.addEventListener(this.addRowButton, 'click',
|
|
450
|
+
this.addEventListener(this.addRowButton, 'click', event => {
|
|
462
451
|
event.preventDefault();
|
|
463
452
|
this.addRow();
|
|
464
453
|
});
|
|
465
454
|
}
|
|
466
455
|
this.removeRowButton.forEach((removeRowButton, index) => {
|
|
467
|
-
this.addEventListener(removeRowButton, 'click',
|
|
456
|
+
this.addEventListener(removeRowButton, 'click', event => {
|
|
468
457
|
event.preventDefault();
|
|
469
458
|
this.removeValue(index);
|
|
470
459
|
});
|
|
@@ -482,7 +471,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
482
471
|
if (this.manualMode) {
|
|
483
472
|
this.restoreComponentsContext();
|
|
484
473
|
}
|
|
485
|
-
this.triggerChange({
|
|
474
|
+
this.triggerChange?.({
|
|
486
475
|
modified: true,
|
|
487
476
|
});
|
|
488
477
|
}
|
|
@@ -506,7 +495,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
506
495
|
}
|
|
507
496
|
});
|
|
508
497
|
});
|
|
509
|
-
_.each(this.refs.searchInput || [],
|
|
498
|
+
_.each(this.refs.searchInput || [], el => this.addFocusBlurEvents(el));
|
|
510
499
|
}
|
|
511
500
|
return result;
|
|
512
501
|
}
|
|
@@ -514,8 +503,9 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
514
503
|
component.customConditional = ChildConditional;
|
|
515
504
|
}
|
|
516
505
|
redraw() {
|
|
517
|
-
const modeSwitcherInFocus = this.modeSwitcher && document.activeElement === this.modeSwitcher;
|
|
518
|
-
return super.redraw()
|
|
506
|
+
const modeSwitcherInFocus = (this.modeSwitcher && (document.activeElement === this.modeSwitcher));
|
|
507
|
+
return super.redraw()
|
|
508
|
+
.then((result) => {
|
|
519
509
|
if (modeSwitcherInFocus && this.modeSwitcher) {
|
|
520
510
|
this.modeSwitcher.focus();
|
|
521
511
|
}
|
|
@@ -524,7 +514,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
524
514
|
}
|
|
525
515
|
clearAddress(element, index) {
|
|
526
516
|
if (!this.isEmpty()) {
|
|
527
|
-
this.triggerChange();
|
|
517
|
+
this.triggerChange?.();
|
|
528
518
|
}
|
|
529
519
|
if (this.address?.[index]) {
|
|
530
520
|
this.address[index] = this.emptyValue;
|
|
@@ -538,7 +528,9 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
538
528
|
this.updateRemoveIcon(index);
|
|
539
529
|
}
|
|
540
530
|
getDisplayValue(value = this.address) {
|
|
541
|
-
return this.provider && !this.manualMode
|
|
531
|
+
return (this.provider && !this.manualMode)
|
|
532
|
+
? this.provider.getDisplayValue(value)
|
|
533
|
+
: '';
|
|
542
534
|
}
|
|
543
535
|
validateMultiple() {
|
|
544
536
|
return this.isMultiple;
|
|
@@ -560,13 +552,13 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
560
552
|
return '';
|
|
561
553
|
}
|
|
562
554
|
const normalizedValue = this.normalizeValue(value);
|
|
563
|
-
const { address, mode } = this.manualModeEnabled
|
|
555
|
+
const { address, mode, } = (this.manualModeEnabled
|
|
564
556
|
? normalizedValue
|
|
565
557
|
: {
|
|
566
558
|
address: normalizedValue,
|
|
567
559
|
mode: AddressComponentMode.Autocomplete,
|
|
568
|
-
};
|
|
569
|
-
const valueInManualMode = mode === AddressComponentMode.Manual;
|
|
560
|
+
});
|
|
561
|
+
const valueInManualMode = (mode === AddressComponentMode.Manual);
|
|
570
562
|
if (this.provider && !valueInManualMode) {
|
|
571
563
|
return this.getDisplayValue(address);
|
|
572
564
|
}
|
|
@@ -580,12 +572,9 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
580
572
|
}
|
|
581
573
|
return this.getComponents()
|
|
582
574
|
.filter((component) => component.hasValue(address))
|
|
583
|
-
.map((component) => [
|
|
584
|
-
component,
|
|
585
|
-
|
|
586
|
-
])
|
|
587
|
-
.filter(([component, componentValue,]) => !component.isEmpty(componentValue))
|
|
588
|
-
.map(([component, componentValue,]) => component.getValueAsString(componentValue, options))
|
|
575
|
+
.map((component) => [component, _.get(address, component.key)])
|
|
576
|
+
.filter(([component, componentValue]) => !component.isEmpty(componentValue))
|
|
577
|
+
.map(([component, componentValue]) => component.getValueAsString(componentValue, options))
|
|
589
578
|
.join(', ');
|
|
590
579
|
}
|
|
591
580
|
return super.getValueAsString(address, options);
|
|
@@ -11,11 +11,11 @@ export default [
|
|
|
11
11
|
placeholder: 'Default Value',
|
|
12
12
|
tooltip: 'The Default Value will be the value for this field, before user interaction. Having a default value will override the placeholder text.',
|
|
13
13
|
input: true,
|
|
14
|
-
customDefaultValue: ({ instance }) => instance.manualModeEnabled
|
|
14
|
+
customDefaultValue: ({ instance }) => (instance.manualModeEnabled
|
|
15
15
|
? {
|
|
16
16
|
mode: 'autocomplete',
|
|
17
17
|
address: {},
|
|
18
18
|
}
|
|
19
|
-
: {},
|
|
19
|
+
: {}),
|
|
20
20
|
},
|
|
21
21
|
];
|
|
@@ -13,7 +13,7 @@ export default [
|
|
|
13
13
|
type: 'textfield',
|
|
14
14
|
input: true,
|
|
15
15
|
key: 'switchToManualModeLabel',
|
|
16
|
-
defaultValue:
|
|
16
|
+
defaultValue: 'Can\'t find address? Switch to manual mode.',
|
|
17
17
|
label: 'Switch To Manual Mode Label',
|
|
18
18
|
placeholder: 'Switch To Manual Mode Label',
|
|
19
19
|
tooltip: 'The label for the checkbox used to switch to manual mode.',
|
|
@@ -28,7 +28,7 @@ export default [
|
|
|
28
28
|
input: true,
|
|
29
29
|
key: 'disableClearIcon',
|
|
30
30
|
label: 'Disable Clear Icon',
|
|
31
|
-
tooltip:
|
|
31
|
+
tooltip: 'Clear Icon allows easily clear component\'s value.',
|
|
32
32
|
},
|
|
33
33
|
{
|
|
34
34
|
type: 'textfield',
|
|
@@ -13,9 +13,7 @@ export default [
|
|
|
13
13
|
dataSrc: 'custom',
|
|
14
14
|
data: {
|
|
15
15
|
custom() {
|
|
16
|
-
return _.values(Formio.Providers.getProviders('address'))
|
|
17
|
-
.sort()
|
|
18
|
-
.map((provider) => ({
|
|
16
|
+
return _.values(Formio.Providers.getProviders('address')).sort().map((provider) => ({
|
|
19
17
|
label: provider.displayName,
|
|
20
18
|
value: provider.name,
|
|
21
19
|
}));
|
|
@@ -28,7 +26,7 @@ export default [
|
|
|
28
26
|
{
|
|
29
27
|
type: 'textfield',
|
|
30
28
|
input: true,
|
|
31
|
-
key:
|
|
29
|
+
key: "subscriptionKey",
|
|
32
30
|
label: 'Subscription Key',
|
|
33
31
|
placeholder: 'Enter Subscription Key',
|
|
34
32
|
weight: 10,
|
|
@@ -37,12 +35,7 @@ export default [
|
|
|
37
35
|
required: true,
|
|
38
36
|
},
|
|
39
37
|
conditional: {
|
|
40
|
-
json: {
|
|
41
|
-
'===': [
|
|
42
|
-
{ var: 'data.provider' },
|
|
43
|
-
'azure',
|
|
44
|
-
],
|
|
45
|
-
},
|
|
38
|
+
json: { '===': [{ var: 'data.provider' }, 'azure'] },
|
|
46
39
|
},
|
|
47
40
|
},
|
|
48
41
|
{
|
|
@@ -57,12 +50,7 @@ export default [
|
|
|
57
50
|
required: true,
|
|
58
51
|
},
|
|
59
52
|
conditional: {
|
|
60
|
-
json: {
|
|
61
|
-
'===': [
|
|
62
|
-
{ var: 'data.provider' },
|
|
63
|
-
'custom',
|
|
64
|
-
],
|
|
65
|
-
},
|
|
53
|
+
json: { '===': [{ var: 'data.provider' }, 'custom'] },
|
|
66
54
|
},
|
|
67
55
|
},
|
|
68
56
|
{
|
|
@@ -75,12 +63,7 @@ export default [
|
|
|
75
63
|
weight: 20,
|
|
76
64
|
tooltip: 'Which query param should be used to pass as a search string. Default is `query`.',
|
|
77
65
|
conditional: {
|
|
78
|
-
json: {
|
|
79
|
-
'===': [
|
|
80
|
-
{ var: 'data.provider' },
|
|
81
|
-
'custom',
|
|
82
|
-
],
|
|
83
|
-
},
|
|
66
|
+
json: { '===': [{ var: 'data.provider' }, 'custom'] },
|
|
84
67
|
},
|
|
85
68
|
},
|
|
86
69
|
{
|
|
@@ -92,12 +75,7 @@ export default [
|
|
|
92
75
|
weight: 30,
|
|
93
76
|
tooltip: 'The property within the response data, where iterable addresses reside. For example: results.',
|
|
94
77
|
conditional: {
|
|
95
|
-
json: {
|
|
96
|
-
'===': [
|
|
97
|
-
{ var: 'data.provider' },
|
|
98
|
-
'custom',
|
|
99
|
-
],
|
|
100
|
-
},
|
|
78
|
+
json: { '===': [{ var: 'data.provider' }, 'custom'] },
|
|
101
79
|
},
|
|
102
80
|
},
|
|
103
81
|
{
|
|
@@ -109,12 +87,7 @@ export default [
|
|
|
109
87
|
weight: 40,
|
|
110
88
|
tooltip: 'The property of each address in the response to use as the display value.',
|
|
111
89
|
conditional: {
|
|
112
|
-
json: {
|
|
113
|
-
'===': [
|
|
114
|
-
{ var: 'data.provider' },
|
|
115
|
-
'custom',
|
|
116
|
-
],
|
|
117
|
-
},
|
|
90
|
+
json: { '===': [{ var: 'data.provider' }, 'custom'] },
|
|
118
91
|
},
|
|
119
92
|
},
|
|
120
93
|
{
|
|
@@ -129,12 +102,7 @@ export default [
|
|
|
129
102
|
as: 'json',
|
|
130
103
|
tooltip: 'Additional query params can be specified here in a way of JSON object.',
|
|
131
104
|
conditional: {
|
|
132
|
-
json: {
|
|
133
|
-
'===': [
|
|
134
|
-
{ var: 'data.provider' },
|
|
135
|
-
'custom',
|
|
136
|
-
],
|
|
137
|
-
},
|
|
105
|
+
json: { '===': [{ var: 'data.provider' }, 'custom'] },
|
|
138
106
|
},
|
|
139
107
|
},
|
|
140
108
|
{
|
|
@@ -149,12 +117,7 @@ export default [
|
|
|
149
117
|
required: true,
|
|
150
118
|
},
|
|
151
119
|
conditional: {
|
|
152
|
-
json: {
|
|
153
|
-
'===': [
|
|
154
|
-
{ var: 'data.provider' },
|
|
155
|
-
'google',
|
|
156
|
-
],
|
|
157
|
-
},
|
|
120
|
+
json: { '===': [{ var: 'data.provider' }, 'google'] },
|
|
158
121
|
},
|
|
159
122
|
},
|
|
160
123
|
{
|
|
@@ -168,14 +131,9 @@ export default [
|
|
|
168
131
|
rows: 5,
|
|
169
132
|
as: 'json',
|
|
170
133
|
editor: 'ace',
|
|
171
|
-
tooltip:
|
|
134
|
+
tooltip: 'Specify Google Maps Autocomplete options used for address searching as JSON object. Follow the <a href =\'https://developers.google.com/maps/documentation/javascript/places-autocomplete\' target=\'_blank\'>link</a> for available options',
|
|
172
135
|
conditional: {
|
|
173
|
-
json: {
|
|
174
|
-
'===': [
|
|
175
|
-
{ var: 'data.provider' },
|
|
176
|
-
'google',
|
|
177
|
-
],
|
|
178
|
-
},
|
|
136
|
+
json: { '===': [{ var: 'data.provider' }, 'google'] },
|
|
179
137
|
},
|
|
180
138
|
},
|
|
181
139
|
{
|
|
@@ -10,7 +10,7 @@ export default class Alert {
|
|
|
10
10
|
}
|
|
11
11
|
get refsNames() {
|
|
12
12
|
return {
|
|
13
|
-
messageRef: 'multiple'
|
|
13
|
+
messageRef: 'multiple'
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
16
|
get alertTypes() {
|
|
@@ -18,15 +18,11 @@ export default class Alert {
|
|
|
18
18
|
error: 'danger',
|
|
19
19
|
success: 'success',
|
|
20
20
|
info: 'info',
|
|
21
|
-
warning: 'warning'
|
|
21
|
+
warning: 'warning'
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
24
|
showErrors(errors = [], triggerEvent = false, options = {}) {
|
|
25
|
-
errors = _.isArray(errors)
|
|
26
|
-
? errors
|
|
27
|
-
: [
|
|
28
|
-
errors,
|
|
29
|
-
];
|
|
25
|
+
errors = _.isArray(errors) ? errors : [errors];
|
|
30
26
|
const messagesList = this.createMessagesList('error', errors);
|
|
31
27
|
this.showAlert('error', messagesList, options);
|
|
32
28
|
if (triggerEvent) {
|
|
@@ -41,7 +37,7 @@ export default class Alert {
|
|
|
41
37
|
}
|
|
42
38
|
else {
|
|
43
39
|
messageElement = this.parentComponent.ce('p', {
|
|
44
|
-
ref: 'messageRef'
|
|
40
|
+
ref: 'messageRef'
|
|
45
41
|
});
|
|
46
42
|
}
|
|
47
43
|
this.showAlert(type, messageElement, options);
|
|
@@ -57,7 +53,7 @@ export default class Alert {
|
|
|
57
53
|
this.parentComponent.setContent(p, this.parentComponent.t('error'));
|
|
58
54
|
const ul = this.parentComponent.ce('ul');
|
|
59
55
|
const messagesList = document.createDocumentFragment();
|
|
60
|
-
errors.forEach(
|
|
56
|
+
errors.forEach(err => this.appendErrorToList(err, ul));
|
|
61
57
|
p.appendChild(ul);
|
|
62
58
|
messagesList.appendChild(p);
|
|
63
59
|
return messagesList;
|
|
@@ -77,7 +73,7 @@ export default class Alert {
|
|
|
77
73
|
this.clear();
|
|
78
74
|
}
|
|
79
75
|
if (messagesList) {
|
|
80
|
-
const { id = `${type}-list-${this.parentComponent.id}`, customClasses = `alert alert-${alertType}
|
|
76
|
+
const { id = `${type}-list-${this.parentComponent.id}`, customClasses = `alert alert-${alertType}` } = options;
|
|
81
77
|
this.alert = this.parentComponent.ce('div', { id, class: customClasses });
|
|
82
78
|
if (messagesList instanceof HTMLElement) {
|
|
83
79
|
this.parentComponent.appendTo(messagesList, this.alert);
|
|
@@ -100,19 +96,19 @@ export default class Alert {
|
|
|
100
96
|
(e) => {
|
|
101
97
|
const key = e.currentTarget.dataset.componentKey;
|
|
102
98
|
this.focusOnComponent(key);
|
|
103
|
-
}
|
|
99
|
+
}
|
|
104
100
|
],
|
|
105
101
|
keypress: [
|
|
106
102
|
...keyPressListeners,
|
|
107
103
|
(e) => {
|
|
108
104
|
const key = e.currentTarget.dataset.componentKey;
|
|
109
105
|
this.focusOnComponent(key);
|
|
110
|
-
}
|
|
111
|
-
]
|
|
106
|
+
}
|
|
107
|
+
]
|
|
112
108
|
};
|
|
113
109
|
if (this.refs.messageRef?.length) {
|
|
114
|
-
this.refs.messageRef.forEach(
|
|
115
|
-
Object.entries(customEvents).forEach(([event, listeners
|
|
110
|
+
this.refs.messageRef.forEach(el => {
|
|
111
|
+
Object.entries(customEvents).forEach(([event, listeners]) => {
|
|
116
112
|
listeners.forEach((listener) => this.parentComponent.addEventListener(el, event, listener));
|
|
117
113
|
this.eventListenersKeys.push(event);
|
|
118
114
|
});
|
|
@@ -122,23 +118,21 @@ export default class Alert {
|
|
|
122
118
|
clear() {
|
|
123
119
|
try {
|
|
124
120
|
if (this.refs.messageRef?.length) {
|
|
125
|
-
this.refs.messageRef.forEach(
|
|
126
|
-
this.eventListenersKeys.forEach(
|
|
121
|
+
this.refs.messageRef.forEach(el => {
|
|
122
|
+
this.eventListenersKeys.forEach(event => this.parentComponent.removeEventListener(el, event));
|
|
127
123
|
});
|
|
128
124
|
}
|
|
129
125
|
this.refs = {};
|
|
130
126
|
this.parentComponent.removeChildFrom(this.alert, this.container);
|
|
131
127
|
this.alert = null;
|
|
132
128
|
}
|
|
133
|
-
catch (
|
|
129
|
+
catch (err) {
|
|
134
130
|
// ignore
|
|
135
131
|
}
|
|
136
132
|
}
|
|
137
133
|
focusOnComponent(keyOrPath) {
|
|
138
134
|
if (keyOrPath) {
|
|
139
|
-
const path = this.parentComponent._parentPath
|
|
140
|
-
? keyOrPath.replace(this.parentComponent._parentPath, '')
|
|
141
|
-
: keyOrPath;
|
|
135
|
+
const path = this.parentComponent._parentPath ? keyOrPath.replace(this.parentComponent._parentPath, '') : keyOrPath;
|
|
142
136
|
const component = this.parentComponent.root?.getComponent(path, null, keyOrPath);
|
|
143
137
|
if (component && _.isFunction(component.focus)) {
|
|
144
138
|
component.focus();
|
|
@@ -156,7 +150,7 @@ export default class Alert {
|
|
|
156
150
|
style: 'cursor: pointer',
|
|
157
151
|
ref: 'messageRef',
|
|
158
152
|
tabIndex: 0,
|
|
159
|
-
'aria-label': `${message}. Click to navigate to the field with following error
|
|
153
|
+
'aria-label': `${message}. Click to navigate to the field with following error.`
|
|
160
154
|
};
|
|
161
155
|
const li = this.parentComponent.ce('li', params);
|
|
162
156
|
this.parentComponent.setContent(li, message);
|