@formio/js 5.2.3 → 5.2.4-rc.0
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 +161 -50
- 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 +158 -49
- package/dist/formio.form.js +152 -108
- 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 +161 -50
- package/dist/formio.full.js +401 -227
- 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 +51 -18
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +1 -1
- package/dist/formio.utils.js +47 -14
- 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 +3 -2
- package/lib/cjs/Element.js +27 -21
- package/lib/cjs/Embed.js +74 -40
- package/lib/cjs/EventEmitter.js +1 -1
- package/lib/cjs/Form.d.ts +371 -341
- package/lib/cjs/Form.js +153 -39
- package/lib/cjs/FormBuilder.d.ts +3 -3
- package/lib/cjs/FormBuilder.js +2 -3
- package/lib/cjs/Formio.js +26 -23
- package/lib/cjs/InlineEmbed.js +23 -17
- package/lib/cjs/PDF.d.ts +1 -0
- package/lib/cjs/PDF.js +18 -15
- package/lib/cjs/PDFBuilder.js +51 -36
- package/lib/cjs/Webform.d.ts +8 -366
- package/lib/cjs/Webform.js +176 -235
- package/lib/cjs/WebformBuilder.js +217 -144
- package/lib/cjs/Wizard.js +92 -62
- package/lib/cjs/WizardBuilder.js +27 -19
- package/lib/cjs/addons/FormioAddon.js +1 -1
- package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +59 -57
- package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +24 -16
- package/lib/cjs/addons/index.js +3 -3
- package/lib/cjs/components/Components.js +0 -4
- package/lib/cjs/components/_classes/component/Component.form.js +11 -11
- package/lib/cjs/components/_classes/component/Component.js +298 -179
- package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.js +2 -4
- package/lib/cjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
- package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +9 -11
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.d.ts +37 -0
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.js +39 -25
- package/lib/cjs/components/_classes/component/editForm/Component.edit.display.js +47 -29
- package/lib/cjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
- package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +5 -7
- package/lib/cjs/components/_classes/component/editForm/Component.edit.validation.js +37 -34
- package/lib/cjs/components/_classes/component/editForm/utils.js +12 -16
- package/lib/cjs/components/_classes/componentModal/ComponentModal.js +6 -6
- package/lib/cjs/components/_classes/field/Field.js +7 -1
- package/lib/cjs/components/_classes/input/Input.js +30 -26
- package/lib/cjs/components/_classes/list/ListComponent.form.js +1 -1
- package/lib/cjs/components/_classes/list/ListComponent.js +27 -18
- package/lib/cjs/components/_classes/list/editForm/ListComponent.edit.data.js +36 -9
- package/lib/cjs/components/_classes/multivalue/Multivalue.js +32 -13
- package/lib/cjs/components/_classes/nested/NestedComponent.form.js +3 -3
- package/lib/cjs/components/_classes/nested/NestedComponent.js +36 -32
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +19 -14
- package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +19 -17
- package/lib/cjs/components/address/Address.js +52 -45
- 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 +53 -11
- package/lib/cjs/components/alert/Alert.js +21 -15
- package/lib/cjs/components/button/Button.form.js +1 -1
- package/lib/cjs/components/button/Button.js +50 -27
- package/lib/cjs/components/button/editForm/Button.edit.display.js +49 -9
- 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 +28 -20
- package/lib/cjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
- package/lib/cjs/components/checkbox/editForm/Checkbox.edit.display.js +13 -3
- 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 +24 -12
- 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 +6 -4
- 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 +4 -2
- package/lib/cjs/components/content/Content.js +10 -8
- 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 +19 -10
- 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 +89 -38
- 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 +44 -31
- 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 +30 -15
- package/lib/cjs/components/datetime/editForm/DateTime.edit.data.js +4 -3
- package/lib/cjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
- package/lib/cjs/components/datetime/editForm/DateTime.edit.display.js +22 -17
- 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 +146 -56
- package/lib/cjs/components/day/editForm/Day.edit.day.js +13 -9
- package/lib/cjs/components/day/editForm/Day.edit.display.js +7 -7
- package/lib/cjs/components/day/editForm/Day.edit.month.js +12 -8
- 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 +137 -89
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +7 -2
- 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 +126 -80
- package/lib/cjs/components/file/editForm/File.edit.display.js +9 -5
- package/lib/cjs/components/file/editForm/File.edit.file.d.ts +37 -16
- package/lib/cjs/components/file/editForm/File.edit.file.js +169 -72
- 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 +67 -51
- package/lib/cjs/components/form/editForm/Form.edit.data.js +1 -3
- package/lib/cjs/components/form/editForm/Form.edit.display.js +6 -7
- package/lib/cjs/components/form/editForm/Form.edit.form.js +11 -9
- 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 +23 -17
- 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 +27 -11
- 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 +5 -7
- package/lib/cjs/components/panel/editForm/Panel.edit.display.js +55 -29
- package/lib/cjs/components/password/Password.form.js +3 -3
- package/lib/cjs/components/password/Password.js +5 -2
- 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 +55 -26
- package/lib/cjs/components/radio/editForm/Radio.edit.data.js +23 -9
- 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 +7 -5
- 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 +235 -129
- package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.js +191 -57
- 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 +31 -15
- 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 +25 -15
- package/lib/cjs/components/signature/editForm/Signature.edit.display.js +19 -10
- package/lib/cjs/components/survey/Survey.form.js +3 -3
- package/lib/cjs/components/survey/Survey.js +30 -17
- package/lib/cjs/components/survey/editForm/Survey.edit.data.js +23 -11
- 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 -5
- 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 +26 -8
- package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +21 -17
- package/lib/cjs/components/tags/Tags.form.js +1 -1
- package/lib/cjs/components/tags/Tags.js +28 -12
- 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 +63 -45
- package/lib/cjs/components/textarea/editForm/TextArea.edit.display.js +96 -72
- 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 +32 -21
- package/lib/cjs/components/textfield/editForm/TextField.edit.data.js +15 -13
- package/lib/cjs/components/textfield/editForm/TextField.edit.display.js +31 -21
- package/lib/cjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
- package/lib/cjs/components/time/Time.js +17 -10
- 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 +2 -1
- package/lib/cjs/formio.form.js +38 -12
- package/lib/cjs/i18n.d.ts +4 -0
- package/lib/cjs/i18n.js +7 -3
- package/lib/cjs/package.json +1 -1
- package/lib/cjs/providers/address/AddressProvider.js +8 -5
- package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +3 -3
- package/lib/cjs/providers/address/GoogleAddressProvider.js +24 -13
- package/lib/cjs/providers/processor/fileProcessor.js +3 -1
- package/lib/cjs/providers/storage/azure.js +5 -2
- package/lib/cjs/providers/storage/dropbox.js +4 -5
- package/lib/cjs/providers/storage/googleDrive.js +3 -4
- package/lib/cjs/providers/storage/index.js +1 -1
- package/lib/cjs/providers/storage/indexeddb.js +16 -6
- package/lib/cjs/providers/storage/s3.js +17 -6
- package/lib/cjs/providers/storage/uploadAdapter.js +17 -11
- package/lib/cjs/providers/storage/url.js +13 -11
- package/lib/cjs/providers/storage/xhr.js +17 -9
- package/lib/cjs/templates/index.js +1 -1
- package/lib/cjs/translations/de.d.ts +80 -0
- package/lib/cjs/translations/de.js +81 -0
- package/lib/cjs/translations/en.d.ts +0 -2
- package/lib/cjs/translations/en.js +7 -9
- package/lib/cjs/utils/ChoicesWrapper.js +2 -2
- package/lib/cjs/utils/builder.js +31 -7
- package/lib/cjs/utils/calendarUtils.js +7 -5
- package/lib/cjs/utils/conditionOperators/ConditionOperator.js +1 -1
- package/lib/cjs/utils/conditionOperators/DateGreaterThan.js +12 -4
- package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +3 -1
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +10 -6
- package/lib/cjs/utils/conditionOperators/index.js +1 -1
- package/lib/cjs/utils/formUtils.js +1 -1
- package/lib/cjs/utils/i18n.js +7 -1
- package/lib/cjs/utils/index.d.ts +2 -1
- package/lib/cjs/utils/index.js +2 -2
- package/lib/cjs/utils/utils.d.ts +10 -1
- package/lib/cjs/utils/utils.js +175 -92
- package/lib/cjs/widgets/CalendarWidget.js +66 -49
- package/lib/cjs/widgets/InputWidget.js +6 -4
- package/lib/cjs/widgets/index.js +1 -1
- package/lib/mjs/CDN.js +12 -12
- package/lib/mjs/Element.d.ts +3 -2
- package/lib/mjs/Element.js +27 -21
- package/lib/mjs/Embed.js +76 -42
- package/lib/mjs/EventEmitter.js +1 -1
- package/lib/mjs/Form.d.ts +371 -341
- package/lib/mjs/Form.js +142 -126
- package/lib/mjs/FormBuilder.d.ts +3 -3
- package/lib/mjs/FormBuilder.js +2 -3
- package/lib/mjs/Formio.js +26 -23
- package/lib/mjs/InlineEmbed.js +23 -17
- package/lib/mjs/PDF.d.ts +1 -0
- package/lib/mjs/PDF.js +18 -15
- package/lib/mjs/PDFBuilder.js +51 -36
- package/lib/mjs/Webform.d.ts +8 -366
- package/lib/mjs/Webform.js +183 -250
- package/lib/mjs/WebformBuilder.js +220 -147
- package/lib/mjs/Wizard.js +93 -63
- package/lib/mjs/WizardBuilder.js +27 -19
- package/lib/mjs/addons/FormioAddon.js +1 -1
- package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +59 -57
- package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +24 -16
- package/lib/mjs/addons/index.js +3 -3
- package/lib/mjs/components/Components.js +0 -4
- package/lib/mjs/components/_classes/component/Component.form.js +11 -11
- package/lib/mjs/components/_classes/component/Component.js +303 -184
- package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.js +2 -4
- package/lib/mjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
- package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +9 -11
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.d.ts +37 -0
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.js +39 -25
- package/lib/mjs/components/_classes/component/editForm/Component.edit.display.js +47 -29
- package/lib/mjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
- package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +5 -7
- package/lib/mjs/components/_classes/component/editForm/Component.edit.validation.js +37 -34
- package/lib/mjs/components/_classes/component/editForm/utils.js +12 -16
- package/lib/mjs/components/_classes/componentModal/ComponentModal.js +2 -2
- package/lib/mjs/components/_classes/field/Field.js +8 -2
- package/lib/mjs/components/_classes/input/Input.js +27 -23
- package/lib/mjs/components/_classes/list/ListComponent.form.js +1 -1
- package/lib/mjs/components/_classes/list/ListComponent.js +27 -18
- package/lib/mjs/components/_classes/list/editForm/ListComponent.edit.data.js +36 -9
- package/lib/mjs/components/_classes/multivalue/Multivalue.js +32 -13
- package/lib/mjs/components/_classes/nested/NestedComponent.form.js +3 -3
- package/lib/mjs/components/_classes/nested/NestedComponent.js +32 -28
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +20 -15
- package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +19 -17
- package/lib/mjs/components/address/Address.js +57 -46
- 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 +53 -11
- package/lib/mjs/components/alert/Alert.js +22 -16
- package/lib/mjs/components/button/Button.form.js +1 -1
- package/lib/mjs/components/button/Button.js +51 -28
- package/lib/mjs/components/button/editForm/Button.edit.display.js +49 -9
- 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 +29 -21
- package/lib/mjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
- package/lib/mjs/components/checkbox/editForm/Checkbox.edit.display.js +13 -3
- 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 +24 -12
- 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 +6 -4
- 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 +4 -2
- package/lib/mjs/components/content/Content.js +10 -8
- 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 +19 -10
- 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 +90 -39
- 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 +44 -31
- 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 +31 -16
- package/lib/mjs/components/datetime/editForm/DateTime.edit.data.js +4 -3
- package/lib/mjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
- package/lib/mjs/components/datetime/editForm/DateTime.edit.display.js +22 -17
- 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 +147 -57
- package/lib/mjs/components/day/editForm/Day.edit.day.js +13 -9
- package/lib/mjs/components/day/editForm/Day.edit.display.js +7 -7
- package/lib/mjs/components/day/editForm/Day.edit.month.js +12 -8
- 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 +138 -90
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +7 -2
- 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 +131 -84
- package/lib/mjs/components/file/editForm/File.edit.display.js +9 -5
- package/lib/mjs/components/file/editForm/File.edit.file.d.ts +37 -16
- package/lib/mjs/components/file/editForm/File.edit.file.js +169 -72
- 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 +67 -51
- package/lib/mjs/components/form/editForm/Form.edit.data.js +1 -3
- package/lib/mjs/components/form/editForm/Form.edit.display.js +6 -7
- package/lib/mjs/components/form/editForm/Form.edit.form.js +10 -8
- 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 +23 -17
- 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 +28 -12
- 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 +6 -8
- package/lib/mjs/components/panel/editForm/Panel.edit.display.js +55 -29
- package/lib/mjs/components/password/Password.form.js +3 -3
- package/lib/mjs/components/password/Password.js +5 -2
- 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 +56 -27
- package/lib/mjs/components/radio/editForm/Radio.edit.data.js +23 -9
- 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 +7 -5
- 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 +240 -134
- package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.js +191 -57
- 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 +32 -16
- 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 +25 -15
- package/lib/mjs/components/signature/editForm/Signature.edit.display.js +19 -10
- package/lib/mjs/components/survey/Survey.form.js +3 -3
- package/lib/mjs/components/survey/Survey.js +30 -17
- package/lib/mjs/components/survey/editForm/Survey.edit.data.js +23 -11
- 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 +7 -5
- 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 +26 -8
- package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +21 -17
- package/lib/mjs/components/tags/Tags.form.js +1 -1
- package/lib/mjs/components/tags/Tags.js +28 -12
- 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 +75 -51
- package/lib/mjs/components/textarea/editForm/TextArea.edit.display.js +96 -72
- 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 +34 -23
- package/lib/mjs/components/textfield/editForm/TextField.edit.data.js +15 -13
- package/lib/mjs/components/textfield/editForm/TextField.edit.display.js +31 -21
- package/lib/mjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
- package/lib/mjs/components/time/Time.js +17 -10
- 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 +2 -1
- package/lib/mjs/formio.form.js +10 -8
- package/lib/mjs/i18n.d.ts +4 -0
- package/lib/mjs/i18n.js +7 -3
- package/lib/mjs/package.json +1 -1
- package/lib/mjs/providers/address/AddressProvider.js +8 -5
- package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +3 -3
- package/lib/mjs/providers/address/GoogleAddressProvider.js +24 -13
- package/lib/mjs/providers/processor/fileProcessor.js +3 -1
- package/lib/mjs/providers/storage/azure.js +5 -2
- package/lib/mjs/providers/storage/dropbox.js +4 -5
- package/lib/mjs/providers/storage/googleDrive.js +3 -4
- package/lib/mjs/providers/storage/index.js +1 -1
- package/lib/mjs/providers/storage/indexeddb.js +16 -6
- package/lib/mjs/providers/storage/s3.js +19 -8
- package/lib/mjs/providers/storage/uploadAdapter.js +17 -11
- package/lib/mjs/providers/storage/url.js +13 -11
- package/lib/mjs/providers/storage/xhr.js +17 -9
- package/lib/mjs/templates/index.js +1 -1
- package/lib/mjs/translations/de.d.ts +80 -0
- package/lib/mjs/translations/de.js +79 -0
- package/lib/mjs/translations/en.d.ts +0 -2
- package/lib/mjs/translations/en.js +7 -9
- package/lib/mjs/utils/ChoicesWrapper.js +2 -2
- package/lib/mjs/utils/builder.js +31 -7
- package/lib/mjs/utils/calendarUtils.js +7 -5
- package/lib/mjs/utils/conditionOperators/ConditionOperator.js +1 -1
- package/lib/mjs/utils/conditionOperators/DateGreaterThan.js +16 -5
- package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +3 -1
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +10 -6
- package/lib/mjs/utils/conditionOperators/index.js +1 -1
- package/lib/mjs/utils/formUtils.js +2 -2
- package/lib/mjs/utils/i18n.js +7 -1
- package/lib/mjs/utils/index.d.ts +2 -1
- package/lib/mjs/utils/index.js +3 -3
- package/lib/mjs/utils/utils.d.ts +10 -1
- package/lib/mjs/utils/utils.js +178 -91
- package/lib/mjs/widgets/CalendarWidget.js +67 -50
- package/lib/mjs/widgets/InputWidget.js +6 -4
- package/lib/mjs/widgets/index.js +1 -1
- package/package.json +3 -3
- package/lib/cjs/pdf.image.d.ts +0 -2
- package/lib/cjs/pdf.image.js +0 -94
- package/lib/cjs/utils/jsonlogic/operators.d.ts +0 -1
- package/lib/cjs/utils/jsonlogic/operators.js +0 -265
- package/lib/mjs/pdf.image.d.ts +0 -2
- package/lib/mjs/pdf.image.js +0 -94
- package/lib/mjs/utils/jsonlogic/operators.d.ts +0 -1
- package/lib/mjs/utils/jsonlogic/operators.js +0 -262
|
@@ -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,7 +78,9 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
78
78
|
}
|
|
79
79
|
static savedValueTypes(schema) {
|
|
80
80
|
schema = schema || {};
|
|
81
|
-
return getComponentSavedTypes(schema) || [
|
|
81
|
+
return (getComponentSavedTypes(schema) || [
|
|
82
|
+
componentValueTypes.object,
|
|
83
|
+
]);
|
|
82
84
|
}
|
|
83
85
|
static get builderInfo() {
|
|
84
86
|
return {
|
|
@@ -96,7 +98,10 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
96
98
|
static get conditionOperatorsSettings() {
|
|
97
99
|
return {
|
|
98
100
|
...super.conditionOperatorsSettings,
|
|
99
|
-
operators: [
|
|
101
|
+
operators: [
|
|
102
|
+
'isEmpty',
|
|
103
|
+
'isNotEmpty',
|
|
104
|
+
],
|
|
100
105
|
};
|
|
101
106
|
}
|
|
102
107
|
mergeSchema(component = {}) {
|
|
@@ -139,7 +144,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
139
144
|
else if (map) {
|
|
140
145
|
// Fallback to legacy version where Google Maps was the only provider.
|
|
141
146
|
provider = this.component.provider = GoogleAddressProvider.name;
|
|
142
|
-
const { key, region
|
|
147
|
+
const { key, region } = map;
|
|
143
148
|
if (key) {
|
|
144
149
|
_.set(providerOptions, 'params.key', key);
|
|
145
150
|
}
|
|
@@ -196,10 +201,14 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
196
201
|
}
|
|
197
202
|
get address() {
|
|
198
203
|
if (this.isMultiple) {
|
|
199
|
-
return _.isArray(this.dataValue)
|
|
204
|
+
return _.isArray(this.dataValue)
|
|
205
|
+
? this.dataValue
|
|
206
|
+
: [
|
|
207
|
+
this.dataValue,
|
|
208
|
+
];
|
|
200
209
|
}
|
|
201
210
|
// Manual mode is not implementing for multiple value
|
|
202
|
-
return
|
|
211
|
+
return this.manualModeEnabled && this.dataValue ? this.dataValue.address : this.dataValue;
|
|
203
212
|
}
|
|
204
213
|
set address(value) {
|
|
205
214
|
if (this.manualModeEnabled && !this.isMultiple && !_.isEqual(value, this.emptyValue)) {
|
|
@@ -212,7 +221,11 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
212
221
|
get defaultValue() {
|
|
213
222
|
let defaultValue = super.defaultValue;
|
|
214
223
|
if (this.isMultiple) {
|
|
215
|
-
defaultValue = _.isArray(defaultValue)
|
|
224
|
+
defaultValue = _.isArray(defaultValue)
|
|
225
|
+
? defaultValue
|
|
226
|
+
: [
|
|
227
|
+
defaultValue,
|
|
228
|
+
];
|
|
216
229
|
}
|
|
217
230
|
return defaultValue;
|
|
218
231
|
}
|
|
@@ -228,12 +241,14 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
228
241
|
get dataValue() {
|
|
229
242
|
const resultValue = _.get(this._data, this.path);
|
|
230
243
|
if (!_.isArray(resultValue) && this.component.multiple) {
|
|
231
|
-
return [
|
|
244
|
+
return [
|
|
245
|
+
resultValue,
|
|
246
|
+
];
|
|
232
247
|
}
|
|
233
248
|
return super.dataValue;
|
|
234
249
|
}
|
|
235
250
|
normalizeValue(value) {
|
|
236
|
-
return
|
|
251
|
+
return this.manualModeEnabled && this.isValueInLegacyFormat(value)
|
|
237
252
|
? {
|
|
238
253
|
mode: AddressComponentMode.Autocomplete,
|
|
239
254
|
address: value,
|
|
@@ -245,7 +260,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
245
260
|
if (this.manualMode) {
|
|
246
261
|
this.restoreComponentsContext();
|
|
247
262
|
}
|
|
248
|
-
if (changed || !_.isEmpty(value) && flags.fromSubmission) {
|
|
263
|
+
if (changed || (!_.isEmpty(value) && flags.fromSubmission)) {
|
|
249
264
|
this.redraw();
|
|
250
265
|
}
|
|
251
266
|
return changed;
|
|
@@ -266,39 +281,33 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
266
281
|
return 'removeRow';
|
|
267
282
|
}
|
|
268
283
|
get modeSwitcher() {
|
|
269
|
-
return this.refs
|
|
270
|
-
? (this.refs[AddressComponent.modeSwitcherRef] || null)
|
|
271
|
-
: null;
|
|
284
|
+
return this.refs ? this.refs[AddressComponent.modeSwitcherRef] || null : null;
|
|
272
285
|
}
|
|
273
286
|
get providerOptions() {
|
|
274
287
|
return {
|
|
275
|
-
params: {
|
|
288
|
+
params: {
|
|
289
|
+
subscriptionKey: this.component.subscriptionKey,
|
|
290
|
+
key: this.component.apiKey,
|
|
291
|
+
...this.component.params,
|
|
292
|
+
},
|
|
276
293
|
url: this.component.url,
|
|
277
294
|
queryProperty: this.component.queryProperty,
|
|
278
295
|
responseProperty: this.component.responseProperty,
|
|
279
296
|
displayValueProperty: this.component.displayValueProperty,
|
|
280
|
-
autocompleteOptions: this.component.autocompleteOptions
|
|
297
|
+
autocompleteOptions: this.component.autocompleteOptions,
|
|
281
298
|
};
|
|
282
299
|
}
|
|
283
300
|
get removeValueIcon() {
|
|
284
|
-
return this.refs
|
|
285
|
-
? (this.refs[AddressComponent.removeValueIconRef] || null)
|
|
286
|
-
: null;
|
|
301
|
+
return this.refs ? this.refs[AddressComponent.removeValueIconRef] || null : null;
|
|
287
302
|
}
|
|
288
303
|
get searchInput() {
|
|
289
|
-
return this.refs
|
|
290
|
-
? (this.refs[AddressComponent.searchInputRef] || null)
|
|
291
|
-
: null;
|
|
304
|
+
return this.refs ? this.refs[AddressComponent.searchInputRef] || null : null;
|
|
292
305
|
}
|
|
293
306
|
get addRowButton() {
|
|
294
|
-
return this.refs
|
|
295
|
-
? (this.refs[AddressComponent.addRowButtonRef] || null)
|
|
296
|
-
: null;
|
|
307
|
+
return this.refs ? this.refs[AddressComponent.addRowButtonRef] || null : null;
|
|
297
308
|
}
|
|
298
309
|
get removeRowButton() {
|
|
299
|
-
return this.refs
|
|
300
|
-
? (this.refs[AddressComponent.removeRowButtonRef] || null)
|
|
301
|
-
: null;
|
|
310
|
+
return this.refs ? this.refs[AddressComponent.removeRowButtonRef] || null : null;
|
|
302
311
|
}
|
|
303
312
|
get searchInputAttributes() {
|
|
304
313
|
const attr = {
|
|
@@ -309,7 +318,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
309
318
|
tabindex: this.component.tabindex || 0,
|
|
310
319
|
};
|
|
311
320
|
if (this.component.placeholder) {
|
|
312
|
-
attr.placeholder = this.t(this.component.placeholder), { _userInput: true };
|
|
321
|
+
((attr.placeholder = this.t(this.component.placeholder)), { _userInput: true });
|
|
313
322
|
}
|
|
314
323
|
if (this.disabled) {
|
|
315
324
|
attr.disabled = 'disabled';
|
|
@@ -372,7 +381,9 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
372
381
|
onSelectAddress(address, element, index) {
|
|
373
382
|
if (this.isMultiple) {
|
|
374
383
|
this.address[index] = address;
|
|
375
|
-
this.address = [
|
|
384
|
+
this.address = [
|
|
385
|
+
...this.address,
|
|
386
|
+
];
|
|
376
387
|
}
|
|
377
388
|
else {
|
|
378
389
|
this.address = address;
|
|
@@ -390,7 +401,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
390
401
|
super.redraw();
|
|
391
402
|
}
|
|
392
403
|
attach(element) {
|
|
393
|
-
const result = (
|
|
404
|
+
const result = (this.builderMode || this.manualMode ? super.attach : Field.prototype.attach).call(this, element);
|
|
394
405
|
if (!this.builderMode) {
|
|
395
406
|
if (!this.provider && this.component.provider) {
|
|
396
407
|
const provider = this.component.provider;
|
|
@@ -447,13 +458,13 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
447
458
|
}
|
|
448
459
|
});
|
|
449
460
|
if (this.addRowButton) {
|
|
450
|
-
this.addEventListener(this.addRowButton, 'click', event => {
|
|
461
|
+
this.addEventListener(this.addRowButton, 'click', (event) => {
|
|
451
462
|
event.preventDefault();
|
|
452
463
|
this.addRow();
|
|
453
464
|
});
|
|
454
465
|
}
|
|
455
466
|
this.removeRowButton.forEach((removeRowButton, index) => {
|
|
456
|
-
this.addEventListener(removeRowButton, 'click', event => {
|
|
467
|
+
this.addEventListener(removeRowButton, 'click', (event) => {
|
|
457
468
|
event.preventDefault();
|
|
458
469
|
this.removeValue(index);
|
|
459
470
|
});
|
|
@@ -495,7 +506,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
495
506
|
}
|
|
496
507
|
});
|
|
497
508
|
});
|
|
498
|
-
_.each(this.refs.searchInput || [], el => this.addFocusBlurEvents(el));
|
|
509
|
+
_.each(this.refs.searchInput || [], (el) => this.addFocusBlurEvents(el));
|
|
499
510
|
}
|
|
500
511
|
return result;
|
|
501
512
|
}
|
|
@@ -503,9 +514,8 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
503
514
|
component.customConditional = ChildConditional;
|
|
504
515
|
}
|
|
505
516
|
redraw() {
|
|
506
|
-
const modeSwitcherInFocus =
|
|
507
|
-
return super.redraw()
|
|
508
|
-
.then((result) => {
|
|
517
|
+
const modeSwitcherInFocus = this.modeSwitcher && document.activeElement === this.modeSwitcher;
|
|
518
|
+
return super.redraw().then((result) => {
|
|
509
519
|
if (modeSwitcherInFocus && this.modeSwitcher) {
|
|
510
520
|
this.modeSwitcher.focus();
|
|
511
521
|
}
|
|
@@ -528,9 +538,7 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
528
538
|
this.updateRemoveIcon(index);
|
|
529
539
|
}
|
|
530
540
|
getDisplayValue(value = this.address) {
|
|
531
|
-
return
|
|
532
|
-
? this.provider.getDisplayValue(value)
|
|
533
|
-
: '';
|
|
541
|
+
return this.provider && !this.manualMode ? this.provider.getDisplayValue(value) : '';
|
|
534
542
|
}
|
|
535
543
|
validateMultiple() {
|
|
536
544
|
return this.isMultiple;
|
|
@@ -552,13 +560,13 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
552
560
|
return '';
|
|
553
561
|
}
|
|
554
562
|
const normalizedValue = this.normalizeValue(value);
|
|
555
|
-
const { address, mode
|
|
563
|
+
const { address, mode } = this.manualModeEnabled
|
|
556
564
|
? normalizedValue
|
|
557
565
|
: {
|
|
558
566
|
address: normalizedValue,
|
|
559
567
|
mode: AddressComponentMode.Autocomplete,
|
|
560
|
-
}
|
|
561
|
-
const valueInManualMode =
|
|
568
|
+
};
|
|
569
|
+
const valueInManualMode = mode === AddressComponentMode.Manual;
|
|
562
570
|
if (this.provider && !valueInManualMode) {
|
|
563
571
|
return this.getDisplayValue(address);
|
|
564
572
|
}
|
|
@@ -572,9 +580,12 @@ export default class AddressComponent extends ContainerComponent {
|
|
|
572
580
|
}
|
|
573
581
|
return this.getComponents()
|
|
574
582
|
.filter((component) => component.hasValue(address))
|
|
575
|
-
.map((component) => [
|
|
576
|
-
|
|
577
|
-
.
|
|
583
|
+
.map((component) => [
|
|
584
|
+
component,
|
|
585
|
+
_.get(address, component.key),
|
|
586
|
+
])
|
|
587
|
+
.filter(([component, componentValue,]) => !component.isEmpty(componentValue))
|
|
588
|
+
.map(([component, componentValue,]) => component.getValueAsString(componentValue, options))
|
|
578
589
|
.join(', ');
|
|
579
590
|
}
|
|
580
591
|
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 }) =>
|
|
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,7 +13,9 @@ export default [
|
|
|
13
13
|
dataSrc: 'custom',
|
|
14
14
|
data: {
|
|
15
15
|
custom() {
|
|
16
|
-
return _.values(Formio.Providers.getProviders('address'))
|
|
16
|
+
return _.values(Formio.Providers.getProviders('address'))
|
|
17
|
+
.sort()
|
|
18
|
+
.map((provider) => ({
|
|
17
19
|
label: provider.displayName,
|
|
18
20
|
value: provider.name,
|
|
19
21
|
}));
|
|
@@ -26,7 +28,7 @@ export default [
|
|
|
26
28
|
{
|
|
27
29
|
type: 'textfield',
|
|
28
30
|
input: true,
|
|
29
|
-
key:
|
|
31
|
+
key: 'subscriptionKey',
|
|
30
32
|
label: 'Subscription Key',
|
|
31
33
|
placeholder: 'Enter Subscription Key',
|
|
32
34
|
weight: 10,
|
|
@@ -35,7 +37,12 @@ export default [
|
|
|
35
37
|
required: true,
|
|
36
38
|
},
|
|
37
39
|
conditional: {
|
|
38
|
-
json: {
|
|
40
|
+
json: {
|
|
41
|
+
'===': [
|
|
42
|
+
{ var: 'data.provider' },
|
|
43
|
+
'azure',
|
|
44
|
+
],
|
|
45
|
+
},
|
|
39
46
|
},
|
|
40
47
|
},
|
|
41
48
|
{
|
|
@@ -50,7 +57,12 @@ export default [
|
|
|
50
57
|
required: true,
|
|
51
58
|
},
|
|
52
59
|
conditional: {
|
|
53
|
-
json: {
|
|
60
|
+
json: {
|
|
61
|
+
'===': [
|
|
62
|
+
{ var: 'data.provider' },
|
|
63
|
+
'custom',
|
|
64
|
+
],
|
|
65
|
+
},
|
|
54
66
|
},
|
|
55
67
|
},
|
|
56
68
|
{
|
|
@@ -63,7 +75,12 @@ export default [
|
|
|
63
75
|
weight: 20,
|
|
64
76
|
tooltip: 'Which query param should be used to pass as a search string. Default is `query`.',
|
|
65
77
|
conditional: {
|
|
66
|
-
json: {
|
|
78
|
+
json: {
|
|
79
|
+
'===': [
|
|
80
|
+
{ var: 'data.provider' },
|
|
81
|
+
'custom',
|
|
82
|
+
],
|
|
83
|
+
},
|
|
67
84
|
},
|
|
68
85
|
},
|
|
69
86
|
{
|
|
@@ -75,7 +92,12 @@ export default [
|
|
|
75
92
|
weight: 30,
|
|
76
93
|
tooltip: 'The property within the response data, where iterable addresses reside. For example: results.',
|
|
77
94
|
conditional: {
|
|
78
|
-
json: {
|
|
95
|
+
json: {
|
|
96
|
+
'===': [
|
|
97
|
+
{ var: 'data.provider' },
|
|
98
|
+
'custom',
|
|
99
|
+
],
|
|
100
|
+
},
|
|
79
101
|
},
|
|
80
102
|
},
|
|
81
103
|
{
|
|
@@ -87,7 +109,12 @@ export default [
|
|
|
87
109
|
weight: 40,
|
|
88
110
|
tooltip: 'The property of each address in the response to use as the display value.',
|
|
89
111
|
conditional: {
|
|
90
|
-
json: {
|
|
112
|
+
json: {
|
|
113
|
+
'===': [
|
|
114
|
+
{ var: 'data.provider' },
|
|
115
|
+
'custom',
|
|
116
|
+
],
|
|
117
|
+
},
|
|
91
118
|
},
|
|
92
119
|
},
|
|
93
120
|
{
|
|
@@ -102,7 +129,12 @@ export default [
|
|
|
102
129
|
as: 'json',
|
|
103
130
|
tooltip: 'Additional query params can be specified here in a way of JSON object.',
|
|
104
131
|
conditional: {
|
|
105
|
-
json: {
|
|
132
|
+
json: {
|
|
133
|
+
'===': [
|
|
134
|
+
{ var: 'data.provider' },
|
|
135
|
+
'custom',
|
|
136
|
+
],
|
|
137
|
+
},
|
|
106
138
|
},
|
|
107
139
|
},
|
|
108
140
|
{
|
|
@@ -117,7 +149,12 @@ export default [
|
|
|
117
149
|
required: true,
|
|
118
150
|
},
|
|
119
151
|
conditional: {
|
|
120
|
-
json: {
|
|
152
|
+
json: {
|
|
153
|
+
'===': [
|
|
154
|
+
{ var: 'data.provider' },
|
|
155
|
+
'google',
|
|
156
|
+
],
|
|
157
|
+
},
|
|
121
158
|
},
|
|
122
159
|
},
|
|
123
160
|
{
|
|
@@ -131,9 +168,14 @@ export default [
|
|
|
131
168
|
rows: 5,
|
|
132
169
|
as: 'json',
|
|
133
170
|
editor: 'ace',
|
|
134
|
-
tooltip:
|
|
171
|
+
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",
|
|
135
172
|
conditional: {
|
|
136
|
-
json: {
|
|
173
|
+
json: {
|
|
174
|
+
'===': [
|
|
175
|
+
{ var: 'data.provider' },
|
|
176
|
+
'google',
|
|
177
|
+
],
|
|
178
|
+
},
|
|
137
179
|
},
|
|
138
180
|
},
|
|
139
181
|
{
|
|
@@ -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,11 +18,15 @@ 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)
|
|
25
|
+
errors = _.isArray(errors)
|
|
26
|
+
? errors
|
|
27
|
+
: [
|
|
28
|
+
errors,
|
|
29
|
+
];
|
|
26
30
|
const messagesList = this.createMessagesList('error', errors);
|
|
27
31
|
this.showAlert('error', messagesList, options);
|
|
28
32
|
if (triggerEvent) {
|
|
@@ -37,7 +41,7 @@ export default class Alert {
|
|
|
37
41
|
}
|
|
38
42
|
else {
|
|
39
43
|
messageElement = this.parentComponent.ce('p', {
|
|
40
|
-
ref: 'messageRef'
|
|
44
|
+
ref: 'messageRef',
|
|
41
45
|
});
|
|
42
46
|
}
|
|
43
47
|
this.showAlert(type, messageElement, options);
|
|
@@ -53,7 +57,7 @@ export default class Alert {
|
|
|
53
57
|
this.parentComponent.setContent(p, this.parentComponent.t('error'));
|
|
54
58
|
const ul = this.parentComponent.ce('ul');
|
|
55
59
|
const messagesList = document.createDocumentFragment();
|
|
56
|
-
errors.forEach(err => this.appendErrorToList(err, ul));
|
|
60
|
+
errors.forEach((err) => this.appendErrorToList(err, ul));
|
|
57
61
|
p.appendChild(ul);
|
|
58
62
|
messagesList.appendChild(p);
|
|
59
63
|
return messagesList;
|
|
@@ -73,7 +77,7 @@ export default class Alert {
|
|
|
73
77
|
this.clear();
|
|
74
78
|
}
|
|
75
79
|
if (messagesList) {
|
|
76
|
-
const { id = `${type}-list-${this.parentComponent.id}`, customClasses = `alert alert-${alertType}
|
|
80
|
+
const { id = `${type}-list-${this.parentComponent.id}`, customClasses = `alert alert-${alertType}`, } = options;
|
|
77
81
|
this.alert = this.parentComponent.ce('div', { id, class: customClasses });
|
|
78
82
|
if (messagesList instanceof HTMLElement) {
|
|
79
83
|
this.parentComponent.appendTo(messagesList, this.alert);
|
|
@@ -96,19 +100,19 @@ export default class Alert {
|
|
|
96
100
|
(e) => {
|
|
97
101
|
const key = e.currentTarget.dataset.componentKey;
|
|
98
102
|
this.focusOnComponent(key);
|
|
99
|
-
}
|
|
103
|
+
},
|
|
100
104
|
],
|
|
101
105
|
keypress: [
|
|
102
106
|
...keyPressListeners,
|
|
103
107
|
(e) => {
|
|
104
108
|
const key = e.currentTarget.dataset.componentKey;
|
|
105
109
|
this.focusOnComponent(key);
|
|
106
|
-
}
|
|
107
|
-
]
|
|
110
|
+
},
|
|
111
|
+
],
|
|
108
112
|
};
|
|
109
113
|
if (this.refs.messageRef?.length) {
|
|
110
|
-
this.refs.messageRef.forEach(el => {
|
|
111
|
-
Object.entries(customEvents).forEach(([event, listeners]) => {
|
|
114
|
+
this.refs.messageRef.forEach((el) => {
|
|
115
|
+
Object.entries(customEvents).forEach(([event, listeners,]) => {
|
|
112
116
|
listeners.forEach((listener) => this.parentComponent.addEventListener(el, event, listener));
|
|
113
117
|
this.eventListenersKeys.push(event);
|
|
114
118
|
});
|
|
@@ -118,21 +122,23 @@ export default class Alert {
|
|
|
118
122
|
clear() {
|
|
119
123
|
try {
|
|
120
124
|
if (this.refs.messageRef?.length) {
|
|
121
|
-
this.refs.messageRef.forEach(el => {
|
|
122
|
-
this.eventListenersKeys.forEach(event => this.parentComponent.removeEventListener(el, event));
|
|
125
|
+
this.refs.messageRef.forEach((el) => {
|
|
126
|
+
this.eventListenersKeys.forEach((event) => this.parentComponent.removeEventListener(el, event));
|
|
123
127
|
});
|
|
124
128
|
}
|
|
125
129
|
this.refs = {};
|
|
126
130
|
this.parentComponent.removeChildFrom(this.alert, this.container);
|
|
127
131
|
this.alert = null;
|
|
128
132
|
}
|
|
129
|
-
catch (
|
|
133
|
+
catch (ignoreErr) {
|
|
130
134
|
// ignore
|
|
131
135
|
}
|
|
132
136
|
}
|
|
133
137
|
focusOnComponent(keyOrPath) {
|
|
134
138
|
if (keyOrPath) {
|
|
135
|
-
const path = this.parentComponent._parentPath
|
|
139
|
+
const path = this.parentComponent._parentPath
|
|
140
|
+
? keyOrPath.replace(this.parentComponent._parentPath, '')
|
|
141
|
+
: keyOrPath;
|
|
136
142
|
const component = this.parentComponent.root?.getComponent(path, null, keyOrPath);
|
|
137
143
|
if (component && _.isFunction(component.focus)) {
|
|
138
144
|
component.focus();
|
|
@@ -150,7 +156,7 @@ export default class Alert {
|
|
|
150
156
|
style: 'cursor: pointer',
|
|
151
157
|
ref: 'messageRef',
|
|
152
158
|
tabIndex: 0,
|
|
153
|
-
'aria-label': `${message}. Click to navigate to the field with following error
|
|
159
|
+
'aria-label': `${message}. Click to navigate to the field with following error.`,
|
|
154
160
|
};
|
|
155
161
|
const li = this.parentComponent.ce('li', params);
|
|
156
162
|
this.parentComponent.setContent(li, message);
|