@zeedhi/common 1.118.0 → 1.120.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/types/components/index.d.ts +151 -0
- package/dist/types/components/zd-alert/alert.d.ts +94 -0
- package/dist/types/components/zd-alert/interfaces.d.ts +18 -0
- package/dist/types/components/zd-badge/badge.d.ts +28 -0
- package/dist/types/components/zd-badge/interfaces.d.ts +10 -0
- package/dist/types/components/zd-breadcrumbs/breadcrumbs.d.ts +32 -0
- package/dist/types/components/zd-breadcrumbs/interfaces.d.ts +24 -0
- package/dist/types/components/zd-button/button.d.ts +89 -0
- package/dist/types/components/zd-button/interfaces.d.ts +48 -0
- package/dist/types/components/zd-button-group/button-group.d.ts +67 -0
- package/dist/types/components/zd-button-group/interfaces.d.ts +25 -0
- package/dist/types/components/zd-card/card.d.ts +152 -0
- package/dist/types/components/zd-card/interfaces.d.ts +40 -0
- package/dist/types/components/zd-carousel/carousel.d.ts +163 -0
- package/dist/types/components/zd-carousel/interfaces.d.ts +49 -0
- package/dist/types/components/zd-checkbox/checkbox.d.ts +12 -0
- package/dist/types/components/zd-checkbox/interfaces.d.ts +5 -0
- package/dist/types/components/zd-checkbox-multiple/checkbox-multiple.d.ts +39 -0
- package/dist/types/components/zd-checkbox-multiple/interfaces.d.ts +13 -0
- package/dist/types/components/zd-chip/chip.d.ts +60 -0
- package/dist/types/components/zd-chip/interfaces.d.ts +18 -0
- package/dist/types/components/zd-code-viewer/code-viewer.d.ts +86 -0
- package/dist/types/components/zd-code-viewer/interfaces.d.ts +13 -0
- package/dist/types/components/zd-col/col.d.ts +33 -0
- package/dist/types/components/zd-col/interfaces.d.ts +15 -0
- package/dist/types/components/zd-collapse-card/collapse-card.d.ts +56 -0
- package/dist/types/components/zd-collapse-card/interfaces.d.ts +14 -0
- package/dist/types/components/zd-component/child-not-found.d.ts +6 -0
- package/dist/types/components/zd-component/component-render.d.ts +16 -0
- package/dist/types/components/zd-component/component.d.ts +120 -0
- package/dist/types/components/zd-component/interfaces.d.ts +74 -0
- package/dist/types/components/zd-container/container.d.ts +45 -0
- package/dist/types/components/zd-container/interfaces.d.ts +12 -0
- package/dist/types/components/zd-currency/currency.d.ts +12 -0
- package/dist/types/components/zd-currency/interfaces.d.ts +6 -0
- package/dist/types/components/zd-date-input/date-input.d.ts +152 -0
- package/dist/types/components/zd-date-input/interfaces.d.ts +27 -0
- package/dist/types/components/zd-date-range/date-range.d.ts +158 -0
- package/dist/types/components/zd-date-range/interfaces.d.ts +18 -0
- package/dist/types/components/zd-dialog/dialog.d.ts +76 -0
- package/dist/types/components/zd-dialog/interfaces.d.ts +13 -0
- package/dist/types/components/zd-divider/divider.d.ts +20 -0
- package/dist/types/components/zd-divider/interfaces.d.ts +8 -0
- package/dist/types/components/zd-dropdown/dropdown.d.ts +81 -0
- package/dist/types/components/zd-dropdown/interfaces.d.ts +23 -0
- package/dist/types/components/zd-footer/footer.d.ts +80 -0
- package/dist/types/components/zd-footer/interfaces.d.ts +26 -0
- package/dist/types/components/zd-form/form.d.ts +174 -0
- package/dist/types/components/zd-form/interfaces.d.ts +36 -0
- package/dist/types/components/zd-frame/frame.d.ts +81 -0
- package/dist/types/components/zd-frame/interfaces.d.ts +23 -0
- package/dist/types/components/zd-frame-page/frame-page.d.ts +14 -0
- package/dist/types/components/zd-frame-page/interfaces.d.ts +4 -0
- package/dist/types/components/zd-grid/data-navigator.d.ts +12 -0
- package/dist/types/components/zd-grid/data-selector.d.ts +25 -0
- package/dist/types/components/zd-grid/grid-column.d.ts +47 -0
- package/dist/types/components/zd-grid/grid-events.d.ts +26 -0
- package/dist/types/components/zd-grid/grid.d.ts +85 -0
- package/dist/types/components/zd-grid/index.d.ts +11 -0
- package/dist/types/components/zd-grid/interfaces.d.ts +148 -0
- package/dist/types/components/zd-grid/iterable-table.d.ts +28 -0
- package/dist/types/components/zd-grid/keymap-merger.d.ts +26 -0
- package/dist/types/components/zd-grid/keymap-navigation.d.ts +6 -0
- package/dist/types/components/zd-grid/table-action-builder.d.ts +19 -0
- package/dist/types/components/zd-grid/view-navigator.d.ts +10 -0
- package/dist/types/components/zd-grid-editable/data-editor-with-add.d.ts +35 -0
- package/dist/types/components/zd-grid-editable/data-editor.d.ts +64 -0
- package/dist/types/components/zd-grid-editable/errors/index.d.ts +2 -0
- package/dist/types/components/zd-grid-editable/errors/not-editing.d.ts +6 -0
- package/dist/types/components/zd-grid-editable/errors/row-not-found.d.ts +6 -0
- package/dist/types/components/zd-grid-editable/grid-column-editable.d.ts +9 -0
- package/dist/types/components/zd-grid-editable/grid-editable-controller.d.ts +8 -0
- package/dist/types/components/zd-grid-editable/grid-editable-events.d.ts +32 -0
- package/dist/types/components/zd-grid-editable/grid-editable.d.ts +124 -0
- package/dist/types/components/zd-grid-editable/index.d.ts +8 -0
- package/dist/types/components/zd-grid-editable/interfaces.d.ts +66 -0
- package/dist/types/components/zd-grid-editable/keymap-editing.d.ts +7 -0
- package/dist/types/components/zd-header/header.d.ts +94 -0
- package/dist/types/components/zd-header/interfaces.d.ts +29 -0
- package/dist/types/components/zd-icon/icon.d.ts +55 -0
- package/dist/types/components/zd-icon/interfaces.d.ts +13 -0
- package/dist/types/components/zd-image/image.d.ts +73 -0
- package/dist/types/components/zd-image/interfaces.d.ts +17 -0
- package/dist/types/components/zd-increment/increment.d.ts +56 -0
- package/dist/types/components/zd-increment/interfaces.d.ts +9 -0
- package/dist/types/components/zd-input/input-factory.d.ts +6 -0
- package/dist/types/components/zd-input/input.d.ts +223 -0
- package/dist/types/components/zd-input/interfaces.d.ts +38 -0
- package/dist/types/components/zd-iterable/column-not-found.d.ts +6 -0
- package/dist/types/components/zd-iterable/column.d.ts +78 -0
- package/dist/types/components/zd-iterable/conditions-manager.d.ts +49 -0
- package/dist/types/components/zd-iterable/interfaces.d.ts +103 -0
- package/dist/types/components/zd-iterable/iterable-columns-button-controller.d.ts +9 -0
- package/dist/types/components/zd-iterable/iterable-columns-button.d.ts +35 -0
- package/dist/types/components/zd-iterable/iterable-controller.d.ts +8 -0
- package/dist/types/components/zd-iterable/iterable-page-component.d.ts +27 -0
- package/dist/types/components/zd-iterable/iterable-page-info.d.ts +7 -0
- package/dist/types/components/zd-iterable/iterable-page-size.d.ts +62 -0
- package/dist/types/components/zd-iterable/iterable-pagination.d.ts +28 -0
- package/dist/types/components/zd-iterable/iterable.d.ts +77 -0
- package/dist/types/components/zd-iterable/search.d.ts +31 -0
- package/dist/types/components/zd-iterable-component-render/interfaces.d.ts +34 -0
- package/dist/types/components/zd-iterable-component-render/iterable-component-render.d.ts +84 -0
- package/dist/types/components/zd-layout/interfaces.d.ts +7 -0
- package/dist/types/components/zd-layout/layout.d.ts +9 -0
- package/dist/types/components/zd-list/interfaces.d.ts +44 -0
- package/dist/types/components/zd-list/item-not-found.d.ts +6 -0
- package/dist/types/components/zd-list/list-group.d.ts +30 -0
- package/dist/types/components/zd-list/list-item.d.ts +46 -0
- package/dist/types/components/zd-list/list.d.ts +81 -0
- package/dist/types/components/zd-loading/interfaces.d.ts +7 -0
- package/dist/types/components/zd-loading/loading.d.ts +21 -0
- package/dist/types/components/zd-login/interfaces.d.ts +25 -0
- package/dist/types/components/zd-login/login-button.d.ts +50 -0
- package/dist/types/components/zd-login/login.d.ts +54 -0
- package/dist/types/components/zd-main/interfaces.d.ts +5 -0
- package/dist/types/components/zd-main/main.d.ts +7 -0
- package/dist/types/components/zd-master-detail/detail-not-found.d.ts +7 -0
- package/dist/types/components/zd-master-detail/interfaces.d.ts +10 -0
- package/dist/types/components/zd-master-detail/master-detail.d.ts +18 -0
- package/dist/types/components/zd-master-detail/master-not-found.d.ts +7 -0
- package/dist/types/components/zd-menu/interfaces.d.ts +68 -0
- package/dist/types/components/zd-menu/menu-button.d.ts +29 -0
- package/dist/types/components/zd-menu/menu-group.d.ts +61 -0
- package/dist/types/components/zd-menu/menu-link.d.ts +50 -0
- package/dist/types/components/zd-menu/menu-separator.d.ts +7 -0
- package/dist/types/components/zd-menu/menu.d.ts +199 -0
- package/dist/types/components/zd-modal/interfaces.d.ts +35 -0
- package/dist/types/components/zd-modal/modal-close-button.d.ts +28 -0
- package/dist/types/components/zd-modal/modal.d.ts +53 -0
- package/dist/types/components/zd-month/interfaces.d.ts +6 -0
- package/dist/types/components/zd-month/month.d.ts +33 -0
- package/dist/types/components/zd-number-input/interfaces.d.ts +8 -0
- package/dist/types/components/zd-number-input/number-input.d.ts +43 -0
- package/dist/types/components/zd-password/interfaces.d.ts +6 -0
- package/dist/types/components/zd-password/password.d.ts +17 -0
- package/dist/types/components/zd-progress/interfaces.d.ts +10 -0
- package/dist/types/components/zd-progress/progress.d.ts +41 -0
- package/dist/types/components/zd-radio/interfaces.d.ts +11 -0
- package/dist/types/components/zd-radio/radio.d.ts +35 -0
- package/dist/types/components/zd-row/interfaces.d.ts +13 -0
- package/dist/types/components/zd-row/row.d.ts +39 -0
- package/dist/types/components/zd-select/interfaces.d.ts +24 -0
- package/dist/types/components/zd-select/select.d.ts +238 -0
- package/dist/types/components/zd-select-multiple/interfaces.d.ts +18 -0
- package/dist/types/components/zd-select-multiple/select-multiple.d.ts +113 -0
- package/dist/types/components/zd-svg-map/interfaces.d.ts +26 -0
- package/dist/types/components/zd-svg-map/svg-map.d.ts +35 -0
- package/dist/types/components/zd-switch/interfaces.d.ts +7 -0
- package/dist/types/components/zd-switch/switch.d.ts +16 -0
- package/dist/types/components/zd-table/interfaces.d.ts +25 -0
- package/dist/types/components/zd-table/table.d.ts +42 -0
- package/dist/types/components/zd-tabs/interfaces.d.ts +40 -0
- package/dist/types/components/zd-tabs/tab-not-found.d.ts +11 -0
- package/dist/types/components/zd-tabs/tab.d.ts +57 -0
- package/dist/types/components/zd-tabs/tabs.d.ts +86 -0
- package/dist/types/components/zd-tag/interfaces.d.ts +7 -0
- package/dist/types/components/zd-tag/tag.d.ts +13 -0
- package/dist/types/components/zd-text/interfaces.d.ts +9 -0
- package/dist/types/components/zd-text/text.d.ts +8 -0
- package/dist/types/components/zd-text-input/interfaces.d.ts +23 -0
- package/dist/types/components/zd-text-input/text-input.d.ts +91 -0
- package/dist/types/components/zd-textarea/interfaces.d.ts +21 -0
- package/dist/types/components/zd-textarea/textarea.d.ts +71 -0
- package/dist/types/components/zd-time/interfaces.d.ts +22 -0
- package/dist/types/components/zd-time/time-format-selector.d.ts +8 -0
- package/dist/types/components/zd-time/time.d.ts +149 -0
- package/dist/types/components/zd-toggleable/interfaces.d.ts +6 -0
- package/dist/types/components/zd-toggleable/toggleable.d.ts +21 -0
- package/dist/types/components/zd-tooltip/interfaces.d.ts +18 -0
- package/dist/types/components/zd-tooltip/tooltip.d.ts +57 -0
- package/dist/types/components/zd-tree/interfaces.d.ts +107 -0
- package/dist/types/components/zd-tree/tree.d.ts +161 -0
- package/dist/types/components/zd-tree-grid/index.d.ts +6 -0
- package/dist/types/components/zd-tree-grid/interfaces.d.ts +35 -0
- package/dist/types/components/zd-tree-grid/iterable-tree.d.ts +10 -0
- package/dist/types/components/zd-tree-grid/keymap-tree.d.ts +7 -0
- package/dist/types/components/zd-tree-grid/tree-data-navigator.d.ts +10 -0
- package/dist/types/components/zd-tree-grid/tree-data-selector.d.ts +18 -0
- package/dist/types/components/zd-tree-grid/tree-grid.d.ts +119 -0
- package/dist/types/error/delete-rows.d.ts +7 -0
- package/dist/types/error/index.d.ts +3 -0
- package/dist/types/error/non-initialized.d.ts +7 -0
- package/dist/types/error/zeedhi-error.d.ts +6 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/services/index.d.ts +4 -0
- package/dist/types/services/zd-alert/alert-queue.d.ts +13 -0
- package/dist/types/services/zd-alert/alert-replace.d.ts +18 -0
- package/dist/types/services/zd-alert/alert-service.d.ts +45 -0
- package/dist/types/services/zd-alert/alert-stack.d.ts +9 -0
- package/dist/types/services/zd-alert/index.d.ts +5 -0
- package/dist/types/services/zd-alert/interfaces.d.ts +6 -0
- package/dist/types/services/zd-dialog/dialog-service.d.ts +24 -0
- package/dist/types/services/zd-loading/loading-service.d.ts +17 -0
- package/dist/types/services/zd-modal/modal-service.d.ts +39 -0
- package/dist/types/utils/data-value-out/data-value-out.d.ts +5 -0
- package/dist/types/utils/data-value-out/index.d.ts +2 -0
- package/dist/types/utils/data-value-out/interfaces.d.ts +8 -0
- package/dist/types/utils/datasource-searcher/datasource-searcher.d.ts +6 -0
- package/dist/types/utils/datasource-searcher/index.d.ts +2 -0
- package/dist/types/utils/datasource-searcher/interfaces.d.ts +5 -0
- package/dist/types/utils/icons/icons.d.ts +24 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/omit/omit.d.ts +11 -0
- package/dist/types/utils/theme/theme.d.ts +34 -0
- package/dist/types/utils/tree-data-structure/index.d.ts +2 -0
- package/dist/types/utils/tree-data-structure/interfaces.d.ts +30 -0
- package/dist/types/utils/tree-data-structure/tree-data-structure.d.ts +155 -0
- package/dist/types/utils/unique-by/unique-by.d.ts +3 -0
- package/dist/zd-common.esm.js +87 -24
- package/dist/zd-common.js +13133 -0
- package/dist/zd-common.min.js +13133 -0
- package/dist/zd-common.umd.js +87 -24
- package/package.json +2 -2
- package/types/components/zd-apex-chart/apex-chart.d.ts +1 -1
- package/types/components/zd-apex-chart/interfaces.d.ts +1 -1
- package/types/components/zd-card/card.d.ts +1 -1
- package/types/components/zd-card/interfaces.d.ts +1 -1
- package/types/components/zd-carousel/carousel.d.ts +1 -1
- package/types/components/zd-carousel/interfaces.d.ts +1 -1
- package/types/components/zd-code-editor/code-editor.d.ts +1 -1
- package/types/components/zd-code-editor/interfaces.d.ts +1 -1
- package/types/components/zd-col/col.d.ts +1 -1
- package/types/components/zd-col/interfaces.d.ts +1 -1
- package/types/components/zd-container/container.d.ts +1 -1
- package/types/components/zd-container/interfaces.d.ts +1 -1
- package/types/components/zd-dashboard/dashboard.d.ts +1 -1
- package/types/components/zd-dashboard/interfaces.d.ts +1 -1
- package/types/components/zd-date/date-range.d.ts +24 -4
- package/types/components/zd-form/form.d.ts +1 -1
- package/types/components/zd-form/interfaces.d.ts +1 -1
- package/types/components/zd-frame/frame.d.ts +1 -1
- package/types/components/zd-frame/interfaces.d.ts +1 -1
- package/types/components/zd-grid/grid.d.ts +1 -1
- package/types/components/zd-grid/interfaces.d.ts +1 -1
- package/types/components/zd-image/image.d.ts +1 -1
- package/types/components/zd-image/interfaces.d.ts +1 -1
- package/types/components/zd-iterable-component-render/interfaces.d.ts +1 -1
- package/types/components/zd-iterable-component-render/iterable-component-render.d.ts +1 -1
- package/types/components/zd-list/interfaces.d.ts +1 -1
- package/types/components/zd-list/list.d.ts +1 -1
- package/types/components/zd-master-detail/interfaces.d.ts +1 -1
- package/types/components/zd-master-detail/master-detail.d.ts +1 -1
- package/types/components/zd-row/interfaces.d.ts +1 -1
- package/types/components/zd-row/row.d.ts +1 -1
- package/types/components/zd-selectable-list/interfaces.d.ts +1 -1
- package/types/components/zd-selectable-list/selectable-list.d.ts +1 -1
- package/types/components/zd-table/interfaces.d.ts +1 -1
- package/types/components/zd-table/table.d.ts +1 -1
- package/types/components/zd-tabs/interfaces.d.ts +1 -1
- package/types/components/zd-tabs/tabs.d.ts +1 -1
- package/types/components/zd-textarea/interfaces.d.ts +1 -1
- package/types/components/zd-textarea/textarea.d.ts +1 -1
- package/types/components/zd-tooltip/interfaces.d.ts +1 -0
- package/types/components/zd-tooltip/tooltip.d.ts +4 -0
- package/types/components/zd-tree/interfaces.d.ts +1 -1
- package/types/components/zd-tree/tree.d.ts +1 -1
- package/types/services/zd-json-cache/json-cache-service.d.ts +0 -12
package/dist/zd-common.esm.js
CHANGED
|
@@ -4328,6 +4328,13 @@ FormatterParserProvider.registerParser('ZdDateTime', (value, { dateTimeFormat =
|
|
|
4328
4328
|
});
|
|
4329
4329
|
InputFactory.register('ZdDate', Date$1);
|
|
4330
4330
|
|
|
4331
|
+
const ERROR_MAP = {
|
|
4332
|
+
invalid_range: 'VALIDATION_INVALID_RANGE',
|
|
4333
|
+
incomplete_range: 'VALIDATION_INVALID_DATE',
|
|
4334
|
+
empty: 'VALIDATION_INVALID_DATE',
|
|
4335
|
+
invalid_date: 'VALIDATION_INVALID_DATE',
|
|
4336
|
+
none: '',
|
|
4337
|
+
};
|
|
4331
4338
|
class DateRange extends TextInput {
|
|
4332
4339
|
/* istanbul ignore next */
|
|
4333
4340
|
/**
|
|
@@ -4336,6 +4343,10 @@ class DateRange extends TextInput {
|
|
|
4336
4343
|
*/
|
|
4337
4344
|
constructor(props) {
|
|
4338
4345
|
super(props);
|
|
4346
|
+
/**
|
|
4347
|
+
* Restricts which dates can be selected.
|
|
4348
|
+
*/
|
|
4349
|
+
this.allowedDates = undefined;
|
|
4339
4350
|
/**
|
|
4340
4351
|
* Input auto complete.
|
|
4341
4352
|
*/
|
|
@@ -4403,6 +4414,7 @@ class DateRange extends TextInput {
|
|
|
4403
4414
|
this.parserFn = FormatterParserProvider.getParser('ZdDateRange');
|
|
4404
4415
|
this.previousHint = '';
|
|
4405
4416
|
this.previousPersistentHint = false;
|
|
4417
|
+
this.allowedDates = this.getInitValue('allowedDates', props.allowedDates, this.allowedDates);
|
|
4406
4418
|
this.appendIcon = this.getInitValue('appendIcon', props.appendIcon, 'calendar');
|
|
4407
4419
|
this.autocomplete = this.getInitValue('autocomplete', props.autocomplete, this.autocomplete);
|
|
4408
4420
|
this.dateFormat = this.getInitValue('dateFormat', props.dateFormat, this.dateFormat);
|
|
@@ -4442,7 +4454,7 @@ class DateRange extends TextInput {
|
|
|
4442
4454
|
* Character that will separate the two dates
|
|
4443
4455
|
*/
|
|
4444
4456
|
get splitter() {
|
|
4445
|
-
return I18n.translate(this.internalSplitter)
|
|
4457
|
+
return ` ${I18n.translate(this.internalSplitter).trim()} `;
|
|
4446
4458
|
}
|
|
4447
4459
|
set splitter(splitter) {
|
|
4448
4460
|
this.internalSplitter = splitter;
|
|
@@ -4505,36 +4517,79 @@ class DateRange extends TextInput {
|
|
|
4505
4517
|
return format.replace(/[A-Za-z]/gi, '#');
|
|
4506
4518
|
}
|
|
4507
4519
|
setDateValue(displayValue) {
|
|
4508
|
-
const
|
|
4509
|
-
const values = this.
|
|
4510
|
-
|
|
4520
|
+
const lastDisplayValue = this.displayValue;
|
|
4521
|
+
const values = this.parser(displayValue);
|
|
4522
|
+
const validation = this.isValidDateArray(values);
|
|
4523
|
+
if (validation.isValid) {
|
|
4511
4524
|
this.internalDisplayValue = displayValue;
|
|
4512
4525
|
this.internalValue = this.parser(displayValue);
|
|
4513
4526
|
this.dateError = false;
|
|
4514
|
-
if (
|
|
4527
|
+
if (lastDisplayValue !== this.displayValue) {
|
|
4515
4528
|
this.change(this.value);
|
|
4529
|
+
}
|
|
4516
4530
|
}
|
|
4517
|
-
else {
|
|
4518
|
-
|
|
4519
|
-
|
|
4520
|
-
|
|
4521
|
-
|
|
4522
|
-
this.change(this.value);
|
|
4531
|
+
else if (validation.errorType === 'empty') {
|
|
4532
|
+
this.internalDisplayValue = '';
|
|
4533
|
+
this.internalValue = [];
|
|
4534
|
+
if (lastDisplayValue !== this.displayValue) {
|
|
4535
|
+
this.change(this.value);
|
|
4523
4536
|
}
|
|
4524
|
-
this.dateError = !!displayValue;
|
|
4525
4537
|
}
|
|
4526
|
-
|
|
4538
|
+
else {
|
|
4539
|
+
this.dateError = validation.errorType;
|
|
4540
|
+
}
|
|
4541
|
+
this.value = this.internalValue;
|
|
4527
4542
|
}
|
|
4528
4543
|
/**
|
|
4529
4544
|
* Faz a validação do array de datas
|
|
4530
|
-
* @param
|
|
4531
|
-
* @param values o array de datas
|
|
4545
|
+
* @param values o array de datas formatadas de acordo com o dateFormat
|
|
4532
4546
|
* @returns true se todos os valores forem validados
|
|
4533
4547
|
* */
|
|
4534
|
-
isValidDateArray(
|
|
4535
|
-
if (!values || values.length
|
|
4536
|
-
return false;
|
|
4537
|
-
|
|
4548
|
+
isValidDateArray(values) {
|
|
4549
|
+
if (!values || values.length === 0 || values.every((value) => !value)) {
|
|
4550
|
+
return { isValid: false, errorType: 'empty' };
|
|
4551
|
+
}
|
|
4552
|
+
if (values.length === 1 && values[0] !== '') {
|
|
4553
|
+
return { isValid: false, errorType: 'incomplete_range' };
|
|
4554
|
+
}
|
|
4555
|
+
const invalidRange = !this.isAllowedRange(values);
|
|
4556
|
+
if (invalidRange) {
|
|
4557
|
+
return { isValid: false, errorType: 'invalid_range' };
|
|
4558
|
+
}
|
|
4559
|
+
const allDatesValid = values.every((value) => this.isValidDate(value, this.dateFormat));
|
|
4560
|
+
if (!allDatesValid) {
|
|
4561
|
+
return { isValid: false, errorType: 'invalid_date' };
|
|
4562
|
+
}
|
|
4563
|
+
return { isValid: true, errorType: 'none' };
|
|
4564
|
+
}
|
|
4565
|
+
isAllowedDate(value, format) {
|
|
4566
|
+
if (this.allowedDates === undefined)
|
|
4567
|
+
return true;
|
|
4568
|
+
const dateStr = dayjs(value, format).format(this.dateFormat);
|
|
4569
|
+
if (this.allowedDates instanceof Function) {
|
|
4570
|
+
return this.allowedDates(dateStr);
|
|
4571
|
+
}
|
|
4572
|
+
return this.allowedDates.includes(dateStr);
|
|
4573
|
+
}
|
|
4574
|
+
/**
|
|
4575
|
+
* Checks if a range is allowed
|
|
4576
|
+
* @param value range to be checked, must be in dateFormat
|
|
4577
|
+
*/
|
|
4578
|
+
isAllowedRange(value) {
|
|
4579
|
+
if (!this.allowedDates)
|
|
4580
|
+
return true;
|
|
4581
|
+
const startDate = dayjs(value[0], this.dateFormat);
|
|
4582
|
+
const endDate = dayjs(value[1], this.dateFormat);
|
|
4583
|
+
let currentDate = startDate;
|
|
4584
|
+
while (currentDate.isBefore(endDate) || currentDate.isSame(endDate)) {
|
|
4585
|
+
const dateToCheck = currentDate.format(this.dateFormat);
|
|
4586
|
+
const isAllowed = this.isAllowedDate(dateToCheck, this.dateFormat);
|
|
4587
|
+
if (!isAllowed) {
|
|
4588
|
+
return false;
|
|
4589
|
+
}
|
|
4590
|
+
currentDate = currentDate.add(1, 'day');
|
|
4591
|
+
}
|
|
4592
|
+
return true;
|
|
4538
4593
|
}
|
|
4539
4594
|
splitValues(value) {
|
|
4540
4595
|
let splitedValue = [];
|
|
@@ -4561,6 +4616,9 @@ class DateRange extends TextInput {
|
|
|
4561
4616
|
const isValidMax = !maxDate || date.isBefore(maxDate) || date.isSame(maxDate);
|
|
4562
4617
|
if (!isValidMax)
|
|
4563
4618
|
return false;
|
|
4619
|
+
if (!this.isAllowedDate(value, format)) {
|
|
4620
|
+
return false;
|
|
4621
|
+
}
|
|
4564
4622
|
return true;
|
|
4565
4623
|
}
|
|
4566
4624
|
isValidFormatDate(value, format, strict = true) {
|
|
@@ -4605,7 +4663,10 @@ class DateRange extends TextInput {
|
|
|
4605
4663
|
return parsedValue.sort((a, b) => (dayjs(a, this.dateFormat).isAfter(dayjs(b, this.dateFormat)) ? 1 : -1));
|
|
4606
4664
|
}
|
|
4607
4665
|
dateValidation() {
|
|
4608
|
-
|
|
4666
|
+
if (this.dateError) {
|
|
4667
|
+
return I18n.translate(ERROR_MAP[this.dateError]);
|
|
4668
|
+
}
|
|
4669
|
+
return true;
|
|
4609
4670
|
}
|
|
4610
4671
|
click(event, element) {
|
|
4611
4672
|
const clickEvent = event || new MouseEvent('click');
|
|
@@ -4651,7 +4712,7 @@ class DateRange extends TextInput {
|
|
|
4651
4712
|
*/
|
|
4652
4713
|
removeDateMask() {
|
|
4653
4714
|
if (isUndefined(this.getInitialMask()) || !this.value || this.dateError
|
|
4654
|
-
|| !this.isValidDateArray(this.
|
|
4715
|
+
|| !this.isValidDateArray(this.value).isValid) {
|
|
4655
4716
|
return;
|
|
4656
4717
|
}
|
|
4657
4718
|
this.mask = '';
|
|
@@ -12660,9 +12721,6 @@ class SelectMultiple extends Select {
|
|
|
12660
12721
|
return this.checkboxAllValue;
|
|
12661
12722
|
}
|
|
12662
12723
|
set checkboxAll(value) {
|
|
12663
|
-
if (this.showCheckboxAll) {
|
|
12664
|
-
this.disabled = value;
|
|
12665
|
-
}
|
|
12666
12724
|
this.checkboxAllValue = value;
|
|
12667
12725
|
}
|
|
12668
12726
|
/**
|
|
@@ -14912,6 +14970,10 @@ class Tooltip extends ComponentRender {
|
|
|
14912
14970
|
* Nudge the content to the top
|
|
14913
14971
|
*/
|
|
14914
14972
|
this.top = false;
|
|
14973
|
+
/**
|
|
14974
|
+
* Render the label as HTML
|
|
14975
|
+
*/
|
|
14976
|
+
this.html = false;
|
|
14915
14977
|
this.bottom = this.getInitValue('bottom', props.bottom, this.bottom);
|
|
14916
14978
|
this.color = this.getInitValue('color', props.color, this.color);
|
|
14917
14979
|
this.disabled = this.getInitValue('disabled', props.disabled, this.disabled);
|
|
@@ -14925,6 +14987,7 @@ class Tooltip extends ComponentRender {
|
|
|
14925
14987
|
this.openOnHover = this.getInitValue('openOnHover', props.openOnHover, this.openOnHover);
|
|
14926
14988
|
this.right = this.getInitValue('right', props.right, this.right);
|
|
14927
14989
|
this.top = this.getInitValue('top', props.top, this.top);
|
|
14990
|
+
this.html = this.getInitValue('html', props.html, this.html);
|
|
14928
14991
|
this.createAccessors();
|
|
14929
14992
|
}
|
|
14930
14993
|
}
|