@formio/js 5.0.0-rc.18 → 5.0.0-rc.20
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +1 -1
- package/dist/formio.builder.css +14 -22
- package/dist/formio.builder.min.css +1 -1
- package/dist/formio.embed.css +1 -2
- package/dist/formio.embed.js +2 -2
- package/dist/formio.embed.min.css +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 +10 -2
- package/dist/formio.form.js +333 -361
- package/dist/formio.form.min.css +1 -1
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.form.min.js.LICENSE.txt +3 -8
- package/dist/formio.full.css +14 -22
- package/dist/formio.full.js +353 -370
- package/dist/formio.full.min.css +1 -1
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +3 -8
- package/dist/formio.js +208 -121
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +2 -7
- package/dist/formio.utils.js +220 -13
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +2 -7
- package/lib/cjs/CDN.js +1 -1
- package/lib/cjs/Element.js +7 -2
- package/lib/cjs/Embed.js +1 -1
- package/lib/cjs/Form.d.ts +8 -5
- package/lib/cjs/Form.js +52 -10
- package/lib/cjs/PDF.d.ts +11 -3
- package/lib/cjs/PDF.js +4 -5
- package/lib/cjs/PDFBuilder.js +2 -3
- package/lib/cjs/Webform.d.ts +4 -7
- package/lib/cjs/Webform.js +40 -119
- package/lib/cjs/WebformBuilder.d.ts +6 -1
- package/lib/cjs/WebformBuilder.js +104 -64
- package/lib/cjs/Wizard.d.ts +8 -5
- package/lib/cjs/Wizard.js +14 -14
- package/lib/cjs/WizardBuilder.d.ts +6 -4
- package/lib/cjs/WizardBuilder.js +20 -3
- package/lib/cjs/addons/FormioAddon.d.ts +1 -1
- package/lib/cjs/addons/FormioAddon.js +1 -2
- package/lib/cjs/components/_classes/component/Component.d.ts +17 -8
- package/lib/cjs/components/_classes/component/Component.js +52 -18
- package/lib/cjs/components/_classes/input/Input.d.ts +1 -1
- package/lib/cjs/components/_classes/input/Input.js +1 -2
- package/lib/cjs/components/_classes/list/ListComponent.d.ts +4 -0
- package/lib/cjs/components/_classes/list/ListComponent.js +43 -6
- package/lib/cjs/components/_classes/multivalue/Multivalue.d.ts +1 -0
- package/lib/cjs/components/_classes/multivalue/Multivalue.js +10 -4
- package/lib/cjs/components/_classes/nested/NestedComponent.d.ts +5 -2
- package/lib/cjs/components/_classes/nested/NestedComponent.js +11 -12
- package/lib/cjs/components/address/Address.d.ts +8 -0
- package/lib/cjs/components/button/Button.js +2 -3
- package/lib/cjs/components/checkbox/Checkbox.d.ts +13 -0
- package/lib/cjs/components/checkbox/Checkbox.js +17 -5
- package/lib/cjs/components/columns/Columns.d.ts +1 -0
- package/lib/cjs/components/columns/Columns.js +1 -0
- package/lib/cjs/components/container/Container.d.ts +1 -0
- package/lib/cjs/components/container/Container.js +1 -0
- package/lib/cjs/components/content/Content.d.ts +1 -0
- package/lib/cjs/components/content/Content.js +1 -2
- package/lib/cjs/components/currency/editForm/Currency.edit.data.d.ts +14 -2
- package/lib/cjs/components/currency/editForm/Currency.edit.data.js +4 -0
- package/lib/cjs/components/currency/editForm/Currency.edit.display.js +4 -0
- package/lib/cjs/components/datagrid/DataGrid.d.ts +1 -0
- package/lib/cjs/components/datagrid/DataGrid.js +8 -1
- package/lib/cjs/components/datamap/DataMap.js +1 -0
- package/lib/cjs/components/datetime/DateTime.d.ts +4 -0
- package/lib/cjs/components/datetime/DateTime.js +21 -1
- package/lib/cjs/components/day/Day.d.ts +1 -1
- package/lib/cjs/components/day/Day.js +22 -6
- package/lib/cjs/components/day/fixtures/comp3.js +2 -2
- package/lib/cjs/components/editgrid/EditGrid.d.ts +4 -3
- package/lib/cjs/components/editgrid/EditGrid.js +11 -6
- package/lib/cjs/components/editgrid/fixtures/comp-with-custom-default-value.d.ts +190 -0
- package/lib/cjs/components/editgrid/fixtures/comp-with-custom-default-value.js +227 -0
- package/lib/cjs/components/editgrid/fixtures/comp15.d.ts +54 -0
- package/lib/cjs/components/editgrid/fixtures/comp15.js +51 -0
- package/lib/cjs/components/editgrid/fixtures/index.d.ts +3 -1
- package/lib/cjs/components/editgrid/fixtures/index.js +5 -1
- package/lib/cjs/components/fieldset/Fieldset.d.ts +1 -0
- package/lib/cjs/components/fieldset/Fieldset.js +1 -0
- package/lib/cjs/components/file/File.d.ts +7 -5
- package/lib/cjs/components/file/File.js +26 -9
- package/lib/cjs/components/file/editForm/File.edit.file.d.ts +62 -0
- package/lib/cjs/components/file/editForm/File.edit.file.js +29 -2
- package/lib/cjs/components/form/Form.d.ts +3 -0
- package/lib/cjs/components/form/Form.js +9 -10
- package/lib/cjs/components/hidden/Hidden.d.ts +1 -0
- package/lib/cjs/components/hidden/Hidden.js +1 -0
- package/lib/cjs/components/html/HTML.d.ts +1 -0
- package/lib/cjs/components/html/HTML.js +1 -0
- package/lib/cjs/components/number/Number.d.ts +5 -1
- package/lib/cjs/components/number/Number.js +24 -7
- package/lib/cjs/components/phonenumber/PhoneNumber.form.js +9 -0
- package/lib/cjs/components/radio/Radio.d.ts +5 -3
- package/lib/cjs/components/radio/Radio.js +59 -18
- package/lib/cjs/components/recaptcha/ReCaptcha.d.ts +1 -1
- package/lib/cjs/components/recaptcha/ReCaptcha.js +4 -5
- package/lib/cjs/components/resource/Resource.d.ts +7 -0
- package/lib/cjs/components/resource/Resource.js +0 -1
- package/lib/cjs/components/resource/editForm/Resource.edit.display.js +1 -1
- package/lib/cjs/components/select/Select.d.ts +7 -5
- package/lib/cjs/components/select/Select.js +15 -49
- package/lib/cjs/components/selectboxes/SelectBoxes.d.ts +12 -0
- package/lib/cjs/components/selectboxes/SelectBoxes.js +53 -25
- package/lib/cjs/components/selectboxes/fixtures/comp4.d.ts +30 -27
- package/lib/cjs/components/selectboxes/fixtures/comp4.js +47 -32
- package/lib/cjs/components/selectboxes/fixtures/comp6.d.ts +14 -0
- package/lib/cjs/components/selectboxes/fixtures/comp6.js +15 -0
- package/lib/cjs/components/selectboxes/fixtures/index.d.ts +2 -1
- package/lib/cjs/components/selectboxes/fixtures/index.js +3 -1
- package/lib/cjs/components/signature/Signature.d.ts +1 -1
- package/lib/cjs/components/signature/Signature.js +8 -3
- package/lib/cjs/components/survey/Survey.js +3 -0
- package/lib/cjs/components/table/Table.d.ts +1 -0
- package/lib/cjs/components/table/Table.js +1 -0
- package/lib/cjs/components/tabs/Tabs.d.ts +1 -0
- package/lib/cjs/components/tabs/Tabs.js +1 -0
- package/lib/cjs/components/tags/Tags.js +3 -0
- package/lib/cjs/components/textarea/TextArea.d.ts +3 -2
- package/lib/cjs/components/textarea/TextArea.js +4 -5
- package/lib/cjs/components/textarea/fixtures/comp4.d.ts +30 -0
- package/lib/cjs/components/textarea/fixtures/comp4.js +27 -0
- package/lib/cjs/components/textarea/fixtures/index.d.ts +2 -1
- package/lib/cjs/components/textarea/fixtures/index.js +3 -1
- package/lib/cjs/components/textfield/TextField.d.ts +1 -0
- package/lib/cjs/components/textfield/TextField.js +5 -3
- package/lib/cjs/components/time/Time.d.ts +4 -0
- package/lib/cjs/components/time/Time.js +6 -1
- package/lib/cjs/components/tree/Tree.d.ts +5 -4
- package/lib/cjs/components/tree/Tree.form.js +5 -0
- package/lib/cjs/components/tree/Tree.js +8 -9
- package/lib/cjs/components/tree/editForm/Tree.edit.display.d.ts +9 -0
- package/lib/cjs/components/tree/editForm/Tree.edit.display.js +12 -0
- package/lib/cjs/components/well/Well.d.ts +1 -0
- package/lib/cjs/components/well/Well.js +1 -0
- package/lib/cjs/providers/Providers.d.ts +31 -11
- package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +2 -2
- package/lib/cjs/providers/address/GoogleAddressProvider.js +2 -3
- package/lib/cjs/providers/processor/fileProcessor.d.ts +1 -1
- package/lib/cjs/providers/processor/fileProcessor.js +1 -5
- package/lib/cjs/providers/storage/azure.d.ts +10 -1
- package/lib/cjs/providers/storage/azure.js +7 -2
- package/lib/cjs/providers/storage/base64.d.ts +2 -2
- package/lib/cjs/providers/storage/base64.js +2 -6
- package/lib/cjs/providers/storage/dropbox.d.ts +2 -2
- package/lib/cjs/providers/storage/dropbox.js +2 -6
- package/lib/cjs/providers/storage/googleDrive.d.ts +3 -2
- package/lib/cjs/providers/storage/googleDrive.js +6 -6
- package/lib/cjs/providers/storage/indexeddb.d.ts +3 -3
- package/lib/cjs/providers/storage/indexeddb.js +9 -13
- package/lib/cjs/providers/storage/s3.d.ts +11 -1
- package/lib/cjs/providers/storage/s3.js +5 -2
- package/lib/cjs/providers/storage/uploadAdapter.js +1 -5
- package/lib/cjs/providers/storage/url.d.ts +2 -2
- package/lib/cjs/providers/storage/url.js +12 -8
- package/lib/cjs/providers/storage/xhr.d.ts +1 -1
- package/lib/cjs/providers/storage/xhr.js +1 -2
- package/lib/cjs/templates/index.d.ts +226 -1
- package/lib/cjs/utils/Evaluator.js +4 -33
- package/lib/cjs/utils/i18n.d.ts +16 -0
- package/lib/cjs/utils/i18n.js +88 -0
- package/lib/cjs/utils/utils.d.ts +1 -1
- package/lib/cjs/utils/utils.js +8 -9
- package/lib/cjs/validator/Validator.d.ts +30 -2
- package/lib/cjs/validator/Validator.js +32 -9
- package/lib/cjs/validator/rules/Select.js +1 -2
- package/lib/cjs/validator/rules/Unique.d.ts +1 -1
- package/lib/cjs/validator/rules/Unique.js +1 -2
- package/lib/cjs/widgets/CalendarWidget.d.ts +1 -0
- package/lib/cjs/widgets/InputWidget.d.ts +1 -1
- package/lib/cjs/widgets/InputWidget.js +1 -2
- package/lib/mjs/CDN.js +1 -1
- package/lib/mjs/Element.js +6 -2
- package/lib/mjs/Embed.js +4 -1
- package/lib/mjs/Form.d.ts +8 -5
- package/lib/mjs/Form.js +52 -10
- package/lib/mjs/PDF.d.ts +11 -3
- package/lib/mjs/PDF.js +4 -5
- package/lib/mjs/PDFBuilder.js +2 -3
- package/lib/mjs/Webform.d.ts +4 -7
- package/lib/mjs/Webform.js +40 -122
- package/lib/mjs/WebformBuilder.d.ts +6 -1
- package/lib/mjs/WebformBuilder.js +102 -64
- package/lib/mjs/Wizard.d.ts +8 -5
- package/lib/mjs/Wizard.js +14 -14
- package/lib/mjs/WizardBuilder.d.ts +6 -4
- package/lib/mjs/WizardBuilder.js +20 -3
- package/lib/mjs/addons/FormioAddon.d.ts +1 -1
- package/lib/mjs/addons/FormioAddon.js +1 -2
- package/lib/mjs/components/_classes/component/Component.d.ts +17 -8
- package/lib/mjs/components/_classes/component/Component.js +52 -18
- package/lib/mjs/components/_classes/input/Input.d.ts +1 -1
- package/lib/mjs/components/_classes/input/Input.js +1 -2
- package/lib/mjs/components/_classes/list/ListComponent.d.ts +4 -0
- package/lib/mjs/components/_classes/list/ListComponent.js +43 -5
- package/lib/mjs/components/_classes/multivalue/Multivalue.d.ts +1 -0
- package/lib/mjs/components/_classes/multivalue/Multivalue.js +10 -4
- package/lib/mjs/components/_classes/nested/NestedComponent.d.ts +5 -2
- package/lib/mjs/components/_classes/nested/NestedComponent.js +11 -12
- package/lib/mjs/components/address/Address.d.ts +8 -0
- package/lib/mjs/components/button/Button.js +2 -3
- package/lib/mjs/components/checkbox/Checkbox.d.ts +13 -0
- package/lib/mjs/components/checkbox/Checkbox.js +21 -5
- package/lib/mjs/components/columns/Columns.d.ts +1 -0
- package/lib/mjs/components/columns/Columns.js +1 -0
- package/lib/mjs/components/container/Container.d.ts +1 -0
- package/lib/mjs/components/container/Container.js +1 -0
- package/lib/mjs/components/content/Content.d.ts +1 -0
- package/lib/mjs/components/content/Content.js +1 -2
- package/lib/mjs/components/currency/editForm/Currency.edit.data.d.ts +14 -2
- package/lib/mjs/components/currency/editForm/Currency.edit.data.js +4 -0
- package/lib/mjs/components/currency/editForm/Currency.edit.display.js +4 -0
- package/lib/mjs/components/datagrid/DataGrid.d.ts +1 -0
- package/lib/mjs/components/datagrid/DataGrid.js +8 -1
- package/lib/mjs/components/datamap/DataMap.js +1 -0
- package/lib/mjs/components/datetime/DateTime.d.ts +4 -0
- package/lib/mjs/components/datetime/DateTime.js +28 -1
- package/lib/mjs/components/day/Day.d.ts +1 -1
- package/lib/mjs/components/day/Day.js +25 -6
- package/lib/mjs/components/day/fixtures/comp3.js +2 -2
- package/lib/mjs/components/editgrid/EditGrid.d.ts +4 -3
- package/lib/mjs/components/editgrid/EditGrid.js +11 -6
- package/lib/mjs/components/editgrid/fixtures/comp-with-custom-default-value.d.ts +190 -0
- package/lib/mjs/components/editgrid/fixtures/comp-with-custom-default-value.js +225 -0
- package/lib/mjs/components/editgrid/fixtures/comp15.d.ts +54 -0
- package/lib/mjs/components/editgrid/fixtures/comp15.js +49 -0
- package/lib/mjs/components/editgrid/fixtures/index.d.ts +3 -1
- package/lib/mjs/components/editgrid/fixtures/index.js +3 -1
- package/lib/mjs/components/fieldset/Fieldset.d.ts +1 -0
- package/lib/mjs/components/fieldset/Fieldset.js +1 -0
- package/lib/mjs/components/file/File.d.ts +7 -5
- package/lib/mjs/components/file/File.js +29 -9
- package/lib/mjs/components/file/editForm/File.edit.file.d.ts +62 -0
- package/lib/mjs/components/file/editForm/File.edit.file.js +29 -2
- package/lib/mjs/components/form/Form.d.ts +3 -0
- package/lib/mjs/components/form/Form.js +9 -10
- package/lib/mjs/components/hidden/Hidden.d.ts +1 -0
- package/lib/mjs/components/hidden/Hidden.js +1 -0
- package/lib/mjs/components/html/HTML.d.ts +1 -0
- package/lib/mjs/components/html/HTML.js +1 -0
- package/lib/mjs/components/number/Number.d.ts +5 -1
- package/lib/mjs/components/number/Number.js +24 -7
- package/lib/mjs/components/phonenumber/PhoneNumber.form.js +9 -0
- package/lib/mjs/components/radio/Radio.d.ts +5 -3
- package/lib/mjs/components/radio/Radio.js +59 -18
- package/lib/mjs/components/recaptcha/ReCaptcha.d.ts +1 -1
- package/lib/mjs/components/recaptcha/ReCaptcha.js +4 -5
- package/lib/mjs/components/resource/Resource.d.ts +7 -0
- package/lib/mjs/components/resource/Resource.js +0 -1
- package/lib/mjs/components/resource/editForm/Resource.edit.display.js +1 -1
- package/lib/mjs/components/select/Select.d.ts +7 -5
- package/lib/mjs/components/select/Select.js +18 -49
- package/lib/mjs/components/selectboxes/SelectBoxes.d.ts +12 -0
- package/lib/mjs/components/selectboxes/SelectBoxes.js +56 -25
- package/lib/mjs/components/selectboxes/fixtures/comp4.d.ts +30 -27
- package/lib/mjs/components/selectboxes/fixtures/comp4.js +47 -32
- package/lib/mjs/components/selectboxes/fixtures/comp6.d.ts +14 -0
- package/lib/mjs/components/selectboxes/fixtures/comp6.js +13 -0
- package/lib/mjs/components/selectboxes/fixtures/index.d.ts +2 -1
- package/lib/mjs/components/selectboxes/fixtures/index.js +2 -1
- package/lib/mjs/components/signature/Signature.d.ts +1 -1
- package/lib/mjs/components/signature/Signature.js +11 -3
- package/lib/mjs/components/survey/Survey.js +6 -0
- package/lib/mjs/components/table/Table.d.ts +1 -0
- package/lib/mjs/components/table/Table.js +1 -0
- package/lib/mjs/components/tabs/Tabs.d.ts +1 -0
- package/lib/mjs/components/tabs/Tabs.js +1 -0
- package/lib/mjs/components/tags/Tags.js +6 -0
- package/lib/mjs/components/textarea/TextArea.d.ts +3 -2
- package/lib/mjs/components/textarea/TextArea.js +4 -5
- package/lib/mjs/components/textarea/fixtures/comp4.d.ts +30 -0
- package/lib/mjs/components/textarea/fixtures/comp4.js +25 -0
- package/lib/mjs/components/textarea/fixtures/index.d.ts +2 -1
- package/lib/mjs/components/textarea/fixtures/index.js +2 -1
- package/lib/mjs/components/textfield/TextField.d.ts +1 -0
- package/lib/mjs/components/textfield/TextField.js +8 -3
- package/lib/mjs/components/time/Time.d.ts +4 -0
- package/lib/mjs/components/time/Time.js +12 -1
- package/lib/mjs/components/tree/Tree.d.ts +5 -4
- package/lib/mjs/components/tree/Tree.form.js +5 -0
- package/lib/mjs/components/tree/Tree.js +8 -9
- package/lib/mjs/components/tree/editForm/Tree.edit.display.d.ts +9 -0
- package/lib/mjs/components/tree/editForm/Tree.edit.display.js +10 -0
- package/lib/mjs/components/well/Well.d.ts +1 -0
- package/lib/mjs/components/well/Well.js +1 -0
- package/lib/mjs/providers/Providers.d.ts +31 -11
- package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +2 -2
- package/lib/mjs/providers/address/GoogleAddressProvider.js +2 -3
- package/lib/mjs/providers/processor/fileProcessor.d.ts +1 -1
- package/lib/mjs/providers/processor/fileProcessor.js +1 -2
- package/lib/mjs/providers/storage/azure.d.ts +10 -1
- package/lib/mjs/providers/storage/azure.js +7 -2
- package/lib/mjs/providers/storage/base64.d.ts +2 -2
- package/lib/mjs/providers/storage/base64.js +2 -3
- package/lib/mjs/providers/storage/dropbox.d.ts +2 -2
- package/lib/mjs/providers/storage/dropbox.js +2 -3
- package/lib/mjs/providers/storage/googleDrive.d.ts +3 -2
- package/lib/mjs/providers/storage/googleDrive.js +6 -3
- package/lib/mjs/providers/storage/indexeddb.d.ts +3 -3
- package/lib/mjs/providers/storage/indexeddb.js +9 -10
- package/lib/mjs/providers/storage/s3.d.ts +11 -1
- package/lib/mjs/providers/storage/s3.js +5 -2
- package/lib/mjs/providers/storage/uploadAdapter.js +1 -2
- package/lib/mjs/providers/storage/url.d.ts +2 -2
- package/lib/mjs/providers/storage/url.js +12 -5
- package/lib/mjs/providers/storage/xhr.d.ts +1 -1
- package/lib/mjs/providers/storage/xhr.js +1 -2
- package/lib/mjs/templates/index.d.ts +226 -1
- package/lib/mjs/utils/Evaluator.js +4 -33
- package/lib/mjs/utils/i18n.d.ts +16 -0
- package/lib/mjs/utils/i18n.js +81 -0
- package/lib/mjs/utils/utils.d.ts +1 -1
- package/lib/mjs/utils/utils.js +8 -9
- package/lib/mjs/validator/Validator.d.ts +30 -2
- package/lib/mjs/validator/Validator.js +31 -9
- package/lib/mjs/validator/rules/Select.js +1 -2
- package/lib/mjs/validator/rules/Unique.d.ts +1 -1
- package/lib/mjs/validator/rules/Unique.js +1 -2
- package/lib/mjs/widgets/CalendarWidget.d.ts +1 -0
- package/lib/mjs/widgets/InputWidget.d.ts +1 -1
- package/lib/mjs/widgets/InputWidget.js +1 -2
- package/package.json +24 -25
@@ -21,7 +21,7 @@ export class ValidationChecker {
|
|
21
21
|
key: string;
|
22
22
|
hasLabel: boolean;
|
23
23
|
message(component: any): any;
|
24
|
-
check(component: any, setting: any, value: any): any
|
24
|
+
check(component: any, setting: any, value: any): true | Promise<any>;
|
25
25
|
};
|
26
26
|
multiple: {
|
27
27
|
key: string;
|
@@ -170,7 +170,35 @@ export class ValidationChecker {
|
|
170
170
|
};
|
171
171
|
};
|
172
172
|
checkValidator(component: any, validator: any, setting: any, value: any, data: any, index: any, row: any, async: any): any;
|
173
|
-
validate(component: any, validatorName: any, value: any, data: any, index: any, row: any, async: any, conditionallyVisible: any, validationObj: any):
|
173
|
+
validate(component: any, validatorName: any, value: any, data: any, index: any, row: any, async: any, conditionallyVisible: any, validationObj: any): false | {
|
174
|
+
message: string;
|
175
|
+
level: string;
|
176
|
+
path: any;
|
177
|
+
context: {
|
178
|
+
validator: any;
|
179
|
+
hasLabel: any;
|
180
|
+
setting: any;
|
181
|
+
key: any;
|
182
|
+
label: any;
|
183
|
+
value: any;
|
184
|
+
index: any;
|
185
|
+
input: any;
|
186
|
+
};
|
187
|
+
} | Promise<false | {
|
188
|
+
message: string;
|
189
|
+
level: string;
|
190
|
+
path: any;
|
191
|
+
context: {
|
192
|
+
validator: any;
|
193
|
+
hasLabel: any;
|
194
|
+
setting: any;
|
195
|
+
key: any;
|
196
|
+
label: any;
|
197
|
+
value: any;
|
198
|
+
index: any;
|
199
|
+
input: any;
|
200
|
+
};
|
201
|
+
}>;
|
174
202
|
checkComponent(component: any, data: any, row: any, includeWarnings?: boolean, async?: boolean): any;
|
175
203
|
/**
|
176
204
|
* Use the new validations engine to evaluate any errors.
|
@@ -7,10 +7,9 @@ exports.ValidationChecker = exports.default = void 0;
|
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
8
|
const utils_1 = require("../utils/utils");
|
9
9
|
const moment_1 = __importDefault(require("moment"));
|
10
|
-
const native_promise_only_1 = __importDefault(require("native-promise-only"));
|
11
10
|
const fetch_ponyfill_1 = __importDefault(require("fetch-ponyfill"));
|
12
11
|
const { fetch, Headers, Request } = (0, fetch_ponyfill_1.default)({
|
13
|
-
Promise:
|
12
|
+
Promise: Promise
|
14
13
|
});
|
15
14
|
const calendarUtils_1 = require("../utils/calendarUtils");
|
16
15
|
const Rules_1 = __importDefault(require("./Rules"));
|
@@ -75,7 +74,8 @@ class ValidationChecker {
|
|
75
74
|
if (!this.config.db) {
|
76
75
|
return true;
|
77
76
|
}
|
78
|
-
return new
|
77
|
+
return new Promise(resolve => {
|
78
|
+
var _a;
|
79
79
|
const form = this.config.form;
|
80
80
|
const submission = this.config.submission;
|
81
81
|
const path = `data.${component.path}`;
|
@@ -101,10 +101,19 @@ class ValidationChecker {
|
|
101
101
|
};
|
102
102
|
// Build the query
|
103
103
|
const query = { form: form._id };
|
104
|
+
let collationOptions = {};
|
104
105
|
if (lodash_1.default.isString(value)) {
|
105
106
|
if (component.component.dbIndex) {
|
106
107
|
addPathQueryParams(value, query, path);
|
107
108
|
}
|
109
|
+
// These are kind of hacky but provides for a more efficient "unique" validation when the string is an email,
|
110
|
+
// because we (by and large) only have to worry about ASCII and partial unicode; this way, we can use collation-
|
111
|
+
// aware indexes with case insensitive email searches to make things like login and registration a whole lot faster
|
112
|
+
else if (component.component.type === 'email' ||
|
113
|
+
(component.component.type === 'textfield' && ((_a = component.component.validate) === null || _a === void 0 ? void 0 : _a.pattern) === '[A-Za-z0-9]+')) {
|
114
|
+
addPathQueryParams(value, query, path);
|
115
|
+
collationOptions = { collation: { locale: 'en', strength: 2 } };
|
116
|
+
}
|
108
117
|
else {
|
109
118
|
addPathQueryParams({
|
110
119
|
$regex: new RegExp(`^${(0, utils_1.escapeRegExCharacters)(value)}$`),
|
@@ -132,8 +141,7 @@ class ValidationChecker {
|
|
132
141
|
// Only search for non-deleted items
|
133
142
|
query.deleted = { $eq: null };
|
134
143
|
query.state = 'submitted';
|
135
|
-
|
136
|
-
this.config.db.findOne(query, (err, result) => {
|
144
|
+
const uniqueValidationCallback = (err, result) => {
|
137
145
|
if (err) {
|
138
146
|
return resolve(false);
|
139
147
|
}
|
@@ -150,6 +158,21 @@ class ValidationChecker {
|
|
150
158
|
else {
|
151
159
|
return resolve(true);
|
152
160
|
}
|
161
|
+
};
|
162
|
+
// Try to find an existing value within the form
|
163
|
+
this.config.db.findOne(query, null, collationOptions, (err, result) => {
|
164
|
+
if (err && collationOptions.collation) {
|
165
|
+
// presume this error comes from db compatibility, try again as regex
|
166
|
+
delete query[path];
|
167
|
+
addPathQueryParams({
|
168
|
+
$regex: new RegExp(`^${(0, utils_1.escapeRegExCharacters)(value)}$`),
|
169
|
+
$options: 'i'
|
170
|
+
}, query, path);
|
171
|
+
this.config.db.findOne(query, uniqueValidationCallback);
|
172
|
+
}
|
173
|
+
else {
|
174
|
+
return uniqueValidationCallback(err, result);
|
175
|
+
}
|
153
176
|
});
|
154
177
|
}).catch(() => false);
|
155
178
|
}
|
@@ -825,7 +848,7 @@ class ValidationChecker {
|
|
825
848
|
return '';
|
826
849
|
};
|
827
850
|
if (async) {
|
828
|
-
return
|
851
|
+
return Promise.resolve(resultOrPromise).then(processResult);
|
829
852
|
}
|
830
853
|
else {
|
831
854
|
return processResult(resultOrPromise);
|
@@ -867,7 +890,7 @@ class ValidationChecker {
|
|
867
890
|
}
|
868
891
|
};
|
869
892
|
if (async) {
|
870
|
-
return
|
893
|
+
return Promise.resolve(resultOrPromise).then(processResult);
|
871
894
|
}
|
872
895
|
else {
|
873
896
|
return processResult(resultOrPromise);
|
@@ -880,7 +903,7 @@ class ValidationChecker {
|
|
880
903
|
&& !lodash_1.default.defaultTo(component.component.persistent, true);
|
881
904
|
// If we're server-side and it's not a persistent component, don't run validation at all
|
882
905
|
if (isServerSidePersistent || component.component.validate === false) {
|
883
|
-
return async ?
|
906
|
+
return async ? Promise.resolve([]) : [];
|
884
907
|
}
|
885
908
|
data = data || component.rootValue;
|
886
909
|
row = row || component.data;
|
@@ -1001,7 +1024,7 @@ class ValidationChecker {
|
|
1001
1024
|
};
|
1002
1025
|
// Wait for results if using async mode, otherwise process and return immediately
|
1003
1026
|
if (async) {
|
1004
|
-
return
|
1027
|
+
return Promise.all(resultsOrPromises).then(formatResults);
|
1005
1028
|
}
|
1006
1029
|
else {
|
1007
1030
|
return formatResults(resultsOrPromises);
|
@@ -4,10 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const utils_1 = require("../../utils/utils");
|
7
|
-
const native_promise_only_1 = __importDefault(require("native-promise-only"));
|
8
7
|
const fetch_ponyfill_1 = __importDefault(require("fetch-ponyfill"));
|
9
8
|
const { fetch, Headers, Request } = (0, fetch_ponyfill_1.default)({
|
10
|
-
Promise:
|
9
|
+
Promise: Promise
|
11
10
|
});
|
12
11
|
const lodash_1 = __importDefault(require("lodash"));
|
13
12
|
const Rule_1 = __importDefault(require("./Rule"));
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const utils_1 = require("../../utils/utils");
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
|
-
const native_promise_only_1 = __importDefault(require("native-promise-only"));
|
9
8
|
const Rule_1 = __importDefault(require("./Rule"));
|
10
9
|
class Unique extends Rule_1.default {
|
11
10
|
constructor() {
|
@@ -21,7 +20,7 @@ class Unique extends Rule_1.default {
|
|
21
20
|
if (!this.config.db) {
|
22
21
|
return true;
|
23
22
|
}
|
24
|
-
return new
|
23
|
+
return new Promise(resolve => {
|
25
24
|
const form = this.config.form;
|
26
25
|
const submission = this.config.submission;
|
27
26
|
const path = `data.${this.component.path}`;
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const lodash_1 = __importDefault(require("lodash"));
|
7
7
|
const Element_1 = __importDefault(require("../Element"));
|
8
|
-
const native_promise_only_1 = __importDefault(require("native-promise-only"));
|
9
8
|
class InputWidget extends Element_1.default {
|
10
9
|
static get defaultSettings() {
|
11
10
|
return {
|
@@ -22,7 +21,7 @@ class InputWidget extends Element_1.default {
|
|
22
21
|
}
|
23
22
|
attach(input) {
|
24
23
|
this._input = input;
|
25
|
-
return
|
24
|
+
return Promise.resolve();
|
26
25
|
}
|
27
26
|
get defaultSettings() {
|
28
27
|
return {};
|
package/lib/mjs/CDN.js
CHANGED
package/lib/mjs/Element.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import EventEmitter from './EventEmitter';
|
2
2
|
import { Formio } from './Formio';
|
3
3
|
import * as FormioUtils from './utils/utils';
|
4
|
-
import
|
4
|
+
import { I18n } from './utils/i18n';
|
5
5
|
import _ from 'lodash';
|
6
6
|
import moment from 'moment';
|
7
7
|
import maskInput from '@formio/vanilla-text-mask';
|
@@ -34,7 +34,11 @@ export default class Element {
|
|
34
34
|
*/
|
35
35
|
this.eventHandlers = [];
|
36
36
|
// Use the i18next that is passed in, otherwise use the global version.
|
37
|
-
this.
|
37
|
+
this.options.i18n = this.options.i18n || {};
|
38
|
+
if (this.options?.language) {
|
39
|
+
this.options.i18n.language = this.options.language;
|
40
|
+
}
|
41
|
+
this.options.i18next = this.i18next = this.options.i18next || I18n.init(this.options.i18n);
|
38
42
|
/**
|
39
43
|
* An instance of the EventEmitter class to handle the emitting and registration of events.
|
40
44
|
*
|
package/lib/mjs/Embed.js
CHANGED
@@ -205,7 +205,10 @@ export function embed(config = {}) {
|
|
205
205
|
debug('Creating form', form, config.config);
|
206
206
|
isReady.then(() => {
|
207
207
|
Formio.license = true;
|
208
|
-
Formio.createForm(formElement, form,
|
208
|
+
Formio.createForm(formElement, form, {
|
209
|
+
...config.config,
|
210
|
+
...{ noLoader: true }
|
211
|
+
}).then((instance) => {
|
209
212
|
const submitDone = (submission) => {
|
210
213
|
debug('Submision Complete', submission);
|
211
214
|
let returnUrl = config.redirect;
|
package/lib/mjs/Form.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
export default class Form extends Element {
|
2
|
-
static embed(embed: any): any
|
2
|
+
static embed(embed: any): Promise<any>;
|
3
3
|
/**
|
4
4
|
* Creates an easy to use interface for embedding webforms, pdfs, and wizards into your application.
|
5
5
|
*
|
@@ -17,13 +17,16 @@ export default class Form extends Element {
|
|
17
17
|
* form.build();
|
18
18
|
*/
|
19
19
|
constructor(...args: any[]);
|
20
|
-
ready: any
|
21
|
-
readyResolve: any;
|
22
|
-
readyReject: any;
|
20
|
+
ready: Promise<any>;
|
21
|
+
readyResolve: (value: any) => void;
|
22
|
+
readyReject: (reason?: any) => void;
|
23
23
|
instance: any;
|
24
24
|
element: any;
|
25
25
|
options: any;
|
26
26
|
display: string;
|
27
|
+
createElement(tag: any, attrs: any, children: any): any;
|
28
|
+
set loading(arg: any);
|
29
|
+
loader: any;
|
27
30
|
/**
|
28
31
|
* Create a new form instance provided the display of the form.
|
29
32
|
*
|
@@ -84,7 +87,7 @@ export default class Form extends Element {
|
|
84
87
|
* @return {Promise<T>}
|
85
88
|
*/
|
86
89
|
build(): Promise<T>;
|
87
|
-
render(): any
|
90
|
+
render(): Promise<any>;
|
88
91
|
attach(element: any): any;
|
89
92
|
}
|
90
93
|
import Element from './Element';
|
package/lib/mjs/Form.js
CHANGED
@@ -3,7 +3,6 @@ import { Formio } from './Formio';
|
|
3
3
|
import Displays from './displays';
|
4
4
|
import templates from './templates';
|
5
5
|
import * as FormioUtils from './utils/utils';
|
6
|
-
import NativePromise from 'native-promise-only';
|
7
6
|
export default class Form extends Element {
|
8
7
|
/**
|
9
8
|
* Creates an easy to use interface for embedding webforms, pdfs, and wizards into your application.
|
@@ -30,7 +29,7 @@ export default class Form extends Element {
|
|
30
29
|
if (this.options.useSessionToken) {
|
31
30
|
Formio.useSessionToken(this.options);
|
32
31
|
}
|
33
|
-
this.ready = new
|
32
|
+
this.ready = new Promise((resolve, reject) => {
|
34
33
|
this.readyResolve = resolve;
|
35
34
|
this.readyReject = reject;
|
36
35
|
});
|
@@ -61,6 +60,47 @@ export default class Form extends Element {
|
|
61
60
|
}
|
62
61
|
this.display = '';
|
63
62
|
}
|
63
|
+
createElement(tag, attrs, children) {
|
64
|
+
const element = document.createElement(tag);
|
65
|
+
for (const attr in attrs) {
|
66
|
+
if (attrs.hasOwnProperty(attr)) {
|
67
|
+
element.setAttribute(attr, attrs[attr]);
|
68
|
+
}
|
69
|
+
}
|
70
|
+
(children || []).forEach(child => {
|
71
|
+
element.appendChild(this.createElement(child.tag, child.attrs, child.children));
|
72
|
+
});
|
73
|
+
return element;
|
74
|
+
}
|
75
|
+
set loading(load) {
|
76
|
+
if (!this.element || this.options.noLoader) {
|
77
|
+
return;
|
78
|
+
}
|
79
|
+
if (load) {
|
80
|
+
if (this.loader) {
|
81
|
+
return;
|
82
|
+
}
|
83
|
+
this.loader = this.createElement('div', {
|
84
|
+
'class': 'formio-loader'
|
85
|
+
}, [{
|
86
|
+
tag: 'div',
|
87
|
+
attrs: {
|
88
|
+
class: 'loader-wrapper'
|
89
|
+
},
|
90
|
+
children: [{
|
91
|
+
tag: 'div',
|
92
|
+
attrs: {
|
93
|
+
class: 'loader text-center'
|
94
|
+
}
|
95
|
+
}]
|
96
|
+
}]);
|
97
|
+
this.element.appendChild(this.loader);
|
98
|
+
}
|
99
|
+
else if (this.loader) {
|
100
|
+
this.element.removeChild(this.loader);
|
101
|
+
this.loader = null;
|
102
|
+
}
|
103
|
+
}
|
64
104
|
/**
|
65
105
|
* Create a new form instance provided the display of the form.
|
66
106
|
*
|
@@ -116,6 +156,7 @@ export default class Form extends Element {
|
|
116
156
|
if (typeof formParam === 'string') {
|
117
157
|
const formio = new Formio(formParam);
|
118
158
|
let error;
|
159
|
+
this.loading = true;
|
119
160
|
result = this.getSubmission(formio, this.options)
|
120
161
|
.catch((err) => {
|
121
162
|
error = err;
|
@@ -131,6 +172,7 @@ export default class Form extends Element {
|
|
131
172
|
if (error) {
|
132
173
|
form = this.errorForm(error);
|
133
174
|
}
|
175
|
+
this.loading = false;
|
134
176
|
this.instance = this.instance || this.create(form.display);
|
135
177
|
this.instance.url = formParam;
|
136
178
|
this.instance.nosubmit = false;
|
@@ -163,7 +205,7 @@ export default class Form extends Element {
|
|
163
205
|
if (formio.submissionId) {
|
164
206
|
return formio.loadSubmission(null, opts);
|
165
207
|
}
|
166
|
-
return
|
208
|
+
return Promise.resolve();
|
167
209
|
}
|
168
210
|
/**
|
169
211
|
* Returns the loaded forms JSON.
|
@@ -181,7 +223,7 @@ export default class Form extends Element {
|
|
181
223
|
*/
|
182
224
|
setDisplay(display) {
|
183
225
|
if ((this.display === display) && this.instance) {
|
184
|
-
return
|
226
|
+
return Promise.resolve(this.instance);
|
185
227
|
}
|
186
228
|
this.form.display = display;
|
187
229
|
this.instance.destroy();
|
@@ -196,7 +238,7 @@ export default class Form extends Element {
|
|
196
238
|
}
|
197
239
|
}
|
198
240
|
static embed(embed) {
|
199
|
-
return new
|
241
|
+
return new Promise((resolve) => {
|
200
242
|
if (!embed || !embed.src) {
|
201
243
|
resolve();
|
202
244
|
}
|
@@ -243,10 +285,10 @@ export default class Form extends Element {
|
|
243
285
|
*/
|
244
286
|
build() {
|
245
287
|
if (!this.instance) {
|
246
|
-
return
|
288
|
+
return Promise.reject('Form not ready. Use form.ready promise');
|
247
289
|
}
|
248
290
|
if (!this.element) {
|
249
|
-
return
|
291
|
+
return Promise.reject('No DOM element for form.');
|
250
292
|
}
|
251
293
|
// Add temporary loader.
|
252
294
|
const template = (this.options && this.options.template) ? this.options.template : 'bootstrap';
|
@@ -263,9 +305,9 @@ export default class Form extends Element {
|
|
263
305
|
}
|
264
306
|
render() {
|
265
307
|
if (!this.instance) {
|
266
|
-
return
|
308
|
+
return Promise.reject('Form not ready. Use form.ready promise');
|
267
309
|
}
|
268
|
-
return
|
310
|
+
return Promise.resolve(this.instance.render())
|
269
311
|
.then((param) => {
|
270
312
|
this.emit('render', param);
|
271
313
|
return param;
|
@@ -273,7 +315,7 @@ export default class Form extends Element {
|
|
273
315
|
}
|
274
316
|
attach(element) {
|
275
317
|
if (!this.instance) {
|
276
|
-
return
|
318
|
+
return Promise.reject('Form not ready. Use form.ready promise');
|
277
319
|
}
|
278
320
|
if (this.element) {
|
279
321
|
delete this.element.component;
|
package/lib/mjs/PDF.d.ts
CHANGED
@@ -4,9 +4,10 @@ export default class PDF extends Webform {
|
|
4
4
|
init(): void;
|
5
5
|
submitButton: any;
|
6
6
|
attachComponents(element: any, components: any, container: any): Promise<void>;
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
attach(element: any): Promise<void>;
|
8
|
+
iframeReady: Promise<any> | undefined;
|
9
|
+
iframeReadyResolve: ((value: any) => void) | undefined;
|
10
|
+
iframeReadyReject: ((reason?: any) => void) | undefined;
|
10
11
|
iframeElement: any;
|
11
12
|
/**
|
12
13
|
* Get the submission from the iframe.
|
@@ -14,6 +15,13 @@ export default class PDF extends Webform {
|
|
14
15
|
* @return {Promise<any>}
|
15
16
|
*/
|
16
17
|
getSubmission(): Promise<any>;
|
18
|
+
/**
|
19
|
+
* Ensure we have the submission from the iframe before we submit the form.
|
20
|
+
*
|
21
|
+
* @param options
|
22
|
+
* @return {*}
|
23
|
+
*/
|
24
|
+
submitForm(options?: {}): any;
|
17
25
|
getSrc(): string;
|
18
26
|
setForm(form: any, flags?: {}): any;
|
19
27
|
/**
|
package/lib/mjs/PDF.js
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
import NativePromise from 'native-promise-only';
|
2
1
|
import { Formio } from './Formio';
|
3
2
|
import Webform from './Webform';
|
4
3
|
import { fastCloneDeep, eachComponent } from './utils/utils';
|
@@ -56,7 +55,7 @@ export default class PDF extends Webform {
|
|
56
55
|
}
|
57
56
|
redraw() {
|
58
57
|
this.postMessage({ name: 'redraw' });
|
59
|
-
return this.builderMode ?
|
58
|
+
return this.builderMode ? Promise.resolve() : super.redraw();
|
60
59
|
}
|
61
60
|
destroy(all = false) {
|
62
61
|
if (this.iframeElement) {
|
@@ -69,7 +68,7 @@ export default class PDF extends Webform {
|
|
69
68
|
if (this.attached && this.builderMode && this.component.components) {
|
70
69
|
this.destroyComponents();
|
71
70
|
this.addComponents();
|
72
|
-
return
|
71
|
+
return Promise.resolve();
|
73
72
|
}
|
74
73
|
this.postMessage({ name: 'redraw' });
|
75
74
|
return super.rebuild();
|
@@ -94,7 +93,7 @@ export default class PDF extends Webform {
|
|
94
93
|
this.submitButton.refs = { ...this.refs };
|
95
94
|
this.submitButton.attachButton();
|
96
95
|
// Reset the iframeReady promise.
|
97
|
-
this.iframeReady = new
|
96
|
+
this.iframeReady = new Promise((resolve, reject) => {
|
98
97
|
this.iframeReadyResolve = resolve;
|
99
98
|
this.iframeReadyReject = reject;
|
100
99
|
});
|
@@ -143,7 +142,7 @@ export default class PDF extends Webform {
|
|
143
142
|
* @return {Promise<any>}
|
144
143
|
*/
|
145
144
|
getSubmission() {
|
146
|
-
return new
|
145
|
+
return new Promise((resolve) => {
|
147
146
|
this.once('iframe-submission', resolve);
|
148
147
|
this.postMessage({ name: 'getSubmission' });
|
149
148
|
});
|
package/lib/mjs/PDFBuilder.js
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
import _ from 'lodash';
|
2
|
-
import NativePromise from 'native-promise-only';
|
3
2
|
import { Formio } from './Formio';
|
4
3
|
import WebformBuilder from './WebformBuilder';
|
5
4
|
import { fastCloneDeep, getElementRect, getBrowserInfo } from './utils/utils';
|
@@ -152,7 +151,7 @@ export default class PDFBuilder extends WebformBuilder {
|
|
152
151
|
this.refs.hiddenFileInputElement.value = '';
|
153
152
|
});
|
154
153
|
}
|
155
|
-
return
|
154
|
+
return Promise.resolve();
|
156
155
|
}
|
157
156
|
// Normal PDF Builder
|
158
157
|
return super.attach(element).then(() => {
|
@@ -411,7 +410,7 @@ export default class PDFBuilder extends WebformBuilder {
|
|
411
410
|
if (!this.dropEvent) {
|
412
411
|
// a 'drop' event may not be emited in the chrome browser when using a Mac, therefore an additional check has been added
|
413
412
|
// eslint-disable-next-line no-undef
|
414
|
-
if (!this.dropEmitted && getBrowserInfo().chrome && globalThis.navigator.userAgentData.platform === 'macOS' && iframeRect.left < e.clientX && iframeRect.top < e.clientY) {
|
413
|
+
if (!this.dropEmitted && (getBrowserInfo().chrome || getBrowserInfo().edge) && globalThis.navigator.userAgentData.platform === 'macOS' && iframeRect.left < e.clientX && iframeRect.top < e.clientY) {
|
415
414
|
this.dropEvent = e;
|
416
415
|
this.dropEvent.dataTransfer.effectAllowed = 'all';
|
417
416
|
this.dropEmitted = true;
|
package/lib/mjs/Webform.d.ts
CHANGED
@@ -132,11 +132,6 @@ declare class Webform extends NestedDataComponent {
|
|
132
132
|
* @return {*}
|
133
133
|
*/
|
134
134
|
addLanguage(code: any, lang: any, active?: boolean): any;
|
135
|
-
/**
|
136
|
-
* Perform the localization initialization.
|
137
|
-
* @returns {*}
|
138
|
-
*/
|
139
|
-
localize(): any;
|
140
135
|
keyboardCatchableElement(element: any): boolean;
|
141
136
|
executeShortcuts: (event: any) => void;
|
142
137
|
/**
|
@@ -308,6 +303,8 @@ declare class Webform extends NestedDataComponent {
|
|
308
303
|
build(element: any): Promise<any>;
|
309
304
|
getClassName(): string;
|
310
305
|
render(): any;
|
306
|
+
redraw(): Promise<void> | Promise<boolean>;
|
307
|
+
attach(element: any): Promise<boolean>;
|
311
308
|
hasRequiredFields(): boolean;
|
312
309
|
/**
|
313
310
|
* Sets a new alert to display in the error dialog of the form.
|
@@ -365,10 +362,10 @@ declare class Webform extends NestedDataComponent {
|
|
365
362
|
*/
|
366
363
|
cancel(noconfirm: any): boolean;
|
367
364
|
setMetadata(submission: any): void;
|
368
|
-
submitForm(options?: {}): any
|
365
|
+
submitForm(options?: {}): Promise<any>;
|
369
366
|
setServerErrors(error: any): void;
|
370
367
|
serverErrors: any;
|
371
|
-
executeSubmit(options: any):
|
368
|
+
executeSubmit(options: any): Promise<object>;
|
372
369
|
submissionInProcess: boolean | undefined;
|
373
370
|
clearServerErrors(): void;
|
374
371
|
/**
|