@editora/ui-core 0.1.19 → 0.1.21
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/{ElementBase-1b301e7f.js → ElementBase-EV6mVBUV.js} +1 -1
- package/dist/{ElementBase-909688f3.mjs → ElementBase-YlTLMsGk.mjs} +3 -3
- package/dist/accordion.cjs.js +3 -3
- package/dist/accordion.esm.js +39 -62
- package/dist/alert-dialog.cjs.js +19 -19
- package/dist/alert-dialog.esm.js +69 -87
- package/dist/alert.cjs.js +1 -1
- package/dist/alert.esm.js +4 -7
- package/dist/anchor.cjs.js +2 -2
- package/dist/anchor.esm.js +3 -3
- package/dist/animated-beam.cjs.js +83 -83
- package/dist/animated-beam.esm.js +250 -277
- package/dist/animated-list.cjs.js +4 -4
- package/dist/animated-list.esm.js +47 -61
- package/dist/animated-text.cjs.js +2 -2
- package/dist/animated-text.esm.js +13 -24
- package/dist/app-header.cjs.js +3 -3
- package/dist/app-header.esm.js +11 -13
- package/dist/aspect-ratio.cjs.js +1 -1
- package/dist/aspect-ratio.esm.js +4 -7
- package/dist/avatar.cjs.js +1 -1
- package/dist/avatar.esm.js +7 -13
- package/dist/badge.cjs.js +1 -1
- package/dist/badge.esm.js +4 -7
- package/dist/block-controls.cjs.js +2 -2
- package/dist/block-controls.esm.js +19 -35
- package/dist/box.cjs.js +1 -1
- package/dist/box.esm.js +8 -15
- package/dist/breadcrumb.cjs.js +2 -2
- package/dist/breadcrumb.esm.js +20 -37
- package/dist/button.cjs.js +1 -521
- package/dist/button.esm.js +2 -671
- package/dist/{calendar-2c11b824.mjs → calendar-DLY4acgn.mjs} +293 -342
- package/dist/{calendar-a8735e40.js → calendar-Dkof-FTK.js} +25 -25
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.esm.js +8 -9
- package/dist/card.cjs.js +4 -4
- package/dist/card.esm.js +13 -19
- package/dist/chart.cjs.js +64 -64
- package/dist/chart.esm.js +223 -254
- package/dist/checkbox.cjs.js +1 -1
- package/dist/checkbox.esm.js +2 -3
- package/dist/collapsible.cjs.js +1 -1
- package/dist/collapsible.esm.js +5 -9
- package/dist/{collection-a1aac0c6.mjs → collection-C7URGjEI.mjs} +8 -14
- package/dist/collection.cjs.js +1 -1
- package/dist/collection.esm.js +30 -29
- package/dist/color-picker.cjs.js +10 -10
- package/dist/color-picker.esm.js +190 -253
- package/dist/combobox.cjs.js +13 -13
- package/dist/combobox.esm.js +93 -126
- package/dist/command-palette.cjs.js +3 -3
- package/dist/command-palette.esm.js +19 -30
- package/dist/command.cjs.js +4 -4
- package/dist/command.esm.js +41 -53
- package/dist/components/ui-collection.d.ts.map +1 -1
- package/dist/components/ui-multi-select.d.ts.map +1 -1
- package/dist/components/ui-orbiter.d.ts.map +1 -1
- package/dist/components/ui-portal.d.ts.map +1 -1
- package/dist/components/ui-positioner.d.ts.map +1 -1
- package/dist/components/ui-skeleton.d.ts.map +1 -1
- package/dist/components/ui-sortable.d.ts +8 -0
- package/dist/components/ui-sortable.d.ts.map +1 -1
- package/dist/components/ui-split-button.d.ts +1 -0
- package/dist/components/ui-split-button.d.ts.map +1 -1
- package/dist/components/ui-tabs.d.ts.map +1 -1
- package/dist/components/ui-textarea.d.ts.map +1 -1
- package/dist/components/ui-time-picker.d.ts.map +1 -1
- package/dist/container.cjs.js +2 -2
- package/dist/container.esm.js +2 -3
- package/dist/context-menu.cjs.js +8 -8
- package/dist/context-menu.esm.js +157 -219
- package/dist/control-group.cjs.js +1 -1
- package/dist/control-group.esm.js +2 -3
- package/dist/data-table.cjs.js +4 -4
- package/dist/data-table.esm.js +299 -381
- package/dist/date-field.cjs.js +3 -3
- package/dist/date-field.esm.js +68 -80
- package/dist/date-picker.cjs.js +9 -9
- package/dist/date-picker.esm.js +69 -97
- package/dist/date-range-picker.cjs.js +3 -3
- package/dist/date-range-picker.esm.js +32 -56
- package/dist/date-range-time-picker.cjs.js +9 -9
- package/dist/date-range-time-picker.esm.js +111 -140
- package/dist/date-time-picker.cjs.js +7 -7
- package/dist/date-time-picker.esm.js +115 -147
- package/dist/date-time-utils-Dmost5Ee.js +1 -0
- package/dist/date-time-utils-y1N2gvG2.mjs +268 -0
- package/dist/description.cjs.js +1 -1
- package/dist/description.esm.js +3 -5
- package/dist/dialog.cjs.js +12 -12
- package/dist/dialog.esm.js +44 -63
- package/dist/direction-provider.cjs.js +1 -1
- package/dist/direction-provider.esm.js +2 -3
- package/dist/{dismissable-layer-9c7e6b58.mjs → dismissable-layer-BmPIoK80.mjs} +29 -33
- package/dist/dismissable-layer-DNfrKA20.js +1 -0
- package/dist/dismissable-layer.cjs.js +2 -2
- package/dist/dismissable-layer.esm.js +4 -6
- package/dist/dock.cjs.js +5 -5
- package/dist/dock.esm.js +134 -155
- package/dist/drawer.cjs.js +2 -2
- package/dist/drawer.esm.js +18 -35
- package/dist/dropdown.cjs.js +2 -2
- package/dist/dropdown.esm.js +119 -149
- package/dist/dropzone.cjs.js +1 -1
- package/dist/dropzone.esm.js +0 -1
- package/dist/empty-state.cjs.js +1 -1
- package/dist/empty-state.esm.js +1 -1
- package/dist/field-error.cjs.js +1 -1
- package/dist/field-error.esm.js +3 -5
- package/dist/field.cjs.js +5 -5
- package/dist/field.esm.js +27 -34
- package/dist/fieldset.cjs.js +4 -4
- package/dist/fieldset.esm.js +19 -24
- package/dist/file-upload.cjs.js +4 -4
- package/dist/file-upload.esm.js +69 -93
- package/dist/flex.cjs.js +1 -1
- package/dist/flex.esm.js +5 -9
- package/dist/floating-toolbar.cjs.js +4 -4
- package/dist/floating-toolbar.esm.js +60 -85
- package/dist/focus-scope-Bwug2gDv.js +1 -0
- package/dist/{focus-scope-103833ee.mjs → focus-scope-CmEsG5UZ.mjs} +39 -48
- package/dist/focus-scope.cjs.js +2 -2
- package/dist/focus-scope.esm.js +15 -20
- package/dist/form.cjs.js +2 -2
- package/dist/form.esm.js +26 -53
- package/dist/gantt.cjs.js +43 -43
- package/dist/gantt.esm.js +295 -322
- package/dist/grid.cjs.js +1 -1
- package/dist/grid.esm.js +5 -9
- package/dist/hover-card.cjs.js +4 -4
- package/dist/hover-card.esm.js +22 -28
- package/dist/icon-cloud.cjs.js +7 -7
- package/dist/icon-cloud.esm.js +48 -62
- package/dist/icon.cjs.js +1 -1
- package/dist/icon.esm.js +2 -4
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +378 -390
- package/dist/inline-edit.cjs.js +11 -11
- package/dist/inline-edit.esm.js +32 -36
- package/dist/input.cjs.js +17 -17
- package/dist/input.esm.js +50 -63
- package/dist/label.cjs.js +2 -2
- package/dist/label.esm.js +8 -17
- package/dist/layout.cjs.js +2 -2
- package/dist/layout.esm.js +20 -26
- package/dist/listbox-B6QgECax.js +46 -0
- package/dist/listbox-DJamVeFj.mjs +200 -0
- package/dist/listbox.cjs.js +1 -1
- package/dist/listbox.esm.js +2 -4
- package/dist/marquee.cjs.js +5 -5
- package/dist/marquee.esm.js +33 -50
- package/dist/masonry-grid.cjs.js +1 -1
- package/dist/masonry-grid.esm.js +5 -9
- package/dist/menu.cjs.js +3 -3
- package/dist/menu.esm.js +106 -126
- package/dist/menubar.cjs.js +5 -5
- package/dist/menubar.esm.js +118 -164
- package/dist/meter.cjs.js +2 -2
- package/dist/meter.esm.js +4 -4
- package/dist/multi-select.cjs.js +5 -5
- package/dist/multi-select.esm.js +125 -137
- package/dist/navigation-menu.cjs.js +4 -4
- package/dist/navigation-menu.esm.js +44 -55
- package/dist/number-field.cjs.js +2 -2
- package/dist/number-field.esm.js +73 -98
- package/dist/number-ticker.cjs.js +3 -3
- package/dist/number-ticker.esm.js +22 -43
- package/dist/odometer.cjs.js +1 -1
- package/dist/odometer.esm.js +5 -9
- package/dist/orbiter.cjs.js +13 -13
- package/dist/orbiter.esm.js +79 -90
- package/dist/{overlayManager-5bbd4dc3.mjs → overlayManager-BJjU1VA8.mjs} +4 -5
- package/dist/{overlayManager-0eda4e08.js → overlayManager-CSy3fJmJ.js} +1 -1
- package/dist/pagination.cjs.js +2 -2
- package/dist/pagination.esm.js +14 -18
- package/dist/{panel-group-a376cc5e.mjs → panel-group-8sVNnGxg.mjs} +24 -46
- package/dist/panel-group-CaD0_KQf.js +36 -0
- package/dist/panel-group.cjs.js +1 -1
- package/dist/panel-group.esm.js +2 -5
- package/dist/panel.cjs.js +4 -4
- package/dist/panel.esm.js +8 -10
- package/dist/password-field.cjs.js +9 -9
- package/dist/password-field.esm.js +62 -82
- package/dist/pin-input.cjs.js +3 -3
- package/dist/pin-input.esm.js +33 -39
- package/dist/placement-grid.cjs.js +4 -4
- package/dist/placement-grid.esm.js +108 -131
- package/dist/plugin-panel.cjs.js +7 -7
- package/dist/plugin-panel.esm.js +13 -15
- package/dist/popover.cjs.js +2 -2
- package/dist/popover.esm.js +21 -31
- package/dist/portal-DgpQ3Jo1.js +1 -0
- package/dist/{portal-fe73e5cc.mjs → portal-bR42gHvG.mjs} +43 -48
- package/dist/portal.cjs.js +3 -3
- package/dist/portal.esm.js +20 -28
- package/dist/{positioner-e9770c66.mjs → positioner-D0VGxtYU.mjs} +189 -209
- package/dist/positioner-D_fqyx_j.js +1 -0
- package/dist/positioner.cjs.js +2 -2
- package/dist/positioner.esm.js +22 -28
- package/dist/presence.cjs.js +1 -1
- package/dist/presence.esm.js +7 -13
- package/dist/primitives/auto-scroll.d.ts +9 -0
- package/dist/primitives/auto-scroll.d.ts.map +1 -0
- package/dist/primitives/selector.d.ts +4 -0
- package/dist/primitives/selector.d.ts.map +1 -0
- package/dist/progress.cjs.js +1 -1
- package/dist/progress.esm.js +5 -9
- package/dist/quick-actions.cjs.js +6 -6
- package/dist/quick-actions.esm.js +52 -62
- package/dist/radio-group.cjs.js +13 -13
- package/dist/radio-group.esm.js +39 -51
- package/dist/radio.cjs.js +1 -1
- package/dist/radio.esm.js +5 -9
- package/dist/rating.cjs.js +1 -1
- package/dist/rating.esm.js +12 -23
- package/dist/{roving-focus-group-4350c9a7.mjs → roving-focus-group-Dbm1Jko_.mjs} +3 -6
- package/dist/roving-focus-group.cjs.js +1 -1
- package/dist/roving-focus-group.esm.js +3 -5
- package/dist/runtime-CTaOSmBj.js +1 -0
- package/dist/{runtime-161f68a2.mjs → runtime-D1gFh1fS.mjs} +338 -366
- package/dist/runtime.cjs.js +1 -1
- package/dist/runtime.esm.js +6 -6
- package/dist/scroll-area.cjs.js +3 -3
- package/dist/scroll-area.esm.js +38 -46
- package/dist/{scroll-lock-31da444f.mjs → scroll-lock-LfqXXqsu.mjs} +5 -9
- package/dist/section.cjs.js +1 -1
- package/dist/section.esm.js +1 -1
- package/dist/select.cjs.js +7 -7
- package/dist/select.esm.js +67 -97
- package/dist/selection-popup.cjs.js +1 -1
- package/dist/selection-popup.esm.js +8 -15
- package/dist/selector-BvAh35ve.js +1 -0
- package/dist/selector-WI8pD7YO.mjs +18 -0
- package/dist/separator.cjs.js +1 -1
- package/dist/separator.esm.js +1 -1
- package/dist/sidebar.cjs.js +18 -18
- package/dist/sidebar.esm.js +117 -139
- package/dist/skeleton.cjs.js +11 -11
- package/dist/skeleton.esm.js +27 -24
- package/dist/slider.cjs.js +1 -1
- package/dist/slider.esm.js +6 -11
- package/dist/slot.cjs.js +4 -4
- package/dist/slot.esm.js +16 -19
- package/dist/sortable.cjs.js +79 -65
- package/dist/sortable.esm.js +714 -734
- package/dist/spinning-text.cjs.js +12 -12
- package/dist/spinning-text.esm.js +80 -92
- package/dist/split-button.cjs.js +4 -4
- package/dist/split-button.esm.js +77 -62
- package/dist/splitter.cjs.js +1 -1
- package/dist/splitter.esm.js +1 -1
- package/dist/stepper.cjs.js +8 -8
- package/dist/stepper.esm.js +32 -52
- package/dist/switch.cjs.js +7 -7
- package/dist/switch.esm.js +23 -31
- package/dist/table.cjs.js +2 -2
- package/dist/table.esm.js +46 -56
- package/dist/tabs.cjs.js +8 -8
- package/dist/tabs.esm.js +89 -109
- package/dist/tags-input.cjs.js +4 -4
- package/dist/tags-input.esm.js +45 -62
- package/dist/textarea.cjs.js +10 -10
- package/dist/textarea.esm.js +49 -52
- package/dist/time-field.cjs.js +4 -4
- package/dist/time-field.esm.js +70 -84
- package/dist/time-picker.cjs.js +22 -22
- package/dist/time-picker.esm.js +88 -110
- package/dist/timeline.cjs.js +1 -1
- package/dist/timeline.esm.js +3 -5
- package/dist/toast.cjs.js +2 -2
- package/dist/toast.esm.js +33 -47
- package/dist/toggle-group.cjs.js +6 -6
- package/dist/toggle-group.esm.js +85 -105
- package/dist/toggle.cjs.js +1 -1
- package/dist/toggle.esm.js +3 -5
- package/dist/toolbar.cjs.js +1 -1
- package/dist/toolbar.esm.js +13 -24
- package/dist/tooltip.cjs.js +2 -2
- package/dist/tooltip.esm.js +31 -42
- package/dist/transfer-list.cjs.js +31 -31
- package/dist/transfer-list.esm.js +114 -127
- package/dist/{tree-dcd74a4a.mjs → tree-B3kE8ESs.mjs} +55 -62
- package/dist/tree-Dx_kv_ih.js +39 -0
- package/dist/tree-item.cjs.js +2 -2
- package/dist/tree-item.esm.js +2 -3
- package/dist/tree.cjs.js +1 -1
- package/dist/tree.esm.js +2 -5
- package/dist/ui-button-Q0GNNWKC.mjs +665 -0
- package/dist/ui-button-rXQOS9QJ.js +521 -0
- package/dist/{icon-9e9da03b.js → ui-icon-BzVNC_lr.js} +4 -4
- package/dist/{icon-e2a85cc1.mjs → ui-icon-YI6lyuqU.mjs} +58 -65
- package/dist/visually-hidden.cjs.js +1 -1
- package/dist/visually-hidden.esm.js +1 -1
- package/dist/wizard.cjs.js +14 -14
- package/dist/wizard.esm.js +85 -105
- package/package.json +2 -2
- package/dist/date-time-utils-66480de4.js +0 -1
- package/dist/date-time-utils-a2c7af25.mjs +0 -307
- package/dist/dismissable-layer-193e3bed.js +0 -1
- package/dist/focus-scope-2b12b4e7.js +0 -1
- package/dist/listbox-308789a0.mjs +0 -210
- package/dist/listbox-ef2f708e.js +0 -46
- package/dist/panel-group-40254cdd.js +0 -36
- package/dist/portal-c69756c0.js +0 -1
- package/dist/positioner-33529bb8.js +0 -1
- package/dist/runtime-3f13807b.js +0 -1
- package/dist/tree-0a7a8d05.js +0 -39
- /package/dist/{collection-a2969ad2.js → collection-qv8A8rq4.js} +0 -0
- /package/dist/{menu-item-styles-27fdbac4.mjs → menu-item-styles-CZiPwPwl.mjs} +0 -0
- /package/dist/{menu-item-styles-83ad1e22.js → menu-item-styles-CbNUEwP2.js} +0 -0
- /package/dist/{roving-focus-group-5c059bf9.js → roving-focus-group-BdJ_4Njm.js} +0 -0
- /package/dist/{scroll-lock-d7b0df21.js → scroll-lock-BX6e3Ced.js} +0 -0
package/dist/date-picker.esm.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { E as
|
|
2
|
-
import { c as
|
|
3
|
-
import { r as
|
|
4
|
-
import { r as $, e as R, n as g, i as y, s as F, b as T, p as L, a as O, f as H, l as
|
|
5
|
-
import "./scroll-lock-31da444f.mjs";
|
|
6
|
-
import "./positioner-e9770c66.mjs";
|
|
1
|
+
import { E as V } from "./ElementBase-YlTLMsGk.mjs";
|
|
2
|
+
import { c as q } from "./dismissable-layer-BmPIoK80.mjs";
|
|
3
|
+
import { r as M, c as S } from "./calendar-DLY4acgn.mjs";
|
|
4
|
+
import { r as $, e as R, n as g, i as y, s as F, b as T, p as L, a as O, f as H, l as E, c as U, d as Y } from "./date-time-utils-y1N2gvG2.mjs";
|
|
7
5
|
let K = 0;
|
|
8
6
|
const W = `
|
|
9
7
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
@@ -556,7 +554,7 @@ const W = `
|
|
|
556
554
|
function v(B) {
|
|
557
555
|
return B.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
558
556
|
}
|
|
559
|
-
class J extends
|
|
557
|
+
class J extends V {
|
|
560
558
|
constructor() {
|
|
561
559
|
super(...arguments), this._value = null, this._pendingValue = null, this._draftInput = "", this._inlineError = "", this._open = !1, this._syncing = !1, this._overlay = null, this._dismissableLayer = null, this._releaseScrollLock = null, this._lastOpenSource = "api", this._restoreFocusEl = null, this._isInitialized = !1, this._hasView = !1, this._overlayMode = null, this._uid = `ui-dp-${++K}`, this._inputId = `${this._uid}-input`, this._labelId = `${this._uid}-label`, this._hintId = `${this._uid}-hint`, this._errorId = `${this._uid}-error`, this._panelId = `${this._uid}-panel`, this._panelTitleId = `${this._uid}-panel-title`, this._overlayFocusedOnOpen = !1, this._inlineCalendarFramePending = !1, this._inlineCalendarUpgradePending = !1, this._schedulePosition = $(() => this._positionOverlay()), this._onRootClickBound = (e) => this._onRootClick(e), this._onRootInputBound = (e) => this._onRootInput(e), this._onRootBlurBound = (e) => this._onRootBlur(e), this._onRootKeyDownBound = (e) => this._onRootKeyDown(e), this._onDocumentPointerDownBound = (e) => this._onDocumentPointerDown(e), this._onDocumentKeyDownBound = (e) => this._onDocumentKeyDown(e), this._onWindowResizeBound = () => this._schedulePosition.run(), this._onWindowScrollBound = (e) => {
|
|
562
560
|
R(e, [this._overlay]) || this._schedulePosition.run();
|
|
@@ -614,8 +612,8 @@ class J extends q {
|
|
|
614
612
|
attributeChangedCallback(e, t, i) {
|
|
615
613
|
if (t !== i) {
|
|
616
614
|
if (e === "value" && !this._syncing && (this._value = this._clampToBounds(g(i)), this._pendingValue = this._value, this._draftInput = this._formatDisplay(this._value), this._inlineError = "", this._syncValueAttribute(this._value)), e === "open" && !this._syncing && (this._open = this.hasAttribute("open"), this._syncOverlay(this._open ? "api" : "outside")), e === "mode" && this._syncOverlay("attribute"), e === "disabled" && this.hasAttribute("disabled") && this._setOpen(!1, "outside"), (e === "min" || e === "max") && !this._syncing) {
|
|
617
|
-
const r = this._clampToBounds(this._value),
|
|
618
|
-
this._value = r, this._pendingValue =
|
|
615
|
+
const r = this._clampToBounds(this._value), n = this._clampToBounds(this._pendingValue);
|
|
616
|
+
this._value = r, this._pendingValue = n, this._draftInput = this._formatDisplay(this._allowInput() ? n : r), this._syncValueAttribute(r);
|
|
619
617
|
}
|
|
620
618
|
if (e === "state" && this._state() === "loading" && this._setOpen(!1, "outside"), !!this.isConnected) {
|
|
621
619
|
if (!this._hasView) {
|
|
@@ -657,7 +655,7 @@ class J extends q {
|
|
|
657
655
|
return T(this.getAttribute("locale"));
|
|
658
656
|
}
|
|
659
657
|
_translations() {
|
|
660
|
-
return
|
|
658
|
+
return M(
|
|
661
659
|
this.getAttribute("locale"),
|
|
662
660
|
this.getAttribute("translations")
|
|
663
661
|
);
|
|
@@ -699,8 +697,7 @@ class J extends q {
|
|
|
699
697
|
return { min: e, max: t };
|
|
700
698
|
}
|
|
701
699
|
_clampToBounds(e) {
|
|
702
|
-
if (!e)
|
|
703
|
-
return null;
|
|
700
|
+
if (!e) return null;
|
|
704
701
|
const { min: t, max: i } = this._resolvedBounds();
|
|
705
702
|
return O(e, t, i);
|
|
706
703
|
}
|
|
@@ -774,67 +771,59 @@ class J extends q {
|
|
|
774
771
|
}
|
|
775
772
|
}
|
|
776
773
|
_ensureOverlay() {
|
|
777
|
-
if (this._overlay || typeof document > "u")
|
|
778
|
-
return;
|
|
774
|
+
if (this._overlay || typeof document > "u") return;
|
|
779
775
|
const e = document.createElement("div");
|
|
780
|
-
e.className = "ui-date-picker-overlay-host", e.style.position = "fixed", e.style.left = "0", e.style.top = "0", e.style.pointerEvents = "none", e.addEventListener("click", this._onOverlayClickBound), e.addEventListener("select", this._onOverlaySelectBound), e.addEventListener("change", this._onOverlaySelectBound), document.body.appendChild(e), this._overlay = e, this._syncOverlayHostZIndex(), document.addEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.addEventListener("keydown", this._onDocumentKeyDownBound), window.addEventListener("resize", this._onWindowResizeBound), window.addEventListener("scroll", this._onWindowScrollBound, { passive: !0, capture: !0 }), this._isMobileSheet() && (this._releaseScrollLock =
|
|
776
|
+
e.className = "ui-date-picker-overlay-host", e.style.position = "fixed", e.style.left = "0", e.style.top = "0", e.style.pointerEvents = "none", e.addEventListener("click", this._onOverlayClickBound), e.addEventListener("select", this._onOverlaySelectBound), e.addEventListener("change", this._onOverlaySelectBound), document.body.appendChild(e), this._overlay = e, this._syncOverlayHostZIndex(), document.addEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.addEventListener("keydown", this._onDocumentKeyDownBound), window.addEventListener("resize", this._onWindowResizeBound), window.addEventListener("scroll", this._onWindowScrollBound, { passive: !0, capture: !0 }), this._isMobileSheet() && (this._releaseScrollLock = E());
|
|
781
777
|
}
|
|
782
778
|
_syncOverlayHostZIndex() {
|
|
783
|
-
if (!this._overlay || typeof window > "u")
|
|
784
|
-
return;
|
|
779
|
+
if (!this._overlay || typeof window > "u") return;
|
|
785
780
|
const e = window.getComputedStyle(this).getPropertyValue("--ui-dp-z").trim();
|
|
786
781
|
this._overlay.style.zIndex = e || "1600";
|
|
787
782
|
}
|
|
788
783
|
_destroyOverlay() {
|
|
789
|
-
|
|
790
|
-
(e = this._dismissableLayer) == null || e.destroy(), this._dismissableLayer = null, this._overlay && (this._schedulePosition.cancel(), document.removeEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.removeEventListener("keydown", this._onDocumentKeyDownBound), window.removeEventListener("resize", this._onWindowResizeBound), window.removeEventListener("scroll", this._onWindowScrollBound, !0), this._overlay.removeEventListener("click", this._onOverlayClickBound), this._overlay.removeEventListener("select", this._onOverlaySelectBound), this._overlay.removeEventListener("change", this._onOverlaySelectBound), this._overlay.parentElement && this._overlay.parentElement.removeChild(this._overlay), this._overlay = null, this._overlayMode = null, this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null));
|
|
784
|
+
this._dismissableLayer?.destroy(), this._dismissableLayer = null, this._overlay && (this._schedulePosition.cancel(), document.removeEventListener("pointerdown", this._onDocumentPointerDownBound, !0), document.removeEventListener("keydown", this._onDocumentKeyDownBound), window.removeEventListener("resize", this._onWindowResizeBound), window.removeEventListener("scroll", this._onWindowScrollBound, !0), this._overlay.removeEventListener("click", this._onOverlayClickBound), this._overlay.removeEventListener("select", this._onOverlaySelectBound), this._overlay.removeEventListener("change", this._onOverlaySelectBound), this._overlay.parentElement && this._overlay.parentElement.removeChild(this._overlay), this._overlay = null, this._overlayMode = null, this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null));
|
|
791
785
|
}
|
|
792
786
|
_syncDismissableLayer() {
|
|
793
|
-
|
|
794
|
-
if ((i = this._dismissableLayer) == null || i.destroy(), this._dismissableLayer = null, !this._open || !this._overlay)
|
|
795
|
-
return;
|
|
787
|
+
if (this._dismissableLayer?.destroy(), this._dismissableLayer = null, !this._open || !this._overlay) return;
|
|
796
788
|
const e = this._overlay.querySelector(".panel, .sheet"), t = this.root.querySelector(".field");
|
|
797
|
-
e && (this._dismissableLayer =
|
|
789
|
+
e && (this._dismissableLayer = q({
|
|
798
790
|
node: e,
|
|
799
791
|
trigger: t,
|
|
800
792
|
closeOnEscape: !0,
|
|
801
793
|
closeOnPointerOutside: !0,
|
|
802
794
|
closeOnFocusOutside: !1,
|
|
803
|
-
onBeforeDismiss: (
|
|
795
|
+
onBeforeDismiss: (i) => i === "escape-key" ? (this._setOpen(!1, "escape"), !1) : (i === "outside-pointer" && this._setOpen(!1, "outside"), !1)
|
|
804
796
|
}));
|
|
805
797
|
}
|
|
806
798
|
_positionOverlay() {
|
|
807
|
-
if (!this._overlay || !this._open || this._isMobileSheet())
|
|
808
|
-
return;
|
|
799
|
+
if (!this._overlay || !this._open || this._isMobileSheet()) return;
|
|
809
800
|
const e = this.root.querySelector(".field"), t = this._overlay.querySelector(".panel");
|
|
810
|
-
if (!e || !t)
|
|
811
|
-
return;
|
|
801
|
+
if (!e || !t) return;
|
|
812
802
|
const i = e.getBoundingClientRect();
|
|
813
803
|
t.style.setProperty("--ui-dp-panel-width", `${Math.round(i.width)}px`);
|
|
814
|
-
const r = t.getBoundingClientRect(),
|
|
804
|
+
const r = t.getBoundingClientRect(), n = t.getAttribute("data-placement"), s = U(
|
|
815
805
|
i,
|
|
816
806
|
r,
|
|
817
807
|
8,
|
|
818
808
|
8,
|
|
819
|
-
|
|
809
|
+
n === "top" ? "top" : n === "bottom" ? "bottom" : null
|
|
820
810
|
);
|
|
821
|
-
t.style.position = "absolute", t.style.top = `${Math.round(
|
|
811
|
+
t.style.position = "absolute", t.style.top = `${Math.round(s.top)}px`, t.style.left = `${Math.round(s.left)}px`, t.setAttribute("data-placement", s.placement);
|
|
822
812
|
}
|
|
823
813
|
_parseAndValidate(e) {
|
|
824
814
|
return Y(e, this._locale());
|
|
825
815
|
}
|
|
826
816
|
_commit(e, t) {
|
|
827
|
-
if (this._isReadonly() || this._isInteractionBlocked())
|
|
828
|
-
return;
|
|
817
|
+
if (this._isReadonly() || this._isInteractionBlocked()) return;
|
|
829
818
|
const i = this._clampToBounds(e);
|
|
830
819
|
this._value = i, this._pendingValue = i, this._draftInput = this._formatDisplay(i), this._inlineError = "", this._syncValueAttribute(i), this._emitInput(t), this._emitChange(t), this._updateHostState();
|
|
831
820
|
}
|
|
832
821
|
_renderPanelInner(e) {
|
|
833
|
-
const t = this._translations(), i = (this.getAttribute("label") || "").trim(), r = !!i || e,
|
|
822
|
+
const t = this._translations(), i = (this.getAttribute("label") || "").trim(), r = !!i || e, n = !this._closeOnSelect() || e, s = e ? "sheet" : "panel", l = e ? "true" : "false";
|
|
834
823
|
return `
|
|
835
824
|
<style>${G}</style>
|
|
836
825
|
${e ? '<div class="sheet-backdrop" data-action="backdrop"></div>' : ""}
|
|
837
|
-
<section class="${
|
|
826
|
+
<section class="${s}" id="${this._panelId}" part="${e ? "sheet" : "popover"}" role="dialog" aria-modal="${l}" aria-labelledby="${this._panelTitleId}" aria-label="${v(t.datePickerPanel)}">
|
|
838
827
|
<header class="header" part="header" ${r ? "" : "hidden"}>
|
|
839
828
|
<p class="title" id="${this._panelTitleId}" ${i ? "" : "hidden"}>${v(i)}</p>
|
|
840
829
|
${e ? `<button type="button" class="action" data-action="cancel">${v(t.cancel)}</button>` : ""}
|
|
@@ -843,7 +832,7 @@ class J extends q {
|
|
|
843
832
|
<footer class="footer" part="footer">
|
|
844
833
|
<button type="button" class="action" data-action="today" part="presets">${v(t.today)}</button>
|
|
845
834
|
<button type="button" class="action" data-action="clear" part="clear">${v(t.clear)}</button>
|
|
846
|
-
${
|
|
835
|
+
${n ? `<button type="button" class="action" data-tone="primary" data-action="apply" part="apply">${v(t.apply)}</button>` : ""}
|
|
847
836
|
</footer>
|
|
848
837
|
</section>
|
|
849
838
|
`;
|
|
@@ -857,40 +846,38 @@ class J extends q {
|
|
|
857
846
|
e.getAttribute(a) !== u && e.setAttribute(a, u);
|
|
858
847
|
}, i = (a, u) => {
|
|
859
848
|
u ? e.hasAttribute(a) || e.setAttribute(a, "") : e.hasAttribute(a) && e.removeAttribute(a);
|
|
860
|
-
}, { min: r, max:
|
|
861
|
-
t("selection", "single"), t("value", this._pendingValue), t("min", r), t("max",
|
|
862
|
-
const
|
|
863
|
-
t("size",
|
|
849
|
+
}, { min: r, max: n } = this._resolvedBounds();
|
|
850
|
+
t("selection", "single"), t("value", this._pendingValue), t("min", r), t("max", n), t("locale", this.getAttribute("locale")), t("translations", this.getAttribute("translations")), t("week-start", this.getAttribute("week-start"));
|
|
851
|
+
const l = this.getAttribute("size") || "sm";
|
|
852
|
+
t("size", l === "lg" ? "md" : "sm"), t("variant", this.getAttribute("variant")), t("outside-click", this.getAttribute("outside-click")), t("events", this.getAttribute("events")), t("events-max", this.getAttribute("events-max")), t("events-display", this.getAttribute("events-display"));
|
|
864
853
|
const d = e.classList.contains("inline-calendar");
|
|
865
|
-
|
|
854
|
+
l === "lg" ? (e.style.setProperty("--ui-calendar-day-height", "1.95em"), e.style.setProperty("--ui-calendar-day-padding-block", "0.2em"), e.style.setProperty("--ui-calendar-day-padding-inline", "0.26em"), e.style.setProperty("--ui-calendar-gap", "0.42em"), e.style.setProperty("--ui-calendar-day-font-size", "0.78em"), e.style.setProperty("--ui-calendar-weekday-font-size", "0.7em"), e.style.setProperty("--ui-calendar-title-font-size", "0.88em")) : (e.style.setProperty("--ui-calendar-day-height", "2.4em"), e.style.setProperty("--ui-calendar-day-padding-block", "0.14em"), e.style.setProperty("--ui-calendar-day-padding-inline", "0.22em"), e.style.setProperty("--ui-calendar-gap", "0.34em"), e.style.setProperty("--ui-calendar-day-font-size", "0.72em"), e.style.setProperty("--ui-calendar-weekday-font-size", "0.64em"), e.style.setProperty("--ui-calendar-title-font-size", "0.8em")), d ? (e.style.setProperty("--ui-calendar-day-height", l === "lg" ? "2.1em" : "1.92em"), e.style.setProperty("--ui-calendar-day-padding-block", "0.08em"), e.style.setProperty("--ui-calendar-day-padding-inline", "0.14em"), e.style.setProperty("--ui-calendar-frame-padding", "0.28em"), e.style.setProperty("--ui-calendar-week-gap", "0.16em"), e.style.setProperty("--ui-calendar-control-height", "1.64em"), e.style.setProperty("--ui-calendar-gap", "0.2em"), e.style.setProperty("--ui-calendar-day-font-size", l === "lg" ? "0.76em" : "0.68em"), e.style.setProperty("--ui-calendar-weekday-font-size", l === "lg" ? "0.66em" : "0.58em"), e.style.setProperty("--ui-calendar-title-font-size", l === "lg" ? "0.84em" : "0.76em")) : (e.style.removeProperty("--ui-calendar-frame-padding"), e.style.removeProperty("--ui-calendar-week-gap"), e.style.removeProperty("--ui-calendar-control-height")), i("readonly", this._isReadonly()), i("disabled", this._isInteractionBlocked()), i("bare", this._isBare()), t("tabindex", "-1"), t("aria-label", this.getAttribute("label") || this._translations().selectDate);
|
|
866
855
|
}
|
|
867
856
|
_ensureOverlayContent(e) {
|
|
868
|
-
if (!this._overlay)
|
|
869
|
-
return;
|
|
857
|
+
if (!this._overlay) return;
|
|
870
858
|
const t = e ? "sheet" : "popover";
|
|
871
859
|
this._overlayMode === t && this._overlay.querySelector(".dp-calendar") || (this._overlayMode = t, this._overlay.innerHTML = e ? `<div class="sheet-wrap">${this._renderPanelInner(!0)}</div>` : `<div class="overlay">${this._renderPanelInner(!1)}</div>`);
|
|
872
860
|
}
|
|
873
861
|
_syncOverlayState() {
|
|
874
|
-
if (!this._overlay)
|
|
875
|
-
return;
|
|
862
|
+
if (!this._overlay) return;
|
|
876
863
|
this._syncOverlayHostZIndex();
|
|
877
864
|
const e = this._isMobileSheet();
|
|
878
|
-
e && !this._releaseScrollLock ? this._releaseScrollLock =
|
|
865
|
+
e && !this._releaseScrollLock ? this._releaseScrollLock = E() : !e && this._releaseScrollLock && (this._releaseScrollLock(), this._releaseScrollLock = null), this._ensureOverlayContent(e);
|
|
879
866
|
const t = this._overlay.querySelector(".title"), i = this._overlay.querySelector(".panel, .sheet");
|
|
880
867
|
this._syncDismissableLayer();
|
|
881
|
-
const r = this._overlay.querySelector(".header"),
|
|
882
|
-
if (i && (i.dataset.bare = this._isBare() ? "true" : "false"),
|
|
868
|
+
const r = this._overlay.querySelector(".header"), n = this._overlay.querySelector(".footer"), s = this._translations();
|
|
869
|
+
if (i && (i.dataset.bare = this._isBare() ? "true" : "false"), n && (n.hidden = !this._showFooter()), r && (r.hidden = !(this.getAttribute("label") || "").trim() && !e), t) {
|
|
883
870
|
const c = (this.getAttribute("label") || "").trim();
|
|
884
871
|
t.textContent = c, t.hidden = !c;
|
|
885
872
|
}
|
|
886
|
-
const
|
|
887
|
-
|
|
873
|
+
const l = this._overlay.querySelector('[data-action="today"]');
|
|
874
|
+
l && (l.textContent = s.today);
|
|
888
875
|
const d = this._overlay.querySelector('[data-action="clear"]');
|
|
889
|
-
d && (d.textContent =
|
|
876
|
+
d && (d.textContent = s.clear);
|
|
890
877
|
const a = this._overlay.querySelector('[data-action="cancel"]');
|
|
891
|
-
a && (a.textContent =
|
|
878
|
+
a && (a.textContent = s.cancel);
|
|
892
879
|
const u = this._overlay.querySelector('[data-action="apply"]');
|
|
893
|
-
u && (u.textContent =
|
|
880
|
+
u && (u.textContent = s.apply);
|
|
894
881
|
const m = this._overlay.querySelector('[data-action="apply"]');
|
|
895
882
|
m && (m.hidden = this._closeOnSelect() && !e);
|
|
896
883
|
const h = this._overlay.querySelectorAll(".action"), x = this._isInteractionBlocked();
|
|
@@ -944,9 +931,8 @@ class J extends q {
|
|
|
944
931
|
}
|
|
945
932
|
_onRootClick(e) {
|
|
946
933
|
const t = e.target;
|
|
947
|
-
if (!t)
|
|
948
|
-
|
|
949
|
-
const i = t.closest("[data-action]"), r = i == null ? void 0 : i.getAttribute("data-action");
|
|
934
|
+
if (!t) return;
|
|
935
|
+
const i = t.closest("[data-action]"), r = i?.getAttribute("data-action");
|
|
950
936
|
if (!(!r || this._isInteractionBlocked())) {
|
|
951
937
|
if (r === "toggle") {
|
|
952
938
|
this._restoreFocusEl = i, this._setOpen(!this._open, "api");
|
|
@@ -958,12 +944,10 @@ class J extends q {
|
|
|
958
944
|
}
|
|
959
945
|
if (r === "today") {
|
|
960
946
|
e.preventDefault();
|
|
961
|
-
const
|
|
962
|
-
if (!
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
if (!a)
|
|
966
|
-
return;
|
|
947
|
+
const n = this._todayIso(), s = this._parseAndValidate(n);
|
|
948
|
+
if (!s) return;
|
|
949
|
+
const { min: l, max: d } = this._resolvedBounds(), a = O(s, l, d);
|
|
950
|
+
if (!a) return;
|
|
967
951
|
this._pendingValue = a, this._emitInput("today"), this._closeOnSelect() && !this._isInlineMode() ? (this._commit(a, "today"), this._setOpen(!1, "today")) : this._updateHostState();
|
|
968
952
|
return;
|
|
969
953
|
}
|
|
@@ -979,20 +963,17 @@ class J extends q {
|
|
|
979
963
|
}
|
|
980
964
|
_onRootInput(e) {
|
|
981
965
|
const t = e.target;
|
|
982
|
-
if (!(t instanceof HTMLInputElement) || !t.classList.contains("input") || this._isInteractionBlocked() || !this._allowInput())
|
|
983
|
-
return;
|
|
966
|
+
if (!(t instanceof HTMLInputElement) || !t.classList.contains("input") || this._isInteractionBlocked() || !this._allowInput()) return;
|
|
984
967
|
this._draftInput = t.value, this._inlineError = "";
|
|
985
968
|
const i = this._parseAndValidate(t.value);
|
|
986
969
|
this._pendingValue = i, this._emitInput("typing");
|
|
987
970
|
}
|
|
988
971
|
_onRootBlur(e) {
|
|
989
|
-
var s;
|
|
990
972
|
const t = e, i = t.target;
|
|
991
|
-
if (!(i instanceof HTMLInputElement) || !i.classList.contains("input") || !this._allowInput())
|
|
992
|
-
return;
|
|
973
|
+
if (!(i instanceof HTMLInputElement) || !i.classList.contains("input") || !this._allowInput()) return;
|
|
993
974
|
this._draftInput = i.value;
|
|
994
975
|
const r = t.relatedTarget;
|
|
995
|
-
r &&
|
|
976
|
+
r && this._overlay?.contains(r) || this._open && !this._isInlineMode() || this._handleDraftCommit("blur");
|
|
996
977
|
}
|
|
997
978
|
_onRootKeyDown(e) {
|
|
998
979
|
const t = e, i = t.target;
|
|
@@ -1009,8 +990,7 @@ class J extends q {
|
|
|
1009
990
|
}
|
|
1010
991
|
}
|
|
1011
992
|
_onDocumentPointerDown(e) {
|
|
1012
|
-
if (!this._open || !this._overlay)
|
|
1013
|
-
return;
|
|
993
|
+
if (!this._open || !this._overlay) return;
|
|
1014
994
|
const t = e.composedPath();
|
|
1015
995
|
t.includes(this) || t.includes(this._overlay) || this._setOpen(!1, "outside");
|
|
1016
996
|
}
|
|
@@ -1019,21 +999,18 @@ class J extends q {
|
|
|
1019
999
|
}
|
|
1020
1000
|
_onOverlayClick(e) {
|
|
1021
1001
|
const t = e.target;
|
|
1022
|
-
if (!t)
|
|
1023
|
-
|
|
1024
|
-
const i = t.closest("[data-action]"), r = i == null ? void 0 : i.getAttribute("data-action");
|
|
1002
|
+
if (!t) return;
|
|
1003
|
+
const r = t.closest("[data-action]")?.getAttribute("data-action");
|
|
1025
1004
|
if (r && !this._isInteractionBlocked()) {
|
|
1026
1005
|
if (r === "backdrop") {
|
|
1027
1006
|
this._setOpen(!1, "outside");
|
|
1028
1007
|
return;
|
|
1029
1008
|
}
|
|
1030
1009
|
if (r === "today") {
|
|
1031
|
-
const
|
|
1032
|
-
if (!
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
if (!d)
|
|
1036
|
-
return;
|
|
1010
|
+
const n = this._parseAndValidate(this._todayIso());
|
|
1011
|
+
if (!n) return;
|
|
1012
|
+
const { min: s, max: l } = this._resolvedBounds(), d = O(n, s, l);
|
|
1013
|
+
if (!d) return;
|
|
1037
1014
|
this._pendingValue = d, this._emitInput("today"), this._closeOnSelect() ? (this._commit(d, "today"), this._setOpen(!1, "today")) : this._renderOverlay();
|
|
1038
1015
|
return;
|
|
1039
1016
|
}
|
|
@@ -1049,33 +1026,28 @@ class J extends q {
|
|
|
1049
1026
|
}
|
|
1050
1027
|
}
|
|
1051
1028
|
_onCalendarSelect(e) {
|
|
1052
|
-
|
|
1053
|
-
if (this._isInteractionBlocked())
|
|
1054
|
-
return;
|
|
1029
|
+
if (this._isInteractionBlocked()) return;
|
|
1055
1030
|
const t = e, i = e.target;
|
|
1056
|
-
if (!i || i.tagName.toLowerCase() !== "ui-calendar")
|
|
1057
|
-
return;
|
|
1031
|
+
if (!i || i.tagName.toLowerCase() !== "ui-calendar") return;
|
|
1058
1032
|
let r = null;
|
|
1059
1033
|
if (t.type === "select")
|
|
1060
|
-
r = g(
|
|
1034
|
+
r = g(t.detail?.value || null);
|
|
1061
1035
|
else if (t.type === "change") {
|
|
1062
|
-
const
|
|
1063
|
-
typeof
|
|
1036
|
+
const s = t.detail?.value;
|
|
1037
|
+
typeof s == "string" && (r = g(s));
|
|
1064
1038
|
}
|
|
1065
|
-
if (!r)
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
s && (this._pendingValue = s, this._emitInput("calendar"), this._closeOnSelect() ? (this._commit(s, "calendar"), this._isInlineMode() || this._setOpen(!1, "calendar")) : this._updateHostState());
|
|
1039
|
+
if (!r) return;
|
|
1040
|
+
const n = this._clampToBounds(r);
|
|
1041
|
+
n && (this._pendingValue = n, this._emitInput("calendar"), this._closeOnSelect() ? (this._commit(n, "calendar"), this._isInlineMode() || this._setOpen(!1, "calendar")) : this._updateHostState());
|
|
1069
1042
|
}
|
|
1070
1043
|
_updateHostState() {
|
|
1071
|
-
if (!this._hasView)
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
if (h && (h.hidden = !e, h.id = this._labelId, h.setAttribute("for", this._inputId)), x && (x.textContent = e), f && (f.hidden = !this.hasAttribute("required")), c && (c.dataset.invalid = r ? "true" : "false", c.dataset.open = this._open && !a ? "true" : "false", c.dataset.state = u, c.setAttribute("aria-disabled", this._isInteractionBlocked() ? "true" : "false")), l && (l.value !== m && (l.value = m), l.id = this._inputId, l.placeholder = s, l.readOnly = !this._allowInput() || this._isReadonly(), l.disabled = this._isInteractionBlocked(), l.required = this.hasAttribute("required"), l.autocomplete = "off", l.setAttribute("role", "combobox"), l.setAttribute("aria-haspopup", "dialog"), l.setAttribute("aria-expanded", a ? "false" : String(this._open)), l.setAttribute("aria-controls", this._panelId), l.setAttribute("aria-invalid", r ? "true" : "false"), e ? l.setAttribute("aria-labelledby", this._labelId) : l.removeAttribute("aria-labelledby")), I && (I.hidden = !(this._clearable() && o), I.disabled = this._isInteractionBlocked(), I.setAttribute("aria-label", n.clearDate)), _ && (_.hidden = a, _.disabled = this._isInteractionBlocked(), _.setAttribute("aria-expanded", a ? "false" : String(this._open)), _.setAttribute("aria-controls", this._panelId), _.setAttribute("aria-label", n.toggleCalendar)), b && (b.id = this._hintId, b.hidden = !t, b.textContent = t), k && (k.id = this._errorId, k.hidden = !r, k.textContent = r), l) {
|
|
1044
|
+
if (!this._hasView) return;
|
|
1045
|
+
const e = this.getAttribute("label") || "", t = this.getAttribute("hint") || "", i = this.getAttribute("error") || "", r = this._inlineError || i, n = this._placeholder(), s = this._translations(), l = !!(this._value || this._pendingValue), d = this.getAttribute("name") || "", a = this._isInlineMode(), u = r ? "error" : this._state(), m = this._allowInput() ? this._draftInput : this._formatDisplay(this._pendingValue || this._value), h = this.root.querySelector(".label"), x = this.root.querySelector(".label-text"), f = this.root.querySelector(".required"), c = this.root.querySelector(".field"), o = this.root.querySelector(".input"), I = this.root.querySelector('.btn[data-action="clear"]'), _ = this.root.querySelector('.btn[data-action="toggle"]'), b = this.root.querySelector(".hint"), k = this.root.querySelector(".error"), A = this.root.querySelector(".hidden-input"), p = this.root.querySelector(".inline-panel"), C = this.root.querySelector('.inline-panel [data-action="today"]'), D = this.root.querySelector('.inline-panel [data-action="clear"]'), z = this.root.querySelector('.inline-panel [data-action="apply"]'), P = this.root.querySelector(".inline-panel .footer");
|
|
1046
|
+
if (h && (h.hidden = !e, h.id = this._labelId, h.setAttribute("for", this._inputId)), x && (x.textContent = e), f && (f.hidden = !this.hasAttribute("required")), c && (c.dataset.invalid = r ? "true" : "false", c.dataset.open = this._open && !a ? "true" : "false", c.dataset.state = u, c.setAttribute("aria-disabled", this._isInteractionBlocked() ? "true" : "false")), o && (o.value !== m && (o.value = m), o.id = this._inputId, o.placeholder = n, o.readOnly = !this._allowInput() || this._isReadonly(), o.disabled = this._isInteractionBlocked(), o.required = this.hasAttribute("required"), o.autocomplete = "off", o.setAttribute("role", "combobox"), o.setAttribute("aria-haspopup", "dialog"), o.setAttribute("aria-expanded", a ? "false" : String(this._open)), o.setAttribute("aria-controls", this._panelId), o.setAttribute("aria-invalid", r ? "true" : "false"), e ? o.setAttribute("aria-labelledby", this._labelId) : o.removeAttribute("aria-labelledby")), I && (I.hidden = !(this._clearable() && l), I.disabled = this._isInteractionBlocked(), I.setAttribute("aria-label", s.clearDate)), _ && (_.hidden = a, _.disabled = this._isInteractionBlocked(), _.setAttribute("aria-expanded", a ? "false" : String(this._open)), _.setAttribute("aria-controls", this._panelId), _.setAttribute("aria-label", s.toggleCalendar)), b && (b.id = this._hintId, b.hidden = !t, b.textContent = t), k && (k.id = this._errorId, k.hidden = !r, k.textContent = r), o) {
|
|
1075
1047
|
const w = [];
|
|
1076
|
-
t && b && !b.hidden && w.push(this._hintId), r && w.push(this._errorId), w.length ?
|
|
1048
|
+
t && b && !b.hidden && w.push(this._hintId), r && w.push(this._errorId), w.length ? o.setAttribute("aria-describedby", w.join(" ")) : o.removeAttribute("aria-describedby");
|
|
1077
1049
|
}
|
|
1078
|
-
if (A && (A.disabled = !d, A.name = d, A.value = this._value || ""), p && (p.hidden = !a, p.id = this._panelId, p.dataset.bare = this._isBare() ? "true" : "false", p.setAttribute("role", "dialog"), p.setAttribute("aria-modal", "false"), p.setAttribute("aria-label", e ||
|
|
1050
|
+
if (A && (A.disabled = !d, A.name = d, A.value = this._value || ""), p && (p.hidden = !a, p.id = this._panelId, p.dataset.bare = this._isBare() ? "true" : "false", p.setAttribute("role", "dialog"), p.setAttribute("aria-modal", "false"), p.setAttribute("aria-label", e || s.selectDate)), P && (P.hidden = !this._showFooter()), C && (C.textContent = s.today), D && (D.textContent = s.clear), z && (z.textContent = s.apply), a) {
|
|
1079
1051
|
this._scheduleInlineCalendarSync(), this._destroyOverlay();
|
|
1080
1052
|
return;
|
|
1081
1053
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const Y=require("./ElementBase-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const Y=require("./ElementBase-EV6mVBUV.js"),J=require("./dismissable-layer-DNfrKA20.js"),B=require("./calendar-Dkof-FTK.js"),s=require("./date-time-utils-Dmost5Ee.js");let G=0;const Q=`
|
|
2
2
|
<svg viewBox="0 0 20 20" class="icon-svg" aria-hidden="true" focusable="false">
|
|
3
3
|
<path d="M6 2a1 1 0 0 1 1 1v1h6V3a1 1 0 1 1 2 0v1h.5A2.5 2.5 0 0 1 18 6.5v9A2.5 2.5 0 0 1 15.5 18h-11A2.5 2.5 0 0 1 2 15.5v-9A2.5 2.5 0 0 1 4.5 4H5V3a1 1 0 0 1 1-1Zm10 7H4v6.5c0 .276.224.5.5.5h11a.5.5 0 0 0 .5-.5V9ZM4.5 6a.5.5 0 0 0-.5.5V7h12v-.5a.5.5 0 0 0-.5-.5h-11Z" fill="currentColor"/>
|
|
4
4
|
</svg>
|
|
@@ -414,7 +414,7 @@
|
|
|
414
414
|
from { opacity: 0.82; transform: translateY(12px); }
|
|
415
415
|
to { opacity: 1; transform: translateY(0); }
|
|
416
416
|
}
|
|
417
|
-
`;function U(p){if(!p)return{start:null,end:null};try{const t=JSON.parse(p),e=s.normalizeDateIso((t==null?void 0:t.start)||null),i=s.normalizeDateIso((t==null?void 0:t.end)||null);return{start:e,end:i}}catch{return{start:null,end:null}}}function N(p){return!p.start&&!p.end?null:JSON.stringify({...p.start?{start:p.start}:{},...p.end?{end:p.end}:{}})}function b(p){return p.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function rt(p,t){const e=p.trim();if(!e)return{start:null,end:null};const i=e.split(/\s(?:—|–|to)\s/i).map(n=>n.trim()).filter(Boolean);if(i.length>1){const n=s.parseUserDateInput(i[0]||"",t),u=s.parseUserDateInput(i[1]||"",t);return{start:n,end:u}}return{start:s.parseUserDateInput(e,t),end:null}}class K extends Y.ElementBase{constructor(){super(...arguments),this._value={start:null,end:null},this._pending={start:null,end:null},this._draftStart="",this._draftEnd="",this._draftSingle="",this._inlineError="",this._open=!1,this._syncing=!1,this._overlay=null,this._dismissableLayer=null,this._releaseScrollLock=null,this._isInitialized=!1,this._hasView=!1,this._restoreFocusEl=null,this._overlayMode=null,this._uid=`ui-drp-${++G}`,this._singleId=`${this._uid}-single`,this._startId=`${this._uid}-start`,this._endId=`${this._uid}-end`,this._labelId=`${this._uid}-label`,this._hintId=`${this._uid}-hint`,this._errorId=`${this._uid}-error`,this._panelId=`${this._uid}-panel`,this._panelTitleId=`${this._uid}-panel-title`,this._overlayFocusedOnOpen=!1,this._inlineCalendarFramePending=!1,this._inlineCalendarUpgradePending=!1,this._schedulePosition=s.rafThrottle(()=>this._positionOverlay()),this._onRootClickBound=t=>this._onRootClick(t),this._onRootInputBound=t=>this._onRootInput(t),this._onRootBlurBound=t=>this._onRootBlur(t),this._onRootKeyDownBound=t=>this._onRootKeyDown(t),this._onDocumentPointerDownBound=t=>this._onDocumentPointerDown(t),this._onDocumentKeyDownBound=t=>this._onDocumentKeyDown(t),this._onWindowResizeBound=()=>this._schedulePosition.run(),this._onWindowScrollBound=t=>{s.eventOriginatesWithin(t,[this._overlay])||this._schedulePosition.run()},this._onOverlayClickBound=t=>this._onOverlayClick(t),this._onOverlayCalendarBound=t=>this._onOverlayCalendarChange(t)}static get observedAttributes(){return["open","default-open","value","default-value","min","max","locale","translations","week-start","size","shape","bare","variant","state","range-variant","label","hint","error","allow-same-day","allow-partial","close-on-select","clearable","disabled","readonly","required","name","name-start","name-end","mode","show-footer"]}connectedCallback(){if(super.connectedCallback(),this.root.addEventListener("click",this._onRootClickBound),this.root.addEventListener("input",this._onRootInputBound),this.root.addEventListener("focusout",this._onRootBlurBound),this.root.addEventListener("keydown",this._onRootKeyDownBound),!this._isInitialized){const t=U(this.getAttribute("value")||this.getAttribute("default-value")),e=this._normalizePending(t);this._value=e,this._pending={...e},this._refreshDraftFromValue(),this._open=this.hasAttribute("open")||s.isTruthyAttr(this.getAttribute("default-open")),this._isInitialized=!0}this._open&&!this._isInlineMode()&&this._ensureOverlay(),this._isInlineMode()&&this._scheduleInlineCalendarSync()}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClickBound),this.root.removeEventListener("input",this._onRootInputBound),this.root.removeEventListener("focusout",this._onRootBlurBound),this.root.removeEventListener("keydown",this._onRootKeyDownBound),this._destroyOverlay(),super.disconnectedCallback()}attributeChangedCallback(t,e,i){if(e!==i&&(t==="value"&&!this._syncing&&(this._value=this._normalizePending(U(i)),this._pending={...this._value},this._refreshDraftFromValue(),this._inlineError="",this._syncValueAttribute(this._value)),t==="open"&&!this._syncing&&(this._open=this.hasAttribute("open"),this._syncOverlay("attribute")),t==="mode"&&this._syncOverlay("attribute"),t==="disabled"&&this.hasAttribute("disabled")&&this._setOpen(!1,"outside"),(t==="min"||t==="max")&&!this._syncing&&(this._value=this._normalizePending(this._value),this._pending=this._normalizePending(this._pending),this._syncValueAttribute(this._value),this._refreshDraftFromValue()),t==="state"&&this._state()==="loading"&&this._setOpen(!1,"outside"),!!this.isConnected)){if(!this._hasView){this.requestRender();return}this._updateHostState()}}_isInlineMode(){return(this.getAttribute("mode")||"popover")==="inline"}_isMobileSheet(){return s.shouldUseMobileSheet(this.getAttribute("mode"))}_isDisabled(){return this.hasAttribute("disabled")}_state(){const t=(this.getAttribute("state")||"").trim().toLowerCase();return t==="loading"||t==="error"||t==="success"?t:"idle"}_isInteractionBlocked(){return this._isDisabled()||this._state()==="loading"}_isReadonly(){return this.hasAttribute("readonly")}_clearable(){return s.isTruthyAttr(this.getAttribute("clearable"),!0)}_closeOnSelect(){return s.isTruthyAttr(this.getAttribute("close-on-select"),!1)}_shouldAutoCommit(){return this._closeOnSelect()||!this._showFooter()}_showFooter(){return s.isTruthyAttr(this.getAttribute("show-footer"),!0)}_isBare(){return s.isTruthyAttr(this.getAttribute("bare"),!1)}_allowPartial(){return s.isTruthyAttr(this.getAttribute("allow-partial"),!0)}_allowSameDay(){return s.isTruthyAttr(this.getAttribute("allow-same-day"),!0)}_locale(){return s.normalizeLocale(this.getAttribute("locale"))}_translations(){return B.resolveDateTimeTranslations(this.getAttribute("locale"),this.getAttribute("translations"))}_rangeVariant(){return(this.getAttribute("range-variant")||"two-fields")==="single-field"?"single-field":"two-fields"}_minIso(){return s.parseConstraintDate(this.getAttribute("min"))}_maxIso(){return s.parseConstraintDate(this.getAttribute("max"))}_todayIso(){const t=new Date,e=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0");return`${t.getFullYear()}-${e}-${i}`}_resolvedBounds(){let t=this._minIso(),e=this._maxIso();if(t&&e&&B.compareISO(t,e)>0){const i=t;t=e,e=i}return{min:t,max:e}}_refreshDraftFromValue(){const t=s.formatDateForDisplay(this._value.start,this._locale(),"locale",null),e=s.formatDateForDisplay(this._value.end,this._locale(),"locale",null);this._draftStart=t,this._draftEnd=e,this._draftSingle=[t,e].filter(Boolean).join(" — ")}_syncOpenAttribute(t){this._syncing=!0;try{t?this.hasAttribute("open")||this.setAttribute("open",""):this.hasAttribute("open")&&this.removeAttribute("open")}finally{this._syncing=!1}}_syncValueAttribute(t){const e=N(t);this._syncing=!0;try{e?this.getAttribute("value")!==e&&this.setAttribute("value",e):this.hasAttribute("value")&&this.removeAttribute("value")}finally{this._syncing=!1}}_emitInput(t){const e={mode:"range",start:this._pending.start,end:this._pending.end,value:this._pending.start&&this._pending.end?{start:this._pending.start,end:this._pending.end}:null,source:t};this.dispatchEvent(new CustomEvent("input",{detail:e,bubbles:!0,composed:!0}))}_emitChange(t){const e={mode:"range",start:this._value.start,end:this._value.end,value:this._value.start&&this._value.end?{start:this._value.start,end:this._value.end}:null,source:t};this.dispatchEvent(new CustomEvent("change",{detail:e,bubbles:!0,composed:!0}))}_emitInvalid(t,e){this.dispatchEvent(new CustomEvent("invalid",{detail:{raw:t,reason:e},bubbles:!0,composed:!0}))}_normalizePending(t){const{min:e,max:i}=this._resolvedBounds(),r=t.start?s.clampDateIso(t.start,e,i):null,n=t.end?s.clampDateIso(t.end,e,i):null;return!r||!n?{start:r,end:n}:B.compareISO(r,n)>0?{start:n,end:r}:{start:r,end:n}}_canCommit(t){return!t.start&&!t.end?!0:!(!this._allowPartial()&&(!t.start||!t.end)||t.start&&t.end&&!this._allowSameDay()&&t.start===t.end)}_commit(t,e){if(this._isInteractionBlocked()||this._isReadonly())return;const i=this._normalizePending(t);if(!this._canCommit(i)){this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(JSON.stringify(t),"range"),this._updateHostState();return}this._value=i,this._pending={...i},this._inlineError="",this._refreshDraftFromValue(),this._syncValueAttribute(this._value),this._emitInput(e),this._emitChange(e),this._updateHostState()}_setOpen(t,e){t&&this._isInteractionBlocked()||this._open!==t&&(this._open=t,this._overlayFocusedOnOpen=!1,this._syncOpenAttribute(t),this._syncOverlay(e),this._updateHostState(),this.dispatchEvent(new CustomEvent(t?"open":"close",{bubbles:!0,composed:!0})))}_syncOverlay(t){if(this._isInlineMode()){this._destroyOverlay();return}if(this._open){this._ensureOverlay(),this._syncOverlayState();return}this._destroyOverlay();const e=this._restoreFocusEl||this.root.querySelector(".single, .start, .end");if(this._restoreFocusEl=null,e&&e.isConnected)try{e.focus()}catch{}}_ensureOverlay(){if(this._overlay||typeof document>"u")return;const t=document.createElement("div");t.className="ui-date-range-picker-overlay-host",t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.pointerEvents="none",t.addEventListener("click",this._onOverlayClickBound),t.addEventListener("select",this._onOverlayCalendarBound),t.addEventListener("change",this._onOverlayCalendarBound),document.body.appendChild(t),this._overlay=t,this._syncOverlayHostZIndex(),document.addEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.addEventListener("keydown",this._onDocumentKeyDownBound),window.addEventListener("resize",this._onWindowResizeBound),window.addEventListener("scroll",this._onWindowScrollBound,{passive:!0,capture:!0}),this._isMobileSheet()&&(this._releaseScrollLock=s.lockBodyScroll())}_syncOverlayHostZIndex(){if(!this._overlay||typeof window>"u")return;const t=window.getComputedStyle(this).getPropertyValue("--ui-dp-z").trim();this._overlay.style.zIndex=t||"1600"}_destroyOverlay(){var t;(t=this._dismissableLayer)==null||t.destroy(),this._dismissableLayer=null,this._overlay&&(this._schedulePosition.cancel(),document.removeEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.removeEventListener("keydown",this._onDocumentKeyDownBound),window.removeEventListener("resize",this._onWindowResizeBound),window.removeEventListener("scroll",this._onWindowScrollBound,!0),this._overlay.removeEventListener("click",this._onOverlayClickBound),this._overlay.removeEventListener("select",this._onOverlayCalendarBound),this._overlay.removeEventListener("change",this._onOverlayCalendarBound),this._overlay.parentElement&&this._overlay.parentElement.removeChild(this._overlay),this._overlay=null,this._overlayMode=null,this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null))}_syncDismissableLayer(){var i;if((i=this._dismissableLayer)==null||i.destroy(),this._dismissableLayer=null,!this._open||!this._overlay)return;const t=this._overlay.querySelector(".panel, .sheet"),e=this.root.querySelector(".fields");t&&(this._dismissableLayer=J.createDismissableLayer({node:t,trigger:e,closeOnEscape:!0,closeOnPointerOutside:!0,closeOnFocusOutside:!1,onBeforeDismiss:r=>r==="escape-key"?(this._setOpen(!1,"escape"),!1):(r==="outside-pointer"&&this._setOpen(!1,"outside"),!1)}))}_positionOverlay(){if(!this._overlay||!this._open||this._isMobileSheet())return;const t=this.root.querySelector(".fields"),e=this._overlay.querySelector(".panel");if(!t||!e)return;const i=t.getBoundingClientRect();e.style.setProperty("--ui-drp-panel-width",`${Math.round(i.width)}px`);const r=e.getBoundingClientRect(),n=e.getAttribute("data-placement"),u=s.computePopoverPosition(i,r,8,8,n==="top"?"top":n==="bottom"?"bottom":null);e.style.position="absolute",e.style.top=`${Math.round(u.top)}px`,e.style.left=`${Math.round(u.left)}px`,e.setAttribute("data-placement",u.placement)}_renderPanelInner(t){const e=this._translations(),i=(this.getAttribute("label")||"").trim(),r=!!i||t,n=t?"true":"false",u=`
|
|
417
|
+
`;function U(p){if(!p)return{start:null,end:null};try{const t=JSON.parse(p),e=s.normalizeDateIso(t?.start||null),i=s.normalizeDateIso(t?.end||null);return{start:e,end:i}}catch{return{start:null,end:null}}}function N(p){return!p.start&&!p.end?null:JSON.stringify({...p.start?{start:p.start}:{},...p.end?{end:p.end}:{}})}function b(p){return p.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function rt(p,t){const e=p.trim();if(!e)return{start:null,end:null};const i=e.split(/\s(?:—|–|to)\s/i).map(n=>n.trim()).filter(Boolean);if(i.length>1){const n=s.parseUserDateInput(i[0]||"",t),u=s.parseUserDateInput(i[1]||"",t);return{start:n,end:u}}return{start:s.parseUserDateInput(e,t),end:null}}class K extends Y.ElementBase{constructor(){super(...arguments),this._value={start:null,end:null},this._pending={start:null,end:null},this._draftStart="",this._draftEnd="",this._draftSingle="",this._inlineError="",this._open=!1,this._syncing=!1,this._overlay=null,this._dismissableLayer=null,this._releaseScrollLock=null,this._isInitialized=!1,this._hasView=!1,this._restoreFocusEl=null,this._overlayMode=null,this._uid=`ui-drp-${++G}`,this._singleId=`${this._uid}-single`,this._startId=`${this._uid}-start`,this._endId=`${this._uid}-end`,this._labelId=`${this._uid}-label`,this._hintId=`${this._uid}-hint`,this._errorId=`${this._uid}-error`,this._panelId=`${this._uid}-panel`,this._panelTitleId=`${this._uid}-panel-title`,this._overlayFocusedOnOpen=!1,this._inlineCalendarFramePending=!1,this._inlineCalendarUpgradePending=!1,this._schedulePosition=s.rafThrottle(()=>this._positionOverlay()),this._onRootClickBound=t=>this._onRootClick(t),this._onRootInputBound=t=>this._onRootInput(t),this._onRootBlurBound=t=>this._onRootBlur(t),this._onRootKeyDownBound=t=>this._onRootKeyDown(t),this._onDocumentPointerDownBound=t=>this._onDocumentPointerDown(t),this._onDocumentKeyDownBound=t=>this._onDocumentKeyDown(t),this._onWindowResizeBound=()=>this._schedulePosition.run(),this._onWindowScrollBound=t=>{s.eventOriginatesWithin(t,[this._overlay])||this._schedulePosition.run()},this._onOverlayClickBound=t=>this._onOverlayClick(t),this._onOverlayCalendarBound=t=>this._onOverlayCalendarChange(t)}static get observedAttributes(){return["open","default-open","value","default-value","min","max","locale","translations","week-start","size","shape","bare","variant","state","range-variant","label","hint","error","allow-same-day","allow-partial","close-on-select","clearable","disabled","readonly","required","name","name-start","name-end","mode","show-footer"]}connectedCallback(){if(super.connectedCallback(),this.root.addEventListener("click",this._onRootClickBound),this.root.addEventListener("input",this._onRootInputBound),this.root.addEventListener("focusout",this._onRootBlurBound),this.root.addEventListener("keydown",this._onRootKeyDownBound),!this._isInitialized){const t=U(this.getAttribute("value")||this.getAttribute("default-value")),e=this._normalizePending(t);this._value=e,this._pending={...e},this._refreshDraftFromValue(),this._open=this.hasAttribute("open")||s.isTruthyAttr(this.getAttribute("default-open")),this._isInitialized=!0}this._open&&!this._isInlineMode()&&this._ensureOverlay(),this._isInlineMode()&&this._scheduleInlineCalendarSync()}disconnectedCallback(){this.root.removeEventListener("click",this._onRootClickBound),this.root.removeEventListener("input",this._onRootInputBound),this.root.removeEventListener("focusout",this._onRootBlurBound),this.root.removeEventListener("keydown",this._onRootKeyDownBound),this._destroyOverlay(),super.disconnectedCallback()}attributeChangedCallback(t,e,i){if(e!==i&&(t==="value"&&!this._syncing&&(this._value=this._normalizePending(U(i)),this._pending={...this._value},this._refreshDraftFromValue(),this._inlineError="",this._syncValueAttribute(this._value)),t==="open"&&!this._syncing&&(this._open=this.hasAttribute("open"),this._syncOverlay("attribute")),t==="mode"&&this._syncOverlay("attribute"),t==="disabled"&&this.hasAttribute("disabled")&&this._setOpen(!1,"outside"),(t==="min"||t==="max")&&!this._syncing&&(this._value=this._normalizePending(this._value),this._pending=this._normalizePending(this._pending),this._syncValueAttribute(this._value),this._refreshDraftFromValue()),t==="state"&&this._state()==="loading"&&this._setOpen(!1,"outside"),!!this.isConnected)){if(!this._hasView){this.requestRender();return}this._updateHostState()}}_isInlineMode(){return(this.getAttribute("mode")||"popover")==="inline"}_isMobileSheet(){return s.shouldUseMobileSheet(this.getAttribute("mode"))}_isDisabled(){return this.hasAttribute("disabled")}_state(){const t=(this.getAttribute("state")||"").trim().toLowerCase();return t==="loading"||t==="error"||t==="success"?t:"idle"}_isInteractionBlocked(){return this._isDisabled()||this._state()==="loading"}_isReadonly(){return this.hasAttribute("readonly")}_clearable(){return s.isTruthyAttr(this.getAttribute("clearable"),!0)}_closeOnSelect(){return s.isTruthyAttr(this.getAttribute("close-on-select"),!1)}_shouldAutoCommit(){return this._closeOnSelect()||!this._showFooter()}_showFooter(){return s.isTruthyAttr(this.getAttribute("show-footer"),!0)}_isBare(){return s.isTruthyAttr(this.getAttribute("bare"),!1)}_allowPartial(){return s.isTruthyAttr(this.getAttribute("allow-partial"),!0)}_allowSameDay(){return s.isTruthyAttr(this.getAttribute("allow-same-day"),!0)}_locale(){return s.normalizeLocale(this.getAttribute("locale"))}_translations(){return B.resolveDateTimeTranslations(this.getAttribute("locale"),this.getAttribute("translations"))}_rangeVariant(){return(this.getAttribute("range-variant")||"two-fields")==="single-field"?"single-field":"two-fields"}_minIso(){return s.parseConstraintDate(this.getAttribute("min"))}_maxIso(){return s.parseConstraintDate(this.getAttribute("max"))}_todayIso(){const t=new Date,e=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0");return`${t.getFullYear()}-${e}-${i}`}_resolvedBounds(){let t=this._minIso(),e=this._maxIso();if(t&&e&&B.compareISO(t,e)>0){const i=t;t=e,e=i}return{min:t,max:e}}_refreshDraftFromValue(){const t=s.formatDateForDisplay(this._value.start,this._locale(),"locale",null),e=s.formatDateForDisplay(this._value.end,this._locale(),"locale",null);this._draftStart=t,this._draftEnd=e,this._draftSingle=[t,e].filter(Boolean).join(" — ")}_syncOpenAttribute(t){this._syncing=!0;try{t?this.hasAttribute("open")||this.setAttribute("open",""):this.hasAttribute("open")&&this.removeAttribute("open")}finally{this._syncing=!1}}_syncValueAttribute(t){const e=N(t);this._syncing=!0;try{e?this.getAttribute("value")!==e&&this.setAttribute("value",e):this.hasAttribute("value")&&this.removeAttribute("value")}finally{this._syncing=!1}}_emitInput(t){const e={mode:"range",start:this._pending.start,end:this._pending.end,value:this._pending.start&&this._pending.end?{start:this._pending.start,end:this._pending.end}:null,source:t};this.dispatchEvent(new CustomEvent("input",{detail:e,bubbles:!0,composed:!0}))}_emitChange(t){const e={mode:"range",start:this._value.start,end:this._value.end,value:this._value.start&&this._value.end?{start:this._value.start,end:this._value.end}:null,source:t};this.dispatchEvent(new CustomEvent("change",{detail:e,bubbles:!0,composed:!0}))}_emitInvalid(t,e){this.dispatchEvent(new CustomEvent("invalid",{detail:{raw:t,reason:e},bubbles:!0,composed:!0}))}_normalizePending(t){const{min:e,max:i}=this._resolvedBounds(),r=t.start?s.clampDateIso(t.start,e,i):null,n=t.end?s.clampDateIso(t.end,e,i):null;return!r||!n?{start:r,end:n}:B.compareISO(r,n)>0?{start:n,end:r}:{start:r,end:n}}_canCommit(t){return!t.start&&!t.end?!0:!(!this._allowPartial()&&(!t.start||!t.end)||t.start&&t.end&&!this._allowSameDay()&&t.start===t.end)}_commit(t,e){if(this._isInteractionBlocked()||this._isReadonly())return;const i=this._normalizePending(t);if(!this._canCommit(i)){this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(JSON.stringify(t),"range"),this._updateHostState();return}this._value=i,this._pending={...i},this._inlineError="",this._refreshDraftFromValue(),this._syncValueAttribute(this._value),this._emitInput(e),this._emitChange(e),this._updateHostState()}_setOpen(t,e){t&&this._isInteractionBlocked()||this._open!==t&&(this._open=t,this._overlayFocusedOnOpen=!1,this._syncOpenAttribute(t),this._syncOverlay(e),this._updateHostState(),this.dispatchEvent(new CustomEvent(t?"open":"close",{bubbles:!0,composed:!0})))}_syncOverlay(t){if(this._isInlineMode()){this._destroyOverlay();return}if(this._open){this._ensureOverlay(),this._syncOverlayState();return}this._destroyOverlay();const e=this._restoreFocusEl||this.root.querySelector(".single, .start, .end");if(this._restoreFocusEl=null,e&&e.isConnected)try{e.focus()}catch{}}_ensureOverlay(){if(this._overlay||typeof document>"u")return;const t=document.createElement("div");t.className="ui-date-range-picker-overlay-host",t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.pointerEvents="none",t.addEventListener("click",this._onOverlayClickBound),t.addEventListener("select",this._onOverlayCalendarBound),t.addEventListener("change",this._onOverlayCalendarBound),document.body.appendChild(t),this._overlay=t,this._syncOverlayHostZIndex(),document.addEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.addEventListener("keydown",this._onDocumentKeyDownBound),window.addEventListener("resize",this._onWindowResizeBound),window.addEventListener("scroll",this._onWindowScrollBound,{passive:!0,capture:!0}),this._isMobileSheet()&&(this._releaseScrollLock=s.lockBodyScroll())}_syncOverlayHostZIndex(){if(!this._overlay||typeof window>"u")return;const t=window.getComputedStyle(this).getPropertyValue("--ui-dp-z").trim();this._overlay.style.zIndex=t||"1600"}_destroyOverlay(){this._dismissableLayer?.destroy(),this._dismissableLayer=null,this._overlay&&(this._schedulePosition.cancel(),document.removeEventListener("pointerdown",this._onDocumentPointerDownBound,!0),document.removeEventListener("keydown",this._onDocumentKeyDownBound),window.removeEventListener("resize",this._onWindowResizeBound),window.removeEventListener("scroll",this._onWindowScrollBound,!0),this._overlay.removeEventListener("click",this._onOverlayClickBound),this._overlay.removeEventListener("select",this._onOverlayCalendarBound),this._overlay.removeEventListener("change",this._onOverlayCalendarBound),this._overlay.parentElement&&this._overlay.parentElement.removeChild(this._overlay),this._overlay=null,this._overlayMode=null,this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null))}_syncDismissableLayer(){if(this._dismissableLayer?.destroy(),this._dismissableLayer=null,!this._open||!this._overlay)return;const t=this._overlay.querySelector(".panel, .sheet"),e=this.root.querySelector(".fields");t&&(this._dismissableLayer=J.createDismissableLayer({node:t,trigger:e,closeOnEscape:!0,closeOnPointerOutside:!0,closeOnFocusOutside:!1,onBeforeDismiss:i=>i==="escape-key"?(this._setOpen(!1,"escape"),!1):(i==="outside-pointer"&&this._setOpen(!1,"outside"),!1)}))}_positionOverlay(){if(!this._overlay||!this._open||this._isMobileSheet())return;const t=this.root.querySelector(".fields"),e=this._overlay.querySelector(".panel");if(!t||!e)return;const i=t.getBoundingClientRect();e.style.setProperty("--ui-drp-panel-width",`${Math.round(i.width)}px`);const r=e.getBoundingClientRect(),n=e.getAttribute("data-placement"),u=s.computePopoverPosition(i,r,8,8,n==="top"?"top":n==="bottom"?"bottom":null);e.style.position="absolute",e.style.top=`${Math.round(u.top)}px`,e.style.left=`${Math.round(u.left)}px`,e.setAttribute("data-placement",u.placement)}_renderPanelInner(t){const e=this._translations(),i=(this.getAttribute("label")||"").trim(),r=!!i||t,n=t?"true":"false",u=`
|
|
418
418
|
<header class="header" part="header" ${r?"":"hidden"}>
|
|
419
419
|
<p class="title" id="${this._panelTitleId}" ${i?"":"hidden"}>${b(i)}</p>
|
|
420
420
|
${t?`<button type="button" class="action" data-action="cancel">${b(e.cancel)}</button>`:""}
|
|
@@ -434,7 +434,7 @@
|
|
|
434
434
|
<style>${it}</style>
|
|
435
435
|
${t?'<div class="sheet-backdrop" data-action="backdrop"></div>':""}
|
|
436
436
|
<section class="${t?"sheet":"panel"}" id="${this._panelId}" role="dialog" aria-modal="${n}" aria-labelledby="${this._panelTitleId}" part="${t?"sheet":"popover"}">${u}</section>
|
|
437
|
-
`}_syncCalendar(t){const e=(f,c)=>{if(c==null||c===""){t.hasAttribute(f)&&t.removeAttribute(f);return}t.getAttribute(f)!==c&&t.setAttribute(f,c)},i=N(this._pending),{min:r,max:n}=this._resolvedBounds();e("selection","range"),e("value",i),e("min",r),e("max",n),e("locale",this.getAttribute("locale")),e("translations",this.getAttribute("translations")),e("week-start",this.getAttribute("week-start"));const d=this.getAttribute("size")||"sm";e("size",d==="lg"?"md":"sm"),e("variant",this.getAttribute("variant")),e("outside-click",this.getAttribute("outside-click"));const h=t.classList.contains("inline-calendar");d==="lg"?(t.style.setProperty("--ui-calendar-day-height","1.95em"),t.style.setProperty("--ui-calendar-day-padding-block","0.2em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.26em"),t.style.setProperty("--ui-calendar-gap","0.42em"),t.style.setProperty("--ui-calendar-day-font-size","0.78em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.7em"),t.style.setProperty("--ui-calendar-title-font-size","0.88em")):(t.style.setProperty("--ui-calendar-day-height","2.4em"),t.style.setProperty("--ui-calendar-day-padding-block","0.14em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.22em"),t.style.setProperty("--ui-calendar-gap","0.34em"),t.style.setProperty("--ui-calendar-day-font-size","0.72em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.64em"),t.style.setProperty("--ui-calendar-title-font-size","0.8em")),h?(t.style.setProperty("--ui-calendar-day-height",d==="lg"?"2.1em":"1.92em"),t.style.setProperty("--ui-calendar-day-padding-block","0.08em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.14em"),t.style.setProperty("--ui-calendar-frame-padding","0.28em"),t.style.setProperty("--ui-calendar-week-gap","0.16em"),t.style.setProperty("--ui-calendar-control-height","1.64em"),t.style.setProperty("--ui-calendar-gap","0.2em"),t.style.setProperty("--ui-calendar-day-font-size",d==="lg"?"0.76em":"0.68em"),t.style.setProperty("--ui-calendar-weekday-font-size",d==="lg"?"0.66em":"0.58em"),t.style.setProperty("--ui-calendar-title-font-size",d==="lg"?"0.84em":"0.76em")):(t.style.removeProperty("--ui-calendar-frame-padding"),t.style.removeProperty("--ui-calendar-week-gap"),t.style.removeProperty("--ui-calendar-control-height")),this._isReadonly()?e("readonly",""):e("readonly",null),this._isInteractionBlocked()?e("disabled",""):e("disabled",null),this._isBare()?e("bare",""):e("bare",null),e("tabindex","-1"),e("aria-label",this.getAttribute("label")||this._translations().selectDateRange)}_ensureOverlayContent(t){if(!this._overlay)return;const e=t?"sheet":"popover";this._overlayMode===e&&this._overlay.querySelector(".drp-calendar")||(this._overlayMode=e,this._overlay.innerHTML=t?`<div class="sheet-wrap">${this._renderPanelInner(!0)}</div>`:`<div class="overlay">${this._renderPanelInner(!1)}</div>`)}_syncOverlayState(){if(!this._overlay)return;this._syncOverlayHostZIndex();const t=this._isMobileSheet();t&&!this._releaseScrollLock?this._releaseScrollLock=s.lockBodyScroll():!t&&this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null),this._ensureOverlayContent(t);const e=this._overlay.querySelector(".title"),i=this._overlay.querySelector(".panel, .sheet");this._syncDismissableLayer();const r=this._overlay.querySelector(".header"),n=this._overlay.querySelector(".presets"),u=this._overlay.querySelector(".footer"),d=this._translations();i&&(i.dataset.bare=this._isBare()?"true":"false"),r&&(r.hidden=!(this.getAttribute("label")||"").trim()&&!t);const h=this._showFooter();if(n&&(n.hidden=!h),u&&(u.hidden=!h),e){const g=(this.getAttribute("label")||"").trim();e.textContent=g,e.hidden=!g}const f=this._overlay.querySelector('[data-action="preset-today"]');f&&(f.textContent=d.today);const c=this._overlay.querySelector('[data-action="preset-last7"]');c&&(c.textContent=d.last7Days);const y=this._overlay.querySelector('[data-action="preset-month"]');y&&(y.textContent=d.thisMonth);const S=this._overlay.querySelector('[data-action="clear"]');S&&(S.textContent=d.clear);const A=this._overlay.querySelector('[data-action="cancel"]');A&&(A.textContent=d.cancel);const _=this._overlay.querySelector('[data-action="apply"]');_&&(_.textContent=d.apply);const o=this._overlay.querySelectorAll(".action"),l=this._isInteractionBlocked()||this._isReadonly();o.forEach(g=>{g.disabled=l});const a=this._overlay.querySelector(".drp-calendar");a&&(this._syncCalendar(a),this._open&&!this._overlayFocusedOnOpen&&(this._overlayFocusedOnOpen=!0,requestAnimationFrame(()=>{if(!(!this._open||!this._overlay))try{a.focus({preventScroll:!0})}catch{}}))),t||this._schedulePosition.run()}_renderOverlay(){this._syncOverlayState()}_renderInlineCalendar(){const t=this.root.querySelector(".inline-calendar");t&&this._syncCalendar(t)}_scheduleInlineCalendarSync(){const t=()=>{!this.isConnected||!this._hasView||!this._isInlineMode()||this._renderInlineCalendar()};t(),this._inlineCalendarFramePending||(this._inlineCalendarFramePending=!0,requestAnimationFrame(()=>{this._inlineCalendarFramePending=!1,t()})),!this._inlineCalendarUpgradePending&&typeof customElements<"u"&&!customElements.get("ui-calendar")&&(this._inlineCalendarUpgradePending=!0,customElements.whenDefined("ui-calendar").then(()=>{this._inlineCalendarUpgradePending=!1,requestAnimationFrame(()=>{t()})}))}_updateHostState(){if(!this._hasView)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"",i=this.getAttribute("error")||"",r=this._inlineError||i,n=this._translations(),u=r?"error":this._state(),d=this._rangeVariant(),h=this._isInlineMode(),f=!!(this._value.start||this._value.end||this._pending.start||this._pending.end),c=this._isInteractionBlocked(),y=this.root.querySelector(".label"),S=this.root.querySelector(".label-text"),A=this.root.querySelector(".required"),_=this.root.querySelector(".fields"),o=this.root.querySelector(".single"),l=this.root.querySelector(".start"),a=this.root.querySelector(".end"),g=this.root.querySelector(".sep"),w=this.root.querySelector('.btn[data-action="clear"]'),v=this.root.querySelector('.btn[data-action="toggle"]'),x=this.root.querySelector(".hint"),k=this.root.querySelector(".error"),m=this.root.querySelector(".inline-panel"),L=this.root.querySelector(".inline-panel .presets"),q=this.root.querySelector(".inline-panel .footer"),C=this.root.querySelector(".hidden-range"),O=this.root.querySelector(".hidden-start"),z=this.root.querySelector(".hidden-end"),j=this.root.querySelectorAll(".inline-panel .action");y&&(y.hidden=!t,y.id=this._labelId,y.setAttribute("for",d==="single-field"?this._singleId:this._startId)),S&&(S.textContent=t),A&&(A.hidden=!this.hasAttribute("required")),_&&(_.dataset.single=d==="single-field"?"true":"false",_.dataset.invalid=r?"true":"false",_.dataset.open=this._open&&!h?"true":"false",_.dataset.state=u,_.setAttribute("aria-disabled",c?"true":"false")),o&&(o.value!==this._draftSingle&&(o.value=this._draftSingle),o.id=this._singleId,o.hidden=d!=="single-field",o.readOnly=this._isReadonly()||c,o.disabled=c,o.required=this.hasAttribute("required"),o.placeholder=n.startEnd,o.autocomplete="off",o.setAttribute("role","combobox"),o.setAttribute("aria-haspopup","dialog"),o.setAttribute("aria-controls",this._panelId),o.setAttribute("aria-expanded",h?"false":String(this._open)),o.setAttribute("aria-invalid",r?"true":"false"),t?o.setAttribute("aria-labelledby",this._labelId):o.removeAttribute("aria-labelledby")),l&&(l.value!==this._draftStart&&(l.value=this._draftStart),l.id=this._startId,l.hidden=d==="single-field",l.readOnly=this._isReadonly()||c,l.disabled=c,l.required=this.hasAttribute("required"),l.placeholder=n.startDate,l.autocomplete="off",l.setAttribute("role","combobox"),l.setAttribute("aria-haspopup","dialog"),l.setAttribute("aria-controls",this._panelId),l.setAttribute("aria-expanded",h?"false":String(this._open)),l.setAttribute("aria-invalid",r?"true":"false"),t?l.setAttribute("aria-labelledby",this._labelId):l.removeAttribute("aria-labelledby")),a&&(a.value!==this._draftEnd&&(a.value=this._draftEnd),a.id=this._endId,a.hidden=d==="single-field",a.readOnly=this._isReadonly()||c,a.disabled=c,a.required=this.hasAttribute("required"),a.placeholder=n.endDate,a.autocomplete="off",a.setAttribute("role","combobox"),a.setAttribute("aria-haspopup","dialog"),a.setAttribute("aria-controls",this._panelId),a.setAttribute("aria-expanded",h?"false":String(this._open)),a.setAttribute("aria-invalid",r?"true":"false"),t?a.setAttribute("aria-labelledby",this._labelId):a.removeAttribute("aria-labelledby")),g&&(g.hidden=d==="single-field"),w&&(w.hidden=!(this._clearable()&&f),w.disabled=c,w.setAttribute("aria-label",n.clearDateRange)),v&&(v.hidden=h,v.disabled=c,v.setAttribute("aria-expanded",h?"false":String(this._open)),v.setAttribute("aria-controls",this._panelId),v.setAttribute("aria-label",n.toggleCalendar)),x&&(x.id=this._hintId,x.hidden=!e,x.textContent=e),k&&(k.id=this._errorId,k.hidden=!r,k.textContent=r);const P=[];e&&x&&!x.hidden&&P.push(this._hintId),r&&P.push(this._errorId);const I=P.join(" ");o&&(I?o.setAttribute("aria-describedby",I):o.removeAttribute("aria-describedby")),l&&(I?l.setAttribute("aria-describedby",I):l.removeAttribute("aria-describedby")),a&&(I?a.setAttribute("aria-describedby",I):a.removeAttribute("aria-describedby")),m&&(m.hidden=!h,m.id=this._panelId,m.dataset.bare=this._isBare()?"true":"false",m.setAttribute("role","dialog"),m.setAttribute("aria-modal","false"),m.setAttribute("aria-label",t||n.selectDateRange));const R=this._showFooter();L&&(L.hidden=!R),q&&(q.hidden=!R),j.forEach(W=>{W.disabled=c||this._isReadonly()});const E=this.root.querySelector('.inline-panel [data-action="preset-today"]');E&&(E.textContent=n.today);const $=this.root.querySelector('.inline-panel [data-action="preset-last7"]');$&&($.textContent=n.last7Days);const M=this.root.querySelector('.inline-panel [data-action="preset-month"]');M&&(M.textContent=n.thisMonth);const F=this.root.querySelector('.inline-panel [data-action="clear"]');F&&(F.textContent=n.clear);const V=this.root.querySelector('.inline-panel [data-action="apply"]');V&&(V.textContent=n.apply);const D=this.getAttribute("name")||"",T=this.getAttribute("name-start")||"",H=this.getAttribute("name-end")||"",Z=this._value.start&&this._value.end?`${this._value.start}..${this._value.end}`:"";if(C&&(C.disabled=!D,C.name=D,C.value=Z),O&&(O.disabled=!!D||!T,O.name=T,O.value=this._value.start||""),z&&(z.disabled=!!D||!H,z.name=H,z.value=this._value.end||""),h){this._scheduleInlineCalendarSync(),this._destroyOverlay();return}this._open&&this._syncOverlayState()}_onRootClick(t){const e=t.target;if(!e)return;const i=e.closest("[data-action]"),r=i==null?void 0:i.getAttribute("data-action");if(r&&!this._isInteractionBlocked()){if(r==="toggle"){this._restoreFocusEl=i,this._setOpen(!this._open,"toggle");return}if(r==="clear"){this._commit({start:null,end:null},"clear");return}if(r==="apply"){this._commit(this._pending,"apply"),this._isInlineMode()||this._setOpen(!1,"apply");return}r==="cancel"&&(this._pending={...this._value},this._isInlineMode()||this._setOpen(!1,"cancel"),this._updateHostState())}}_onRootInput(t){const e=t.target;if(!(e instanceof HTMLInputElement)||this._isInteractionBlocked()||this._isReadonly())return;if(this._rangeVariant()==="single-field"&&e.classList.contains("single")){this._draftSingle=e.value,this._inlineError="";return}e.classList.contains("start")&&(this._draftStart=e.value,this._inlineError=""),e.classList.contains("end")&&(this._draftEnd=e.value,this._inlineError="")}_commitFromDraft(t){if(this._rangeVariant()==="single-field"){const n=this._draftSingle.trim();if(!n)return this._pending={start:null,end:null},this._commit(this._pending,t),!0;const u=rt(n,this._locale());return!u.start||!u.end&&!this._allowPartial()?(this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(n,"parse"),this._updateHostState(),!1):(this._pending=this._normalizePending({start:u.start,end:u.end||null}),this._commit(this._pending,t),!0)}const i=this._draftStart?s.parseUserDateInput(this._draftStart,this._locale()):null,r=this._draftEnd?s.parseUserDateInput(this._draftEnd,this._locale()):null;return this._draftStart&&!i||this._draftEnd&&!r?(this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(`${this._draftStart} ${this._draftEnd}`.trim(),"parse"),this._updateHostState(),!1):(this._pending=this._normalizePending({start:i,end:r}),this._commit(this._pending,t),!0)}_onRootBlur(t){var n;if(this._isInteractionBlocked()||this._isReadonly())return;const e=t,i=e.target;if(!(i instanceof HTMLInputElement))return;const r=e.relatedTarget;r&&((n=this._overlay)!=null&&n.contains(r))||this._open&&!this._isInlineMode()||(i.classList.contains("single")||i.classList.contains("start")||i.classList.contains("end"))&&(i.classList.contains("single")&&(this._draftSingle=i.value),i.classList.contains("start")&&(this._draftStart=i.value),i.classList.contains("end")&&(this._draftEnd=i.value),this._commitFromDraft("blur"))}_onRootKeyDown(t){const e=t;if(!this._isInteractionBlocked()){if(e.key==="Enter"){const i=e.target;if(!this._isReadonly()&&i instanceof HTMLInputElement&&(i.classList.contains("single")||i.classList.contains("start")||i.classList.contains("end"))){e.preventDefault(),i.classList.contains("single")&&(this._draftSingle=i.value),i.classList.contains("start")&&(this._draftStart=i.value),i.classList.contains("end")&&(this._draftEnd=i.value),this._commitFromDraft("enter")&&!this._isInlineMode()&&this._setOpen(!1,"enter");return}}if(e.key==="Escape"&&this._open&&!this._isInlineMode()){e.preventDefault(),this._setOpen(!1,"escape");return}e.key==="ArrowDown"&&!this._open&&!this._isInlineMode()&&(e.preventDefault(),this._setOpen(!0,"keyboard"))}}_onDocumentPointerDown(t){if(!this._open||!this._overlay)return;const e=t.composedPath();e.includes(this)||e.includes(this._overlay)||this._setOpen(!1,"outside")}_onDocumentKeyDown(t){this._open&&t.key==="Escape"&&(t.preventDefault(),this._setOpen(!1,"escape"))}_onOverlayClick(t){const e=t.target;if(!e)return;const i=e.closest("[data-action]"),r=i==null?void 0:i.getAttribute("data-action");if(r&&!(this._isInteractionBlocked()||this._isReadonly())){if(r==="backdrop"){this._setOpen(!1,"outside");return}if(r==="clear"){this._pending={start:null,end:null},this._emitInput("clear"),this._renderOverlay();return}if(r==="cancel"){this._pending={...this._value},this._setOpen(!1,"cancel");return}if(r==="apply"){this._commit(this._pending,"apply"),this._setOpen(!1,"apply");return}if(r==="preset-today"){const n=this._todayIso();this._pending=this._normalizePending({start:n,end:n}),this._emitInput("preset-today"),this._renderOverlay();return}if(r==="preset-last7"){const n=this._todayIso();this._pending=this._normalizePending(s.computeLastDaysRange(n,7)),this._emitInput("preset-last7"),this._renderOverlay();return}if(r==="preset-month"){const n=this._todayIso();this._pending=this._normalizePending(s.computeMonthRange(n)),this._emitInput("preset-month"),this._renderOverlay()}}}_onOverlayCalendarChange(t){if(this._isInteractionBlocked()||this._isReadonly())return;const e=t.target;if(!e||e.tagName.toLowerCase()!=="ui-calendar")return;const i=t.detail;if(!(!i||i.mode!=="range")){if(this._pending=this._normalizePending({start:s.normalizeDateIso(i.start||null),end:s.normalizeDateIso(i.end||null)}),this._emitInput("calendar"),this._shouldAutoCommit()&&this._pending.start&&this._pending.end){this._commit(this._pending,"calendar"),this._isInlineMode()||this._setOpen(!1,"calendar");return}this._updateHostState()}}render(){this._hasView||(this.setContent(`
|
|
437
|
+
`}_syncCalendar(t){const e=(f,c)=>{if(c==null||c===""){t.hasAttribute(f)&&t.removeAttribute(f);return}t.getAttribute(f)!==c&&t.setAttribute(f,c)},i=N(this._pending),{min:r,max:n}=this._resolvedBounds();e("selection","range"),e("value",i),e("min",r),e("max",n),e("locale",this.getAttribute("locale")),e("translations",this.getAttribute("translations")),e("week-start",this.getAttribute("week-start"));const d=this.getAttribute("size")||"sm";e("size",d==="lg"?"md":"sm"),e("variant",this.getAttribute("variant")),e("outside-click",this.getAttribute("outside-click"));const h=t.classList.contains("inline-calendar");d==="lg"?(t.style.setProperty("--ui-calendar-day-height","1.95em"),t.style.setProperty("--ui-calendar-day-padding-block","0.2em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.26em"),t.style.setProperty("--ui-calendar-gap","0.42em"),t.style.setProperty("--ui-calendar-day-font-size","0.78em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.7em"),t.style.setProperty("--ui-calendar-title-font-size","0.88em")):(t.style.setProperty("--ui-calendar-day-height","2.4em"),t.style.setProperty("--ui-calendar-day-padding-block","0.14em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.22em"),t.style.setProperty("--ui-calendar-gap","0.34em"),t.style.setProperty("--ui-calendar-day-font-size","0.72em"),t.style.setProperty("--ui-calendar-weekday-font-size","0.64em"),t.style.setProperty("--ui-calendar-title-font-size","0.8em")),h?(t.style.setProperty("--ui-calendar-day-height",d==="lg"?"2.1em":"1.92em"),t.style.setProperty("--ui-calendar-day-padding-block","0.08em"),t.style.setProperty("--ui-calendar-day-padding-inline","0.14em"),t.style.setProperty("--ui-calendar-frame-padding","0.28em"),t.style.setProperty("--ui-calendar-week-gap","0.16em"),t.style.setProperty("--ui-calendar-control-height","1.64em"),t.style.setProperty("--ui-calendar-gap","0.2em"),t.style.setProperty("--ui-calendar-day-font-size",d==="lg"?"0.76em":"0.68em"),t.style.setProperty("--ui-calendar-weekday-font-size",d==="lg"?"0.66em":"0.58em"),t.style.setProperty("--ui-calendar-title-font-size",d==="lg"?"0.84em":"0.76em")):(t.style.removeProperty("--ui-calendar-frame-padding"),t.style.removeProperty("--ui-calendar-week-gap"),t.style.removeProperty("--ui-calendar-control-height")),this._isReadonly()?e("readonly",""):e("readonly",null),this._isInteractionBlocked()?e("disabled",""):e("disabled",null),this._isBare()?e("bare",""):e("bare",null),e("tabindex","-1"),e("aria-label",this.getAttribute("label")||this._translations().selectDateRange)}_ensureOverlayContent(t){if(!this._overlay)return;const e=t?"sheet":"popover";this._overlayMode===e&&this._overlay.querySelector(".drp-calendar")||(this._overlayMode=e,this._overlay.innerHTML=t?`<div class="sheet-wrap">${this._renderPanelInner(!0)}</div>`:`<div class="overlay">${this._renderPanelInner(!1)}</div>`)}_syncOverlayState(){if(!this._overlay)return;this._syncOverlayHostZIndex();const t=this._isMobileSheet();t&&!this._releaseScrollLock?this._releaseScrollLock=s.lockBodyScroll():!t&&this._releaseScrollLock&&(this._releaseScrollLock(),this._releaseScrollLock=null),this._ensureOverlayContent(t);const e=this._overlay.querySelector(".title"),i=this._overlay.querySelector(".panel, .sheet");this._syncDismissableLayer();const r=this._overlay.querySelector(".header"),n=this._overlay.querySelector(".presets"),u=this._overlay.querySelector(".footer"),d=this._translations();i&&(i.dataset.bare=this._isBare()?"true":"false"),r&&(r.hidden=!(this.getAttribute("label")||"").trim()&&!t);const h=this._showFooter();if(n&&(n.hidden=!h),u&&(u.hidden=!h),e){const g=(this.getAttribute("label")||"").trim();e.textContent=g,e.hidden=!g}const f=this._overlay.querySelector('[data-action="preset-today"]');f&&(f.textContent=d.today);const c=this._overlay.querySelector('[data-action="preset-last7"]');c&&(c.textContent=d.last7Days);const y=this._overlay.querySelector('[data-action="preset-month"]');y&&(y.textContent=d.thisMonth);const S=this._overlay.querySelector('[data-action="clear"]');S&&(S.textContent=d.clear);const A=this._overlay.querySelector('[data-action="cancel"]');A&&(A.textContent=d.cancel);const _=this._overlay.querySelector('[data-action="apply"]');_&&(_.textContent=d.apply);const o=this._overlay.querySelectorAll(".action"),l=this._isInteractionBlocked()||this._isReadonly();o.forEach(g=>{g.disabled=l});const a=this._overlay.querySelector(".drp-calendar");a&&(this._syncCalendar(a),this._open&&!this._overlayFocusedOnOpen&&(this._overlayFocusedOnOpen=!0,requestAnimationFrame(()=>{if(!(!this._open||!this._overlay))try{a.focus({preventScroll:!0})}catch{}}))),t||this._schedulePosition.run()}_renderOverlay(){this._syncOverlayState()}_renderInlineCalendar(){const t=this.root.querySelector(".inline-calendar");t&&this._syncCalendar(t)}_scheduleInlineCalendarSync(){const t=()=>{!this.isConnected||!this._hasView||!this._isInlineMode()||this._renderInlineCalendar()};t(),this._inlineCalendarFramePending||(this._inlineCalendarFramePending=!0,requestAnimationFrame(()=>{this._inlineCalendarFramePending=!1,t()})),!this._inlineCalendarUpgradePending&&typeof customElements<"u"&&!customElements.get("ui-calendar")&&(this._inlineCalendarUpgradePending=!0,customElements.whenDefined("ui-calendar").then(()=>{this._inlineCalendarUpgradePending=!1,requestAnimationFrame(()=>{t()})}))}_updateHostState(){if(!this._hasView)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"",i=this.getAttribute("error")||"",r=this._inlineError||i,n=this._translations(),u=r?"error":this._state(),d=this._rangeVariant(),h=this._isInlineMode(),f=!!(this._value.start||this._value.end||this._pending.start||this._pending.end),c=this._isInteractionBlocked(),y=this.root.querySelector(".label"),S=this.root.querySelector(".label-text"),A=this.root.querySelector(".required"),_=this.root.querySelector(".fields"),o=this.root.querySelector(".single"),l=this.root.querySelector(".start"),a=this.root.querySelector(".end"),g=this.root.querySelector(".sep"),w=this.root.querySelector('.btn[data-action="clear"]'),v=this.root.querySelector('.btn[data-action="toggle"]'),x=this.root.querySelector(".hint"),k=this.root.querySelector(".error"),m=this.root.querySelector(".inline-panel"),L=this.root.querySelector(".inline-panel .presets"),q=this.root.querySelector(".inline-panel .footer"),C=this.root.querySelector(".hidden-range"),O=this.root.querySelector(".hidden-start"),z=this.root.querySelector(".hidden-end"),j=this.root.querySelectorAll(".inline-panel .action");y&&(y.hidden=!t,y.id=this._labelId,y.setAttribute("for",d==="single-field"?this._singleId:this._startId)),S&&(S.textContent=t),A&&(A.hidden=!this.hasAttribute("required")),_&&(_.dataset.single=d==="single-field"?"true":"false",_.dataset.invalid=r?"true":"false",_.dataset.open=this._open&&!h?"true":"false",_.dataset.state=u,_.setAttribute("aria-disabled",c?"true":"false")),o&&(o.value!==this._draftSingle&&(o.value=this._draftSingle),o.id=this._singleId,o.hidden=d!=="single-field",o.readOnly=this._isReadonly()||c,o.disabled=c,o.required=this.hasAttribute("required"),o.placeholder=n.startEnd,o.autocomplete="off",o.setAttribute("role","combobox"),o.setAttribute("aria-haspopup","dialog"),o.setAttribute("aria-controls",this._panelId),o.setAttribute("aria-expanded",h?"false":String(this._open)),o.setAttribute("aria-invalid",r?"true":"false"),t?o.setAttribute("aria-labelledby",this._labelId):o.removeAttribute("aria-labelledby")),l&&(l.value!==this._draftStart&&(l.value=this._draftStart),l.id=this._startId,l.hidden=d==="single-field",l.readOnly=this._isReadonly()||c,l.disabled=c,l.required=this.hasAttribute("required"),l.placeholder=n.startDate,l.autocomplete="off",l.setAttribute("role","combobox"),l.setAttribute("aria-haspopup","dialog"),l.setAttribute("aria-controls",this._panelId),l.setAttribute("aria-expanded",h?"false":String(this._open)),l.setAttribute("aria-invalid",r?"true":"false"),t?l.setAttribute("aria-labelledby",this._labelId):l.removeAttribute("aria-labelledby")),a&&(a.value!==this._draftEnd&&(a.value=this._draftEnd),a.id=this._endId,a.hidden=d==="single-field",a.readOnly=this._isReadonly()||c,a.disabled=c,a.required=this.hasAttribute("required"),a.placeholder=n.endDate,a.autocomplete="off",a.setAttribute("role","combobox"),a.setAttribute("aria-haspopup","dialog"),a.setAttribute("aria-controls",this._panelId),a.setAttribute("aria-expanded",h?"false":String(this._open)),a.setAttribute("aria-invalid",r?"true":"false"),t?a.setAttribute("aria-labelledby",this._labelId):a.removeAttribute("aria-labelledby")),g&&(g.hidden=d==="single-field"),w&&(w.hidden=!(this._clearable()&&f),w.disabled=c,w.setAttribute("aria-label",n.clearDateRange)),v&&(v.hidden=h,v.disabled=c,v.setAttribute("aria-expanded",h?"false":String(this._open)),v.setAttribute("aria-controls",this._panelId),v.setAttribute("aria-label",n.toggleCalendar)),x&&(x.id=this._hintId,x.hidden=!e,x.textContent=e),k&&(k.id=this._errorId,k.hidden=!r,k.textContent=r);const P=[];e&&x&&!x.hidden&&P.push(this._hintId),r&&P.push(this._errorId);const I=P.join(" ");o&&(I?o.setAttribute("aria-describedby",I):o.removeAttribute("aria-describedby")),l&&(I?l.setAttribute("aria-describedby",I):l.removeAttribute("aria-describedby")),a&&(I?a.setAttribute("aria-describedby",I):a.removeAttribute("aria-describedby")),m&&(m.hidden=!h,m.id=this._panelId,m.dataset.bare=this._isBare()?"true":"false",m.setAttribute("role","dialog"),m.setAttribute("aria-modal","false"),m.setAttribute("aria-label",t||n.selectDateRange));const E=this._showFooter();L&&(L.hidden=!E),q&&(q.hidden=!E),j.forEach(W=>{W.disabled=c||this._isReadonly()});const R=this.root.querySelector('.inline-panel [data-action="preset-today"]');R&&(R.textContent=n.today);const $=this.root.querySelector('.inline-panel [data-action="preset-last7"]');$&&($.textContent=n.last7Days);const M=this.root.querySelector('.inline-panel [data-action="preset-month"]');M&&(M.textContent=n.thisMonth);const F=this.root.querySelector('.inline-panel [data-action="clear"]');F&&(F.textContent=n.clear);const V=this.root.querySelector('.inline-panel [data-action="apply"]');V&&(V.textContent=n.apply);const D=this.getAttribute("name")||"",T=this.getAttribute("name-start")||"",H=this.getAttribute("name-end")||"",Z=this._value.start&&this._value.end?`${this._value.start}..${this._value.end}`:"";if(C&&(C.disabled=!D,C.name=D,C.value=Z),O&&(O.disabled=!!D||!T,O.name=T,O.value=this._value.start||""),z&&(z.disabled=!!D||!H,z.name=H,z.value=this._value.end||""),h){this._scheduleInlineCalendarSync(),this._destroyOverlay();return}this._open&&this._syncOverlayState()}_onRootClick(t){const e=t.target;if(!e)return;const i=e.closest("[data-action]"),r=i?.getAttribute("data-action");if(r&&!this._isInteractionBlocked()){if(r==="toggle"){this._restoreFocusEl=i,this._setOpen(!this._open,"toggle");return}if(r==="clear"){this._commit({start:null,end:null},"clear");return}if(r==="apply"){this._commit(this._pending,"apply"),this._isInlineMode()||this._setOpen(!1,"apply");return}r==="cancel"&&(this._pending={...this._value},this._isInlineMode()||this._setOpen(!1,"cancel"),this._updateHostState())}}_onRootInput(t){const e=t.target;if(!(e instanceof HTMLInputElement)||this._isInteractionBlocked()||this._isReadonly())return;if(this._rangeVariant()==="single-field"&&e.classList.contains("single")){this._draftSingle=e.value,this._inlineError="";return}e.classList.contains("start")&&(this._draftStart=e.value,this._inlineError=""),e.classList.contains("end")&&(this._draftEnd=e.value,this._inlineError="")}_commitFromDraft(t){if(this._rangeVariant()==="single-field"){const n=this._draftSingle.trim();if(!n)return this._pending={start:null,end:null},this._commit(this._pending,t),!0;const u=rt(n,this._locale());return!u.start||!u.end&&!this._allowPartial()?(this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(n,"parse"),this._updateHostState(),!1):(this._pending=this._normalizePending({start:u.start,end:u.end||null}),this._commit(this._pending,t),!0)}const i=this._draftStart?s.parseUserDateInput(this._draftStart,this._locale()):null,r=this._draftEnd?s.parseUserDateInput(this._draftEnd,this._locale()):null;return this._draftStart&&!i||this._draftEnd&&!r?(this._inlineError=this.getAttribute("error")||this._translations().invalidRange,this._emitInvalid(`${this._draftStart} ${this._draftEnd}`.trim(),"parse"),this._updateHostState(),!1):(this._pending=this._normalizePending({start:i,end:r}),this._commit(this._pending,t),!0)}_onRootBlur(t){if(this._isInteractionBlocked()||this._isReadonly())return;const e=t,i=e.target;if(!(i instanceof HTMLInputElement))return;const r=e.relatedTarget;r&&this._overlay?.contains(r)||this._open&&!this._isInlineMode()||(i.classList.contains("single")||i.classList.contains("start")||i.classList.contains("end"))&&(i.classList.contains("single")&&(this._draftSingle=i.value),i.classList.contains("start")&&(this._draftStart=i.value),i.classList.contains("end")&&(this._draftEnd=i.value),this._commitFromDraft("blur"))}_onRootKeyDown(t){const e=t;if(!this._isInteractionBlocked()){if(e.key==="Enter"){const i=e.target;if(!this._isReadonly()&&i instanceof HTMLInputElement&&(i.classList.contains("single")||i.classList.contains("start")||i.classList.contains("end"))){e.preventDefault(),i.classList.contains("single")&&(this._draftSingle=i.value),i.classList.contains("start")&&(this._draftStart=i.value),i.classList.contains("end")&&(this._draftEnd=i.value),this._commitFromDraft("enter")&&!this._isInlineMode()&&this._setOpen(!1,"enter");return}}if(e.key==="Escape"&&this._open&&!this._isInlineMode()){e.preventDefault(),this._setOpen(!1,"escape");return}e.key==="ArrowDown"&&!this._open&&!this._isInlineMode()&&(e.preventDefault(),this._setOpen(!0,"keyboard"))}}_onDocumentPointerDown(t){if(!this._open||!this._overlay)return;const e=t.composedPath();e.includes(this)||e.includes(this._overlay)||this._setOpen(!1,"outside")}_onDocumentKeyDown(t){this._open&&t.key==="Escape"&&(t.preventDefault(),this._setOpen(!1,"escape"))}_onOverlayClick(t){const e=t.target;if(!e)return;const r=e.closest("[data-action]")?.getAttribute("data-action");if(r&&!(this._isInteractionBlocked()||this._isReadonly())){if(r==="backdrop"){this._setOpen(!1,"outside");return}if(r==="clear"){this._pending={start:null,end:null},this._emitInput("clear"),this._renderOverlay();return}if(r==="cancel"){this._pending={...this._value},this._setOpen(!1,"cancel");return}if(r==="apply"){this._commit(this._pending,"apply"),this._setOpen(!1,"apply");return}if(r==="preset-today"){const n=this._todayIso();this._pending=this._normalizePending({start:n,end:n}),this._emitInput("preset-today"),this._renderOverlay();return}if(r==="preset-last7"){const n=this._todayIso();this._pending=this._normalizePending(s.computeLastDaysRange(n,7)),this._emitInput("preset-last7"),this._renderOverlay();return}if(r==="preset-month"){const n=this._todayIso();this._pending=this._normalizePending(s.computeMonthRange(n)),this._emitInput("preset-month"),this._renderOverlay()}}}_onOverlayCalendarChange(t){if(this._isInteractionBlocked()||this._isReadonly())return;const e=t.target;if(!e||e.tagName.toLowerCase()!=="ui-calendar")return;const i=t.detail;if(!(!i||i.mode!=="range")){if(this._pending=this._normalizePending({start:s.normalizeDateIso(i.start||null),end:s.normalizeDateIso(i.end||null)}),this._emitInput("calendar"),this._shouldAutoCommit()&&this._pending.start&&this._pending.end){this._commit(this._pending,"calendar"),this._isInlineMode()||this._setOpen(!1,"calendar");return}this._updateHostState()}}render(){this._hasView||(this.setContent(`
|
|
438
438
|
<style>${et}</style>
|
|
439
439
|
<div class="root">
|
|
440
440
|
<label class="label" part="label" id="${this._labelId}">
|