@zanichelli/albe-web-components 5.2.0 → 5.3.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/CHANGELOG.md +18 -0
- package/dist/cjs/{index-69339d64.js → index-a8bdcb9c.js} +5 -0
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{utils-bfd07a33.js → utils-21d41d92.js} +17 -2
- package/dist/cjs/{utils-98ed20af.js → utils-eca6932d.js} +1 -1
- package/dist/cjs/web-components-library.cjs.js +1 -1
- package/dist/cjs/z-app-switcher_9.cjs.entry.js +216 -190
- package/dist/cjs/z-aria-alert.cjs.entry.js +1 -1
- package/dist/cjs/z-avatar.cjs.entry.js +1 -1
- package/dist/cjs/z-button-deprecated.cjs.entry.js +1 -1
- package/dist/cjs/z-button.cjs.entry.js +1 -1
- package/dist/cjs/z-card.cjs.entry.js +1 -1
- package/dist/cjs/z-chip.cjs.entry.js +2 -2
- package/dist/cjs/z-combobox.cjs.entry.js +2 -2
- package/dist/cjs/z-contextual-menu.cjs.entry.js +1 -1
- package/dist/cjs/z-cookiebar.cjs.entry.js +1 -1
- package/dist/cjs/z-date-picker.cjs.entry.js +95 -26
- package/dist/cjs/z-file-upload.cjs.entry.js +2 -2
- package/dist/cjs/z-file.cjs.entry.js +1 -1
- package/dist/cjs/z-footer.cjs.entry.js +1 -1
- package/dist/cjs/z-info-reveal.cjs.entry.js +1 -1
- package/dist/cjs/z-input-deprecated.cjs.entry.js +2 -2
- package/dist/cjs/z-input-label_2.cjs.entry.js +2 -2
- package/dist/cjs/z-list-group.cjs.entry.js +1 -1
- package/dist/cjs/z-list_2.cjs.entry.js +1 -1
- package/dist/cjs/z-menu-dropdown_2.cjs.entry.js +2 -2
- package/dist/cjs/z-messages-pocket.cjs.entry.js +1 -1
- package/dist/cjs/z-modal-login.cjs.entry.js +1 -1
- package/dist/cjs/z-myz-card-alert.cjs.entry.js +1 -1
- package/dist/cjs/z-myz-card-dictionary.cjs.entry.js +1 -1
- package/dist/cjs/z-myz-card-footer.cjs.entry.js +1 -1
- package/dist/cjs/z-myz-card-info.cjs.entry.js +2 -2
- package/dist/cjs/z-myz-card_4.cjs.entry.js +1 -1
- package/dist/cjs/z-myz-list-item.cjs.entry.js +2 -2
- package/dist/cjs/z-myz-topbar.cjs.entry.js +1 -1
- package/dist/cjs/z-navigation-tab-link.cjs.entry.js +1 -1
- package/dist/cjs/z-navigation-tab.cjs.entry.js +1 -1
- package/dist/cjs/z-navigation-tabs.cjs.entry.js +1 -1
- package/dist/cjs/z-offcanvas.cjs.entry.js +1 -1
- package/dist/cjs/z-otp.cjs.entry.js +1 -1
- package/dist/cjs/z-pagination-bar.cjs.entry.js +2 -2
- package/dist/cjs/z-pocket_3.cjs.entry.js +2 -2
- package/dist/cjs/z-popover-deprecated.cjs.entry.js +2 -2
- package/dist/cjs/z-popover.cjs.entry.js +1 -1
- package/dist/cjs/z-section-title.cjs.entry.js +1 -1
- package/dist/cjs/z-skip-to-content.cjs.entry.js +2 -2
- package/dist/cjs/z-slideshow.cjs.entry.js +2 -2
- package/dist/cjs/z-status-tag.cjs.entry.js +1 -1
- package/dist/cjs/z-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/z-table-header.cjs.entry.js +2 -2
- package/dist/cjs/z-table-row.cjs.entry.js +1 -1
- package/dist/cjs/z-table.cjs.entry.js +1 -1
- package/dist/cjs/z-toast-notification-list.cjs.entry.js +1 -1
- package/dist/cjs/z-toast-notification.cjs.entry.js +1 -1
- package/dist/cjs/z-toggle-switch.cjs.entry.js +2 -2
- package/dist/cjs/z-tooltip-deprecated.cjs.entry.js +1 -1
- package/dist/cjs/z-tooltip.cjs.entry.js +1 -1
- package/dist/collection/beans/index.js +5 -0
- package/dist/collection/components/date-picker/styles.css +32 -26
- package/dist/collection/components/date-picker/utils.js +15 -1
- package/dist/collection/components/date-picker/z-date-picker/index.js +102 -27
- package/dist/collection/components/date-picker/z-range-picker/index.js +230 -207
- package/dist/esm/{index-0944317b.js → index-e5e2b27f.js} +6 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{utils-20383a26.js → utils-34c0d609.js} +17 -3
- package/dist/esm/{utils-0d95f520.js → utils-9fa9c37c.js} +1 -1
- package/dist/esm/web-components-library.js +1 -1
- package/dist/esm/z-app-switcher_9.entry.js +216 -190
- package/dist/esm/z-aria-alert.entry.js +1 -1
- package/dist/esm/z-avatar.entry.js +1 -1
- package/dist/esm/z-button-deprecated.entry.js +1 -1
- package/dist/esm/z-button.entry.js +1 -1
- package/dist/esm/z-card.entry.js +1 -1
- package/dist/esm/z-chip.entry.js +2 -2
- package/dist/esm/z-combobox.entry.js +2 -2
- package/dist/esm/z-contextual-menu.entry.js +1 -1
- package/dist/esm/z-cookiebar.entry.js +1 -1
- package/dist/esm/z-date-picker.entry.js +95 -26
- package/dist/esm/z-file-upload.entry.js +2 -2
- package/dist/esm/z-file.entry.js +1 -1
- package/dist/esm/z-footer.entry.js +1 -1
- package/dist/esm/z-info-reveal.entry.js +1 -1
- package/dist/esm/z-input-deprecated.entry.js +2 -2
- package/dist/esm/z-input-label_2.entry.js +2 -2
- package/dist/esm/z-list-group.entry.js +1 -1
- package/dist/esm/z-list_2.entry.js +1 -1
- package/dist/esm/z-menu-dropdown_2.entry.js +2 -2
- package/dist/esm/z-messages-pocket.entry.js +1 -1
- package/dist/esm/z-modal-login.entry.js +1 -1
- package/dist/esm/z-myz-card-alert.entry.js +1 -1
- package/dist/esm/z-myz-card-dictionary.entry.js +1 -1
- package/dist/esm/z-myz-card-footer.entry.js +1 -1
- package/dist/esm/z-myz-card-info.entry.js +2 -2
- package/dist/esm/z-myz-card_4.entry.js +1 -1
- package/dist/esm/z-myz-list-item.entry.js +2 -2
- package/dist/esm/z-myz-topbar.entry.js +1 -1
- package/dist/esm/z-navigation-tab-link.entry.js +1 -1
- package/dist/esm/z-navigation-tab.entry.js +1 -1
- package/dist/esm/z-navigation-tabs.entry.js +1 -1
- package/dist/esm/z-offcanvas.entry.js +1 -1
- package/dist/esm/z-otp.entry.js +1 -1
- package/dist/esm/z-pagination-bar.entry.js +2 -2
- package/dist/esm/z-pocket_3.entry.js +2 -2
- package/dist/esm/z-popover-deprecated.entry.js +2 -2
- package/dist/esm/z-popover.entry.js +1 -1
- package/dist/esm/z-section-title.entry.js +1 -1
- package/dist/esm/z-skip-to-content.entry.js +2 -2
- package/dist/esm/z-slideshow.entry.js +2 -2
- package/dist/esm/z-status-tag.entry.js +1 -1
- package/dist/esm/z-table-cell.entry.js +1 -1
- package/dist/esm/z-table-header.entry.js +2 -2
- package/dist/esm/z-table-row.entry.js +1 -1
- package/dist/esm/z-table.entry.js +1 -1
- package/dist/esm/z-toast-notification-list.entry.js +1 -1
- package/dist/esm/z-toast-notification.entry.js +1 -1
- package/dist/esm/z-toggle-switch.entry.js +2 -2
- package/dist/esm/z-tooltip-deprecated.entry.js +1 -1
- package/dist/esm/z-tooltip.entry.js +1 -1
- package/dist/types/beans/index.d.ts +4 -0
- package/dist/types/components/date-picker/utils.d.ts +4 -3
- package/dist/types/components/date-picker/z-date-picker/index.d.ts +6 -1
- package/dist/types/components/date-picker/z-range-picker/index.d.ts +16 -15
- package/dist/types/components.d.ts +5 -5
- package/dist/web-components-library/index.esm.js +1 -1
- package/dist/web-components-library/p-0146081c.entry.js +16 -0
- package/{www/build/p-c36ad471.entry.js → dist/web-components-library/p-040ea013.entry.js} +1 -1
- package/dist/web-components-library/{p-bfccbf81.entry.js → p-07ae4f7d.entry.js} +1 -1
- package/dist/web-components-library/p-0c3e7bc3.js +1 -0
- package/dist/web-components-library/{p-ac4f1a90.entry.js → p-1356eb90.entry.js} +1 -1
- package/dist/web-components-library/{p-84d7a0ed.entry.js → p-1c790896.entry.js} +1 -1
- package/dist/web-components-library/{p-ea4a063a.entry.js → p-215adfd1.entry.js} +1 -1
- package/dist/web-components-library/{p-0818a02f.entry.js → p-27666111.entry.js} +1 -1
- package/dist/web-components-library/{p-bfa1813d.entry.js → p-2ed37f62.entry.js} +1 -1
- package/{www/build/p-adb293aa.entry.js → dist/web-components-library/p-35573e0e.entry.js} +1 -1
- package/dist/web-components-library/{p-2275728f.entry.js → p-3700ad63.entry.js} +1 -1
- package/dist/web-components-library/{p-275bebf2.entry.js → p-39dbb042.entry.js} +1 -1
- package/dist/web-components-library/{p-0a7ebd31.entry.js → p-3a991f9c.entry.js} +1 -1
- package/dist/web-components-library/{p-0be8daa3.entry.js → p-3ade68ff.entry.js} +1 -1
- package/dist/web-components-library/{p-f24e569d.entry.js → p-3d748f0d.entry.js} +1 -1
- package/dist/web-components-library/p-47a55354.entry.js +1 -0
- package/dist/web-components-library/{p-ac41dd18.entry.js → p-4965b6db.entry.js} +1 -1
- package/dist/web-components-library/{p-122f0f28.js → p-5aa819f8.js} +1 -1
- package/dist/web-components-library/p-5e3b8207.entry.js +1 -0
- package/dist/web-components-library/{p-854f5b2e.entry.js → p-766eb9cf.entry.js} +1 -1
- package/{www/build/p-fb7d64f2.js → dist/web-components-library/p-7a5ecafb.js} +1 -1
- package/dist/web-components-library/{p-269a9ec5.entry.js → p-7e691a4e.entry.js} +1 -1
- package/dist/web-components-library/{p-cd6ec70f.entry.js → p-7f48b622.entry.js} +1 -1
- package/dist/web-components-library/{p-6f18a0fc.entry.js → p-80f26a20.entry.js} +1 -1
- package/{www/build/p-3a57ff32.entry.js → dist/web-components-library/p-818c073b.entry.js} +1 -1
- package/dist/web-components-library/{p-cdabcb55.entry.js → p-846f16e8.entry.js} +1 -1
- package/dist/web-components-library/{p-721d1645.entry.js → p-8712d63f.entry.js} +1 -1
- package/{www/build/p-546616a7.entry.js → dist/web-components-library/p-878e62e2.entry.js} +1 -1
- package/dist/web-components-library/{p-6aa8b260.entry.js → p-91cbf793.entry.js} +1 -1
- package/dist/web-components-library/{p-9b873fe5.entry.js → p-9504d075.entry.js} +1 -1
- package/dist/web-components-library/{p-6ff49230.entry.js → p-96bf5b15.entry.js} +1 -1
- package/dist/web-components-library/{p-e150820d.entry.js → p-977c81d3.entry.js} +1 -1
- package/dist/web-components-library/{p-251fce3e.entry.js → p-97d62d2a.entry.js} +1 -1
- package/dist/web-components-library/{p-687ba257.entry.js → p-a73195b6.entry.js} +1 -1
- package/dist/web-components-library/{p-37e06523.entry.js → p-aba00527.entry.js} +1 -1
- package/dist/web-components-library/{p-939662fa.entry.js → p-ac52264c.entry.js} +1 -1
- package/dist/web-components-library/{p-9ac122ea.entry.js → p-afed0692.entry.js} +1 -1
- package/{www/build/p-de2b2858.entry.js → dist/web-components-library/p-b369bf2f.entry.js} +1 -1
- package/dist/web-components-library/{p-db7dbb44.entry.js → p-b621a765.entry.js} +1 -1
- package/dist/web-components-library/{p-8d50bfa9.entry.js → p-b6794d0f.entry.js} +1 -1
- package/dist/web-components-library/{p-095a0982.entry.js → p-ba76f52b.entry.js} +1 -1
- package/dist/web-components-library/{p-919cdfbf.entry.js → p-cb3663e6.entry.js} +1 -1
- package/dist/web-components-library/{p-98350ea9.entry.js → p-cb4a854e.entry.js} +1 -1
- package/dist/web-components-library/{p-b5b5e5e3.entry.js → p-d4c5085b.entry.js} +1 -1
- package/dist/web-components-library/{p-a72503d2.entry.js → p-d5e67db8.entry.js} +1 -1
- package/dist/web-components-library/{p-ed40ca4d.entry.js → p-d986d368.entry.js} +1 -1
- package/dist/web-components-library/p-e4a2811a.entry.js +1 -0
- package/{www/build/p-f1eee91e.entry.js → dist/web-components-library/p-e5eb1fa4.entry.js} +1 -1
- package/dist/web-components-library/{p-1fae466d.entry.js → p-e6fb8b76.entry.js} +1 -1
- package/dist/web-components-library/p-e82cee27.entry.js +1 -0
- package/dist/web-components-library/{p-ebcda09e.entry.js → p-eddde828.entry.js} +1 -1
- package/{www/build/p-d3ce433b.entry.js → dist/web-components-library/p-f2962121.entry.js} +1 -1
- package/dist/web-components-library/{p-bdf5ab5b.entry.js → p-f5f15b8e.entry.js} +1 -1
- package/dist/web-components-library/{p-5cbe4445.entry.js → p-faeb0c6e.entry.js} +1 -1
- package/dist/web-components-library/web-components-library.esm.js +1 -1
- package/package.json +1 -1
- package/www/build/index.esm.js +1 -1
- package/www/build/p-0146081c.entry.js +16 -0
- package/{dist/web-components-library/p-c36ad471.entry.js → www/build/p-040ea013.entry.js} +1 -1
- package/www/build/{p-bfccbf81.entry.js → p-07ae4f7d.entry.js} +1 -1
- package/www/build/p-0c3e7bc3.js +1 -0
- package/www/build/{p-ac4f1a90.entry.js → p-1356eb90.entry.js} +1 -1
- package/www/build/{p-84d7a0ed.entry.js → p-1c790896.entry.js} +1 -1
- package/www/build/{p-ea4a063a.entry.js → p-215adfd1.entry.js} +1 -1
- package/www/build/{p-0818a02f.entry.js → p-27666111.entry.js} +1 -1
- package/www/build/{p-bfa1813d.entry.js → p-2ed37f62.entry.js} +1 -1
- package/{dist/web-components-library/p-adb293aa.entry.js → www/build/p-35573e0e.entry.js} +1 -1
- package/www/build/{p-2275728f.entry.js → p-3700ad63.entry.js} +1 -1
- package/www/build/p-388b2ac4.js +1 -0
- package/www/build/{p-275bebf2.entry.js → p-39dbb042.entry.js} +1 -1
- package/www/build/{p-0a7ebd31.entry.js → p-3a991f9c.entry.js} +1 -1
- package/www/build/{p-0be8daa3.entry.js → p-3ade68ff.entry.js} +1 -1
- package/www/build/{p-f24e569d.entry.js → p-3d748f0d.entry.js} +1 -1
- package/www/build/p-47a55354.entry.js +1 -0
- package/www/build/{p-ac41dd18.entry.js → p-4965b6db.entry.js} +1 -1
- package/www/build/{p-122f0f28.js → p-5aa819f8.js} +1 -1
- package/www/build/p-5e3b8207.entry.js +1 -0
- package/www/build/{p-854f5b2e.entry.js → p-766eb9cf.entry.js} +1 -1
- package/{dist/web-components-library/p-fb7d64f2.js → www/build/p-7a5ecafb.js} +1 -1
- package/www/build/{p-269a9ec5.entry.js → p-7e691a4e.entry.js} +1 -1
- package/www/build/{p-cd6ec70f.entry.js → p-7f48b622.entry.js} +1 -1
- package/www/build/{p-6f18a0fc.entry.js → p-80f26a20.entry.js} +1 -1
- package/{dist/web-components-library/p-3a57ff32.entry.js → www/build/p-818c073b.entry.js} +1 -1
- package/www/build/{p-cdabcb55.entry.js → p-846f16e8.entry.js} +1 -1
- package/www/build/{p-721d1645.entry.js → p-8712d63f.entry.js} +1 -1
- package/{dist/web-components-library/p-546616a7.entry.js → www/build/p-878e62e2.entry.js} +1 -1
- package/www/build/{p-6aa8b260.entry.js → p-91cbf793.entry.js} +1 -1
- package/www/build/{p-9b873fe5.entry.js → p-9504d075.entry.js} +1 -1
- package/www/build/{p-6ff49230.entry.js → p-96bf5b15.entry.js} +1 -1
- package/www/build/{p-e150820d.entry.js → p-977c81d3.entry.js} +1 -1
- package/www/build/{p-251fce3e.entry.js → p-97d62d2a.entry.js} +1 -1
- package/www/build/{p-687ba257.entry.js → p-a73195b6.entry.js} +1 -1
- package/www/build/{p-37e06523.entry.js → p-aba00527.entry.js} +1 -1
- package/www/build/{p-939662fa.entry.js → p-ac52264c.entry.js} +1 -1
- package/www/build/{p-9ac122ea.entry.js → p-afed0692.entry.js} +1 -1
- package/{dist/web-components-library/p-de2b2858.entry.js → www/build/p-b369bf2f.entry.js} +1 -1
- package/www/build/{p-db7dbb44.entry.js → p-b621a765.entry.js} +1 -1
- package/www/build/{p-8d50bfa9.entry.js → p-b6794d0f.entry.js} +1 -1
- package/www/build/{p-095a0982.entry.js → p-ba76f52b.entry.js} +1 -1
- package/www/build/{p-919cdfbf.entry.js → p-cb3663e6.entry.js} +1 -1
- package/www/build/{p-98350ea9.entry.js → p-cb4a854e.entry.js} +1 -1
- package/www/build/{p-b5b5e5e3.entry.js → p-d4c5085b.entry.js} +1 -1
- package/www/build/{p-a72503d2.entry.js → p-d5e67db8.entry.js} +1 -1
- package/www/build/{p-ed40ca4d.entry.js → p-d986d368.entry.js} +1 -1
- package/www/build/p-e4a2811a.entry.js +1 -0
- package/{dist/web-components-library/p-f1eee91e.entry.js → www/build/p-e5eb1fa4.entry.js} +1 -1
- package/www/build/{p-1fae466d.entry.js → p-e6fb8b76.entry.js} +1 -1
- package/www/build/p-e82cee27.entry.js +1 -0
- package/www/build/{p-ebcda09e.entry.js → p-eddde828.entry.js} +1 -1
- package/{dist/web-components-library/p-d3ce433b.entry.js → www/build/p-f2962121.entry.js} +1 -1
- package/www/build/{p-bdf5ab5b.entry.js → p-f5f15b8e.entry.js} +1 -1
- package/www/build/{p-5cbe4445.entry.js → p-faeb0c6e.entry.js} +1 -1
- package/www/build/web-components-library.esm.js +1 -1
- package/www/index.html +1 -1
- package/dist/web-components-library/p-717c5e20.entry.js +0 -1
- package/dist/web-components-library/p-9247f214.js +0 -1
- package/dist/web-components-library/p-955942fc.entry.js +0 -16
- package/dist/web-components-library/p-af353020.entry.js +0 -1
- package/dist/web-components-library/p-b40d8313.entry.js +0 -1
- package/dist/web-components-library/p-ce351931.entry.js +0 -1
- package/www/build/p-717c5e20.entry.js +0 -1
- package/www/build/p-7ed835e0.js +0 -1
- package/www/build/p-9247f214.js +0 -1
- package/www/build/p-955942fc.entry.js +0 -16
- package/www/build/p-af353020.entry.js +0 -1
- package/www/build/p-b40d8313.entry.js +0 -1
- package/www/build/p-ce351931.entry.js +0 -1
|
@@ -1,125 +1,157 @@
|
|
|
1
|
-
import { Component, Prop, Element, h, Listen, Event, State, } from "@stencil/core";
|
|
1
|
+
import { Component, Prop, Element, h, Listen, Event, State, Watch, } from "@stencil/core";
|
|
2
2
|
import flatpickr from "flatpickr";
|
|
3
3
|
import { Italian } from "flatpickr/dist/l10n/it.js";
|
|
4
|
-
import {
|
|
5
|
-
import { setAriaOptions, setFlatpickrPosition } from "../utils";
|
|
4
|
+
import { ZRangePickerMode, ZDatePickerPosition, InputTypeEnum, InputStatusEnum, } from "../../../beans";
|
|
5
|
+
import { setAriaOptions, setFlatpickrPosition, validateDate } from "../utils";
|
|
6
6
|
export class ZRangePicker {
|
|
7
7
|
constructor() {
|
|
8
|
-
/** [Optional] datepicker mode: date
|
|
9
|
-
this.mode =
|
|
8
|
+
/** [Optional] datepicker mode: date or datetime */
|
|
9
|
+
this.mode = ZRangePickerMode.date;
|
|
10
10
|
this.flatpickrPosition = ZDatePickerPosition.bottom;
|
|
11
11
|
this.activeInput = "start-input";
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
12
|
+
this.firstInputError = false;
|
|
13
|
+
this.lastInputError = false;
|
|
14
|
+
}
|
|
15
|
+
watchMode() {
|
|
16
|
+
this.setupPickers();
|
|
14
17
|
}
|
|
15
18
|
handleClick() {
|
|
16
19
|
this.getFocusedInput();
|
|
17
20
|
}
|
|
18
21
|
handleKeyDown(ev) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
: { picker: this.flatpickrInstance2, index: 1 };
|
|
22
|
-
let isCalendarOpened = document.activeElement.closest(".flatpickr-calendar");
|
|
22
|
+
var _a, _b, _c, _d, _e, _f;
|
|
23
|
+
let currentPicker = this.activeInput === "start-input" ? this.firstPicker : this.lastPicker;
|
|
23
24
|
this.getFocusedInput();
|
|
25
|
+
if (ev.key === "Escape") {
|
|
26
|
+
document.activeElement.classList.contains(`${this.rangePickerId}-1`) &&
|
|
27
|
+
((_a = this.firstPicker) === null || _a === void 0 ? void 0 : _a.close());
|
|
28
|
+
document.activeElement.classList.contains(`${this.rangePickerId}-2`) &&
|
|
29
|
+
((_b = this.lastPicker) === null || _b === void 0 ? void 0 : _b.close());
|
|
30
|
+
}
|
|
24
31
|
if (ev.key === "Enter" || ev.key === " ") {
|
|
25
|
-
if (document.activeElement.classList.contains(`${this.rangePickerId}`) ||
|
|
32
|
+
if (document.activeElement.classList.contains(`${this.rangePickerId}-1`) ||
|
|
26
33
|
document.activeElement.classList.contains(`${this.rangePickerId}-2`)) {
|
|
27
|
-
|
|
34
|
+
currentPicker === null || currentPicker === void 0 ? void 0 : currentPicker.open();
|
|
35
|
+
}
|
|
36
|
+
let isCrossIconEntered = document.activeElement.classList.contains("resetIcon");
|
|
37
|
+
if (isCrossIconEntered) {
|
|
38
|
+
if (this.activeInput === "start-input") {
|
|
39
|
+
this.firstInputError = false;
|
|
40
|
+
(_c = this.firstPicker) === null || _c === void 0 ? void 0 : _c.clear();
|
|
41
|
+
this.printDate(null, ((_d = this.lastPicker) === null || _d === void 0 ? void 0 : _d.selectedDates[0]) || null);
|
|
42
|
+
}
|
|
43
|
+
if (this.activeInput === "end-input") {
|
|
44
|
+
this.lastInputError = false;
|
|
45
|
+
(_e = this.firstPicker) === null || _e === void 0 ? void 0 : _e.clear();
|
|
46
|
+
this.printDate(((_f = this.firstPicker) === null || _f === void 0 ? void 0 : _f.selectedDates[0]) || null, null);
|
|
47
|
+
}
|
|
28
48
|
}
|
|
29
49
|
let isPrevArrowEntered = document.activeElement.classList.contains("flatpickr-prev-month");
|
|
30
50
|
let isNextArrowEntered = document.activeElement.classList.contains("flatpickr-next-month");
|
|
31
51
|
let arrowPressed = isPrevArrowEntered || isNextArrowEntered;
|
|
32
52
|
arrowPressed && ev.key === " " && ev.preventDefault();
|
|
33
|
-
isPrevArrowEntered &&
|
|
34
|
-
isNextArrowEntered &&
|
|
53
|
+
isPrevArrowEntered && (currentPicker === null || currentPicker === void 0 ? void 0 : currentPicker.changeMonth(-1));
|
|
54
|
+
isNextArrowEntered && (currentPicker === null || currentPicker === void 0 ? void 0 : currentPicker.changeMonth(1));
|
|
35
55
|
}
|
|
36
56
|
}
|
|
37
|
-
/** Set background color before or after first selected date, before selecting the second one */
|
|
38
|
-
onMouseOver(e) {
|
|
39
|
-
let currentInputState = this.activeInput === "start-input"
|
|
40
|
-
? { picker: this.flatpickrInstance, index: 0 }
|
|
41
|
-
: { picker: this.flatpickrInstance2, index: 1 };
|
|
42
|
-
this.setRangeHoverStyle(e, currentInputState.picker, this.element.getElementsByClassName("flatpickr-calendar")[currentInputState.index]);
|
|
43
|
-
}
|
|
44
57
|
componentDidLoad() {
|
|
58
|
+
this.setupPickers();
|
|
59
|
+
}
|
|
60
|
+
setupPickers() {
|
|
45
61
|
let config = {
|
|
46
|
-
enableTime: this.mode ===
|
|
62
|
+
enableTime: this.mode === ZRangePickerMode.dateTime,
|
|
47
63
|
locale: Italian,
|
|
48
64
|
allowInput: true,
|
|
49
|
-
|
|
65
|
+
wrap: true,
|
|
66
|
+
dateFormat: this.mode === ZRangePickerMode.dateTime ? "d-m-Y - H:i" : "d-m-Y",
|
|
50
67
|
ariaDateFormat: "d F Y",
|
|
51
68
|
minuteIncrement: 1,
|
|
52
69
|
time_24hr: true,
|
|
53
|
-
|
|
54
|
-
this.
|
|
70
|
+
onValueUpdate: (_selectedDates, _dateStr, _instance) => {
|
|
71
|
+
let firstInputActive = this.activeInput === "start-input";
|
|
72
|
+
let firstDate = this.firstPicker.selectedDates[0];
|
|
73
|
+
let lastDate = this.lastPicker.selectedDates[0];
|
|
74
|
+
if (+firstDate > +lastDate) {
|
|
75
|
+
if (firstInputActive) {
|
|
76
|
+
this.firstInputError = true;
|
|
77
|
+
this.printDate(null, lastDate || null);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
this.lastInputError = true;
|
|
81
|
+
this.printDate(firstDate || null, null);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
this.lastInputError = false;
|
|
86
|
+
this.firstInputError = false;
|
|
87
|
+
this.printDate(firstDate || null, lastDate || null);
|
|
88
|
+
}
|
|
89
|
+
this.setRangeStyle(0);
|
|
90
|
+
this.setRangeStyle(1);
|
|
91
|
+
},
|
|
92
|
+
onChange: (_selectedDates, _dateStr, instance) => {
|
|
93
|
+
this.onDateSelect();
|
|
94
|
+
this.setRangeStyle(instance.input.classList.contains("start-input") ? 0 : 1);
|
|
55
95
|
},
|
|
56
|
-
onOpen: () => {
|
|
96
|
+
onOpen: (_selectedDates, _dateStr, instance) => {
|
|
57
97
|
setAriaOptions(this.element, this.mode);
|
|
58
98
|
this.flatpickrPosition = setFlatpickrPosition(this.element, this.mode);
|
|
59
|
-
this.setRangeStyle();
|
|
99
|
+
this.setRangeStyle(instance.input.classList.contains("start-input") ? 0 : 1);
|
|
60
100
|
this.getFocusedInput();
|
|
61
|
-
this.getCurrentMonth();
|
|
62
101
|
},
|
|
63
|
-
onYearChange: () => {
|
|
64
|
-
this.setRangeStyle();
|
|
102
|
+
onYearChange: (_selectedDates, _dateStr, instance) => {
|
|
103
|
+
this.setRangeStyle(instance.input.classList.contains("start-input") ? 0 : 1);
|
|
65
104
|
},
|
|
66
|
-
onMonthChange: () => {
|
|
67
|
-
this.setRangeStyle();
|
|
105
|
+
onMonthChange: (_selectedDates, _dateStr, instance) => {
|
|
106
|
+
this.setRangeStyle(instance.input.classList.contains("start-input") ? 0 : 1);
|
|
68
107
|
},
|
|
69
108
|
onKeyDown: () => {
|
|
70
109
|
setAriaOptions(this.element, this.mode);
|
|
71
110
|
},
|
|
72
|
-
wrap: true,
|
|
73
111
|
};
|
|
74
|
-
this.
|
|
75
|
-
this.
|
|
112
|
+
this.firstPicker = flatpickr(`.${this.rangePickerId}-1-container`, Object.assign(Object.assign({}, config), { mode: "single", appendTo: this.element.querySelector(`.${this.rangePickerId}-1-wrapper`) }));
|
|
113
|
+
this.lastPicker = flatpickr(`.${this.rangePickerId}-2-container`, Object.assign(Object.assign({}, config), { mode: "single", appendTo: this.element.querySelector(`.${this.rangePickerId}-2-wrapper`) }));
|
|
76
114
|
this.element.querySelectorAll(".flatpickr-weekday").forEach((element) => {
|
|
77
115
|
element.innerHTML = element.innerHTML.trim().charAt(0);
|
|
78
116
|
});
|
|
79
117
|
}
|
|
80
|
-
onDateSelect(
|
|
81
|
-
const firstInputElement = this.element.querySelectorAll("z-input")[0];
|
|
82
|
-
const secondInputElement = this.element.querySelectorAll("z-input")[1];
|
|
118
|
+
onDateSelect() {
|
|
83
119
|
let firstInputActive = this.activeInput === "start-input";
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
}
|
|
88
|
-
/** Order the selected dates ASC and update the two flatpickers */
|
|
89
|
-
if (instance.selectedDates.length > 1) {
|
|
120
|
+
let firstDate = this.firstPicker.selectedDates[0];
|
|
121
|
+
let lastDate = this.lastPicker.selectedDates[0];
|
|
122
|
+
if (+firstDate > +lastDate) {
|
|
90
123
|
if (firstInputActive) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
instance.setDate([...orderedDates]);
|
|
94
|
-
this.flatpickrInstance2.setDate([
|
|
95
|
-
instance.selectedDates[1],
|
|
96
|
-
instance.selectedDates[0],
|
|
97
|
-
]);
|
|
124
|
+
this.firstInputError = true;
|
|
125
|
+
this.printDate(null, lastDate || null);
|
|
98
126
|
}
|
|
99
127
|
else {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
instance.setDate([...orderedDates]);
|
|
103
|
-
this.flatpickrInstance.setDate([
|
|
104
|
-
instance.selectedDates[1],
|
|
105
|
-
instance.selectedDates[0],
|
|
106
|
-
]);
|
|
107
|
-
this.flatpickrInstance.setDate(this.flatpickrInstance.selectedDates.sort((a, b) => b - a));
|
|
128
|
+
this.lastInputError = true;
|
|
129
|
+
this.printDate(firstDate || null, null);
|
|
108
130
|
}
|
|
109
|
-
this.printDate(instance.selectedDates[0], instance.selectedDates[1]);
|
|
110
131
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
/** If exists, set second date value into second input */
|
|
117
|
-
if (instance.selectedDates[1]) {
|
|
118
|
-
secondInputElement.value = this.getDate(instance.selectedDates[firstInputActive ? 0 : index]);
|
|
132
|
+
else {
|
|
133
|
+
this.lastInputError = false;
|
|
134
|
+
this.firstInputError = false;
|
|
135
|
+
this.printDate(firstDate || null, lastDate || null);
|
|
119
136
|
}
|
|
120
137
|
}
|
|
121
|
-
|
|
122
|
-
|
|
138
|
+
disableDates(date, index) {
|
|
139
|
+
let calendar = this.element.getElementsByClassName("flatpickr-calendar")[index];
|
|
140
|
+
Array.from(calendar.getElementsByClassName("flatpickr-day")).forEach((element) => {
|
|
141
|
+
let calendarDate = this.getDateWithoutTime(this.replaceMonths(element.ariaLabel, null));
|
|
142
|
+
let breakpoint = this.getDateWithoutTime(date);
|
|
143
|
+
let inRange = index === 0 ? calendarDate > breakpoint : calendarDate < breakpoint;
|
|
144
|
+
if (inRange) {
|
|
145
|
+
element.classList.toggle("flatpickr-disabled", true);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
element.classList.toggle("flatpickr-disabled", false);
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
setAriaOptions(this.element, this.mode);
|
|
152
|
+
}
|
|
153
|
+
formatDate(date) {
|
|
154
|
+
if (this.mode === ZRangePickerMode.date) {
|
|
123
155
|
return `${flatpickr.formatDate(date, "d-m-Y")}`;
|
|
124
156
|
}
|
|
125
157
|
else {
|
|
@@ -127,14 +159,21 @@ export class ZRangePicker {
|
|
|
127
159
|
}
|
|
128
160
|
}
|
|
129
161
|
printDate(firstDate, lastDate) {
|
|
130
|
-
let
|
|
131
|
-
this.
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
162
|
+
let firstDateString = firstDate ? this.formatDate(firstDate) : null;
|
|
163
|
+
let lastDateString = lastDate ? this.formatDate(lastDate) : null;
|
|
164
|
+
this.dateSelect.emit([firstDateString, lastDateString]);
|
|
165
|
+
}
|
|
166
|
+
getTime() {
|
|
167
|
+
let hour = this.element.getElementsByClassName("flatpickr-hour")[0].value;
|
|
168
|
+
let minutes = this.element.getElementsByClassName("flatpickr-minute")[0].value;
|
|
169
|
+
return `${hour}:${minutes}`;
|
|
170
|
+
}
|
|
171
|
+
getDateWithoutTime(date) {
|
|
172
|
+
let newDate = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0);
|
|
173
|
+
return newDate;
|
|
135
174
|
}
|
|
136
175
|
/** Replace month word to month number */
|
|
137
|
-
|
|
176
|
+
replaceMonths(date, time) {
|
|
138
177
|
const month = date.split(" ")[1];
|
|
139
178
|
const months = {
|
|
140
179
|
Gennaio: "01",
|
|
@@ -151,7 +190,7 @@ export class ZRangePicker {
|
|
|
151
190
|
Dicembre: "12",
|
|
152
191
|
};
|
|
153
192
|
const pieces = date.replace(month, months[month]).split(" ");
|
|
154
|
-
return new Date(parseInt(pieces[2]), parseInt(pieces[1]) - 1, parseInt(pieces[0]));
|
|
193
|
+
return new Date(parseInt(pieces[2]), parseInt(pieces[1]) - 1, parseInt(pieces[0]), time ? parseInt(time.split(":")[0]) : 0, time ? parseInt(time.split(":")[1]) : 0);
|
|
155
194
|
}
|
|
156
195
|
/** Get the current focused input, first or last */
|
|
157
196
|
getFocusedInput() {
|
|
@@ -166,139 +205,118 @@ export class ZRangePicker {
|
|
|
166
205
|
this.activeInput = "end-input";
|
|
167
206
|
}
|
|
168
207
|
}
|
|
169
|
-
/** Set current month after flatpickr opened */
|
|
170
|
-
getCurrentMonth() {
|
|
171
|
-
let currentInputState = this.activeInput === "start-input"
|
|
172
|
-
? { picker: this.flatpickrInstance, index: 0 }
|
|
173
|
-
: { picker: this.flatpickrInstance2, index: 1 };
|
|
174
|
-
let length = currentInputState.picker.selectedDates.length;
|
|
175
|
-
if (length > 0) {
|
|
176
|
-
let dateMonth = currentInputState.picker.selectedDates[length - 1].getMonth();
|
|
177
|
-
let dateYear = currentInputState.picker.selectedDates[length - 1].getFullYear();
|
|
178
|
-
currentInputState.picker.changeMonth(dateMonth, false);
|
|
179
|
-
currentInputState.picker.changeYear(dateYear, false);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
208
|
/** Set style of the days between the two selected dates */
|
|
183
|
-
setRangeStyle() {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
209
|
+
setRangeStyle(index) {
|
|
210
|
+
Array.from(this.element.getElementsByClassName("flatpickr-calendar")).forEach((element) => {
|
|
211
|
+
Array.from(element.getElementsByClassName("flatpickr-day")).forEach((element) => {
|
|
212
|
+
let hasFirstDate = this.firstPicker.selectedDates.length === 1;
|
|
213
|
+
let hasLastDate = this.lastPicker.selectedDates.length === 1;
|
|
214
|
+
let firstDate;
|
|
215
|
+
let lastDate;
|
|
216
|
+
let date = this.getDateWithoutTime(this.replaceMonths(element.ariaLabel, null));
|
|
217
|
+
if (hasFirstDate) {
|
|
218
|
+
firstDate = this.getDateWithoutTime(this.firstPicker.selectedDates[0]);
|
|
219
|
+
if (+date === +firstDate) {
|
|
220
|
+
element.classList.toggle("startRange", true);
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
element.classList.toggle("startRange", false);
|
|
224
|
+
}
|
|
197
225
|
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
let hoveredDate = this.parseDate(calendarDate);
|
|
207
|
-
Array.from(calendar.getElementsByClassName("flatpickr-day")).forEach((element) => {
|
|
208
|
-
let date = this.parseDate(element.ariaLabel);
|
|
209
|
-
let selectedDatesCount = flatpickr.selectedDates.length;
|
|
210
|
-
let firstDate = selectedDatesCount === 1 ? flatpickr.selectedDates[0] : null;
|
|
211
|
-
let before = firstDate && hoveredDate < firstDate;
|
|
212
|
-
let after = firstDate && hoveredDate > firstDate;
|
|
213
|
-
let selected = element.className.includes("selected");
|
|
214
|
-
if (firstDate &&
|
|
215
|
-
((before && date > hoveredDate && date < firstDate && !selected) ||
|
|
216
|
-
(after && date < hoveredDate && date > firstDate && !selected))) {
|
|
217
|
-
element.classList.toggle("inRange", true);
|
|
226
|
+
if (hasLastDate) {
|
|
227
|
+
lastDate = this.getDateWithoutTime(this.lastPicker.selectedDates[0]);
|
|
228
|
+
if (+date === +lastDate) {
|
|
229
|
+
element.classList.toggle("endRange", true);
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
element.classList.toggle("endRange", false);
|
|
233
|
+
}
|
|
218
234
|
}
|
|
219
|
-
|
|
220
|
-
|
|
235
|
+
if (hasFirstDate && hasLastDate) {
|
|
236
|
+
if (date > firstDate && date < lastDate) {
|
|
237
|
+
element.classList.toggle("inRange", true);
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
element.classList.toggle("inRange", false);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
if (index === 0 && hasLastDate) {
|
|
244
|
+
this.disableDates(this.lastPicker.selectedDates[0], index);
|
|
245
|
+
}
|
|
246
|
+
if (index === 1 && hasFirstDate) {
|
|
247
|
+
this.disableDates(this.firstPicker.selectedDates[0], index);
|
|
221
248
|
}
|
|
222
|
-
this.setRangeStyle();
|
|
223
249
|
});
|
|
224
|
-
}
|
|
250
|
+
});
|
|
225
251
|
}
|
|
226
252
|
onStopTyping(value) {
|
|
227
|
-
let text = value.detail.value;
|
|
253
|
+
let text = value.detail.value.replace("/", "-");
|
|
228
254
|
let englishData = text.split("-");
|
|
229
|
-
let time = this.mode ===
|
|
230
|
-
let englishParsedData = `${englishData[2]}-${englishData[1]}-${englishData[0]}
|
|
255
|
+
let time = this.mode === ZRangePickerMode.dateTime ? `T${englishData[3]}:00` : "";
|
|
256
|
+
let englishParsedData = `${englishData[2]}-${englishData[1]}-${englishData[0]}${time}`
|
|
231
257
|
.split(" ")
|
|
232
258
|
.join("");
|
|
233
|
-
let
|
|
259
|
+
let isValidDate = validateDate(text, this.mode === ZRangePickerMode.dateTime);
|
|
260
|
+
let date = Date.parse(englishParsedData).toString();
|
|
234
261
|
if (this.activeInput === "start-input") {
|
|
235
|
-
/** Remove second value from either the flatpickers if input is cleared */
|
|
236
262
|
if (text === "") {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
this.flatpickrInstance.setDate([
|
|
243
|
-
this.flatpickrInstance.selectedDates[0],
|
|
244
|
-
]);
|
|
245
|
-
this.flatpickrInstance2.setDate([
|
|
246
|
-
this.flatpickrInstance2.selectedDates[1],
|
|
247
|
-
]);
|
|
248
|
-
}
|
|
263
|
+
this.firstInputError = false;
|
|
264
|
+
this.firstPicker.setDate([]);
|
|
265
|
+
this.printDate(null, this.lastPicker.selectedDates[0] || null);
|
|
249
266
|
}
|
|
250
|
-
else {
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
])
|
|
257
|
-
|
|
258
|
-
text
|
|
259
|
-
this.
|
|
260
|
-
]);
|
|
261
|
-
if (this.flatpickrInstance.selectedDates.length > 1) {
|
|
262
|
-
this.printDate(new Date(englishParsedData), this.flatpickrInstance.selectedDates[0]);
|
|
267
|
+
else if (!isValidDate) {
|
|
268
|
+
this.firstInputError = true;
|
|
269
|
+
this.printDate(null, this.lastPicker.selectedDates[0] || null);
|
|
270
|
+
}
|
|
271
|
+
else if (isValidDate) {
|
|
272
|
+
if (this.lastPicker.selectedDates.length === 1) {
|
|
273
|
+
if (+date <= +this.lastPicker.selectedDates[0]) {
|
|
274
|
+
this.firstInputError = false;
|
|
275
|
+
this.firstPicker.setDate([text]);
|
|
276
|
+
this.printDate(new Date(englishParsedData), this.lastPicker.selectedDates[0]);
|
|
263
277
|
}
|
|
264
|
-
|
|
278
|
+
else {
|
|
279
|
+
this.firstInputError = true;
|
|
280
|
+
this.printDate(null, this.lastPicker.selectedDates[0]);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
this.firstInputError = false;
|
|
285
|
+
this.firstPicker.setDate([text]);
|
|
286
|
+
this.printDate(new Date(englishParsedData), null);
|
|
265
287
|
}
|
|
266
288
|
}
|
|
267
289
|
}
|
|
268
290
|
else {
|
|
269
|
-
/** Remove second value from either the flatpickers if input is cleared */
|
|
270
291
|
if (text === "") {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
}
|
|
275
|
-
else {
|
|
276
|
-
this.flatpickrInstance.setDate([
|
|
277
|
-
this.flatpickrInstance.selectedDates[1],
|
|
278
|
-
]);
|
|
279
|
-
this.flatpickrInstance2.setDate([
|
|
280
|
-
this.flatpickrInstance2.selectedDates[0],
|
|
281
|
-
]);
|
|
282
|
-
}
|
|
292
|
+
this.lastInputError = false;
|
|
293
|
+
this.lastPicker.setDate([]);
|
|
294
|
+
this.printDate(this.firstPicker.selectedDates[0] || null, null);
|
|
283
295
|
}
|
|
284
|
-
else {
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
])
|
|
291
|
-
|
|
292
|
-
this.
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
this.
|
|
296
|
+
else if (!isValidDate) {
|
|
297
|
+
this.lastInputError = true;
|
|
298
|
+
this.printDate(this.firstPicker.selectedDates[0] || null, null);
|
|
299
|
+
}
|
|
300
|
+
else if (isValidDate) {
|
|
301
|
+
if (this.firstPicker.selectedDates.length === 1) {
|
|
302
|
+
if (+date >= +this.firstPicker.selectedDates[0]) {
|
|
303
|
+
this.lastInputError = false;
|
|
304
|
+
this.lastPicker.setDate([text]);
|
|
305
|
+
this.printDate(this.firstPicker.selectedDates[0], new Date(englishParsedData));
|
|
306
|
+
}
|
|
307
|
+
else {
|
|
308
|
+
this.lastInputError = true;
|
|
309
|
+
this.printDate(this.firstPicker.selectedDates[0], null);
|
|
297
310
|
}
|
|
298
|
-
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
this.lastInputError = false;
|
|
314
|
+
this.lastPicker.setDate([text]);
|
|
315
|
+
this.printDate(null, new Date(englishParsedData));
|
|
299
316
|
}
|
|
300
317
|
}
|
|
301
318
|
}
|
|
319
|
+
this.setRangeStyle(this.activeInput === "start-input" ? 0 : 1);
|
|
302
320
|
}
|
|
303
321
|
render() {
|
|
304
322
|
const zInputProps = {
|
|
@@ -309,19 +327,24 @@ export class ZRangePicker {
|
|
|
309
327
|
onStopTyping: (value) => {
|
|
310
328
|
this.onStopTyping(value);
|
|
311
329
|
},
|
|
330
|
+
value: "",
|
|
312
331
|
};
|
|
313
332
|
return (h("div", { class: {
|
|
314
|
-
["range-
|
|
333
|
+
["range-pickers-container"]: true,
|
|
315
334
|
[this.mode]: true,
|
|
316
335
|
[this.activeInput]: true,
|
|
317
336
|
[this.flatpickrPosition]: true,
|
|
318
337
|
} },
|
|
319
|
-
h("div", { class: `${this.rangePickerId}-
|
|
320
|
-
h("
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
338
|
+
h("div", { class: `${this.rangePickerId}-1-wrapper` },
|
|
339
|
+
h("div", { class: `${this.rangePickerId}-1-container` },
|
|
340
|
+
h("z-input", Object.assign({}, zInputProps, { "data-input": "data-input", class: `start-input ${this.rangePickerId}-1`, ariaLabel: this.firstAriaLabel, label: this.firstLabel, status: this.firstInputError && InputStatusEnum.error, onStartTyping: () => {
|
|
341
|
+
this.firstInputError = false;
|
|
342
|
+
} })))),
|
|
343
|
+
h("div", { class: `${this.rangePickerId}-2-wrapper` },
|
|
344
|
+
h("div", { class: `${this.rangePickerId}-2-container` },
|
|
345
|
+
h("z-input", Object.assign({}, zInputProps, { "data-input": "data-input", class: `end-input ${this.rangePickerId}-2`, ariaLabel: this.secondAriaLabel, label: this.secondLabel, status: this.lastInputError && InputStatusEnum.error, onStartTyping: () => {
|
|
346
|
+
this.lastInputError = false;
|
|
347
|
+
} }))))));
|
|
325
348
|
}
|
|
326
349
|
static get is() { return "z-range-picker"; }
|
|
327
350
|
static get originalStyleUrls() { return {
|
|
@@ -420,10 +443,10 @@ export class ZRangePicker {
|
|
|
420
443
|
"type": "string",
|
|
421
444
|
"mutable": false,
|
|
422
445
|
"complexType": {
|
|
423
|
-
"original": "
|
|
424
|
-
"resolved": "
|
|
446
|
+
"original": "ZRangePickerMode",
|
|
447
|
+
"resolved": "ZRangePickerMode.date | ZRangePickerMode.dateTime",
|
|
425
448
|
"references": {
|
|
426
|
-
"
|
|
449
|
+
"ZRangePickerMode": {
|
|
427
450
|
"location": "import",
|
|
428
451
|
"path": "../../../beans"
|
|
429
452
|
}
|
|
@@ -433,16 +456,18 @@ export class ZRangePicker {
|
|
|
433
456
|
"optional": false,
|
|
434
457
|
"docs": {
|
|
435
458
|
"tags": [],
|
|
436
|
-
"text": "[Optional] datepicker mode: date
|
|
459
|
+
"text": "[Optional] datepicker mode: date or datetime"
|
|
437
460
|
},
|
|
438
461
|
"attribute": "mode",
|
|
439
462
|
"reflect": false,
|
|
440
|
-
"defaultValue": "
|
|
463
|
+
"defaultValue": "ZRangePickerMode.date"
|
|
441
464
|
}
|
|
442
465
|
}; }
|
|
443
466
|
static get states() { return {
|
|
444
467
|
"flatpickrPosition": {},
|
|
445
|
-
"activeInput": {}
|
|
468
|
+
"activeInput": {},
|
|
469
|
+
"firstInputError": {},
|
|
470
|
+
"lastInputError": {}
|
|
446
471
|
}; }
|
|
447
472
|
static get events() { return [{
|
|
448
473
|
"method": "dateSelect",
|
|
@@ -461,6 +486,10 @@ export class ZRangePicker {
|
|
|
461
486
|
}
|
|
462
487
|
}]; }
|
|
463
488
|
static get elementRef() { return "element"; }
|
|
489
|
+
static get watchers() { return [{
|
|
490
|
+
"propName": "mode",
|
|
491
|
+
"methodName": "watchMode"
|
|
492
|
+
}]; }
|
|
464
493
|
static get listeners() { return [{
|
|
465
494
|
"name": "click",
|
|
466
495
|
"method": "handleClick",
|
|
@@ -468,16 +497,10 @@ export class ZRangePicker {
|
|
|
468
497
|
"capture": true,
|
|
469
498
|
"passive": false
|
|
470
499
|
}, {
|
|
471
|
-
"name": "
|
|
500
|
+
"name": "keyup",
|
|
472
501
|
"method": "handleKeyDown",
|
|
473
502
|
"target": "body",
|
|
474
503
|
"capture": true,
|
|
475
504
|
"passive": false
|
|
476
|
-
}, {
|
|
477
|
-
"name": "mouseover",
|
|
478
|
-
"method": "onMouseOver",
|
|
479
|
-
"target": undefined,
|
|
480
|
-
"capture": false,
|
|
481
|
-
"passive": true
|
|
482
505
|
}]; }
|
|
483
506
|
}
|
|
@@ -310,6 +310,11 @@ var ZDatePickerPosition;
|
|
|
310
310
|
ZDatePickerPosition["top"] = "top";
|
|
311
311
|
ZDatePickerPosition["bottom"] = "bottom";
|
|
312
312
|
})(ZDatePickerPosition || (ZDatePickerPosition = {}));
|
|
313
|
+
var ZRangePickerMode;
|
|
314
|
+
(function (ZRangePickerMode) {
|
|
315
|
+
ZRangePickerMode["date"] = "date";
|
|
316
|
+
ZRangePickerMode["dateTime"] = "date-time";
|
|
317
|
+
})(ZRangePickerMode || (ZRangePickerMode = {}));
|
|
313
318
|
var StatusTagStatus;
|
|
314
319
|
(function (StatusTagStatus) {
|
|
315
320
|
StatusTagStatus["warning"] = "warning";
|
|
@@ -326,4 +331,4 @@ var InfoRevealPosition;
|
|
|
326
331
|
InfoRevealPosition["bottom_left"] = "bottom_left";
|
|
327
332
|
})(InfoRevealPosition || (InfoRevealPosition = {}));
|
|
328
333
|
|
|
329
|
-
export { AvatarSize as A, ButtonTypeEnum as B, CardVariants as C, DeviceEnum as D,
|
|
334
|
+
export { AvatarSize as A, ButtonTypeEnum as B, CardVariants as C, DeviceEnum as D, ListDividerType as E, ListSize as F, Size as G, SortDirectionEnum as H, InputTypeEnum as I, ExpandableListButtonAlign as J, KeyboardCodeEnum as K, LabelPositions as L, ExpandableListStyle as M, NavigationTabsOrientations as N, OffCanvasVariantsEnum as O, PopoverPositions as P, StatusTagStatus as S, ThemeVariant as T, ZRangePickerMode as Z, DividerOrientation as a, DividerSize as b, ZDatePickerPosition as c, InputStatusEnum as d, ZDatePickerMode as e, ZDatePickerModeValues as f, ZAriaAlertMode as g, ButtonVariantEnum as h, ButtonSizeEnum as i, KeyboardKeyCodeEnum as j, ZChipType as k, ZFileUploadTypeEnum as l, InfoRevealPosition as m, PocketStatusEnum as n, AlertTypesEnum as o, LicenseTypeEnum as p, NavigationTabsSizes as q, TransitionDirectionEnum as r, PopoverPosition as s, PopoverBorderRadius as t, PopoverShadow as u, KeyboardKeys as v, ZSectionTitleDividerPositions as w, ZTableRowExpandedType as x, ToastNotificationTransitionsEnum as y, ToastNotificationPositionsEnum as z };
|
package/dist/esm/index.js
CHANGED