@formio/js 5.1.0-dev.6056.ba6432d → 5.1.0-dev.6059.845a6e3
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/Changelog.md +13 -131
- package/README.md +1 -28
- package/dist/formio.builder.css +17 -19
- 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 +17 -19
- package/dist/formio.form.js +176 -102
- 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 -3
- package/dist/formio.full.css +17 -19
- package/dist/formio.full.js +101 -123
- package/dist/formio.full.min.css +2 -2
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +3 -3
- package/dist/formio.js +10 -10
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +1 -1
- package/dist/formio.utils.js +3 -3
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +1 -1
- package/lib/cjs/CDN.d.ts +1 -1
- package/lib/cjs/CDN.js +2 -2
- package/lib/cjs/Embed.js +1 -1
- package/lib/cjs/Form.d.ts +6 -4
- package/lib/cjs/Form.js +8 -16
- package/lib/cjs/Formio.js +1 -1
- package/lib/cjs/PDFBuilder.js +4 -4
- package/lib/cjs/Webform.d.ts +13 -16
- package/lib/cjs/Webform.js +148 -162
- package/lib/cjs/WebformBuilder.js +28 -17
- package/lib/cjs/Wizard.js +1 -1
- package/lib/cjs/WizardBuilder.js +2 -15
- package/lib/cjs/components/Components.d.ts +0 -3
- package/lib/cjs/components/_classes/component/Component.d.ts +0 -1
- package/lib/cjs/components/_classes/component/Component.js +11 -38
- package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
- package/lib/cjs/components/_classes/component/editForm/Component.edit.data.js +2 -13
- package/lib/cjs/components/_classes/component/editForm/utils.d.ts +0 -1
- package/lib/cjs/components/_classes/component/editForm/utils.js +0 -3
- package/lib/cjs/components/_classes/input/Input.js +1 -23
- package/lib/cjs/components/_classes/list/ListComponent.js +4 -4
- package/lib/cjs/components/_classes/multivalue/Multivalue.d.ts +1 -1
- package/lib/cjs/components/_classes/multivalue/Multivalue.js +3 -10
- package/lib/cjs/components/_classes/nested/NestedComponent.form.js +0 -13
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +0 -2
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +31 -52
- package/lib/cjs/components/address/Address.js +1 -1
- package/lib/cjs/components/button/Button.js +6 -6
- package/lib/cjs/components/checkbox/Checkbox.d.ts +1 -1
- package/lib/cjs/components/checkbox/Checkbox.js +2 -2
- package/lib/cjs/components/content/editForm/Content.edit.display.js +0 -8
- package/lib/cjs/components/currency/editForm/Currency.edit.display.js +0 -12
- package/lib/cjs/components/datagrid/DataGrid.d.ts +0 -2
- package/lib/cjs/components/datagrid/DataGrid.js +26 -41
- package/lib/cjs/components/day/Day.js +7 -9
- package/lib/cjs/components/day/editForm/Day.edit.display.js +0 -8
- package/lib/cjs/components/editgrid/EditGrid.d.ts +1 -1
- package/lib/cjs/components/editgrid/EditGrid.js +8 -26
- package/lib/cjs/components/email/editForm/Email.edit.display.js +0 -12
- package/lib/cjs/components/fieldset/editForm/Fieldset.edit.display.js +0 -8
- package/lib/cjs/components/file/File.d.ts +1 -1
- package/lib/cjs/components/file/File.js +17 -23
- package/lib/cjs/components/form/Form.d.ts +1 -1
- package/lib/cjs/components/form/Form.js +5 -9
- package/lib/cjs/components/form/editForm/Form.edit.form.js +3 -3
- package/lib/cjs/components/hidden/Hidden.d.ts +1 -0
- package/lib/cjs/components/hidden/Hidden.js +1 -1
- package/lib/cjs/components/hidden/editForm/Hidden.edit.display.js +0 -8
- package/lib/cjs/components/html/editForm/HTML.edit.display.js +0 -8
- package/lib/cjs/components/number/Number.js +5 -12
- package/lib/cjs/components/number/editForm/Number.edit.display.js +0 -12
- package/lib/cjs/components/password/editForm/Password.edit.display.js +1 -13
- package/lib/cjs/components/phonenumber/PhoneNumber.form.js +1 -9
- package/lib/cjs/components/radio/Radio.js +0 -10
- package/lib/cjs/components/recaptcha/ReCaptcha.js +2 -2
- package/lib/cjs/components/select/Select.d.ts +1 -0
- package/lib/cjs/components/select/Select.js +33 -12
- package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.js +2 -3
- package/lib/cjs/components/selectboxes/SelectBoxes.js +2 -2
- package/lib/cjs/components/signature/Signature.d.ts +1 -1
- package/lib/cjs/components/signature/Signature.js +3 -5
- package/lib/cjs/components/signature/editForm/Signature.edit.display.d.ts +6 -0
- package/lib/cjs/components/signature/editForm/Signature.edit.display.js +1 -0
- package/lib/cjs/components/survey/Survey.js +2 -2
- package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +0 -8
- package/lib/cjs/components/tags/Tags.d.ts +1 -1
- package/lib/cjs/components/tags/Tags.js +2 -2
- package/lib/cjs/components/textarea/TextArea.js +6 -6
- package/lib/cjs/components/textarea/editForm/TextArea.edit.display.js +0 -12
- package/lib/cjs/components/url/editForm/Url.edit.display.js +0 -12
- package/lib/cjs/components/well/editForm/Well.edit.display.js +0 -8
- package/lib/cjs/formio.form.js +0 -5
- package/lib/cjs/providers/storage/googleDrive.js +2 -3
- package/lib/cjs/providers/storage/s3.js +3 -3
- package/lib/cjs/providers/storage/xhr.d.ts +0 -1
- package/lib/cjs/providers/storage/xhr.js +1 -6
- package/lib/cjs/translations/en.d.ts +81 -234
- package/lib/cjs/translations/en.js +81 -8
- package/lib/cjs/utils/ChoicesWrapper.d.ts +25 -4
- package/lib/cjs/utils/ChoicesWrapper.js +124 -47
- package/lib/cjs/utils/formUtils.d.ts +2 -2
- package/lib/cjs/utils/i18n.d.ts +2 -5
- package/lib/cjs/utils/i18n.js +5 -32
- package/lib/cjs/widgets/CalendarWidget.js +27 -27
- package/lib/mjs/CDN.d.ts +1 -1
- package/lib/mjs/CDN.js +2 -2
- package/lib/mjs/Embed.js +1 -1
- package/lib/mjs/Form.d.ts +6 -4
- package/lib/mjs/Form.js +9 -17
- package/lib/mjs/Formio.js +1 -1
- package/lib/mjs/PDFBuilder.js +4 -4
- package/lib/mjs/Webform.d.ts +13 -16
- package/lib/mjs/Webform.js +158 -171
- package/lib/mjs/WebformBuilder.js +28 -17
- package/lib/mjs/Wizard.js +1 -1
- package/lib/mjs/WizardBuilder.js +2 -15
- package/lib/mjs/components/Components.d.ts +0 -3
- package/lib/mjs/components/_classes/component/Component.d.ts +0 -1
- package/lib/mjs/components/_classes/component/Component.js +11 -27
- package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
- package/lib/mjs/components/_classes/component/editForm/Component.edit.data.js +2 -13
- package/lib/mjs/components/_classes/component/editForm/utils.d.ts +0 -1
- package/lib/mjs/components/_classes/component/editForm/utils.js +0 -3
- package/lib/mjs/components/_classes/input/Input.js +1 -22
- package/lib/mjs/components/_classes/list/ListComponent.js +4 -4
- package/lib/mjs/components/_classes/multivalue/Multivalue.d.ts +1 -1
- package/lib/mjs/components/_classes/multivalue/Multivalue.js +3 -10
- package/lib/mjs/components/_classes/nested/NestedComponent.form.js +0 -13
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +0 -2
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +31 -53
- package/lib/mjs/components/address/Address.js +1 -1
- package/lib/mjs/components/button/Button.js +6 -6
- package/lib/mjs/components/checkbox/Checkbox.d.ts +1 -1
- package/lib/mjs/components/checkbox/Checkbox.js +2 -2
- package/lib/mjs/components/content/editForm/Content.edit.display.js +0 -8
- package/lib/mjs/components/currency/editForm/Currency.edit.display.js +0 -12
- package/lib/mjs/components/datagrid/DataGrid.d.ts +0 -2
- package/lib/mjs/components/datagrid/DataGrid.js +26 -41
- package/lib/mjs/components/day/Day.js +7 -9
- package/lib/mjs/components/day/editForm/Day.edit.display.js +0 -8
- package/lib/mjs/components/editgrid/EditGrid.d.ts +1 -1
- package/lib/mjs/components/editgrid/EditGrid.js +7 -25
- package/lib/mjs/components/email/editForm/Email.edit.display.js +0 -12
- package/lib/mjs/components/fieldset/editForm/Fieldset.edit.display.js +0 -8
- package/lib/mjs/components/file/File.d.ts +1 -1
- package/lib/mjs/components/file/File.js +17 -23
- package/lib/mjs/components/form/Form.d.ts +1 -1
- package/lib/mjs/components/form/Form.js +5 -8
- package/lib/mjs/components/form/editForm/Form.edit.form.js +3 -3
- package/lib/mjs/components/hidden/Hidden.d.ts +1 -0
- package/lib/mjs/components/hidden/Hidden.js +1 -1
- package/lib/mjs/components/hidden/editForm/Hidden.edit.display.js +0 -8
- package/lib/mjs/components/html/editForm/HTML.edit.display.js +0 -8
- package/lib/mjs/components/number/Number.js +5 -12
- package/lib/mjs/components/number/editForm/Number.edit.display.js +0 -12
- package/lib/mjs/components/password/editForm/Password.edit.display.js +1 -13
- package/lib/mjs/components/phonenumber/PhoneNumber.form.js +1 -9
- package/lib/mjs/components/radio/Radio.js +0 -10
- package/lib/mjs/components/recaptcha/ReCaptcha.js +2 -2
- package/lib/mjs/components/select/Select.d.ts +1 -0
- package/lib/mjs/components/select/Select.js +34 -14
- package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.js +2 -3
- package/lib/mjs/components/selectboxes/SelectBoxes.js +2 -2
- package/lib/mjs/components/signature/Signature.d.ts +1 -1
- package/lib/mjs/components/signature/Signature.js +3 -5
- package/lib/mjs/components/signature/editForm/Signature.edit.display.d.ts +6 -0
- package/lib/mjs/components/signature/editForm/Signature.edit.display.js +1 -0
- package/lib/mjs/components/survey/Survey.js +2 -2
- package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +0 -8
- package/lib/mjs/components/tags/Tags.d.ts +1 -1
- package/lib/mjs/components/tags/Tags.js +2 -2
- package/lib/mjs/components/textarea/TextArea.js +6 -6
- package/lib/mjs/components/textarea/editForm/TextArea.edit.display.js +0 -12
- package/lib/mjs/components/url/editForm/Url.edit.display.js +0 -12
- package/lib/mjs/components/well/editForm/Well.edit.display.js +0 -8
- package/lib/mjs/formio.form.js +0 -5
- package/lib/mjs/providers/storage/googleDrive.js +2 -3
- package/lib/mjs/providers/storage/s3.js +3 -3
- package/lib/mjs/providers/storage/xhr.d.ts +0 -1
- package/lib/mjs/providers/storage/xhr.js +1 -6
- package/lib/mjs/translations/en.d.ts +81 -234
- package/lib/mjs/translations/en.js +1 -87
- package/lib/mjs/utils/ChoicesWrapper.d.ts +25 -4
- package/lib/mjs/utils/ChoicesWrapper.js +119 -26
- package/lib/mjs/utils/formUtils.d.ts +2 -2
- package/lib/mjs/utils/i18n.d.ts +2 -5
- package/lib/mjs/utils/i18n.js +5 -32
- package/lib/mjs/widgets/CalendarWidget.js +27 -27
- package/package.json +11 -27
|
@@ -1,10 +1,83 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
var _a;
|
|
6
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
exports.default = {
|
|
4
|
+
unsavedRowsError: 'Please save all rows before proceeding.',
|
|
5
|
+
invalidRowsError: 'Please correct invalid rows before proceeding.',
|
|
6
|
+
invalidRowError: 'Invalid row. Please correct it or delete.',
|
|
7
|
+
invalidOption: '{{field}} is an invalid value.',
|
|
8
|
+
invalidDay: '{{field}} is not a valid day.',
|
|
9
|
+
alertMessageWithLabel: '{{label}}: {{message}}',
|
|
10
|
+
alertMessage: '{{message}}',
|
|
11
|
+
complete: 'Submission Complete',
|
|
12
|
+
error: 'Please fix the following errors before submitting.',
|
|
13
|
+
errorListHotkey: 'Press Ctrl + Alt + X to go back to the error list.',
|
|
14
|
+
errorsListNavigationMessage: 'Click to navigate to the field with following error.',
|
|
15
|
+
submitError: 'Please check the form and correct all errors before submitting.',
|
|
16
|
+
required: '{{field}} is required',
|
|
17
|
+
unique: '{{field}} must be unique',
|
|
18
|
+
array: '{{field}} must be an array',
|
|
19
|
+
array_nonempty: '{{field}} must be a non-empty array', // eslint-disable-line camelcase
|
|
20
|
+
nonarray: '{{field}} must not be an array',
|
|
21
|
+
select: '{{field}} contains an invalid selection',
|
|
22
|
+
pattern: '{{field}} does not match the pattern {{pattern}}',
|
|
23
|
+
minLength: '{{field}} must have at least {{length}} characters.',
|
|
24
|
+
maxLength: '{{field}} must have no more than {{length}} characters.',
|
|
25
|
+
minWords: '{{field}} must have at least {{length}} words.',
|
|
26
|
+
maxWords: '{{field}} must have no more than {{length}} words.',
|
|
27
|
+
min: '{{field}} cannot be less than {{min}}.',
|
|
28
|
+
max: '{{field}} cannot be greater than {{max}}.',
|
|
29
|
+
maxDate: '{{field}} should not contain date after {{maxDate}}',
|
|
30
|
+
minDate: '{{field}} should not contain date before {{minDate}}',
|
|
31
|
+
maxYear: '{{field}} should not contain year greater than {{maxYear}}',
|
|
32
|
+
minYear: '{{field}} should not contain year less than {{minYear}}',
|
|
33
|
+
minSelectedCount: 'You must select at least {{minCount}} items',
|
|
34
|
+
maxSelectedCount: 'You may only select up to {{maxCount}} items',
|
|
35
|
+
invalid_email: '{{field}} must be a valid email.', // eslint-disable-line camelcase
|
|
36
|
+
invalid_url: '{{field}} must be a valid url.', // eslint-disable-line camelcase
|
|
37
|
+
invalid_regex: '{{field}} does not match the pattern {{regex}}.', // eslint-disable-line camelcase
|
|
38
|
+
invalid_date: '{{field}} is not a valid date.', // eslint-disable-line camelcase
|
|
39
|
+
invalid_day: '{{field}} is not a valid day.', // eslint-disable-line camelcase
|
|
40
|
+
invalidValueProperty: 'Invalid Value Property',
|
|
41
|
+
mask: '{{field}} does not match the mask.',
|
|
42
|
+
valueIsNotAvailable: '{{ field }} is an invalid value.',
|
|
43
|
+
stripe: '{{stripe}}',
|
|
44
|
+
month: 'Month',
|
|
45
|
+
day: 'Day',
|
|
46
|
+
year: 'Year',
|
|
47
|
+
january: 'January',
|
|
48
|
+
february: 'February',
|
|
49
|
+
march: 'March',
|
|
50
|
+
april: 'April',
|
|
51
|
+
may: 'May',
|
|
52
|
+
june: 'June',
|
|
53
|
+
july: 'July',
|
|
54
|
+
august: 'August',
|
|
55
|
+
september: 'September',
|
|
56
|
+
october: 'October',
|
|
57
|
+
november: 'November',
|
|
58
|
+
december: 'December',
|
|
59
|
+
next: 'Next',
|
|
60
|
+
previous: 'Previous',
|
|
61
|
+
cancel: 'Cancel',
|
|
62
|
+
submit: 'Submit Form',
|
|
63
|
+
confirmCancel: 'Are you sure you want to cancel?',
|
|
64
|
+
saveDraftInstanceError: 'Cannot save draft because there is no formio instance.',
|
|
65
|
+
saveDraftAuthError: 'Cannot save draft unless a user is authenticated.',
|
|
66
|
+
restoreDraftInstanceError: 'Cannot restore draft because there is no formio instance.',
|
|
67
|
+
saveDraftError: 'Unable to save draft.',
|
|
68
|
+
restoreDraftError: 'Unable to restore draft.',
|
|
69
|
+
time: 'Invalid time',
|
|
70
|
+
cancelButtonAriaLabel: 'Cancel button. Click to reset the form',
|
|
71
|
+
previousButtonAriaLabel: 'Previous button. Click to go back to the previous tab',
|
|
72
|
+
nextButtonAriaLabel: 'Next button. Click to go to the next tab',
|
|
73
|
+
submitButtonAriaLabel: 'Submit Form button. Click to submit the form',
|
|
74
|
+
reCaptchaTokenValidationError: 'ReCAPTCHA: Token validation error',
|
|
75
|
+
reCaptchaTokenNotSpecifiedError: 'ReCAPTCHA: Token is not specified in submission',
|
|
76
|
+
apiKey: 'API Key is not unique: {{key}}',
|
|
77
|
+
typeRemaining: '{{ remaining }} {{ type }} remaining.',
|
|
78
|
+
typeCount: '{{ count }} {{ type }}',
|
|
79
|
+
requiredDayField: '{{ field }} is required',
|
|
80
|
+
requiredDayEmpty: '{{ field }} is required',
|
|
81
|
+
requiredMonthField: '{{ field }} is required',
|
|
82
|
+
requiredYearField: '{{ field }} is required'
|
|
83
|
+
};
|
|
@@ -1,17 +1,38 @@
|
|
|
1
|
+
export namespace KEY_CODES {
|
|
2
|
+
let BACK_KEY: number;
|
|
3
|
+
let DELETE_KEY: number;
|
|
4
|
+
let TAB_KEY: number;
|
|
5
|
+
let ENTER_KEY: number;
|
|
6
|
+
let A_KEY: number;
|
|
7
|
+
let ESC_KEY: number;
|
|
8
|
+
let UP_KEY: number;
|
|
9
|
+
let DOWN_KEY: number;
|
|
10
|
+
let PAGE_UP_KEY: number;
|
|
11
|
+
let PAGE_DOWN_KEY: number;
|
|
12
|
+
}
|
|
1
13
|
export default ChoicesWrapper;
|
|
2
14
|
declare class ChoicesWrapper extends Choices {
|
|
3
15
|
constructor(...args: any[]);
|
|
4
|
-
_onTabKey(
|
|
16
|
+
_onTabKey({ activeItems, hasActiveDropdown }: {
|
|
17
|
+
activeItems: any;
|
|
18
|
+
hasActiveDropdown: any;
|
|
19
|
+
}): void;
|
|
5
20
|
isDirectionUsing: boolean;
|
|
6
21
|
shouldOpenDropDown: boolean;
|
|
7
22
|
_onTouchEnd(event: any): void;
|
|
8
|
-
|
|
23
|
+
_handleButtonAction(activeItems: any, element: any): void;
|
|
24
|
+
_onEnterKey(args: any): void;
|
|
9
25
|
_onDirectionKey(...args: any[]): void;
|
|
10
26
|
timeout: NodeJS.Timeout | undefined;
|
|
11
27
|
_selectHighlightedChoice(): void;
|
|
12
28
|
_onKeyDown(event: any): void;
|
|
13
|
-
onSelectValue(event
|
|
29
|
+
onSelectValue({ event, activeItems, hasActiveDropdown }: {
|
|
30
|
+
event: any;
|
|
31
|
+
activeItems: any;
|
|
32
|
+
hasActiveDropdown: any;
|
|
33
|
+
}): void;
|
|
14
34
|
showDropdown(...args: any[]): void;
|
|
15
35
|
hideDropdown(...args: any[]): void;
|
|
36
|
+
_onBlur(...args: any[]): void;
|
|
16
37
|
}
|
|
17
|
-
import Choices from 'choices.js';
|
|
38
|
+
import Choices from '@formio/choices.js';
|
|
@@ -1,30 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
4
|
};
|
|
25
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
|
|
27
|
-
const
|
|
6
|
+
exports.KEY_CODES = void 0;
|
|
7
|
+
const choices_js_1 = __importDefault(require("@formio/choices.js"));
|
|
8
|
+
/**
|
|
9
|
+
* TODO: REMOVE THIS ONCE THE PULL REQUEST HAS BEEN RESOLVED.
|
|
10
|
+
*
|
|
11
|
+
* https://github.com/jshjohnson/Choices/pull/788
|
|
12
|
+
*
|
|
13
|
+
* This is intentionally not part of the extended class, since other components use Choices and need this fix as well.
|
|
14
|
+
* @type {Choices._generatePlaceholderValue}
|
|
15
|
+
* @private
|
|
16
|
+
*/
|
|
17
|
+
choices_js_1.default.prototype._generatePlaceholderValue = function () {
|
|
18
|
+
if (this._isSelectElement && this.passedElement.placeholderOption) {
|
|
19
|
+
const { placeholderOption } = this.passedElement;
|
|
20
|
+
return placeholderOption ? placeholderOption.text : false;
|
|
21
|
+
}
|
|
22
|
+
const { placeholder, placeholderValue } = this.config;
|
|
23
|
+
const { element: { dataset }, } = this.passedElement;
|
|
24
|
+
if (placeholder) {
|
|
25
|
+
if (placeholderValue) {
|
|
26
|
+
return placeholderValue;
|
|
27
|
+
}
|
|
28
|
+
if (dataset.placeholder) {
|
|
29
|
+
return dataset.placeholder;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
};
|
|
34
|
+
exports.KEY_CODES = {
|
|
35
|
+
BACK_KEY: 46,
|
|
36
|
+
DELETE_KEY: 8,
|
|
37
|
+
TAB_KEY: 9,
|
|
38
|
+
ENTER_KEY: 13,
|
|
39
|
+
A_KEY: 65,
|
|
40
|
+
ESC_KEY: 27,
|
|
41
|
+
UP_KEY: 38,
|
|
42
|
+
DOWN_KEY: 40,
|
|
43
|
+
PAGE_UP_KEY: 33,
|
|
44
|
+
PAGE_DOWN_KEY: 34,
|
|
45
|
+
};
|
|
28
46
|
class ChoicesWrapper extends choices_js_1.default {
|
|
29
47
|
constructor(...args) {
|
|
30
48
|
super(...args);
|
|
@@ -51,13 +69,24 @@ class ChoicesWrapper extends choices_js_1.default {
|
|
|
51
69
|
}
|
|
52
70
|
this._wasTap = true;
|
|
53
71
|
}
|
|
54
|
-
|
|
55
|
-
|
|
72
|
+
_handleButtonAction(activeItems, element) {
|
|
73
|
+
if (!this._isSelectOneElement) {
|
|
74
|
+
return super._handleButtonAction(activeItems, element);
|
|
75
|
+
}
|
|
76
|
+
if (!activeItems ||
|
|
77
|
+
!element ||
|
|
78
|
+
!this.config.removeItems ||
|
|
79
|
+
!this.config.removeItemButton) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
super._handleButtonAction(activeItems, element);
|
|
83
|
+
}
|
|
84
|
+
_onEnterKey(args) {
|
|
56
85
|
// Prevent dropdown form opening when removeItemButton was pressed using 'Enter' on keyboard
|
|
57
|
-
if (event.target.className === 'choices__button') {
|
|
86
|
+
if (args.event.target.className === 'choices__button') {
|
|
58
87
|
this.shouldOpenDropDown = false;
|
|
59
88
|
}
|
|
60
|
-
super._onEnterKey(
|
|
89
|
+
super._onEnterKey(args);
|
|
61
90
|
}
|
|
62
91
|
_onDirectionKey(...args) {
|
|
63
92
|
if (!this._isSelectOneElement) {
|
|
@@ -71,18 +100,17 @@ class ChoicesWrapper extends choices_js_1.default {
|
|
|
71
100
|
this.isDirectionUsing = false;
|
|
72
101
|
}, 250);
|
|
73
102
|
}
|
|
74
|
-
_onTabKey() {
|
|
75
|
-
if (
|
|
76
|
-
this._selectHighlightedChoice();
|
|
103
|
+
_onTabKey({ activeItems, hasActiveDropdown }) {
|
|
104
|
+
if (hasActiveDropdown) {
|
|
105
|
+
this._selectHighlightedChoice(activeItems);
|
|
77
106
|
}
|
|
78
107
|
}
|
|
79
108
|
_selectHighlightedChoice() {
|
|
80
|
-
const highlightedChoice = this.dropdown.
|
|
109
|
+
const highlightedChoice = this.dropdown.getChild(`.${this.config.classNames.highlightedState}`);
|
|
81
110
|
if (highlightedChoice) {
|
|
82
111
|
const id = highlightedChoice.dataset.id;
|
|
83
|
-
const choice = id && this._store.getChoiceById(
|
|
112
|
+
const choice = id && this._store.getChoiceById(id);
|
|
84
113
|
this._addItem({
|
|
85
|
-
id: choice.id,
|
|
86
114
|
value: choice.value,
|
|
87
115
|
label: choice.label,
|
|
88
116
|
choiceId: choice.id,
|
|
@@ -93,16 +121,61 @@ class ChoicesWrapper extends choices_js_1.default {
|
|
|
93
121
|
});
|
|
94
122
|
this._triggerChange(choice.value);
|
|
95
123
|
}
|
|
124
|
+
event.preventDefault();
|
|
96
125
|
}
|
|
97
126
|
_onKeyDown(event) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
127
|
+
if (!this._isSelectOneElement) {
|
|
128
|
+
return super._onKeyDown(event);
|
|
129
|
+
}
|
|
130
|
+
const { target, keyCode, ctrlKey, metaKey } = event;
|
|
131
|
+
if (target !== this.input.element &&
|
|
132
|
+
!this.containerOuter.element.contains(target)) {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
const activeItems = this._store.activeItems;
|
|
136
|
+
const hasFocusedInput = this.input.isFocussed;
|
|
137
|
+
const hasActiveDropdown = this.dropdown.isActive;
|
|
138
|
+
const hasItems = this.itemList.hasChildren;
|
|
139
|
+
const keyString = String.fromCharCode(keyCode);
|
|
140
|
+
const { BACK_KEY, DELETE_KEY, TAB_KEY, ENTER_KEY, A_KEY, ESC_KEY, UP_KEY, DOWN_KEY, PAGE_UP_KEY, PAGE_DOWN_KEY, } = exports.KEY_CODES;
|
|
141
|
+
const hasCtrlDownKeyPressed = ctrlKey || metaKey;
|
|
142
|
+
// If a user is typing and the dropdown is not active
|
|
143
|
+
if (!hasActiveDropdown && !this._isTextElement && /[a-zA-Z0-9-_ ]/.test(keyString)) {
|
|
144
|
+
const currentValue = this.input.element.value;
|
|
145
|
+
this.input.element.value = currentValue ? `${currentValue}${keyString}` : keyString;
|
|
146
|
+
this.showDropdown();
|
|
147
|
+
}
|
|
148
|
+
// Map keys to key actions
|
|
149
|
+
const keyDownActions = {
|
|
150
|
+
[A_KEY]: this._onAKey,
|
|
151
|
+
[TAB_KEY]: this._onTabKey,
|
|
152
|
+
[ENTER_KEY]: this._onEnterKey,
|
|
153
|
+
[ESC_KEY]: this._onEscapeKey,
|
|
154
|
+
[UP_KEY]: this._onDirectionKey,
|
|
155
|
+
[PAGE_UP_KEY]: this._onDirectionKey,
|
|
156
|
+
[DOWN_KEY]: this._onDirectionKey,
|
|
157
|
+
[PAGE_DOWN_KEY]: this._onDirectionKey,
|
|
158
|
+
[DELETE_KEY]: this._onDeleteKey,
|
|
159
|
+
[BACK_KEY]: this._onDeleteKey,
|
|
160
|
+
};
|
|
161
|
+
// If keycode has a function, run it
|
|
162
|
+
if (keyDownActions[keyCode]) {
|
|
163
|
+
keyDownActions[keyCode]({
|
|
164
|
+
event,
|
|
165
|
+
target,
|
|
166
|
+
keyCode,
|
|
167
|
+
metaKey,
|
|
168
|
+
activeItems,
|
|
169
|
+
hasFocusedInput,
|
|
170
|
+
hasActiveDropdown,
|
|
171
|
+
hasItems,
|
|
172
|
+
hasCtrlDownKeyPressed,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
102
175
|
}
|
|
103
|
-
onSelectValue(event, hasActiveDropdown) {
|
|
176
|
+
onSelectValue({ event, activeItems, hasActiveDropdown }) {
|
|
104
177
|
if (hasActiveDropdown) {
|
|
105
|
-
this._selectHighlightedChoice();
|
|
178
|
+
this._selectHighlightedChoice(activeItems);
|
|
106
179
|
}
|
|
107
180
|
else if (this._isSelectOneElement) {
|
|
108
181
|
this.showDropdown();
|
|
@@ -110,13 +183,11 @@ class ChoicesWrapper extends choices_js_1.default {
|
|
|
110
183
|
}
|
|
111
184
|
}
|
|
112
185
|
showDropdown(...args) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
super.showDropdown(...args);
|
|
119
|
-
}, 0);
|
|
186
|
+
if (!this.shouldOpenDropDown) {
|
|
187
|
+
this.shouldOpenDropDown = true;
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
super.showDropdown(...args);
|
|
120
191
|
}
|
|
121
192
|
hideDropdown(...args) {
|
|
122
193
|
if (this.isDirectionUsing) {
|
|
@@ -124,5 +195,11 @@ class ChoicesWrapper extends choices_js_1.default {
|
|
|
124
195
|
}
|
|
125
196
|
super.hideDropdown(...args);
|
|
126
197
|
}
|
|
198
|
+
_onBlur(...args) {
|
|
199
|
+
if (this._isScrollingOnIe) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
super._onBlur(...args);
|
|
203
|
+
}
|
|
127
204
|
}
|
|
128
205
|
exports.default = ChoicesWrapper;
|
|
@@ -26,8 +26,8 @@ export const getBestMatch: typeof Utils.getBestMatch;
|
|
|
26
26
|
export const getComponentFromPath: typeof Utils.getComponentFromPath;
|
|
27
27
|
export const getComponentValue: typeof Utils.getComponentValue;
|
|
28
28
|
export const findComponents: typeof Utils.findComponents;
|
|
29
|
-
export const eachComponentDataAsync: (components: Component[], data: DataObject, fn: EachComponentDataAsyncCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?:
|
|
30
|
-
export const eachComponentData: (components: Component[], data: DataObject, fn: EachComponentDataCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?:
|
|
29
|
+
export const eachComponentDataAsync: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataAsyncCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => Promise<void>;
|
|
30
|
+
export const eachComponentData: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => void;
|
|
31
31
|
export const getComponentKey: typeof Utils.getComponentKey;
|
|
32
32
|
export const getContextualRowPath: typeof Utils.getContextualRowPath;
|
|
33
33
|
export const getContextualRowData: typeof Utils.getContextualRowData;
|
package/lib/cjs/utils/i18n.d.ts
CHANGED
|
@@ -2,16 +2,13 @@
|
|
|
2
2
|
* This file is used to mimic the i18n library interface.
|
|
3
3
|
*/
|
|
4
4
|
export class I18n {
|
|
5
|
-
static languages: {};
|
|
6
|
-
static setDefaultTranslations(languages: any): void;
|
|
7
5
|
static init(languages?: {}): I18n;
|
|
8
6
|
static createInstance(): I18n;
|
|
9
7
|
constructor(languages?: {});
|
|
10
|
-
languages:
|
|
11
|
-
defaultKeys: any;
|
|
8
|
+
languages: {};
|
|
12
9
|
language: string;
|
|
13
10
|
currentLanguage: any;
|
|
14
|
-
setLanguages(languages: any
|
|
11
|
+
setLanguages(languages: any): void;
|
|
15
12
|
dir(lang?: string): "rtl" | "ltr";
|
|
16
13
|
changeLanguage(language: any, ready?: null): void;
|
|
17
14
|
addResourceBundle(language: any, type: any, strings: any): void;
|
package/lib/cjs/utils/i18n.js
CHANGED
|
@@ -6,8 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.I18n = void 0;
|
|
7
7
|
const utils_1 = require("@formio/core/utils");
|
|
8
8
|
const i18n_1 = __importDefault(require("../i18n"));
|
|
9
|
-
const lodash_1 = require("lodash");
|
|
10
|
-
const core_1 = require("@formio/core");
|
|
11
9
|
const i18Defaults = {};
|
|
12
10
|
for (const lang in i18n_1.default.resources) {
|
|
13
11
|
if (i18n_1.default.resources.hasOwnProperty(lang)) {
|
|
@@ -19,28 +17,13 @@ for (const lang in i18n_1.default.resources) {
|
|
|
19
17
|
*/
|
|
20
18
|
class I18n {
|
|
21
19
|
constructor(languages = {}) {
|
|
22
|
-
|
|
23
|
-
this.languages = (0, core_1.fastCloneDeep)(I18n.languages || {});
|
|
24
|
-
this.defaultKeys = ((_a = I18n.languages) === null || _a === void 0 ? void 0 : _a.en) || {};
|
|
20
|
+
this.languages = i18Defaults;
|
|
25
21
|
this.language = 'en';
|
|
26
22
|
this.currentLanguage = i18Defaults.en;
|
|
27
23
|
this.setLanguages(languages);
|
|
28
24
|
this.changeLanguage(this.language);
|
|
29
25
|
}
|
|
30
|
-
|
|
31
|
-
if ((0, lodash_1.isEmpty)(languages)) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
for (const lang in languages) {
|
|
35
|
-
if (lang !== 'language' && languages.hasOwnProperty(lang)) {
|
|
36
|
-
if (!this.languages[lang]) {
|
|
37
|
-
this.languages[lang] = {};
|
|
38
|
-
}
|
|
39
|
-
this.languages[lang] = Object.assign(Object.assign({}, languages[lang]), this.languages[lang]);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
setLanguages(languages, noDefaultOverride) {
|
|
26
|
+
setLanguages(languages) {
|
|
44
27
|
if (languages.resources) {
|
|
45
28
|
for (const lang in languages.resources) {
|
|
46
29
|
if (languages.resources.hasOwnProperty(lang)) {
|
|
@@ -67,8 +50,7 @@ class I18n {
|
|
|
67
50
|
if (!this.languages[lang]) {
|
|
68
51
|
this.languages[lang] = {};
|
|
69
52
|
}
|
|
70
|
-
this.languages[lang] =
|
|
71
|
-
? Object.assign(Object.assign({}, languages[lang]), this.languages[lang]) : Object.assign(Object.assign({}, this.languages[lang]), languages[lang]);
|
|
53
|
+
this.languages[lang] = Object.assign(Object.assign({}, this.languages[lang]), languages[lang]);
|
|
72
54
|
}
|
|
73
55
|
}
|
|
74
56
|
}
|
|
@@ -98,23 +80,14 @@ class I18n {
|
|
|
98
80
|
}
|
|
99
81
|
t(text, ...args) {
|
|
100
82
|
var _a;
|
|
101
|
-
|
|
102
|
-
// provide compatibility with cases where the entire phrase is used as a key
|
|
103
|
-
// get the phrase that is possibly being used as a key
|
|
104
|
-
const defaultKey = this.defaultKeys[text];
|
|
105
|
-
if (defaultKey && this.currentLanguage[defaultKey]) {
|
|
106
|
-
// get translation using the phrase as a key
|
|
107
|
-
currentTranslation = this.currentLanguage[defaultKey];
|
|
108
|
-
}
|
|
109
|
-
if (currentTranslation) {
|
|
83
|
+
if (this.currentLanguage[text]) {
|
|
110
84
|
const customTranslationFieldName = (_a = args[0]) === null || _a === void 0 ? void 0 : _a.field;
|
|
111
85
|
if (customTranslationFieldName && this.currentLanguage[customTranslationFieldName]) {
|
|
112
86
|
args[0].field = this.currentLanguage[customTranslationFieldName];
|
|
113
87
|
}
|
|
114
|
-
return utils_1.Evaluator.interpolateString(
|
|
88
|
+
return utils_1.Evaluator.interpolateString(this.currentLanguage[text], ...args);
|
|
115
89
|
}
|
|
116
90
|
return utils_1.Evaluator.interpolateString(text, ...args);
|
|
117
91
|
}
|
|
118
92
|
}
|
|
119
93
|
exports.I18n = I18n;
|
|
120
|
-
I18n.languages = i18Defaults;
|
|
@@ -93,6 +93,8 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
93
93
|
this.settings.disableWeekends ? this.settings.disable.push(this.disableWeekends) : '';
|
|
94
94
|
this.settings.disableWeekdays ? this.settings.disable.push(this.disableWeekdays) : '';
|
|
95
95
|
this.settings.disableFunction ? this.settings.disable.push(this.disableFunction) : '';
|
|
96
|
+
this.settings.wasDefaultValueChanged = false;
|
|
97
|
+
this.settings.defaultValue = '';
|
|
96
98
|
this.settings.manualInputValue = '';
|
|
97
99
|
this.settings.isManuallyOverriddenValue = false;
|
|
98
100
|
this.settings.currentValue = '';
|
|
@@ -100,8 +102,14 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
100
102
|
this.settings.dateFormat = (0, utils_1.convertFormatToFlatpickr)(this.settings.dateFormat);
|
|
101
103
|
this.settings.position = 'auto center';
|
|
102
104
|
this.settings.onChange = () => {
|
|
103
|
-
if (this.settings.allowInput
|
|
104
|
-
|
|
105
|
+
if (this.settings.allowInput) {
|
|
106
|
+
if (this.settings.isManuallyOverriddenValue && this.settings.enableTime) {
|
|
107
|
+
this.calendar._input.value = this.settings.manualInputValue;
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
this.settings.manualInputValue = '';
|
|
111
|
+
}
|
|
112
|
+
this.settings.isManuallyOverriddenValue = false;
|
|
105
113
|
}
|
|
106
114
|
this.emit('update');
|
|
107
115
|
};
|
|
@@ -110,15 +118,20 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
110
118
|
this.hook('onCalendarClose');
|
|
111
119
|
this.closedOn = Date.now();
|
|
112
120
|
if (this.settings.allowInput && this.settings.enableTime) {
|
|
113
|
-
this.calendar._input.value = this.settings.
|
|
121
|
+
this.calendar._input.value = this.settings.manualInputValue || this.calendar._input.value;
|
|
122
|
+
this.settings.isManuallyOverriddenValue = false;
|
|
114
123
|
this.emit('update');
|
|
115
124
|
}
|
|
125
|
+
if (this.settings.wasDefaultValueChanged) {
|
|
126
|
+
this.calendar._input.value = this.settings.defaultValue;
|
|
127
|
+
this.settings.wasDefaultValueChanged = false;
|
|
128
|
+
}
|
|
116
129
|
if (this.calendar) {
|
|
117
130
|
this.emit('blur');
|
|
118
131
|
}
|
|
119
132
|
};
|
|
120
133
|
Formio_1.Formio.requireLibrary('flatpickr-css', 'flatpickr', [
|
|
121
|
-
{ type: 'styles', src: `${Formio_1.Formio.cdn['flatpickr']}/flatpickr.min.css` }
|
|
134
|
+
{ type: 'styles', src: `${Formio_1.Formio.cdn['flatpickr-formio']}/flatpickr.min.css` }
|
|
122
135
|
], true);
|
|
123
136
|
if (this.component.shortcutButtons) {
|
|
124
137
|
this.component.shortcutButtons = this.component.shortcutButtons.filter((btn) => btn.label && btn.onClick);
|
|
@@ -136,7 +149,7 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
136
149
|
}
|
|
137
150
|
})
|
|
138
151
|
.then((ShortcutButtonsPlugin) => {
|
|
139
|
-
return Formio_1.Formio.requireLibrary('flatpickr', 'flatpickr', `${Formio_1.Formio.cdn['flatpickr']}/flatpickr.min.js`, true)
|
|
152
|
+
return Formio_1.Formio.requireLibrary('flatpickr', 'flatpickr', `${Formio_1.Formio.cdn['flatpickr-formio']}/flatpickr.min.js`, true)
|
|
140
153
|
.then((Flatpickr) => {
|
|
141
154
|
var _a;
|
|
142
155
|
if (((_a = this.component.shortcutButtons) === null || _a === void 0 ? void 0 : _a.length) && ShortcutButtonsPlugin) {
|
|
@@ -146,7 +159,7 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
146
159
|
if (this._input) {
|
|
147
160
|
const { locale } = this.settings;
|
|
148
161
|
if (locale && locale.length >= 2 && locale !== 'en') {
|
|
149
|
-
return Formio_1.Formio.requireLibrary(`flatpickr-${locale}`, `flatpickr
|
|
162
|
+
return Formio_1.Formio.requireLibrary(`flatpickr-${locale}`, `flatpickr-${locale}`, `${Formio_1.Formio.cdn['flatpickr-formio']}/l10n/flatpickr-${locale}.js`, true).then(() => this.initFlatpickr(Flatpickr));
|
|
150
163
|
}
|
|
151
164
|
else {
|
|
152
165
|
this.initFlatpickr(Flatpickr);
|
|
@@ -345,28 +358,19 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
345
358
|
this.calendar = new Flatpickr(this._input, Object.assign(Object.assign({}, this.settings), { disableMobile: true }));
|
|
346
359
|
this.addEventListener(this.calendar.altInput, 'input', (event) => {
|
|
347
360
|
if (this.settings.allowInput && this.settings.currentValue !== event.target.value) {
|
|
348
|
-
if (event.target.mask) {
|
|
349
|
-
event.target.mask.textMaskInputElement.update();
|
|
350
|
-
}
|
|
351
361
|
this.settings.manualInputValue = event.target.value;
|
|
352
|
-
this._input.value = this.settings.manualInputValue;
|
|
353
362
|
this.settings.isManuallyOverriddenValue = true;
|
|
354
363
|
this.settings.currentValue = event.target.value;
|
|
355
|
-
|
|
364
|
+
}
|
|
365
|
+
if (event.target.value === '' && this.calendar.selectedDates.length > 0) {
|
|
366
|
+
this.settings.wasDefaultValueChanged = true;
|
|
367
|
+
this.settings.defaultValue = event.target.value;
|
|
368
|
+
this.calendar.clear();
|
|
369
|
+
}
|
|
370
|
+
else {
|
|
371
|
+
this.settings.wasDefaultValueChanged = false;
|
|
356
372
|
}
|
|
357
373
|
});
|
|
358
|
-
if (this.calendar.daysContainer) {
|
|
359
|
-
this.calendar.daysContainer.addEventListener('click', () => {
|
|
360
|
-
this.settings.isManuallyOverriddenValue = false;
|
|
361
|
-
this.calendar.updateValue(false);
|
|
362
|
-
});
|
|
363
|
-
}
|
|
364
|
-
if (this.calendar.timeContainer) {
|
|
365
|
-
this.calendar.timeContainer.addEventListener('click', () => {
|
|
366
|
-
this.settings.isManuallyOverriddenValue = false;
|
|
367
|
-
this.calendar.updateValue(false);
|
|
368
|
-
});
|
|
369
|
-
}
|
|
370
374
|
const excludedFromMaskFormats = ['MMMM'];
|
|
371
375
|
if (!this.settings.readOnly && !lodash_1.default.some(excludedFromMaskFormats, format => lodash_1.default.includes(this.settings.format, format))) {
|
|
372
376
|
// Enforce the input mask of the format.
|
|
@@ -393,10 +397,6 @@ class CalendarWidget extends InputWidget_1.default {
|
|
|
393
397
|
// Make sure we commit the value after a blur event occurs.
|
|
394
398
|
this.addEventListener(this.calendar._input, 'blur', (event) => {
|
|
395
399
|
var _a, _b, _c, _d;
|
|
396
|
-
// If we have manually overridden the value then we shouldn't call setDate because this will fill the input mask
|
|
397
|
-
if (this.settings.isManuallyOverriddenValue) {
|
|
398
|
-
return;
|
|
399
|
-
}
|
|
400
400
|
const activeElement = this.settings.shadowRoot ? this.settings.shadowRoot.activeElement : document.activeElement;
|
|
401
401
|
const relatedTarget = event.relatedTarget ? event.relatedTarget : activeElement;
|
|
402
402
|
if (!(isIEBrowser && !relatedTarget) && !this.isCalendarElement(relatedTarget)) {
|
package/lib/mjs/CDN.d.ts
CHANGED
package/lib/mjs/CDN.js
CHANGED
|
@@ -16,8 +16,8 @@ class CDN {
|
|
|
16
16
|
'bootswatch': '5.3.3',
|
|
17
17
|
'bootstrap-icons': '1.11.1',
|
|
18
18
|
'ckeditor': '19.0.0',
|
|
19
|
-
'
|
|
20
|
-
'flatpickr': '4.6.13',
|
|
19
|
+
'flatpickr': '4.6.8',
|
|
20
|
+
'flatpickr-formio': '4.6.13-formio.3',
|
|
21
21
|
'font-awesome': '4.7.0',
|
|
22
22
|
'grid': 'latest',
|
|
23
23
|
'moment-timezone': 'latest',
|
package/lib/mjs/Embed.js
CHANGED
|
@@ -14,7 +14,7 @@ export class Formio {
|
|
|
14
14
|
Formio._formioReady = ready;
|
|
15
15
|
Formio._formioReadyReject = reject;
|
|
16
16
|
});
|
|
17
|
-
static version = '5.1.0-
|
|
17
|
+
static version = '5.1.0-rc.26';
|
|
18
18
|
static setLicense(license, norecurse = false) {
|
|
19
19
|
Formio.license = license;
|
|
20
20
|
if (!norecurse && Formio.FormioClass) {
|