@mhmo91/schmancy 0.8.6 → 0.9.2
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/README.md +110 -1
- package/ai/animation.md +64 -0
- package/ai/area.md +35 -256
- package/ai/autocomplete.md +44 -162
- package/ai/avatar.md +47 -178
- package/ai/badge.md +41 -108
- package/ai/busy.md +25 -184
- package/ai/button.md +52 -150
- package/ai/card.md +42 -215
- package/ai/checkbox.md +32 -135
- package/ai/chips.md +73 -383
- package/ai/code-highlight.md +33 -226
- package/ai/content-drawer.md +65 -232
- package/ai/date-range.md +43 -198
- package/ai/details.md +48 -453
- package/ai/dialog.md +55 -164
- package/ai/directives.md +258 -405
- package/ai/divider.md +15 -137
- package/ai/dropdown.md +44 -235
- package/ai/form.md +41 -137
- package/ai/icons.md +31 -235
- package/ai/input.md +50 -210
- package/ai/lightbox.md +25 -370
- package/ai/list.md +51 -130
- package/ai/menu.md +25 -134
- package/ai/mixins.md +70 -0
- package/ai/nav-drawer.md +30 -184
- package/ai/navigation-bar.md +27 -184
- package/ai/navigation-rail.md +62 -630
- package/ai/notification.md +49 -183
- package/ai/progress.md +26 -65
- package/ai/radio-group.md +45 -189
- package/ai/select.md +49 -209
- package/ai/sheet.md +74 -506
- package/ai/steps.md +30 -392
- package/ai/store.md +60 -247
- package/ai/surface.md +58 -245
- package/ai/table.md +56 -330
- package/ai/tabs.md +31 -176
- package/ai/textarea.md +48 -232
- package/ai/theme.md +40 -1089
- package/ai/tooltip.md +35 -146
- package/ai/tree.md +45 -271
- package/ai/typography.md +43 -296
- package/custom-elements.json +10955 -0
- package/dist/ai/animation.md +64 -0
- package/dist/ai/area.md +35 -256
- package/dist/ai/autocomplete.md +44 -162
- package/dist/ai/avatar.md +47 -178
- package/dist/ai/badge.md +41 -108
- package/dist/ai/busy.md +25 -184
- package/dist/ai/button.md +52 -150
- package/dist/ai/card.md +42 -215
- package/dist/ai/checkbox.md +32 -135
- package/dist/ai/chips.md +73 -383
- package/dist/ai/code-highlight.md +33 -226
- package/dist/ai/content-drawer.md +65 -232
- package/dist/ai/date-range.md +43 -198
- package/dist/ai/details.md +48 -453
- package/dist/ai/dialog.md +55 -164
- package/dist/ai/directives.md +258 -405
- package/dist/ai/divider.md +15 -137
- package/dist/ai/dropdown.md +44 -235
- package/dist/ai/form.md +41 -137
- package/dist/ai/icons.md +31 -235
- package/dist/ai/input.md +50 -210
- package/dist/ai/lightbox.md +25 -370
- package/dist/ai/list.md +51 -130
- package/dist/ai/menu.md +25 -134
- package/dist/ai/mixins.md +70 -0
- package/dist/ai/nav-drawer.md +30 -184
- package/dist/ai/navigation-bar.md +27 -184
- package/dist/ai/navigation-rail.md +62 -630
- package/dist/ai/notification.md +49 -183
- package/dist/ai/progress.md +26 -65
- package/dist/ai/radio-group.md +45 -189
- package/dist/ai/select.md +49 -209
- package/dist/ai/sheet.md +74 -506
- package/dist/ai/steps.md +30 -392
- package/dist/ai/store.md +60 -247
- package/dist/ai/surface.md +58 -245
- package/dist/ai/table.md +56 -330
- package/dist/ai/tabs.md +31 -176
- package/dist/ai/textarea.md +48 -232
- package/dist/ai/theme.md +40 -1089
- package/dist/ai/tooltip.md +35 -146
- package/dist/ai/tree.md +45 -271
- package/dist/ai/typography.md +43 -296
- package/dist/animation-BK-8BwY8.js +173 -0
- package/dist/animation-BK-8BwY8.js.map +1 -0
- package/dist/animation-CO_Csq84.cjs +16 -0
- package/dist/animation-CO_Csq84.cjs.map +1 -0
- package/dist/area-1h9xEpTc.cjs +12 -0
- package/dist/area-1h9xEpTc.cjs.map +1 -0
- package/dist/area-DbBcfm5p.js +590 -0
- package/dist/area-DbBcfm5p.js.map +1 -0
- package/dist/area.cjs +1 -2
- package/dist/area.js +2 -29
- package/dist/audio-DtYYgzYD.cjs +1 -0
- package/dist/audio-DtYYgzYD.cjs.map +1 -0
- package/dist/audio-kz8UgPTO.js +335 -0
- package/dist/audio-kz8UgPTO.js.map +1 -0
- package/dist/audio.cjs +1 -2
- package/dist/audio.js +3 -9
- package/dist/autocomplete-DDVsegep.js +378 -0
- package/dist/autocomplete-DDVsegep.js.map +1 -0
- package/dist/autocomplete-OE70CcYP.cjs +111 -0
- package/dist/autocomplete-OE70CcYP.cjs.map +1 -0
- package/dist/autocomplete.cjs +1 -2
- package/dist/autocomplete.js +1 -2
- package/dist/badge.cjs +1 -2
- package/dist/badge.js +2 -6
- package/dist/boat-Cf1oJ0ka.cjs +80 -0
- package/dist/boat-Cf1oJ0ka.cjs.map +1 -0
- package/dist/boat-T8Ov4-yA.js +347 -0
- package/dist/boat-T8Ov4-yA.js.map +1 -0
- package/dist/boat.cjs +1 -2
- package/dist/boat.js +2 -5
- package/dist/busy-BD6D5P-l.js +167 -0
- package/dist/busy-BD6D5P-l.js.map +1 -0
- package/dist/busy-DF9wztWL.cjs +134 -0
- package/dist/busy-DF9wztWL.cjs.map +1 -0
- package/dist/busy.cjs +1 -2
- package/dist/busy.js +1 -2
- package/dist/button.cjs +113 -2
- package/dist/button.cjs.map +1 -1
- package/dist/button.js +398 -5
- package/dist/button.js.map +1 -1
- package/dist/card-Csvu8UJ9.cjs +177 -0
- package/dist/card-Csvu8UJ9.cjs.map +1 -0
- package/dist/card-DM_miKMd.js +284 -0
- package/dist/card-DM_miKMd.js.map +1 -0
- package/dist/card.cjs +1 -2
- package/dist/card.js +1 -2
- package/dist/charts.cjs +112 -2
- package/dist/charts.cjs.map +1 -1
- package/dist/charts.js +368 -8
- package/dist/charts.js.map +1 -1
- package/dist/checkbox-BgGtMaMR.js +610 -0
- package/dist/checkbox-BgGtMaMR.js.map +1 -0
- package/dist/checkbox-sJujc_ga.cjs +39 -0
- package/dist/checkbox-sJujc_ga.cjs.map +1 -0
- package/dist/checkbox.cjs +1 -2
- package/dist/checkbox.js +2 -5
- package/dist/chips-BZaH4wez.js +645 -0
- package/dist/chips-BZaH4wez.js.map +1 -0
- package/dist/chips-D_e6wijp.cjs +253 -0
- package/dist/chips-D_e6wijp.cjs.map +1 -0
- package/dist/chips.cjs +1 -2
- package/dist/chips.js +3 -10
- package/dist/chunk-BCfY8kxB.cjs +1 -0
- package/dist/chunk-C_1VqBVD.js +11 -0
- package/dist/code-highlight-DlhERv_O.cjs +190 -0
- package/dist/code-highlight-DlhERv_O.cjs.map +1 -0
- package/dist/code-highlight-Q3cc6ukq.js +290 -0
- package/dist/code-highlight-Q3cc6ukq.js.map +1 -0
- package/dist/code-highlight.cjs +1 -2
- package/dist/code-highlight.js +2 -7
- package/dist/components-CRhkB3V2.js +730 -0
- package/dist/components-CRhkB3V2.js.map +1 -0
- package/dist/components-DnlEYYDs.cjs +73 -0
- package/dist/components-DnlEYYDs.cjs.map +1 -0
- package/dist/components.cjs +1 -2
- package/dist/components.js +2 -5
- package/dist/connectivity.cjs +59 -0
- package/dist/connectivity.cjs.map +1 -0
- package/dist/connectivity.js +86 -0
- package/dist/connectivity.js.map +1 -0
- package/dist/content-drawer.cjs +1 -2
- package/dist/content-drawer.js +2 -13
- package/dist/cursor-glow-Ah7VXSj7.js +46 -0
- package/dist/cursor-glow-Ah7VXSj7.js.map +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs.map +1 -0
- package/dist/date-range-C0IYnvHF.js +946 -0
- package/dist/date-range-C0IYnvHF.js.map +1 -0
- package/dist/date-range-cymbTDnl.cjs +131 -0
- package/dist/date-range-cymbTDnl.cjs.map +1 -0
- package/dist/date-range-inline-0ENN4Plz.js +267 -0
- package/dist/date-range-inline-0ENN4Plz.js.map +1 -0
- package/dist/date-range-inline-Cfwt-ReH.cjs +43 -0
- package/dist/date-range-inline-Cfwt-ReH.cjs.map +1 -0
- package/dist/date-range-inline.cjs +1 -2
- package/dist/date-range-inline.js +2 -5
- package/dist/date-range.cjs +1 -2
- package/dist/date-range.js +2 -6
- package/dist/delay-D1dVP93u.js +346 -0
- package/dist/delay-D1dVP93u.js.map +1 -0
- package/dist/delay-D6mQLUp-.cjs +9 -0
- package/dist/delay-D6mQLUp-.cjs.map +1 -0
- package/dist/delay.cjs +1 -2
- package/dist/delay.js +2 -6
- package/dist/details-CPT_Mi4e.cjs +168 -0
- package/dist/details-CPT_Mi4e.cjs.map +1 -0
- package/dist/details-Cv4OOrVW.js +293 -0
- package/dist/details-Cv4OOrVW.js.map +1 -0
- package/dist/details.cjs +1 -2
- package/dist/details.js +2 -5
- package/dist/dialog-service-NZEvyEK-.js +193 -0
- package/dist/dialog-service-NZEvyEK-.js.map +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs.map +1 -0
- package/dist/dialog.cjs +82 -2
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.js +396 -9
- package/dist/dialog.js.map +1 -1
- package/dist/directives.cjs +108 -2
- package/dist/directives.cjs.map +1 -1
- package/dist/directives.js +1362 -14
- package/dist/directives.js.map +1 -1
- package/dist/discovery.cjs +1 -2
- package/dist/discovery.cjs.map +1 -1
- package/dist/discovery.js +61 -6
- package/dist/discovery.js.map +1 -1
- package/dist/divider-DDC-kND3.js +87 -0
- package/dist/divider-DDC-kND3.js.map +1 -0
- package/dist/divider-nZ_2to2N.cjs +57 -0
- package/dist/divider-nZ_2to2N.cjs.map +1 -0
- package/dist/divider.cjs +1 -2
- package/dist/divider.js +1 -2
- package/dist/dropdown.cjs +57 -2
- package/dist/dropdown.cjs.map +1 -1
- package/dist/dropdown.js +160 -5
- package/dist/dropdown.js.map +1 -1
- package/dist/expand-Bp3N8CcL.js +336 -0
- package/dist/expand-Bp3N8CcL.js.map +1 -0
- package/dist/expand-Crdts9q_.cjs +141 -0
- package/dist/expand-Crdts9q_.cjs.map +1 -0
- package/dist/expand.cjs +1 -0
- package/dist/expand.js +2 -0
- package/dist/extra-B0IZCg0t.cjs +31 -0
- package/dist/extra-B0IZCg0t.cjs.map +1 -0
- package/dist/extra-DupwhQhC.js +3435 -0
- package/dist/extra-DupwhQhC.js.map +1 -0
- package/dist/extra.cjs +1 -2
- package/dist/extra.js +2 -6
- package/dist/float-CQoJ_oSB.cjs +1 -0
- package/dist/float-CQoJ_oSB.cjs.map +1 -0
- package/dist/float-Dqdc1_S5.js +5 -0
- package/dist/float-Dqdc1_S5.js.map +1 -0
- package/dist/float.cjs +1 -0
- package/dist/float.js +2 -0
- package/dist/flow-Bbwn6dRN.cjs +1 -0
- package/dist/flow-Bbwn6dRN.cjs.map +1 -0
- package/dist/flow-CUj0fDT_.js +386 -0
- package/dist/flow-CUj0fDT_.js.map +1 -0
- package/dist/form-CW5XNuTg.js +270 -0
- package/dist/form-CW5XNuTg.js.map +1 -0
- package/dist/form-CvoLqMY7.cjs +1 -0
- package/dist/form-CvoLqMY7.cjs.map +1 -0
- package/dist/form.cjs +1 -2
- package/dist/form.js +1 -2
- package/dist/hashContent-DYM21p6t.js +6 -0
- package/dist/hashContent-DYM21p6t.js.map +1 -0
- package/dist/hashContent-DaeGmY-p.cjs +1 -0
- package/dist/hashContent-DaeGmY-p.cjs.map +1 -0
- package/dist/icons-BLQHEbIk.cjs +52 -0
- package/dist/icons-BLQHEbIk.cjs.map +1 -0
- package/dist/icons-Cpfdb7sA.js +161 -0
- package/dist/icons-Cpfdb7sA.js.map +1 -0
- package/dist/icons.cjs +1 -2
- package/dist/icons.js +1 -2
- package/dist/iframe-DG6HVYdy.js +44 -0
- package/dist/iframe-DG6HVYdy.js.map +1 -0
- package/dist/iframe-sJGXBbxT.cjs +24 -0
- package/dist/iframe-sJGXBbxT.cjs.map +1 -0
- package/dist/iframe.cjs +1 -0
- package/dist/iframe.js +2 -0
- package/dist/index.cjs +1 -2
- package/dist/index.js +69 -285
- package/dist/input-BevxycIt.js +364 -0
- package/dist/input-BevxycIt.js.map +1 -0
- package/dist/input-DGTdmp1Q.cjs +51 -0
- package/dist/input-DGTdmp1Q.cjs.map +1 -0
- package/dist/input-chip-BWS-SFU4.js +301 -0
- package/dist/input-chip-BWS-SFU4.js.map +1 -0
- package/dist/input-chip-CKVtjInb.cjs +146 -0
- package/dist/input-chip-CKVtjInb.cjs.map +1 -0
- package/dist/input.cjs +1 -2
- package/dist/input.js +2 -6
- package/dist/intersection-BPLpqYEd.js +12 -0
- package/dist/intersection-BPLpqYEd.js.map +1 -0
- package/dist/intersection-CZpaIHeT.cjs +1 -0
- package/dist/intersection-CZpaIHeT.cjs.map +1 -0
- package/dist/json.cjs +11 -2
- package/dist/json.cjs.map +1 -1
- package/dist/json.js +40 -4
- package/dist/json.js.map +1 -1
- package/dist/layout-4C-6_cre.cjs +1 -0
- package/dist/layout-4C-6_cre.cjs.map +1 -0
- package/dist/layout-CQdd8UCr.cjs +17 -0
- package/dist/layout-CQdd8UCr.cjs.map +1 -0
- package/dist/layout-DxLjlDfr.js +267 -0
- package/dist/layout-DxLjlDfr.js.map +1 -0
- package/dist/layout-yxSlLybo.js +94 -0
- package/dist/layout-yxSlLybo.js.map +1 -0
- package/dist/layout.cjs +1 -2
- package/dist/layout.js +3 -9
- package/dist/lightbox-Bjc55lHH.js +678 -0
- package/dist/lightbox-Bjc55lHH.js.map +1 -0
- package/dist/lightbox-C_863_XU.cjs +202 -0
- package/dist/lightbox-C_863_XU.cjs.map +1 -0
- package/dist/lightbox.cjs +1 -2
- package/dist/lightbox.js +2 -8
- package/dist/list-BAqhlzZd.js +105 -0
- package/dist/list-BAqhlzZd.js.map +1 -0
- package/dist/list-CaXzdN9_.cjs +40 -0
- package/dist/list-CaXzdN9_.cjs.map +1 -0
- package/dist/list.cjs +1 -2
- package/dist/list.js +2 -7
- package/dist/litElement.mixin-DN6X9_wD.cjs +1 -0
- package/dist/litElement.mixin-DN6X9_wD.cjs.map +1 -0
- package/dist/litElement.mixin-Dktub0ri.js +12 -0
- package/dist/litElement.mixin-Dktub0ri.js.map +1 -0
- package/dist/magnetic-BZGFxAWG.js +47 -0
- package/dist/magnetic-BZGFxAWG.js.map +1 -0
- package/dist/magnetic-Dux4QwO4.cjs +1 -0
- package/dist/magnetic-Dux4QwO4.cjs.map +1 -0
- package/dist/mailbox-BvsLXpvy.cjs +1142 -0
- package/dist/mailbox-BvsLXpvy.cjs.map +1 -0
- package/dist/mailbox-DuMUH4f3.js +1584 -0
- package/dist/mailbox-DuMUH4f3.js.map +1 -0
- package/dist/mailbox.cjs +1 -2
- package/dist/mailbox.js +2 -9
- package/dist/map-C2Msv9TQ.cjs +80 -0
- package/dist/map-C2Msv9TQ.cjs.map +1 -0
- package/dist/map-DkIy1ph7.js +205 -0
- package/dist/map-DkIy1ph7.js.map +1 -0
- package/dist/map.cjs +1 -2
- package/dist/map.js +2 -5
- package/dist/menu-DEeDKW5U.js +51 -0
- package/dist/menu-DEeDKW5U.js.map +1 -0
- package/dist/menu-Mm71lv9k.cjs +23 -0
- package/dist/menu-Mm71lv9k.cjs.map +1 -0
- package/dist/menu.cjs +1 -2
- package/dist/menu.js +1 -2
- package/dist/mixins.cjs +1 -2
- package/dist/mixins.cjs.map +1 -1
- package/dist/mixins.js +59 -12
- package/dist/mixins.js.map +1 -1
- package/dist/nav-drawer.cjs +1 -2
- package/dist/nav-drawer.js +2 -12
- package/dist/navigation-bar.cjs +1 -2
- package/dist/navigation-bar.js +2 -6
- package/dist/navigation-rail.cjs +71 -2
- package/dist/navigation-rail.cjs.map +1 -1
- package/dist/navigation-rail.js +363 -5
- package/dist/navigation-rail.js.map +1 -1
- package/dist/notification-K-ug8cKk.js +304 -0
- package/dist/notification-K-ug8cKk.js.map +1 -0
- package/dist/notification-cTgXEDZ0.cjs +23 -0
- package/dist/notification-cTgXEDZ0.cjs.map +1 -0
- package/dist/notification.cjs +1 -2
- package/dist/notification.js +2 -9
- package/dist/option-5rEOmtAm.cjs +43 -0
- package/dist/option-5rEOmtAm.cjs.map +1 -0
- package/dist/option-TFSKvSjT.js +97 -0
- package/dist/option-TFSKvSjT.js.map +1 -0
- package/dist/option.cjs +1 -2
- package/dist/option.js +1 -2
- package/dist/overlay-stack-DQey9Qph.cjs +1 -0
- package/dist/overlay-stack-DQey9Qph.cjs.map +1 -0
- package/dist/overlay-stack-DT1SdaGW.js +39 -0
- package/dist/overlay-stack-DT1SdaGW.js.map +1 -0
- package/dist/page.cjs +20 -2
- package/dist/page.cjs.map +1 -1
- package/dist/page.js +71 -4
- package/dist/page.js.map +1 -1
- package/dist/progress-Cta3nM-f.js +128 -0
- package/dist/progress-Cta3nM-f.js.map +1 -0
- package/dist/progress-iu0AMbSg.cjs +51 -0
- package/dist/progress-iu0AMbSg.cjs.map +1 -0
- package/dist/progress.cjs +1 -2
- package/dist/progress.js +1 -2
- package/dist/provide-BEyyKlDM.cjs +1 -0
- package/dist/provide-BEyyKlDM.cjs.map +1 -0
- package/dist/provide-D69zybs5.js +107 -0
- package/dist/provide-D69zybs5.js.map +1 -0
- package/dist/qr-scanner.cjs +35 -2
- package/dist/qr-scanner.cjs.map +1 -1
- package/dist/qr-scanner.js +119 -4
- package/dist/qr-scanner.js.map +1 -1
- package/dist/radio-group-BjSWmYJC.js +105 -0
- package/dist/radio-group-BjSWmYJC.js.map +1 -0
- package/dist/radio-group-DKPN0T50.cjs +40 -0
- package/dist/radio-group-DKPN0T50.cjs.map +1 -0
- package/dist/radio-group.cjs +1 -2
- package/dist/radio-group.js +2 -6
- package/dist/range.cjs +62 -0
- package/dist/range.cjs.map +1 -0
- package/dist/range.js +85 -0
- package/dist/range.js.map +1 -0
- package/dist/reduced-motion-D-L12p7G.js +7 -0
- package/dist/reduced-motion-D-L12p7G.js.map +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs.map +1 -0
- package/dist/rxjs-utils-BSjmI9-Q.js +32 -0
- package/dist/rxjs-utils-BSjmI9-Q.js.map +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs.map +1 -0
- package/dist/rxjs-utils.cjs +1 -2
- package/dist/rxjs-utils.js +2 -14
- package/dist/scroll-mayaGGpE.cjs +26 -0
- package/dist/scroll-mayaGGpE.cjs.map +1 -0
- package/dist/scroll-tG1vaRFO.js +112 -0
- package/dist/scroll-tG1vaRFO.js.map +1 -0
- package/dist/search-C4dFHYbX.js +91 -0
- package/dist/search-C4dFHYbX.js.map +1 -0
- package/dist/search-Ds8tt7Et.cjs +1 -0
- package/dist/search-Ds8tt7Et.cjs.map +1 -0
- package/dist/select-C4YK5Arj.cjs +56 -0
- package/dist/select-C4YK5Arj.cjs.map +1 -0
- package/dist/select-CepryGGP.js +305 -0
- package/dist/select-CepryGGP.js.map +1 -0
- package/dist/select.cjs +1 -2
- package/dist/select.js +2 -5
- package/dist/sheet-Cy4C2-kG.cjs +35 -0
- package/dist/sheet-Cy4C2-kG.cjs.map +1 -0
- package/dist/sheet-D2uT95S1.js +168 -0
- package/dist/sheet-D2uT95S1.js.map +1 -0
- package/dist/sheet.cjs +1 -2
- package/dist/sheet.js +3 -7
- package/dist/sheet.service-Dv5Hwj3k.cjs +1 -0
- package/dist/sheet.service-Dv5Hwj3k.cjs.map +1 -0
- package/dist/sheet.service-Os8KJGSE.js +86 -0
- package/dist/sheet.service-Os8KJGSE.js.map +1 -0
- package/dist/slider.cjs +82 -2
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.js +143 -5
- package/dist/slider.js.map +1 -1
- package/dist/sound.service-Bu3EQLv2.cjs +1 -0
- package/dist/sound.service-Bu3EQLv2.cjs.map +1 -0
- package/dist/sound.service-m3BrSfuH.js +2353 -0
- package/dist/sound.service-m3BrSfuH.js.map +1 -0
- package/dist/src-BLcmKlCH.js +1244 -0
- package/dist/src-BLcmKlCH.js.map +1 -0
- package/dist/src-tfU0akqI.cjs +269 -0
- package/dist/src-tfU0akqI.cjs.map +1 -0
- package/dist/steps.cjs +70 -2
- package/dist/steps.cjs.map +1 -1
- package/dist/steps.js +178 -7
- package/dist/steps.js.map +1 -1
- package/dist/store-CorvD3bT.cjs +1 -0
- package/dist/store-CorvD3bT.cjs.map +1 -0
- package/dist/store-DYqDLAvT.js +1654 -0
- package/dist/store-DYqDLAvT.js.map +1 -0
- package/dist/store.cjs +1 -2
- package/dist/store.js +2 -47
- package/dist/surface-CiiIYeJN.cjs +7 -0
- package/dist/surface-CiiIYeJN.cjs.map +1 -0
- package/dist/surface-fXvRpS6s.js +21 -0
- package/dist/surface-fXvRpS6s.js.map +1 -0
- package/dist/surface.cjs +1 -2
- package/dist/surface.js +2 -6
- package/dist/surface.mixin-C4hbgyaP.cjs +297 -0
- package/dist/surface.mixin-C4hbgyaP.cjs.map +1 -0
- package/dist/surface.mixin-DBuxL5aL.js +320 -0
- package/dist/surface.mixin-DBuxL5aL.js.map +1 -0
- package/dist/table-BRVKlNjl.cjs +63 -0
- package/dist/table-BRVKlNjl.cjs.map +1 -0
- package/dist/table-BeXnwSsq.js +631 -0
- package/dist/table-BeXnwSsq.js.map +1 -0
- package/dist/table.cjs +1 -2
- package/dist/table.js +2 -6
- package/dist/tabs-CBU9Ctqm.cjs +31 -0
- package/dist/tabs-CBU9Ctqm.cjs.map +1 -0
- package/dist/tabs-y708NWQ2.js +125 -0
- package/dist/tabs-y708NWQ2.js.map +1 -0
- package/dist/tabs.cjs +1 -2
- package/dist/tabs.js +1 -2
- package/dist/tailwind.mixin-C4cx3IOr.js +225 -0
- package/dist/tailwind.mixin-C4cx3IOr.js.map +1 -0
- package/dist/tailwind.mixin-DGiyLbEi.cjs +2 -0
- package/dist/tailwind.mixin-DGiyLbEi.cjs.map +1 -0
- package/dist/teleport.cjs +1 -2
- package/dist/teleport.js +2 -8
- package/dist/textarea-BhAoJg8c.cjs +35 -0
- package/dist/textarea-BhAoJg8c.cjs.map +1 -0
- package/dist/textarea-Bl8-gQEJ.js +195 -0
- package/dist/textarea-Bl8-gQEJ.js.map +1 -0
- package/dist/textarea.cjs +1 -2
- package/dist/textarea.js +1 -2
- package/dist/theme-C-vdR-Ic.cjs +181 -0
- package/dist/theme-C-vdR-Ic.cjs.map +1 -0
- package/dist/theme-DZUpYJn-.js +4121 -0
- package/dist/theme-DZUpYJn-.js.map +1 -0
- package/dist/theme-button-CwrvpOMK.js +19 -0
- package/dist/theme-button-CwrvpOMK.js.map +1 -0
- package/dist/theme-button-Cx1iKh7G.cjs +8 -0
- package/dist/theme-button-Cx1iKh7G.cjs.map +1 -0
- package/dist/theme-button.cjs +1 -2
- package/dist/theme-button.js +1 -2
- package/dist/theme.cjs +1 -2
- package/dist/theme.events-Cv7N4Toe.js +2 -0
- package/dist/theme.events-Cv7N4Toe.js.map +1 -0
- package/dist/theme.events-DM4H5F2d.cjs +1 -0
- package/dist/theme.events-DM4H5F2d.cjs.map +1 -0
- package/dist/theme.interface-CXloMUCw.js +276 -0
- package/dist/theme.interface-CXloMUCw.js.map +1 -0
- package/dist/theme.interface-Da23QAYb.cjs +1 -0
- package/dist/theme.interface-Da23QAYb.cjs.map +1 -0
- package/dist/theme.js +6 -21
- package/dist/theme.service-C_tjlqgy.cjs +1 -0
- package/dist/theme.service-C_tjlqgy.cjs.map +1 -0
- package/dist/theme.service-D9lEas89.js +108 -0
- package/dist/theme.service-D9lEas89.js.map +1 -0
- package/dist/tooltip.cjs +6 -2
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.js +200 -5
- package/dist/tooltip.js.map +1 -1
- package/dist/tree.cjs +26 -2
- package/dist/tree.cjs.map +1 -1
- package/dist/tree.js +64 -4
- package/dist/tree.js.map +1 -1
- package/dist/tslib.es6-D7BIeDVB.cjs +1 -0
- package/dist/tslib.es6-D7BIeDVB.cjs.map +1 -0
- package/dist/tslib.es6-ErZEp3OO.js +7 -0
- package/dist/tslib.es6-ErZEp3OO.js.map +1 -0
- package/dist/types.cjs +1 -2
- package/dist/types.cjs.map +1 -1
- package/dist/types.js +4 -5
- package/dist/types.js.map +1 -1
- package/dist/typewriter-CXQIzqPV.cjs +123 -0
- package/dist/typewriter-CXQIzqPV.cjs.map +1 -0
- package/dist/typewriter-mxVw5dFn.js +700 -0
- package/dist/typewriter-mxVw5dFn.js.map +1 -0
- package/dist/typewriter.cjs +1 -2
- package/dist/typewriter.js +2 -5
- package/dist/typography.cjs +282 -2
- package/dist/typography.cjs.map +1 -1
- package/dist/typography.js +353 -4
- package/dist/typography.js.map +1 -1
- package/dist/utils-BcaKtQuA.cjs +1 -0
- package/dist/utils-BcaKtQuA.cjs.map +1 -0
- package/dist/utils-CoU7M2YS.js +259 -0
- package/dist/utils-CoU7M2YS.js.map +1 -0
- package/dist/utils.cjs +1 -2
- package/dist/utils.js +6 -9
- package/dist/window-DFMlB1Tq.cjs +59 -0
- package/dist/window-DFMlB1Tq.cjs.map +1 -0
- package/dist/window-EWYJJC_H.js +548 -0
- package/dist/window-EWYJJC_H.js.map +1 -0
- package/dist/window.cjs +1 -0
- package/dist/window.js +2 -0
- package/mixins/baseElement.ts +118 -1
- package/mixins/discovery.service.ts +162 -1
- package/mixins/formField.mixin.ts +13 -8
- package/mixins/index.ts +2 -0
- package/mixins/surface.mixin.ts +93 -0
- package/mixins/tailwind.css +331 -14
- package/package.json +32 -28
- package/src/CLAUDE.md +428 -0
- package/src/area/.excalidraw +357 -0
- package/src/area/area.component.ts +449 -0
- package/src/area/area.service.test.ts +1007 -0
- package/src/area/area.service.ts +748 -0
- package/src/area/ecrypt.ts +7 -0
- package/src/area/index.ts +7 -0
- package/src/area/lazy.ts +83 -0
- package/src/area/readme.md +338 -0
- package/src/area/route.component.ts +79 -0
- package/src/area/router-guide.md +360 -0
- package/src/area/router.types.ts +101 -0
- package/src/area/utils.ts +354 -0
- package/src/audio/emotional-sounds.ts +940 -0
- package/src/audio/index.ts +53 -0
- package/src/audio/sound.service.ts +1079 -0
- package/src/autocomplete/README.md +485 -0
- package/src/autocomplete/autocomplete.scss +24 -0
- package/src/autocomplete/autocomplete.ts +733 -0
- package/src/autocomplete/index.ts +1 -0
- package/src/avatar.ts +164 -0
- package/src/badge/badge.ts +286 -0
- package/src/badge/index.ts +1 -0
- package/src/boat/boat.ts +664 -0
- package/src/boat/index.ts +1 -0
- package/src/busy/busy.ts +39 -0
- package/src/busy/index.ts +2 -0
- package/src/busy/spinner.ts +165 -0
- package/src/button/button.ts +382 -0
- package/src/button/icon-button.ts +287 -0
- package/src/button/index.ts +2 -0
- package/src/card/actions.ts +28 -0
- package/src/card/card.ts +319 -0
- package/src/card/content.ts +24 -0
- package/src/card/index.ts +4 -0
- package/src/card/media.ts +77 -0
- package/src/charts/area-chart.ts +495 -0
- package/src/charts/index.ts +4 -0
- package/src/charts/pills.ts +350 -0
- package/src/charts/types.ts +66 -0
- package/src/charts/utils.ts +65 -0
- package/src/checkbox/checkbox.ts +122 -0
- package/src/checkbox/index.ts +1 -0
- package/src/chips/assist-chip.ts +261 -0
- package/src/chips/chips.ts +259 -0
- package/src/chips/filter-chip.ts +255 -0
- package/src/chips/index.ts +5 -0
- package/src/chips/input-chip.ts +408 -0
- package/src/chips/suggestion-chip.ts +266 -0
- package/src/code-highlight/code-highlight.ts +344 -0
- package/src/code-highlight/code-preview.ts +123 -0
- package/src/code-highlight/index.ts +3 -0
- package/src/components/form-elements/index.ts +1 -0
- package/src/components/form-elements/payment-card-form.ts +331 -0
- package/src/components/index.ts +1 -0
- package/src/connectivity/connectivity-status.ts +153 -0
- package/src/connectivity/index.ts +1 -0
- package/src/content-drawer/context.ts +13 -0
- package/src/content-drawer/drawer.service.ts +148 -0
- package/src/content-drawer/drawer.ts +183 -0
- package/src/content-drawer/index.ts +5 -0
- package/src/content-drawer/main.ts +83 -0
- package/src/content-drawer/readme.md +709 -0
- package/src/content-drawer/sheet.ts +180 -0
- package/src/date-range/date-range-dialog.ts +230 -0
- package/src/date-range/date-range-helpers.ts +135 -0
- package/src/date-range/date-range-presets.ts +220 -0
- package/src/date-range/date-range.ts +530 -0
- package/src/date-range/date-utils.ts +58 -0
- package/src/date-range/index.ts +2 -0
- package/src/date-range-inline/date-range-inline.ts +522 -0
- package/src/date-range-inline/index.ts +2 -0
- package/src/delay/delay.ts +136 -0
- package/src/delay/index.ts +1 -0
- package/src/details/details.ts +429 -0
- package/src/details/index.ts +1 -0
- package/src/dialog/dialog-base.mixin.ts +565 -0
- package/src/dialog/dialog-events.ts +17 -0
- package/src/dialog/dialog-service.ts +482 -0
- package/src/dialog/dialog.component.ts +394 -0
- package/src/dialog/index.ts +3 -0
- package/src/directives/animate-text.ts +551 -0
- package/src/directives/color.ts +41 -0
- package/src/directives/confirm-click.ts +350 -0
- package/src/directives/cursor-glow.ts +142 -0
- package/src/directives/cycle-text.ts +496 -0
- package/src/directives/depth-of-field.ts +83 -0
- package/src/directives/drag.ts +370 -0
- package/src/directives/gravity.ts +117 -0
- package/src/directives/index.ts +19 -0
- package/src/directives/intersect.ts +204 -0
- package/src/directives/layout.ts +261 -0
- package/src/directives/liquid.ts +150 -0
- package/src/directives/living-border.ts +166 -0
- package/src/directives/long-press.ts +150 -0
- package/src/directives/magnetic.ts +133 -0
- package/src/directives/nebula.ts +773 -0
- package/src/directives/reduced-motion.ts +30 -0
- package/src/directives/reveal.ts +158 -0
- package/src/directives/ripple.ts +102 -0
- package/src/directives/typewriter.ts +349 -0
- package/src/discovery/discovery.service.ts +210 -0
- package/src/discovery/index.ts +1 -0
- package/src/divider/divider.ts +100 -0
- package/src/divider/index.ts +1 -0
- package/src/dropdown/dropdown-component.ts +264 -0
- package/src/dropdown/dropdown-content.ts +108 -0
- package/src/dropdown/index.ts +2 -0
- package/src/expand/expand-root.component.ts +278 -0
- package/src/expand/expand.component.ts +287 -0
- package/src/expand/index.ts +2 -0
- package/src/extra/countries/countries.data.ts +196 -0
- package/src/extra/countries/countries.ts +107 -0
- package/src/extra/countries/index.ts +2 -0
- package/src/extra/index.ts +2 -0
- package/src/extra/timezone/index.ts +2 -0
- package/src/extra/timezone/timezone.ts +116 -0
- package/src/extra/timezone/timezones.data.ts +2546 -0
- package/src/float/float.ts +18 -0
- package/src/float/index.ts +1 -0
- package/src/form/form-v2.ts +268 -0
- package/src/form/form.ts +194 -0
- package/src/form/index.ts +2 -0
- package/src/icons/icon.ts +293 -0
- package/src/icons/index.ts +1 -0
- package/src/icons/readme.md +37 -0
- package/src/iframe/iframe.ts +98 -0
- package/src/iframe/index.ts +1 -0
- package/src/index.ts +69 -0
- package/src/input/index.ts +8 -0
- package/src/input/input.scss +211 -0
- package/src/input/input.ts +951 -0
- package/src/json/index.ts +1 -0
- package/src/json/json.ts +55 -0
- package/src/layout/flex/flex.scss +4 -0
- package/src/layout/flex/flex.ts +74 -0
- package/src/layout/flex/index.ts +1 -0
- package/src/layout/grid/.readme +79 -0
- package/src/layout/grid/grid.scss +5 -0
- package/src/layout/grid/grid.ts +121 -0
- package/src/layout/grid/index.ts +1 -0
- package/src/layout/index.ts +5 -0
- package/src/layout/layout.ts +122 -0
- package/src/layout/scroll/index.ts +1 -0
- package/src/layout/scroll/scroll.ts +351 -0
- package/src/layout/v2/flex.ts +243 -0
- package/src/layout/v2/grid.ts +93 -0
- package/src/layout/v2/index.ts +1 -0
- package/src/lightbox/flip-directive.ts +270 -0
- package/src/lightbox/index.ts +4 -0
- package/src/lightbox/lightbox-service.ts +378 -0
- package/src/lightbox/lightbox.directive.ts +256 -0
- package/src/lightbox/lightbox.ts +417 -0
- package/src/list/context.ts +3 -0
- package/src/list/index.ts +3 -0
- package/src/list/list-item.ts +94 -0
- package/src/list/list.ts +87 -0
- package/src/list/readme.md +62 -0
- package/src/mailbox/README.md +131 -0
- package/src/mailbox/email-editor.ts +1071 -0
- package/src/mailbox/email-layout-selector.ts +58 -0
- package/src/mailbox/email-recipients.ts +594 -0
- package/src/mailbox/email-template-picker.ts +296 -0
- package/src/mailbox/email-viewer.ts +715 -0
- package/src/mailbox/index.ts +31 -0
- package/src/mailbox/mailbox.ts +363 -0
- package/src/mailbox/types.ts +181 -0
- package/src/map/index.ts +1 -0
- package/src/map/map.ts +483 -0
- package/src/menu/index.ts +2 -0
- package/src/menu/menu-item.ts +26 -0
- package/src/menu/menu.ts +83 -0
- package/src/nav-drawer/$navbar.ts +51 -0
- package/src/nav-drawer/appbar.ts +26 -0
- package/src/nav-drawer/content.ts +32 -0
- package/src/nav-drawer/context.ts +6 -0
- package/src/nav-drawer/drawer.ts +128 -0
- package/src/nav-drawer/index.ts +6 -0
- package/src/nav-drawer/navbar.ts +191 -0
- package/src/navigation-bar/index.ts +2 -0
- package/src/navigation-bar/navigation-bar-item.ts +417 -0
- package/src/navigation-bar/navigation-bar.ts +482 -0
- package/src/navigation-rail/index.ts +2 -0
- package/src/navigation-rail/navigation-rail-item.ts +443 -0
- package/src/navigation-rail/navigation-rail.ts +492 -0
- package/src/notification/index.ts +6 -0
- package/src/notification/notification-service.ts +324 -0
- package/src/notification/notification.scss +117 -0
- package/src/notification/notification.ts +263 -0
- package/src/notification/notify.ts +207 -0
- package/src/notification/outlet.ts +16 -0
- package/src/option/index.ts +1 -0
- package/src/option/option.ts +180 -0
- package/src/page/index.ts +1 -0
- package/src/page/page.ts +135 -0
- package/src/progress/index.ts +1 -0
- package/src/progress/progress.ts +143 -0
- package/src/qr-scanner/index.ts +1 -0
- package/src/qr-scanner/qr-scanner.ts +240 -0
- package/src/radio-group/index.ts +2 -0
- package/src/radio-group/radio-button.ts +81 -0
- package/src/radio-group/radio-group.scss +4 -0
- package/src/radio-group/radio-group.ts +110 -0
- package/src/radio-group/readme.md +315 -0
- package/src/range/index.ts +1 -0
- package/src/range/range.ts +102 -0
- package/src/rxjs-utils/index.ts +6 -0
- package/src/rxjs-utils/mutation-observer.ts +22 -0
- package/src/rxjs-utils/waitForElement.ts +33 -0
- package/src/rxjs-utils/waitForElementAll.ts +34 -0
- package/src/rxjs-utils/waitForElements.ts +40 -0
- package/src/rxjs-utils/waitForElementsAll.ts +42 -0
- package/src/rxjs-utils/waitUntil.ts +16 -0
- package/src/select/README.md +405 -0
- package/src/select/index.ts +2 -0
- package/src/select/select.ts +766 -0
- package/src/sheet/hook.ts +40 -0
- package/src/sheet/index.ts +2 -0
- package/src/sheet/sheet.service.ts +235 -0
- package/src/sheet/sheet.ts +236 -0
- package/src/slider/index.ts +2 -0
- package/src/slider/slide.ts +107 -0
- package/src/slider/slider.ts +164 -0
- package/src/steps/index.ts +3 -0
- package/src/steps/schmancy-step.ts +213 -0
- package/src/steps/schmancy-steps-container.ts +109 -0
- package/src/steps/steps.context.ts +23 -0
- package/src/store/context-array.ts +358 -0
- package/src/store/context-collection.ts +218 -0
- package/src/store/context-create.ts +284 -0
- package/src/store/context-object.ts +298 -0
- package/src/store/filter-directive.ts +614 -0
- package/src/store/immer-integration.ts +99 -0
- package/src/store/index.ts +10 -0
- package/src/store/selector-hook.ts +259 -0
- package/src/store/selectors.ts +289 -0
- package/src/store/storage-manager.ts +269 -0
- package/src/store/store.class.ts +239 -0
- package/src/store/types.ts +327 -0
- package/src/surface/context.ts +3 -0
- package/src/surface/index.ts +1 -0
- package/src/surface/surface.styles.ts +334 -0
- package/src/surface/surface.ts +59 -0
- package/src/table/index.ts +2 -0
- package/src/table/row.ts +60 -0
- package/src/table/table.ts +266 -0
- package/src/tabs/Readme.md +397 -0
- package/src/tabs/context.ts +5 -0
- package/src/tabs/index.ts +4 -0
- package/src/tabs/tab.ts +39 -0
- package/src/tabs/tabs-compatibility.ts +20 -0
- package/src/tabs/tabs-group.ts +184 -0
- package/src/teleport/.excalidraw +2511 -0
- package/src/teleport/index.ts +2 -0
- package/src/teleport/readme.md +91 -0
- package/src/teleport/teleport.component.ts +132 -0
- package/src/teleport/teleport.service.ts +139 -0
- package/src/teleport/watcher.ts +20 -0
- package/src/textarea/index.ts +1 -0
- package/src/textarea/textarea.scss +54 -0
- package/src/textarea/textarea.ts +432 -0
- package/src/theme/context.ts +28 -0
- package/src/theme/index.ts +17 -0
- package/src/theme/theme-audio-player.ts +470 -0
- package/src/theme/theme-controller-boat.ts +49 -0
- package/src/theme/theme-controller-example.md +152 -0
- package/src/theme/theme-controller.ts +205 -0
- package/src/theme/theme.component.ts +305 -0
- package/src/theme/theme.events.ts +59 -0
- package/src/theme/theme.format.ts +417 -0
- package/src/theme/theme.interface.ts +399 -0
- package/src/theme/theme.service.ts +520 -0
- package/src/theme/theme.style.css +619 -0
- package/src/theme-button/index.ts +1 -0
- package/src/theme-button/theme-button.ts +35 -0
- package/src/tooltip/index.ts +2 -0
- package/src/tooltip/tooltip.directive.ts +277 -0
- package/src/tooltip/tooltip.ts +216 -0
- package/src/tree/README.md +59 -0
- package/src/tree/index.ts +1 -0
- package/src/tree/tree.ts +132 -0
- package/src/types/events.ts +5 -0
- package/src/types/index.ts +3 -0
- package/src/types/mood-audio.types.ts +220 -0
- package/src/types/surface.ts +52 -0
- package/src/typewriter/IMPROVEMENTS.md +174 -0
- package/src/typewriter/QUICK_REFERENCE.md +166 -0
- package/src/typewriter/index.ts +1 -0
- package/src/typewriter/test-typewriter.html +97 -0
- package/src/typewriter/typewriter.ts +376 -0
- package/src/typography/index.ts +1 -0
- package/src/typography/typography.ts +448 -0
- package/src/utils/animation.ts +418 -0
- package/src/utils/hashContent.ts +12 -0
- package/src/utils/index.ts +6 -0
- package/src/utils/intersection.ts +22 -0
- package/src/utils/number.ts +529 -0
- package/src/utils/overlay-stack.ts +101 -0
- package/src/utils/search.ts +322 -0
- package/src/vite-env.d.ts +2 -0
- package/src/window/index.ts +10 -0
- package/src/window/window-manager.ts +204 -0
- package/src/window/window-position.ts +136 -0
- package/src/window/window-registry.ts +34 -0
- package/src/window/window.ts +724 -0
- package/types/mixins/baseElement.d.ts +12 -0
- package/types/mixins/discovery.service.d.ts +72 -0
- package/types/mixins/index.d.ts +2 -0
- package/types/mixins/surface.mixin.d.ts +39 -0
- package/types/src/area/area.service.d.ts +2 -0
- package/types/src/badge/badge.d.ts +1 -1
- package/types/src/boat/boat.d.ts +40 -33
- package/types/src/button/icon-button.d.ts +10 -0
- package/types/src/chips/filter-chip.d.ts +0 -12
- package/types/src/connectivity/connectivity-status.d.ts +25 -0
- package/types/src/connectivity/index.d.ts +1 -0
- package/types/src/content-drawer/drawer.service.d.ts +3 -0
- package/types/src/date-range/date-range.d.ts +2 -0
- package/types/src/details/details.d.ts +26 -2
- package/types/src/dialog/dialog-base.mixin.d.ts +7 -3
- package/types/src/dialog/dialog-service.d.ts +27 -1
- package/types/src/dialog/dialog.component.d.ts +35 -1
- package/types/src/directives/animate-text.d.ts +67 -0
- package/types/src/directives/color.d.ts +2 -3
- package/types/src/directives/confirm-click.d.ts +38 -0
- package/types/src/directives/cursor-glow.d.ts +38 -0
- package/types/src/directives/cycle-text.d.ts +44 -0
- package/types/src/directives/depth-of-field.d.ts +38 -0
- package/types/src/directives/drag.d.ts +8 -8
- package/types/src/directives/gravity.d.ts +40 -0
- package/types/src/directives/index.d.ts +16 -2
- package/types/src/directives/intersect.d.ts +60 -0
- package/types/src/directives/layout.d.ts +62 -0
- package/types/src/directives/liquid.d.ts +38 -0
- package/types/src/directives/living-border.d.ts +39 -0
- package/types/src/directives/long-press.d.ts +38 -0
- package/types/src/directives/magnetic.d.ts +35 -0
- package/types/src/directives/nebula.d.ts +80 -0
- package/types/src/directives/reduced-motion.d.ts +2 -0
- package/types/src/directives/reveal.d.ts +54 -0
- package/types/src/directives/ripple.d.ts +15 -5
- package/types/src/directives/typewriter.d.ts +50 -0
- package/types/src/discovery/discovery.service.d.ts +72 -0
- package/types/src/expand/expand-root.component.d.ts +30 -0
- package/types/src/expand/expand.component.d.ts +38 -0
- package/types/src/expand/index.d.ts +2 -0
- package/types/src/float/float.d.ts +14 -0
- package/types/src/float/index.d.ts +1 -0
- package/types/src/icons/icon.d.ts +14 -0
- package/types/src/iframe/iframe.d.ts +37 -0
- package/types/src/iframe/index.d.ts +1 -0
- package/types/src/index.d.ts +6 -1
- package/types/src/input/index.d.ts +1 -1
- package/types/src/layout/scroll/scroll.d.ts +11 -0
- package/types/src/lightbox/lightbox.d.ts +1 -0
- package/types/src/mailbox/email-recipients.d.ts +2 -2
- package/types/src/mailbox/types.d.ts +1 -1
- package/types/src/navigation-bar/navigation-bar.d.ts +17 -0
- package/types/src/notification/notification.d.ts +1 -0
- package/types/src/page/page.d.ts +6 -0
- package/types/src/range/index.d.ts +1 -0
- package/types/src/range/range.d.ts +25 -0
- package/types/src/sheet/sheet.d.ts +0 -1
- package/types/src/steps/schmancy-steps-container.d.ts +8 -6
- package/types/src/surface/surface.d.ts +4 -27
- package/types/src/surface/surface.styles.d.ts +31 -0
- package/types/src/tabs/tab.d.ts +1 -0
- package/types/src/textarea/textarea.d.ts +3 -2
- package/types/src/theme/context.d.ts +2 -282
- package/types/src/theme/theme.component.d.ts +9 -1
- package/types/src/theme/theme.format.d.ts +1 -1
- package/types/src/theme/theme.interface.d.ts +8 -1
- package/types/src/theme/theme.service.d.ts +20 -282
- package/types/src/types/surface.d.ts +27 -1
- package/types/src/typography/typography.d.ts +17 -3
- package/types/src/utils/animation.d.ts +254 -0
- package/types/src/utils/index.d.ts +2 -0
- package/types/src/utils/number.d.ts +18 -2
- package/types/src/utils/overlay-stack.d.ts +54 -0
- package/types/src/window/index.d.ts +3 -0
- package/types/src/window/window-manager.d.ts +49 -0
- package/types/src/window/window-position.d.ts +64 -0
- package/types/src/window/window-registry.d.ts +28 -0
- package/types/src/window/window.d.ts +67 -0
- package/ai/animated-text.md +0 -116
- package/ai/audio.md +0 -241
- package/ai/boat.md +0 -53
- package/ai/component-relationships.md +0 -93
- package/ai/context.md +0 -572
- package/ai/countries.md +0 -271
- package/ai/date-range-inline.md +0 -262
- package/ai/delay.md +0 -158
- package/ai/index.md +0 -112
- package/ai/layout.md +0 -187
- package/ai/mailbox.md +0 -530
- package/ai/map.md +0 -234
- package/ai/navigation-bar-item.md +0 -259
- package/ai/option.md +0 -173
- package/ai/payment-card-form.md +0 -242
- package/ai/slider.md +0 -227
- package/ai/spinner.md +0 -165
- package/ai/teleport.md +0 -197
- package/ai/template.md +0 -144
- package/ai/theme-button.md +0 -173
- package/ai/timezone.md +0 -276
- package/ai/typewriter.md +0 -335
- package/dist/_commonjsHelpers-Dw9sPFZy.js +0 -7
- package/dist/_commonjsHelpers-Dw9sPFZy.js.map +0 -1
- package/dist/_commonjsHelpers-k2hpEU-q.cjs +0 -2
- package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +0 -1
- package/dist/ai/animated-text.md +0 -116
- package/dist/ai/audio.md +0 -241
- package/dist/ai/boat.md +0 -53
- package/dist/ai/component-relationships.md +0 -93
- package/dist/ai/context.md +0 -572
- package/dist/ai/countries.md +0 -271
- package/dist/ai/date-range-inline.md +0 -262
- package/dist/ai/delay.md +0 -158
- package/dist/ai/index.md +0 -112
- package/dist/ai/layout.md +0 -187
- package/dist/ai/mailbox.md +0 -530
- package/dist/ai/map.md +0 -234
- package/dist/ai/navigation-bar-item.md +0 -259
- package/dist/ai/option.md +0 -173
- package/dist/ai/payment-card-form.md +0 -242
- package/dist/ai/slider.md +0 -227
- package/dist/ai/spinner.md +0 -165
- package/dist/ai/teleport.md +0 -197
- package/dist/ai/template.md +0 -144
- package/dist/ai/theme-button.md +0 -173
- package/dist/ai/timezone.md +0 -276
- package/dist/ai/typewriter.md +0 -335
- package/dist/animated-text-B3DQRJBy.cjs +0 -37
- package/dist/animated-text-B3DQRJBy.cjs.map +0 -1
- package/dist/animated-text-BAj4-6hE.js +0 -76
- package/dist/animated-text-BAj4-6hE.js.map +0 -1
- package/dist/animated-text.cjs +0 -2
- package/dist/animated-text.cjs.map +0 -1
- package/dist/animated-text.js +0 -2
- package/dist/animated-text.js.map +0 -1
- package/dist/area.cjs.map +0 -1
- package/dist/area.component-CP4DZ0d8.js +0 -330
- package/dist/area.component-CP4DZ0d8.js.map +0 -1
- package/dist/area.component-ChxSLt16.cjs +0 -12
- package/dist/area.component-ChxSLt16.cjs.map +0 -1
- package/dist/area.js.map +0 -1
- package/dist/audio.cjs.map +0 -1
- package/dist/audio.js.map +0 -1
- package/dist/autocomplete-CAaVSg4g.cjs +0 -112
- package/dist/autocomplete-CAaVSg4g.cjs.map +0 -1
- package/dist/autocomplete-CGbACUYd.js +0 -333
- package/dist/autocomplete-CGbACUYd.js.map +0 -1
- package/dist/autocomplete.cjs.map +0 -1
- package/dist/autocomplete.js.map +0 -1
- package/dist/avatar-nWOZXEsW.cjs +0 -273
- package/dist/avatar-nWOZXEsW.cjs.map +0 -1
- package/dist/avatar-rLCF6MSI.js +0 -895
- package/dist/avatar-rLCF6MSI.js.map +0 -1
- package/dist/badge.cjs.map +0 -1
- package/dist/badge.js.map +0 -1
- package/dist/boat-Ckt9v__d.js +0 -301
- package/dist/boat-Ckt9v__d.js.map +0 -1
- package/dist/boat-yNAZ2LLB.cjs +0 -97
- package/dist/boat-yNAZ2LLB.cjs.map +0 -1
- package/dist/boat.cjs.map +0 -1
- package/dist/boat.js.map +0 -1
- package/dist/busy.cjs.map +0 -1
- package/dist/busy.js.map +0 -1
- package/dist/card.cjs.map +0 -1
- package/dist/card.js.map +0 -1
- package/dist/checkbox-BnAlpsJN.cjs +0 -40
- package/dist/checkbox-BnAlpsJN.cjs.map +0 -1
- package/dist/checkbox-D22yfGe3.js +0 -526
- package/dist/checkbox-D22yfGe3.js.map +0 -1
- package/dist/checkbox.cjs.map +0 -1
- package/dist/checkbox.js.map +0 -1
- package/dist/chips.cjs.map +0 -1
- package/dist/chips.js.map +0 -1
- package/dist/code-highlight.cjs.map +0 -1
- package/dist/code-highlight.js.map +0 -1
- package/dist/code-preview-DPlQayFd.js +0 -967
- package/dist/code-preview-DPlQayFd.js.map +0 -1
- package/dist/code-preview-jPnX60FF.cjs +0 -193
- package/dist/code-preview-jPnX60FF.cjs.map +0 -1
- package/dist/components.cjs.map +0 -1
- package/dist/components.js.map +0 -1
- package/dist/consume-5D1qfVWM.js +0 -38
- package/dist/consume-5D1qfVWM.js.map +0 -1
- package/dist/consume-edta5ng5.cjs +0 -2
- package/dist/consume-edta5ng5.cjs.map +0 -1
- package/dist/content-drawer.cjs.map +0 -1
- package/dist/content-drawer.js.map +0 -1
- package/dist/context-create-B_S-sD5B.js +0 -1107
- package/dist/context-create-B_S-sD5B.js.map +0 -1
- package/dist/context-create-DTybDbZp.cjs +0 -2
- package/dist/context-create-DTybDbZp.cjs.map +0 -1
- package/dist/date-range-GFm5NG33.js +0 -639
- package/dist/date-range-GFm5NG33.js.map +0 -1
- package/dist/date-range-inline-CgX2o0FP.cjs +0 -44
- package/dist/date-range-inline-CgX2o0FP.cjs.map +0 -1
- package/dist/date-range-inline-DTQLESAZ.js +0 -197
- package/dist/date-range-inline-DTQLESAZ.js.map +0 -1
- package/dist/date-range-inline.cjs.map +0 -1
- package/dist/date-range-inline.js.map +0 -1
- package/dist/date-range-ug3B9CFT.cjs +0 -119
- package/dist/date-range-ug3B9CFT.cjs.map +0 -1
- package/dist/date-range.cjs.map +0 -1
- package/dist/date-range.js.map +0 -1
- package/dist/delay-CWtBL0VD.cjs +0 -10
- package/dist/delay-CWtBL0VD.cjs.map +0 -1
- package/dist/delay-DEe1CmHc.js +0 -288
- package/dist/delay-DEe1CmHc.js.map +0 -1
- package/dist/delay.cjs.map +0 -1
- package/dist/delay.js.map +0 -1
- package/dist/details-D-LXW23W.js +0 -100
- package/dist/details-D-LXW23W.js.map +0 -1
- package/dist/details-DVke77dU.cjs +0 -55
- package/dist/details-DVke77dU.cjs.map +0 -1
- package/dist/details.cjs.map +0 -1
- package/dist/details.js.map +0 -1
- package/dist/dialog-service-C86xTS8q.cjs +0 -2
- package/dist/dialog-service-C86xTS8q.cjs.map +0 -1
- package/dist/dialog-service-D9E3jLAR.js +0 -118
- package/dist/dialog-service-D9E3jLAR.js.map +0 -1
- package/dist/dialog.component-BM0D-hK9.cjs +0 -48
- package/dist/dialog.component-BM0D-hK9.cjs.map +0 -1
- package/dist/dialog.component-a7FlKhGD.js +0 -145
- package/dist/dialog.component-a7FlKhGD.js.map +0 -1
- package/dist/discovery.service-BbYjU5x8.js +0 -21
- package/dist/discovery.service-BbYjU5x8.js.map +0 -1
- package/dist/discovery.service-BpGCuXPd.cjs +0 -2
- package/dist/discovery.service-BpGCuXPd.cjs.map +0 -1
- package/dist/divider-CzTpxOqt.js +0 -84
- package/dist/divider-CzTpxOqt.js.map +0 -1
- package/dist/divider-D8KStUhN.cjs +0 -58
- package/dist/divider-D8KStUhN.cjs.map +0 -1
- package/dist/divider.cjs.map +0 -1
- package/dist/divider.js.map +0 -1
- package/dist/dropdown-content-CngZN3vv.cjs +0 -58
- package/dist/dropdown-content-CngZN3vv.cjs.map +0 -1
- package/dist/dropdown-content-DCn-g0-f.js +0 -147
- package/dist/dropdown-content-DCn-g0-f.js.map +0 -1
- package/dist/email-recipients-BhntMZMf.cjs +0 -1173
- package/dist/email-recipients-BhntMZMf.cjs.map +0 -1
- package/dist/email-recipients-BzjAKNJ0.js +0 -1733
- package/dist/email-recipients-BzjAKNJ0.js.map +0 -1
- package/dist/emotional-sounds-BRnFhww6.js +0 -234
- package/dist/emotional-sounds-BRnFhww6.js.map +0 -1
- package/dist/emotional-sounds-DVGhmoZf.cjs +0 -2
- package/dist/emotional-sounds-DVGhmoZf.cjs.map +0 -1
- package/dist/extra.cjs.map +0 -1
- package/dist/extra.js.map +0 -1
- package/dist/flex-5dR48zie.js +0 -183
- package/dist/flex-5dR48zie.js.map +0 -1
- package/dist/flex-oHl2EfYB.cjs +0 -18
- package/dist/flex-oHl2EfYB.cjs.map +0 -1
- package/dist/flow-D0e7hGXO.cjs +0 -2
- package/dist/flow-D0e7hGXO.cjs.map +0 -1
- package/dist/flow-DXYqC9OA.js +0 -340
- package/dist/flow-DXYqC9OA.js.map +0 -1
- package/dist/form-BlPiAPt7.cjs +0 -2
- package/dist/form-BlPiAPt7.cjs.map +0 -1
- package/dist/form-BxVM6JTn.js +0 -141
- package/dist/form-BxVM6JTn.js.map +0 -1
- package/dist/form.cjs.map +0 -1
- package/dist/form.js.map +0 -1
- package/dist/formField.mixin-BCGA7Ea3.js +0 -48
- package/dist/formField.mixin-BCGA7Ea3.js.map +0 -1
- package/dist/formField.mixin-BfJMifU9.cjs +0 -2
- package/dist/formField.mixin-BfJMifU9.cjs.map +0 -1
- package/dist/height-CfECBO2j.js +0 -44
- package/dist/height-CfECBO2j.js.map +0 -1
- package/dist/height-Z70qJYJK.cjs +0 -2
- package/dist/height-Z70qJYJK.cjs.map +0 -1
- package/dist/icon-DHEXr3c-.cjs +0 -49
- package/dist/icon-DHEXr3c-.cjs.map +0 -1
- package/dist/icon-DYpLoegR.js +0 -84
- package/dist/icon-DYpLoegR.js.map +0 -1
- package/dist/icon-button-CmZBLHWC.js +0 -164
- package/dist/icon-button-CmZBLHWC.js.map +0 -1
- package/dist/icon-button-IbSX8C98.cjs +0 -70
- package/dist/icon-button-IbSX8C98.cjs.map +0 -1
- package/dist/icons.cjs.map +0 -1
- package/dist/icons.js.map +0 -1
- package/dist/index-CCi1otmh.cjs +0 -2
- package/dist/index-CCi1otmh.cjs.map +0 -1
- package/dist/index-CW6PhEkx.js +0 -17
- package/dist/index-CW6PhEkx.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/input-BByjYlgl.cjs +0 -51
- package/dist/input-BByjYlgl.cjs.map +0 -1
- package/dist/input-D0cQ9DOY.js +0 -237
- package/dist/input-D0cQ9DOY.js.map +0 -1
- package/dist/input-chip-B5ErXgCB.js +0 -206
- package/dist/input-chip-B5ErXgCB.js.map +0 -1
- package/dist/input-chip-DkWaTciP.cjs +0 -147
- package/dist/input-chip-DkWaTciP.cjs.map +0 -1
- package/dist/input.cjs.map +0 -1
- package/dist/input.js.map +0 -1
- package/dist/intersection-CJxzz8c-.js +0 -15
- package/dist/intersection-CJxzz8c-.js.map +0 -1
- package/dist/intersection-CVvaDv96.cjs +0 -2
- package/dist/intersection-CVvaDv96.cjs.map +0 -1
- package/dist/json-BZVe74np.cjs +0 -12
- package/dist/json-BZVe74np.cjs.map +0 -1
- package/dist/json-PKewOWuJ.js +0 -51
- package/dist/json-PKewOWuJ.js.map +0 -1
- package/dist/layout.cjs.map +0 -1
- package/dist/layout.js.map +0 -1
- package/dist/lightbox-service-D-0JtxB1.cjs +0 -202
- package/dist/lightbox-service-D-0JtxB1.cjs.map +0 -1
- package/dist/lightbox-service-DZMnb1eU.js +0 -458
- package/dist/lightbox-service-DZMnb1eU.js.map +0 -1
- package/dist/lightbox.cjs.map +0 -1
- package/dist/lightbox.js.map +0 -1
- package/dist/list-B_2m7l3g.cjs +0 -17
- package/dist/list-B_2m7l3g.cjs.map +0 -1
- package/dist/list-CW56LV-v.js +0 -69
- package/dist/list-CW56LV-v.js.map +0 -1
- package/dist/list.cjs.map +0 -1
- package/dist/list.js.map +0 -1
- package/dist/litElement.mixin-CrpeGpZ7.cjs +0 -2
- package/dist/litElement.mixin-CrpeGpZ7.cjs.map +0 -1
- package/dist/litElement.mixin-DHZXtvYq.js +0 -15
- package/dist/litElement.mixin-DHZXtvYq.js.map +0 -1
- package/dist/mailbox.cjs.map +0 -1
- package/dist/mailbox.js.map +0 -1
- package/dist/map-2Hl60a0A.js +0 -175
- package/dist/map-2Hl60a0A.js.map +0 -1
- package/dist/map-DyPS9G7M.cjs +0 -81
- package/dist/map-DyPS9G7M.cjs.map +0 -1
- package/dist/map.cjs.map +0 -1
- package/dist/map.js.map +0 -1
- package/dist/media-CS8HpKnK.cjs +0 -152
- package/dist/media-CS8HpKnK.cjs.map +0 -1
- package/dist/media-DtWbcRxL.js +0 -244
- package/dist/media-DtWbcRxL.js.map +0 -1
- package/dist/menu-Caju5-zd.js +0 -60
- package/dist/menu-Caju5-zd.js.map +0 -1
- package/dist/menu-rX5RPAI2.cjs +0 -24
- package/dist/menu-rX5RPAI2.cjs.map +0 -1
- package/dist/menu.cjs.map +0 -1
- package/dist/menu.js.map +0 -1
- package/dist/nav-drawer.cjs.map +0 -1
- package/dist/nav-drawer.js.map +0 -1
- package/dist/navigation-bar.cjs.map +0 -1
- package/dist/navigation-bar.js.map +0 -1
- package/dist/navigation-rail-Ctketq5a.js +0 -256
- package/dist/navigation-rail-Ctketq5a.js.map +0 -1
- package/dist/navigation-rail-DC9_oSIM.cjs +0 -79
- package/dist/navigation-rail-DC9_oSIM.cjs.map +0 -1
- package/dist/notification-service-CUlfXqmj.js +0 -155
- package/dist/notification-service-CUlfXqmj.js.map +0 -1
- package/dist/notification-service-DknbpqTt.cjs +0 -19
- package/dist/notification-service-DknbpqTt.cjs.map +0 -1
- package/dist/notification.cjs.map +0 -1
- package/dist/notification.js.map +0 -1
- package/dist/notify-DJSOWTxv.js +0 -35
- package/dist/notify-DJSOWTxv.js.map +0 -1
- package/dist/notify-DickIEHW.cjs +0 -2
- package/dist/notify-DickIEHW.cjs.map +0 -1
- package/dist/number-B7aCRYnH.cjs +0 -2
- package/dist/number-B7aCRYnH.cjs.map +0 -1
- package/dist/number-BhTiptLA.js +0 -99
- package/dist/number-BhTiptLA.js.map +0 -1
- package/dist/option-Bng41-rY.js +0 -77
- package/dist/option-Bng41-rY.js.map +0 -1
- package/dist/option-DYT5Rkgy.cjs +0 -44
- package/dist/option-DYT5Rkgy.cjs.map +0 -1
- package/dist/option.cjs.map +0 -1
- package/dist/option.js.map +0 -1
- package/dist/page-BLn9gtSd.cjs +0 -20
- package/dist/page-BLn9gtSd.cjs.map +0 -1
- package/dist/page-D-ROcQDd.js +0 -48
- package/dist/page-D-ROcQDd.js.map +0 -1
- package/dist/payment-card-form-5UtfWzoW.cjs +0 -74
- package/dist/payment-card-form-5UtfWzoW.cjs.map +0 -1
- package/dist/payment-card-form-BJa4RgF2.js +0 -515
- package/dist/payment-card-form-BJa4RgF2.js.map +0 -1
- package/dist/pills-BS5rZ6C3.js +0 -346
- package/dist/pills-BS5rZ6C3.js.map +0 -1
- package/dist/pills-Blf7IAeq.cjs +0 -113
- package/dist/pills-Blf7IAeq.cjs.map +0 -1
- package/dist/progress-DlhYniW_.cjs +0 -35
- package/dist/progress-DlhYniW_.cjs.map +0 -1
- package/dist/progress-yTIX6EqC.js +0 -56
- package/dist/progress-yTIX6EqC.js.map +0 -1
- package/dist/progress.cjs.map +0 -1
- package/dist/progress.js.map +0 -1
- package/dist/provide-BxZ2kn_p.cjs +0 -2
- package/dist/provide-BxZ2kn_p.cjs.map +0 -1
- package/dist/provide-tcktw8xB.js +0 -100
- package/dist/provide-tcktw8xB.js.map +0 -1
- package/dist/qr-scanner-DOs7uNS_.cjs +0 -29
- package/dist/qr-scanner-DOs7uNS_.cjs.map +0 -1
- package/dist/qr-scanner-DjZ8mgHV.js +0 -743
- package/dist/qr-scanner-DjZ8mgHV.js.map +0 -1
- package/dist/radio-button-N_PrrxKB.cjs +0 -41
- package/dist/radio-button-N_PrrxKB.cjs.map +0 -1
- package/dist/radio-button-me3SRHGu.js +0 -115
- package/dist/radio-button-me3SRHGu.js.map +0 -1
- package/dist/radio-group.cjs.map +0 -1
- package/dist/radio-group.js.map +0 -1
- package/dist/ripple-BgJXbNSP.js +0 -124
- package/dist/ripple-BgJXbNSP.js.map +0 -1
- package/dist/ripple-x6sTX02K.cjs +0 -16
- package/dist/ripple-x6sTX02K.cjs.map +0 -1
- package/dist/rxjs-utils.cjs.map +0 -1
- package/dist/rxjs-utils.js.map +0 -1
- package/dist/schmancy-steps-container-J6P-NNNj.js +0 -156
- package/dist/schmancy-steps-container-J6P-NNNj.js.map +0 -1
- package/dist/schmancy-steps-container-T57BKMzi.cjs +0 -70
- package/dist/schmancy-steps-container-T57BKMzi.cjs.map +0 -1
- package/dist/scroll-C_gfUgjn.js +0 -87
- package/dist/scroll-C_gfUgjn.js.map +0 -1
- package/dist/scroll-CecsowP7.cjs +0 -27
- package/dist/scroll-CecsowP7.cjs.map +0 -1
- package/dist/search-B1s7thB0.cjs +0 -2
- package/dist/search-B1s7thB0.cjs.map +0 -1
- package/dist/search-DxxnLa5u.js +0 -95
- package/dist/search-DxxnLa5u.js.map +0 -1
- package/dist/select-BBA0gBHf.js +0 -280
- package/dist/select-BBA0gBHf.js.map +0 -1
- package/dist/select-D9oCjv7N.cjs +0 -57
- package/dist/select-D9oCjv7N.cjs.map +0 -1
- package/dist/select.cjs.map +0 -1
- package/dist/select.js.map +0 -1
- package/dist/selector-hook-9w2auh2O.cjs +0 -2
- package/dist/selector-hook-9w2auh2O.cjs.map +0 -1
- package/dist/selector-hook-CHV4kDMd.js +0 -319
- package/dist/selector-hook-CHV4kDMd.js.map +0 -1
- package/dist/sheet-0oUfBmXX.cjs +0 -15
- package/dist/sheet-0oUfBmXX.cjs.map +0 -1
- package/dist/sheet-CNcDT3VP.js +0 -97
- package/dist/sheet-CNcDT3VP.js.map +0 -1
- package/dist/sheet.cjs.map +0 -1
- package/dist/sheet.js.map +0 -1
- package/dist/sheet.service-2MobB-9z.js +0 -68
- package/dist/sheet.service-2MobB-9z.js.map +0 -1
- package/dist/sheet.service-su_7yDQ-.cjs +0 -2
- package/dist/sheet.service-su_7yDQ-.cjs.map +0 -1
- package/dist/slider-CV-Ehp_5.cjs +0 -83
- package/dist/slider-CV-Ehp_5.cjs.map +0 -1
- package/dist/slider-CkE-iFUy.js +0 -161
- package/dist/slider-CkE-iFUy.js.map +0 -1
- package/dist/sound.service-Nza4c6wv.js +0 -102
- package/dist/sound.service-Nza4c6wv.js.map +0 -1
- package/dist/sound.service-eRirZw59.cjs +0 -2
- package/dist/sound.service-eRirZw59.cjs.map +0 -1
- package/dist/spinner-Bfn8KC-9.cjs +0 -135
- package/dist/spinner-Bfn8KC-9.cjs.map +0 -1
- package/dist/spinner-DiMbWXp9.js +0 -168
- package/dist/spinner-DiMbWXp9.js.map +0 -1
- package/dist/store.cjs.map +0 -1
- package/dist/store.js.map +0 -1
- package/dist/suggestion-chip-CEDqUNoS.js +0 -481
- package/dist/suggestion-chip-CEDqUNoS.js.map +0 -1
- package/dist/suggestion-chip-HhsLtZXR.cjs +0 -271
- package/dist/suggestion-chip-HhsLtZXR.cjs.map +0 -1
- package/dist/surface-CW3H23Va.cjs +0 -199
- package/dist/surface-CW3H23Va.cjs.map +0 -1
- package/dist/surface-eBfnSwQS.js +0 -220
- package/dist/surface-eBfnSwQS.js.map +0 -1
- package/dist/surface.cjs.map +0 -1
- package/dist/surface.js.map +0 -1
- package/dist/table-D0tiSL_u.cjs +0 -64
- package/dist/table-D0tiSL_u.cjs.map +0 -1
- package/dist/table-Dmo4TvTx.js +0 -561
- package/dist/table-Dmo4TvTx.js.map +0 -1
- package/dist/table.cjs.map +0 -1
- package/dist/table.js.map +0 -1
- package/dist/tabs-compatibility-Bit6y6en.js +0 -104
- package/dist/tabs-compatibility-Bit6y6en.js.map +0 -1
- package/dist/tabs-compatibility-Vq_2-ekz.cjs +0 -35
- package/dist/tabs-compatibility-Vq_2-ekz.cjs.map +0 -1
- package/dist/tabs.cjs.map +0 -1
- package/dist/tabs.js.map +0 -1
- package/dist/tailwind.mixin-Bp_PR6yc.js +0 -67
- package/dist/tailwind.mixin-Bp_PR6yc.js.map +0 -1
- package/dist/tailwind.mixin-Cp4PyXok.cjs +0 -2
- package/dist/tailwind.mixin-Cp4PyXok.cjs.map +0 -1
- package/dist/teleport.cjs.map +0 -1
- package/dist/teleport.js.map +0 -1
- package/dist/textarea-B1d1QCqT.js +0 -134
- package/dist/textarea-B1d1QCqT.js.map +0 -1
- package/dist/textarea-DG8CHhZA.cjs +0 -44
- package/dist/textarea-DG8CHhZA.cjs.map +0 -1
- package/dist/textarea.cjs.map +0 -1
- package/dist/textarea.js.map +0 -1
- package/dist/theme-button-CPL6Eaqd.cjs +0 -9
- package/dist/theme-button-CPL6Eaqd.cjs.map +0 -1
- package/dist/theme-button-CrLuMQNe.js +0 -27
- package/dist/theme-button-CrLuMQNe.js.map +0 -1
- package/dist/theme-button.cjs.map +0 -1
- package/dist/theme-button.js.map +0 -1
- package/dist/theme-controller-boat-CXbNJSI3.cjs +0 -178
- package/dist/theme-controller-boat-CXbNJSI3.cjs.map +0 -1
- package/dist/theme-controller-boat-CzSmjyKq.js +0 -1159
- package/dist/theme-controller-boat-CzSmjyKq.js.map +0 -1
- package/dist/theme.cjs.map +0 -1
- package/dist/theme.events-CPSLaOlR.js +0 -6
- package/dist/theme.events-CPSLaOlR.js.map +0 -1
- package/dist/theme.events-Car6U_SQ.cjs +0 -2
- package/dist/theme.events-Car6U_SQ.cjs.map +0 -1
- package/dist/theme.interface-BLfE5J_1.js +0 -5
- package/dist/theme.interface-BLfE5J_1.js.map +0 -1
- package/dist/theme.interface-BMeNadVb.cjs +0 -2
- package/dist/theme.interface-BMeNadVb.cjs.map +0 -1
- package/dist/theme.js.map +0 -1
- package/dist/timezone-4vwX0BgA.js +0 -112
- package/dist/timezone-4vwX0BgA.js.map +0 -1
- package/dist/timezone-BxvQcqe1.cjs +0 -32
- package/dist/timezone-BxvQcqe1.cjs.map +0 -1
- package/dist/tooltip-CjdvBf4X.js +0 -119
- package/dist/tooltip-CjdvBf4X.js.map +0 -1
- package/dist/tooltip-ZtnGjoJd.cjs +0 -7
- package/dist/tooltip-ZtnGjoJd.cjs.map +0 -1
- package/dist/tree-CBEjV7jP.js +0 -65
- package/dist/tree-CBEjV7jP.js.map +0 -1
- package/dist/tree-DP5U00NA.cjs +0 -27
- package/dist/tree-DP5U00NA.cjs.map +0 -1
- package/dist/tslib.es6-DgOcxv4s.cjs +0 -2
- package/dist/tslib.es6-DgOcxv4s.cjs.map +0 -1
- package/dist/tslib.es6-ujVQHAQ4.js +0 -10
- package/dist/tslib.es6-ujVQHAQ4.js.map +0 -1
- package/dist/typewriter-C6kFjLcX.cjs +0 -124
- package/dist/typewriter-C6kFjLcX.cjs.map +0 -1
- package/dist/typewriter-Eo5qXoGC.js +0 -555
- package/dist/typewriter-Eo5qXoGC.js.map +0 -1
- package/dist/typewriter.cjs.map +0 -1
- package/dist/typewriter.js.map +0 -1
- package/dist/typography-C_1gdM2I.js +0 -264
- package/dist/typography-C_1gdM2I.js.map +0 -1
- package/dist/typography-DGyjlLCE.cjs +0 -243
- package/dist/typography-DGyjlLCE.cjs.map +0 -1
- package/dist/utils-C38P63L6.cjs +0 -2
- package/dist/utils-C38P63L6.cjs.map +0 -1
- package/dist/utils-CYOVFxSx.js +0 -150
- package/dist/utils-CYOVFxSx.js.map +0 -1
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.js.map +0 -1
- package/types/src/animated-text/animated-text.d.ts +0 -30
- package/types/src/animated-text/index.d.ts +0 -1
- package/types/src/directives/height.d.ts +0 -20
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date-range-GFm5NG33.js","sources":["../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/quarterOfYear.js","../src/date-range/date-range-presets.ts","../src/date-range/date-utils.ts","../src/date-range/date-range-dialog.ts","../src/date-range/date-range.ts","../src/date-range/date-range-helpers.ts"],"sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return+(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},g=\"en\",D={};D[g]=M;var p=\"$isDayjsObject\",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if(\"string\"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split(\"-\");if(!i&&u.length>1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate(\"s\"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+\"Hours\",0);case u:return $(v+\"Minutes\",1);case s:return $(v+\"Seconds\",2);case i:return $(v+\"Milliseconds\",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f=\"set\"+(this.$u?\"UTC\":\"\"),l=(n={},n[a]=f+\"Date\",n[d]=f+\"Date\",n[c]=f+\"Month\",n[h]=f+\"FullYear\",n[u]=f+\"Hours\",n[s]=f+\"Minutes\",n[i]=f+\"Seconds\",n[r]=f+\"Milliseconds\",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||\"YYYY-MM-DDTHH:mm:ssZ\",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,\"0\")},$=f||function(t,e,n){var r=t<12?\"AM\":\"PM\";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case\"YY\":return String(e.$y).slice(-2);case\"YYYY\":return b.s(e.$y,4,\"0\");case\"M\":return a+1;case\"MM\":return b.s(a+1,2,\"0\");case\"MMM\":return h(n.monthsShort,a,c,3);case\"MMMM\":return h(c,a);case\"D\":return e.$D;case\"DD\":return b.s(e.$D,2,\"0\");case\"d\":return String(e.$W);case\"dd\":return h(n.weekdaysMin,e.$W,o,2);case\"ddd\":return h(n.weekdaysShort,e.$W,o,3);case\"dddd\":return o[e.$W];case\"H\":return String(s);case\"HH\":return b.s(s,2,\"0\");case\"h\":return d(1);case\"hh\":return d(2);case\"a\":return $(s,u,!0);case\"A\":return $(s,u,!1);case\"m\":return String(u);case\"mm\":return b.s(u,2,\"0\");case\"s\":return String(e.$s);case\"ss\":return b.s(e.$s,2,\"0\");case\"SSS\":return b.s(e.$ms,3,\"0\");case\"Z\":return i}return null}(t)||i.replace(\":\",\"\")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[[\"$ms\",r],[\"$s\",i],[\"$m\",s],[\"$H\",u],[\"$W\",a],[\"$M\",c],[\"$y\",h],[\"$D\",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));","!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_quarterOfYear=n()}(this,(function(){\"use strict\";var t=\"month\",n=\"quarter\";return function(e,i){var r=i.prototype;r.quarter=function(t){return this.$utils().u(t)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(t-1))};var s=r.add;r.add=function(e,i){return e=Number(e),this.$utils().p(i)===n?this.add(3*e,t):s.bind(this)(e,i)};var u=r.startOf;r.startOf=function(e,i){var r=this.$utils(),s=!!r.u(i)||i;if(r.p(e)===n){var o=this.quarter()-1;return s?this.month(3*o).startOf(t).startOf(\"day\"):this.month(3*o+2).endOf(t).endOf(\"day\")}return u.bind(this)(e,i)}}}));","import dayjs from 'dayjs'\r\n\r\nexport type PresetUnit = dayjs.OpUnitType | 'quarter'\r\n\r\nexport interface DateRangePreset {\r\n\tlabel: string\r\n\trange: { dateFrom: string; dateTo: string }\r\n\tstep: PresetUnit\r\n}\r\n\r\nexport interface PresetCategory {\r\n\tname: string\r\n\tpresets: DateRangePreset[]\r\n}\r\n\r\n/**\r\n * Generate date range presets for different time periods\r\n */\r\nexport function generatePresetCategories(format: string, includeTime: boolean = false): PresetCategory[] {\r\n\tconst categories: PresetCategory[] = []\r\n\r\n\t// Hours category (only for datetime-local)\r\n\tif (includeTime) {\r\n\t\tcategories.push({\r\n\t\t\tname: 'Hours',\r\n\t\t\tpresets: [\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: 'Last 24 Hours',\r\n\t\t\t\t\trange: {\r\n\t\t\t\t\t\tdateFrom: dayjs().subtract(24, 'hours').format(format),\r\n\t\t\t\t\t\tdateTo: dayjs().format(format),\r\n\t\t\t\t\t},\r\n\t\t\t\t\tstep: 'hour',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: 'Last 12 Hours',\r\n\t\t\t\t\trange: {\r\n\t\t\t\t\t\tdateFrom: dayjs().subtract(12, 'hours').format(format),\r\n\t\t\t\t\t\tdateTo: dayjs().format(format),\r\n\t\t\t\t\t},\r\n\t\t\t\t\tstep: 'hour',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t})\r\n\t}\r\n\r\n\t// Days category\r\n\tcategories.push({\r\n\t\tname: 'Days',\r\n\t\tpresets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Today',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('day').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'day',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Yesterday',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().subtract(1, 'days').startOf('day').format(format),\r\n\t\t\t\t\tdateTo: dayjs().subtract(1, 'days').endOf('day').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'day',\r\n\t\t\t},\r\n\t\t\t...generateLastNDaysPresets([7, 14, 30, 60, 90], format),\r\n\t\t],\r\n\t})\r\n\r\n\t// Weeks category\r\n\tcategories.push({\r\n\t\tname: 'Weeks',\r\n\t\tpresets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'This Week',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('week').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('week').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'week',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Last Week',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().subtract(1, 'weeks').startOf('week').format(format),\r\n\t\t\t\t\tdateTo: dayjs().subtract(1, 'weeks').endOf('week').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'week',\r\n\t\t\t},\r\n\t\t\t...generateLastNWeeksPresets([2, 4], format),\r\n\t\t],\r\n\t})\r\n\r\n\t// Months category\r\n\tcategories.push({\r\n\t\tname: 'Months',\r\n\t\tpresets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'This Month',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('month').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('month').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'month',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Last Month',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().subtract(1, 'month').startOf('month').format(format),\r\n\t\t\t\t\tdateTo: dayjs().subtract(1, 'month').endOf('month').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'month',\r\n\t\t\t},\r\n\t\t\t...generateLastNMonthsPresets([3, 6], format),\r\n\t\t],\r\n\t})\r\n\r\n\t// Quarters category\r\n\tcategories.push({\r\n\t\tname: 'Quarters',\r\n\t\tpresets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'This Quarter',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('quarter').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('quarter').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'quarter',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Last Quarter',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().subtract(1, 'quarter').startOf('quarter').format(format),\r\n\t\t\t\t\tdateTo: dayjs().subtract(1, 'quarter').endOf('quarter').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'quarter',\r\n\t\t\t},\r\n\t\t\t...generateLastNQuartersPresets([2, 4], format),\r\n\t\t],\r\n\t})\r\n\r\n\t// Years category\r\n\tcategories.push({\r\n\t\tname: 'Years',\r\n\t\tpresets: [\r\n\t\t\t{\r\n\t\t\t\tlabel: 'This Year',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('year').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('year').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'year',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Last Year',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().subtract(1, 'year').startOf('year').format(format),\r\n\t\t\t\t\tdateTo: dayjs().subtract(1, 'year').endOf('year').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'year',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tlabel: 'Year to Date',\r\n\t\t\t\trange: {\r\n\t\t\t\t\tdateFrom: dayjs().startOf('year').format(format),\r\n\t\t\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t\t\t},\r\n\t\t\t\tstep: 'day',\r\n\t\t\t},\r\n\t\t],\r\n\t})\r\n\r\n\treturn categories\r\n}\r\n\r\n// Helper functions to generate preset arrays\r\nfunction generateLastNDaysPresets(days: number[], format: string): DateRangePreset[] {\r\n\treturn days.map(n => ({\r\n\t\tlabel: `Last ${n} Days`,\r\n\t\trange: {\r\n\t\t\tdateFrom: dayjs().subtract(n - 1, 'days').startOf('day').format(format),\r\n\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t},\r\n\t\tstep: 'day' as PresetUnit,\r\n\t}))\r\n}\r\n\r\nfunction generateLastNWeeksPresets(weeks: number[], format: string): DateRangePreset[] {\r\n\treturn weeks.map(n => ({\r\n\t\tlabel: `Last ${n} Weeks`,\r\n\t\trange: {\r\n\t\t\tdateFrom: dayjs().subtract(n, 'weeks').startOf('week').format(format),\r\n\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t},\r\n\t\tstep: 'week' as PresetUnit,\r\n\t}))\r\n}\r\n\r\nfunction generateLastNMonthsPresets(months: number[], format: string): DateRangePreset[] {\r\n\treturn months.map(n => ({\r\n\t\tlabel: `Last ${n} Months`,\r\n\t\trange: {\r\n\t\t\tdateFrom: dayjs().subtract(n, 'months').startOf('month').format(format),\r\n\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t},\r\n\t\tstep: 'month' as PresetUnit,\r\n\t}))\r\n}\r\n\r\nfunction generateLastNQuartersPresets(quarters: number[], format: string): DateRangePreset[] {\r\n\treturn quarters.map(n => ({\r\n\t\tlabel: `Last ${n} Quarters`,\r\n\t\trange: {\r\n\t\t\tdateFrom: dayjs().subtract(n, 'quarters').startOf('quarter').format(format),\r\n\t\t\tdateTo: dayjs().endOf('day').format(format),\r\n\t\t},\r\n\t\tstep: 'quarter' as PresetUnit,\r\n\t}))\r\n}","import dayjs from 'dayjs'\n\ntype DateFormat = 'YYYY-MM-DD' | 'YYYY-MM-DDTHH:mm'\n\n/**\n * Ensures that a date string conforms to a specific format.\n * If the date is already in the correct format, it returns the original string.\n * If the date is in a different format, it attempts to convert it to the specified format.\n * If the date is invalid or cannot be converted, it returns null.\n *\n * @param dateString The date string to validate and format.\n * @param expectedFormat The expected date format (e.g., 'YYYY-MM-DD', 'YYYY-MM-DDTHH:mm').\n * @returns The formatted date string, or null if the date is invalid.\n */\nfunction enforceDateFormat(dateString: string | undefined, expectedFormat: DateFormat): string | null {\n\tif (!dateString) {\n\t\treturn null // Or handle the undefined case differently if needed\n\t}\n\n\tconst parsedDate = dayjs(dateString)\n\n\tif (!parsedDate.isValid()) {\n\t\treturn null // Date is invalid\n\t}\n\n\treturn parsedDate.format(expectedFormat)\n}\n\n/**\n * Validates if the initial date range values are in the expected format.\n *\n * @param dateFrom The dateFrom value to validate.\n * @param dateTo The dateTo value to validate.\n * @param expectedFormat The expected date format.\n * @returns An object indicating whether each date is valid, and the formatted date or null if invalid.\n */\nfunction validateInitialDateRange(\n\tdateFrom: string | undefined,\n\tdateTo: string | undefined,\n\texpectedFormat: DateFormat,\n): {\n\tdateFrom: string | null\n\tdateTo: string | null\n\tisValid: boolean\n} {\n\tconst formattedDateFrom = enforceDateFormat(dateFrom, expectedFormat)\n\tconst formattedDateTo = enforceDateFormat(dateTo, expectedFormat)\n\n\tconst isValid = formattedDateFrom !== null && formattedDateTo !== null\n\n\treturn {\n\t\tdateFrom: formattedDateFrom,\n\t\tdateTo: formattedDateTo,\n\t\tisValid,\n\t}\n}\n\nexport { validateInitialDateRange }\n","import { $LitElement } from '@mixins/index'\nimport dayjs from 'dayjs'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { repeat } from 'lit/directives/repeat.js'\nimport { $dialog } from '../dialog/dialog-service'\nimport { DateRangePreset, PresetCategory } from './date-range-presets'\n\ninterface PresetGroup {\n\tname: string\n\tpresets: DateRangePreset[]\n}\n\n/**\n * Dialog content component for date range selection\n *\n * Redesigned with chip-based horizontal flow layout:\n * - Quick Select: Today, Yesterday, This Week, This Month\n * - Days: Last 7/14/30/60/90 Days\n * - Periods: Last Week, Last Month, Last Quarter, Last Year\n * - Year to Date: This Week, This Month, This Quarter, This Year, YTD\n * - Custom Range: Manual date inputs at the bottom\n *\n * @element schmancy-date-range-dialog\n */\n@customElement('schmancy-date-range-dialog')\nexport class SchmancyDateRangeDialog extends $LitElement() {\n\t@property({ type: String }) type: 'date' | 'datetime-local' = 'date'\n\t@property({ type: Object }) dateFrom: { label: string; value: string } = { label: 'From', value: '' }\n\t@property({ type: Object }) dateTo: { label: string; value: string } = { label: 'To', value: '' }\n\t@property({ type: String }) minDate?: string\n\t@property({ type: String }) maxDate?: string\n\t@property({ type: String }) activePreset: string | null = null\n\t@property({ type: Array }) presetCategories: PresetCategory[] = []\n\n\t/**\n\t * Reorganizes presets into the new grouped layout\n\t */\n\tprivate getPresetGroups(): PresetGroup[] {\n\t\tconst allPresets = this.presetCategories.flatMap(c => c.presets)\n\n\t\t// Quick Select: Today, Yesterday, This Week, This Month\n\t\tconst quickSelectLabels = ['Today', 'Yesterday', 'This Week', 'This Month']\n\t\tconst quickSelect = quickSelectLabels\n\t\t\t.map(label => allPresets.find(p => p.label === label))\n\t\t\t.filter((p): p is DateRangePreset => p !== undefined)\n\n\t\t// Days: Last 7/14/30/60/90 Days\n\t\tconst daysLabels = ['Last 7 Days', 'Last 14 Days', 'Last 30 Days', 'Last 60 Days', 'Last 90 Days']\n\t\tconst days = daysLabels\n\t\t\t.map(label => allPresets.find(p => p.label === label))\n\t\t\t.filter((p): p is DateRangePreset => p !== undefined)\n\n\t\t// Periods: Last Week, Last Month, Last Quarter, Last Year\n\t\tconst periodsLabels = ['Last Week', 'Last Month', 'Last Quarter', 'Last Year']\n\t\tconst periods = periodsLabels\n\t\t\t.map(label => allPresets.find(p => p.label === label))\n\t\t\t.filter((p): p is DateRangePreset => p !== undefined)\n\n\t\t// Year to Date: This Week, This Month, This Quarter, This Year, YTD\n\t\tconst ytdLabels = ['This Week', 'This Month', 'This Quarter', 'This Year', 'Year to Date']\n\t\tconst yearToDate = ytdLabels\n\t\t\t.map(label => allPresets.find(p => p.label === label))\n\t\t\t.filter((p): p is DateRangePreset => p !== undefined)\n\n\t\tconst groups: PresetGroup[] = []\n\n\t\tif (quickSelect.length > 0) {\n\t\t\tgroups.push({ name: 'Quick Select', presets: quickSelect })\n\t\t}\n\t\tif (days.length > 0) {\n\t\t\tgroups.push({ name: 'Days', presets: days })\n\t\t}\n\t\tif (periods.length > 0) {\n\t\t\tgroups.push({ name: 'Periods', presets: periods })\n\t\t}\n\t\tif (yearToDate.length > 0) {\n\t\t\tgroups.push({ name: 'Year to Date', presets: yearToDate })\n\t\t}\n\n\t\treturn groups\n\t}\n\n\tprivate handleFromDateChange(e: Event) {\n\t\tconst input = e.target as HTMLInputElement\n\t\tthis.dateFrom = { ...this.dateFrom, value: input.value }\n\n\t\t// If the new start date is after the current end date, adjust the end date\n\t\tif (this.dateTo.value && dayjs(this.dateFrom.value).isAfter(dayjs(this.dateTo.value))) {\n\t\t\tthis.dateTo = { ...this.dateTo, value: this.dateFrom.value }\n\t\t}\n\n\t\tthis.dispatchEvent(new CustomEvent('date-change', {\n\t\t\tdetail: { dateFrom: this.dateFrom.value, dateTo: this.dateTo.value },\n\t\t\tbubbles: true,\n\t\t\tcomposed: true\n\t\t}))\n\t}\n\n\tprivate handleToDateChange(e: Event) {\n\t\tconst input = e.target as HTMLInputElement\n\t\tthis.dateTo = { ...this.dateTo, value: input.value }\n\n\t\tthis.dispatchEvent(new CustomEvent('date-change', {\n\t\t\tdetail: { dateFrom: this.dateFrom.value, dateTo: this.dateTo.value },\n\t\t\tbubbles: true,\n\t\t\tcomposed: true\n\t\t}))\n\t}\n\n\tprivate handlePresetSelection(preset: DateRangePreset, e: Event) {\n\t\te.stopPropagation()\n\t\tthis.dispatchEvent(new CustomEvent('preset-select', {\n\t\t\tdetail: { preset },\n\t\t\tbubbles: true,\n\t\t\tcomposed: true\n\t\t}))\n\t\t$dialog.dismiss()\n\t}\n\n\tprivate applyManualDateSelection(e: Event) {\n\t\te.stopPropagation()\n\t\t// Validate dates before applying\n\t\tconst fromDate = dayjs(this.dateFrom.value)\n\t\tconst toDate = dayjs(this.dateTo.value)\n\n\t\tif (!fromDate.isValid() || !toDate.isValid()) {\n\t\t\tthis.dispatchEvent(new CustomEvent('announce', {\n\t\t\t\tdetail: { message: 'Invalid date format. Please check your input.' },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true\n\t\t\t}))\n\t\t\treturn\n\t\t}\n\n\t\tthis.dispatchEvent(new CustomEvent('apply-dates', {\n\t\t\tdetail: {\n\t\t\t\tdateFrom: this.dateFrom.value,\n\t\t\t\tdateTo: this.dateTo.value,\n\t\t\t\tswapIfNeeded: fromDate.isAfter(toDate)\n\t\t\t},\n\t\t\tbubbles: true,\n\t\t\tcomposed: true\n\t\t}))\n\n\t\t$dialog.dismiss()\n\t}\n\n\trender() {\n\t\tconst presetGroups = this.getPresetGroups()\n\n\t\treturn html`\n\t\t\t<div class=\"w-full min-h-[400px] max-h-[80vh] flex flex-col p-4\">\n\t\t\t\t<!-- Preset Groups Section -->\n\t\t\t\t<div class=\"flex-1 overflow-y-auto overflow-x-hidden min-h-0 space-y-4\">\n\t\t\t\t\t${repeat(\n\t\t\t\t\t\tpresetGroups,\n\t\t\t\t\t\tgroup => group.name,\n\t\t\t\t\t\tgroup => html`\n\t\t\t\t\t\t\t<div class=\"space-y-2\">\n\t\t\t\t\t\t\t\t<schmancy-typography type=\"label\" token=\"md\" class=\"text-surface-onVariant\">\n\t\t\t\t\t\t\t\t\t${group.name}\n\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t<div class=\"flex flex-wrap gap-2\">\n\t\t\t\t\t\t\t\t\t${repeat(\n\t\t\t\t\t\t\t\t\t\tgroup.presets,\n\t\t\t\t\t\t\t\t\t\tpreset => preset.label,\n\t\t\t\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t\t\t\t<schmancy-filter-chip\n\t\t\t\t\t\t\t\t\t\t\t\t.value=${preset.label}\n\t\t\t\t\t\t\t\t\t\t\t\t.selected=${this.activePreset === preset.label}\n\t\t\t\t\t\t\t\t\t\t\t\t@click=${(e: Event) => this.handlePresetSelection(preset, e)}\n\t\t\t\t\t\t\t\t\t\t\t\ttitle=\"${preset.range.dateFrom} to ${preset.range.dateTo}\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t${preset.label}\n\t\t\t\t\t\t\t\t\t\t\t</schmancy-filter-chip>\n\t\t\t\t\t\t\t\t\t\t`\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t`\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\n\t\t\t\t<!-- Divider -->\n\t\t\t\t<schmancy-divider class=\"my-4\"></schmancy-divider>\n\n\t\t\t\t<!-- Custom Range Section -->\n\t\t\t\t<div class=\"space-y-2\">\n\t\t\t\t\t<div class=\"flex items-end gap-3 flex-wrap\">\n\t\t\t\t\t\t<div class=\"flex-1 min-w-[140px]\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t.type=\"${this.type}\"\n\t\t\t\t\t\t\t\t.label=\"${this.dateFrom.label || 'From'}\"\n\t\t\t\t\t\t\t\t.value=\"${this.dateFrom.value}\"\n\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.minDate)}\"\n\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t@change=\"${this.handleFromDateChange}\"\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"flex-1 min-w-[140px]\">\n\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t.type=\"${this.type}\"\n\t\t\t\t\t\t\t\t.label=\"${this.dateTo.label || 'To'}\"\n\t\t\t\t\t\t\t\t.value=\"${this.dateTo.value}\"\n\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.dateFrom.value)}\"\n\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t@change=\"${this.handleToDateChange}\"\n\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\tvariant=\"filled\"\n\t\t\t\t\t\t\t@click=\"${(e: Event) => this.applyManualDateSelection(e)}\"\n\t\t\t\t\t\t\t?disabled=\"${!this.dateFrom.value || !this.dateTo.value}\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-date-range-dialog': SchmancyDateRangeDialog\n\t}\n}\n","import { $LitElement } from '@mixins/index'\nimport dayjs from 'dayjs'\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear'\nimport { html, PropertyValues, render } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, fromEvent, takeUntil, timer } from 'rxjs'\nimport { $dialog } from '../dialog/dialog-service'\nimport { sheet } from '../sheet/sheet.service'\nimport { detectDateRangeType, formatDateRange } from './date-range-helpers'\nimport { DateRangePreset, generatePresetCategories, PresetCategory } from './date-range-presets'\nimport { validateInitialDateRange } from './date-utils'\nimport './date-range-dialog'\n\n// Add quarter plugin to dayjs\ndayjs.extend(quarterOfYear)\n\nexport type SchmancyDateRangeChangeEvent = CustomEvent<{\n\tdateFrom: string\n\tdateTo: string\n}>\n\n/**\n * A date range selector that supports presets and manual date input.\n *\n * @element schmancy-date-range\n * @fires change - Fired when the date range changes with dateFrom and dateTo values\n */\n@customElement('schmancy-date-range')\nexport class SchmancyDateRange extends $LitElement() {\n\t// Core properties\n\t@property({ type: String }) type: 'date' | 'datetime-local' = 'date'\n\t@property({ type: Object }) dateFrom: { label: string; value: string } = { label: 'From', value: '' }\n\t@property({ type: Object }) dateTo: { label: string; value: string } = { label: 'To', value: '' }\n\t@property({ type: String }) minDate?: string\n\t@property({ type: String }) maxDate?: string\n\n\t// Enhanced functionality\n\t@property({ type: Array }) customPresets: Array<{\n\t\tlabel: string\n\t\tdateFrom: string\n\t\tdateTo: string\n\t}> = []\n\t@property({ type: String }) format?: string\n\t@property({ type: Boolean }) disabled = false\n\t@property({ type: Boolean }) required = false\n\t@property({ type: String }) placeholder = 'Select date range'\n\t@property({ type: Boolean }) clearable = true\n\t@property() step?: 'day' | 'week' | 'month' | 'year' | number\n\n\t// Internal states\n\t@state() private isOpen = false\n\t@state() private selectedDateRange: string = ''\n\t@state() private activePreset: string | null = null\n\t@state() private announceMessage: string = ''\n\t@state() private isMobile = false\n\n\t// Default presets\n\tprivate presetRanges: DateRangePreset[] = []\n\n\t// Categorized presets\n\tprivate presetCategories: PresetCategory[] = []\n\n\t// Memoization cache\n\tprivate memoizedPresets = new Map<string, PresetCategory[]>()\n\n\tdisconnectedCallback(): void {\n\t\tsuper.disconnectedCallback()\n\t\t// Reset open state when element is moved/removed to prevent stale state\n\t\tthis.isOpen = false\n\t}\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.initPresetRanges()\n\t\tthis.checkMobileView()\n\n\t\t// Validate initial date range\n\t\tconst dateFormat = this.getDateFormat() as 'YYYY-MM-DD' | 'YYYY-MM-DDTHH:mm'\n\t\tconst validatedRange = validateInitialDateRange(this.dateFrom.value, this.dateTo.value, dateFormat)\n\n\t\tif (validatedRange.isValid) {\n\t\t\tthis.dateFrom.value = validatedRange.dateFrom!\n\t\t\tthis.dateTo.value = validatedRange.dateTo!\n\t\t\tthis.updateSelectedDateRange()\n\t\t} else {\n\t\t\tconst now = dayjs().format(dateFormat)\n\t\t\tthis.dateFrom.value = now\n\t\t\tthis.dateTo.value = now\n\t\t\tthis.updateSelectedDateRange()\n\t\t}\n\n\t\t// Set up global event handlers using RxJS\n\t\tthis.setupEventHandlers()\n\t}\n\n\tprivate setupEventHandlers() {\n\t\t// Handle keyboard navigation\n\t\tfromEvent<KeyboardEvent>(document, 'keydown')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(event => {\n\t\t\t\tthis.handleKeyboardNavigation(event)\n\t\t\t})\n\n\t\t// Handle window resize with debouncing\n\t\tfromEvent(window, 'resize')\n\t\t\t.pipe(\n\t\t\t\tdebounceTime(150),\n\t\t\t\ttakeUntil(this.disconnecting)\n\t\t\t)\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.checkMobileView()\n\t\t\t})\n\t}\n\n\tupdated(changedProps: PropertyValues) {\n\t\tsuper.updated(changedProps)\n\n\t\tif (\n\t\t\t(changedProps.has('dateFrom') || changedProps.has('dateTo')) &&\n\t\t\t(this.dateFrom?.value !== undefined || this.dateTo?.value !== undefined)\n\t\t) {\n\t\t\tthis.updateSelectedDateRange()\n\t\t}\n\t}\n\n\tprivate initPresetRanges() {\n\t\tconst format = this.getDateFormat()\n\t\tconst cacheKey = `${this.type}-${format}-${JSON.stringify(this.customPresets)}`\n\t\t\n\t\t// Check memoization cache\n\t\tif (this.memoizedPresets.has(cacheKey)) {\n\t\t\tconst cached = this.memoizedPresets.get(cacheKey)!\n\t\t\tthis.presetCategories = cached\n\t\t\tthis.presetRanges = []\n\t\t\tcached.forEach(category => {\n\t\t\t\tthis.presetRanges.push(...category.presets)\n\t\t\t})\n\t\t\treturn\n\t\t}\n\n\t\t// Generate preset categories\n\t\tthis.presetCategories = generatePresetCategories(format, this.type === 'datetime-local')\n\n\t\t// Flatten presets for other methods that expect a flat list\n\t\tthis.presetRanges = []\n\t\tthis.presetCategories.forEach(category => {\n\t\t\tthis.presetRanges.push(...category.presets)\n\t\t})\n\n\t\t// Add custom presets if provided\n\t\tif (this.customPresets && this.customPresets.length > 0) {\n\t\t\tconst customCategory: PresetCategory = {\n\t\t\t\tname: 'Custom',\n\t\t\t\tpresets: this.customPresets.map(preset => ({\n\t\t\t\t\tlabel: preset.label,\n\t\t\t\t\trange: {\n\t\t\t\t\t\tdateFrom: preset.dateFrom,\n\t\t\t\t\t\tdateTo: preset.dateTo,\n\t\t\t\t\t},\n\t\t\t\t\tstep: 'day' as const,\n\t\t\t\t})),\n\t\t\t}\n\n\t\t\tthis.presetCategories.push(customCategory)\n\t\t\tthis.presetRanges.push(...customCategory.presets)\n\t\t}\n\t\t\n\t\t// Cache the result\n\t\tthis.memoizedPresets.set(cacheKey, [...this.presetCategories])\n\t}\n\n\tprivate getDateFormat(): string {\n\t\treturn this.format || (this.type === 'date' ? 'YYYY-MM-DD' : 'YYYY-MM-DDTHH:mm')\n\t}\n\n\t/**\n\t * Creates a concise display format for the selected date range\n\t */\n\tprivate updateSelectedDateRange() {\n\t\t// Find matching preset\n\t\tconst preset = this.presetRanges.find(\n\t\t\tp => p.range.dateFrom === this.dateFrom.value && p.range.dateTo === this.dateTo.value,\n\t\t)\n\n\t\tif (preset) {\n\t\t\t// If matches a preset, just use the preset name\n\t\t\tthis.selectedDateRange = preset.label\n\t\t\tthis.activePreset = preset.label\n\t\t\treturn\n\t\t}\n\n\t\t// If we didn't find a preset match, check if we should update the active preset\n\t\tthis.checkAndUpdateActivePreset(this.dateFrom.value, this.dateTo.value)\n\n\t\t// Custom date range - create concise format\n\t\tthis.activePreset = null\n\t\tthis.selectedDateRange = formatDateRange(this.dateFrom.value, this.dateTo.value, this.type, this.placeholder)\n\t}\n\n\tprivate setDateRange(dateFrom: string, dateTo: string) {\n\t\tthis.dateFrom.value = dateFrom\n\t\tthis.dateTo.value = dateTo\n\t\tthis.updateSelectedDateRange()\n\n\t\t// Announce change to screen readers\n\t\tthis.announceToScreenReader(`Date range updated: ${this.selectedDateRange}`)\n\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent<{ dateFrom: string; dateTo: string }>('change', {\n\t\t\t\tdetail: { dateFrom, dateTo },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t}),\n\t\t)\n\t}\n\n\tprivate toggleDropdown(e: MouseEvent) {\n\t\te.stopPropagation()\n\t\tif (this.disabled || this.step !== undefined) return\n\n\t\tif (this.isOpen) {\n\t\t\tthis.closeDropdown()\n\t\t} else {\n\t\t\tthis.openDropdown(e)\n\t\t}\n\t}\n\n\tprivate openDropdown(e?: MouseEvent) {\n\t\tif (this.disabled || this.step !== undefined) return\n\n\t\tthis.dispatchEvent(new CustomEvent('beforeopen', { bubbles: true, composed: true }))\n\t\tthis.isOpen = true\n\n\t\tconst dialogContent = html`\n\t\t\t<schmancy-date-range-dialog\n\t\t\t\t.type=\"${this.type}\"\n\t\t\t\t.dateFrom=\"${this.dateFrom}\"\n\t\t\t\t.dateTo=\"${this.dateTo}\"\n\t\t\t\t.minDate=\"${this.minDate}\"\n\t\t\t\t.maxDate=\"${this.maxDate}\"\n\t\t\t\t.activePreset=\"${this.activePreset}\"\n\t\t\t\t.presetCategories=\"${this.presetCategories}\"\n\t\t\t\t@preset-select=\"${(e: CustomEvent) => {\n\t\t\t\t\tthis.activePreset = e.detail.preset.label\n\t\t\t\t\tthis.setDateRange(e.detail.preset.range.dateFrom, e.detail.preset.range.dateTo)\n\t\t\t\t\tthis.closeDropdown()\n\t\t\t\t}}\"\n\t\t\t\t@date-change=\"${() => this.updateSelectedDateRange()}\"\n\t\t\t\t@apply-dates=\"${(e: CustomEvent) => {\n\t\t\t\t\tconst { dateFrom, dateTo, swapIfNeeded } = e.detail\n\t\t\t\t\tif (swapIfNeeded) {\n\t\t\t\t\t\tthis.setDateRange(dateTo, dateFrom)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.setDateRange(dateFrom, dateTo)\n\t\t\t\t\t}\n\t\t\t\t\tthis.closeDropdown()\n\t\t\t\t}}\"\n\t\t\t\t@announce=\"${(e: CustomEvent) => this.announceToScreenReader(e.detail.message)}\"\n\t\t\t></schmancy-date-range-dialog>\n\t\t`\n\n\t\tif (this.isMobile) {\n\t\t\tconst container = document.createElement('div')\n\t\t\trender(dialogContent, container)\n\t\t\tsheet.push({\n\t\t\t\tcomponent: container,\n\t\t\t\tuid: 'date-range-sheet',\n\t\t\t\tclose: () => { this.isOpen = false }\n\t\t\t})\n\t\t} else {\n\t\t\t$dialog.component(dialogContent, {\n\t\t\t\ttitle: 'Select Date Range',\n\t\t\t\thideActions: true,\n\t\t\t\tposition: e\n\t\t\t}).then(() => {\n\t\t\t\tthis.isOpen = false\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate closeDropdown() {\n\t\tif (this.isMobile) {\n\t\t\tsheet.dismiss('date-range-sheet')\n\t\t} else {\n\t\t\t$dialog.dismiss()\n\t\t}\n\t\tthis.isOpen = false\n\t}\n\n\t/**\n\t * Shifts the date range based on the step property\n\t */\n\tprivate shiftDateRange(direction: number, e: Event) {\n\t\te.stopPropagation()\n\n\t\tif (!this.dateFrom.value || !this.dateTo.value) return\n\n\t\tconst fromDate = dayjs(this.dateFrom.value)\n\t\tconst toDate = dayjs(this.dateTo.value)\n\n\t\tif (!fromDate.isValid() || !toDate.isValid()) return\n\n\t\tconst format = this.getDateFormat()\n\t\tconst dir = direction > 0 ? 1 : -1\n\t\tconst daysDiff = toDate.diff(fromDate, 'day') + 1\n\n\t\t// Determine shift amount and unit\n\t\tlet amount: number\n\t\tlet unit: dayjs.ManipulateType\n\n\t\tif (this.step !== undefined) {\n\t\t\tif (typeof this.step === 'number') {\n\t\t\t\tamount = dir * this.step\n\t\t\t\tunit = 'day'\n\t\t\t} else if (this.step === 'day') {\n\t\t\t\tamount = dir * daysDiff\n\t\t\t\tunit = 'day'\n\t\t\t} else {\n\t\t\t\tamount = dir\n\t\t\t\tunit = this.step\n\t\t\t}\n\t\t} else {\n\t\t\t// Auto-detect based on date range\n\t\t\tconst rangeType = detectDateRangeType(fromDate, toDate)\n\t\t\tif (rangeType.isFullYear) {\n\t\t\t\tamount = dir\n\t\t\t\tunit = 'year'\n\t\t\t} else if (rangeType.isFullMonth) {\n\t\t\t\tamount = dir\n\t\t\t\tunit = 'month'\n\t\t\t} else if (rangeType.isFullWeek) {\n\t\t\t\tamount = dir\n\t\t\t\tunit = 'week'\n\t\t\t} else {\n\t\t\t\tamount = dir * daysDiff\n\t\t\t\tunit = 'day'\n\t\t\t}\n\t\t}\n\n\t\tconst newFromDate = fromDate.add(amount, unit)\n\t\tconst newToDate = toDate.add(amount, unit)\n\n\t\t// Validate against min/max dates\n\t\tif (this.minDate && newFromDate.isBefore(dayjs(this.minDate))) return\n\t\tif (this.maxDate && newToDate.isAfter(dayjs(this.maxDate))) return\n\n\t\t// Update the date range\n\t\tthis.setDateRange(newFromDate.format(format), newToDate.format(format))\n\t\tthis.checkAndUpdateActivePreset(newFromDate.format(format), newToDate.format(format))\n\t}\n\n\t/**\n\t * Handle keyboard navigation for accessibility\n\t */\n\tprivate handleKeyboardNavigation(event: KeyboardEvent) {\n\t\tconst key = event.key\n\t\t\n\t\t// Handle date navigation keys\n\t\tif (this.dateFrom.value && this.dateTo.value && !this.disabled) {\n\t\t\tswitch (key) {\n\t\t\t\tcase 'PageUp':\n\t\t\t\t\tif (event.target === this || this.contains(event.target as Node)) {\n\t\t\t\t\t\tthis.shiftDateRange(-1, event)\n\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\tcase 'PageDown':\n\t\t\t\t\tif (event.target === this || this.contains(event.target as Node)) {\n\t\t\t\t\t\tthis.shiftDateRange(1, event)\n\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\tcase 'Home':\n\t\t\t\t\tif (event.ctrlKey && (event.target === this || this.contains(event.target as Node))) {\n\t\t\t\t\t\t// Ctrl+Home: Jump to start of current month\n\t\t\t\t\t\tconst currentFrom = dayjs(this.dateFrom.value)\n\t\t\t\t\t\tconst currentTo = dayjs(this.dateTo.value)\n\t\t\t\t\t\tconst monthStart = currentFrom.startOf('month')\n\t\t\t\t\t\tconst daysDiff = currentTo.diff(currentFrom, 'day')\n\t\t\t\t\t\t\n\t\t\t\t\t\tthis.setDateRange(\n\t\t\t\t\t\t\tmonthStart.format(this.getDateFormat()),\n\t\t\t\t\t\t\tmonthStart.add(daysDiff, 'day').format(this.getDateFormat())\n\t\t\t\t\t\t)\n\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t\tcase 'End':\n\t\t\t\t\tif (event.ctrlKey && (event.target === this || this.contains(event.target as Node))) {\n\t\t\t\t\t\t// Ctrl+End: Jump to end of current month\n\t\t\t\t\t\tconst currentFrom = dayjs(this.dateFrom.value)\n\t\t\t\t\t\tconst currentTo = dayjs(this.dateTo.value)\n\t\t\t\t\t\tconst daysDiff = currentTo.diff(currentFrom, 'day')\n\t\t\t\t\t\tconst monthEnd = currentTo.endOf('month')\n\t\t\t\t\t\t\n\t\t\t\t\t\tthis.setDateRange(\n\t\t\t\t\t\t\tmonthEnd.subtract(daysDiff, 'day').format(this.getDateFormat()),\n\t\t\t\t\t\t\tmonthEnd.format(this.getDateFormat())\n\t\t\t\t\t\t)\n\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t}\n\t\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the current date range matches any predefined preset,\n\t * and updates the activePreset accordingly\n\t */\n\tprivate checkAndUpdateActivePreset(fromDate: string, toDate: string) {\n\t\t// Find a preset that matches the current date range\n\t\tconst matchingPreset = this.presetRanges.find(\n\t\t\tpreset => preset.range.dateFrom === fromDate && preset.range.dateTo === toDate,\n\t\t)\n\n\t\tif (matchingPreset) {\n\t\t\tthis.activePreset = matchingPreset.label\n\t\t} else {\n\t\t\tthis.activePreset = null\n\t\t}\n\t}\n\n\t/**\n\t * Check if view is mobile\n\t */\n\tprivate checkMobileView() {\n\t\tthis.isMobile = window.innerWidth < 768\n\t}\n\n\t/**\n\t * Check if we can navigate backward\n\t */\n\tprivate canNavigateBackward(): boolean {\n\t\tif (!this.dateFrom.value || !this.minDate) return true\n\t\t\n\t\tconst fromDate = dayjs(this.dateFrom.value)\n\t\tconst minDate = dayjs(this.minDate)\n\t\t\n\t\t// If current start date is already at or before min date, can't go back\n\t\treturn fromDate.isAfter(minDate)\n\t}\n\n\t/**\n\t * Check if we can navigate forward\n\t */\n\tprivate canNavigateForward(): boolean {\n\t\tif (!this.dateTo.value || !this.maxDate) return true\n\t\t\n\t\tconst toDate = dayjs(this.dateTo.value)\n\t\tconst maxDate = dayjs(this.maxDate)\n\t\t\n\t\t// If current end date is already at or after max date, can't go forward\n\t\treturn toDate.isBefore(maxDate)\n\t}\n\n\t/**\n\t * Announce messages to screen readers\n\t */\n\tprivate announceToScreenReader(message: string) {\n\t\tthis.announceMessage = message\n\t\t// Clear the message after announcement\n\t\ttimer(100)\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(() => {\n\t\t\t\tthis.announceMessage = ''\n\t\t\t})\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<div class=\"relative ${this.disabled ? 'opacity-60 pointer-events-none' : ''}\">\n\t\t\t\t<!-- Screen reader announcements -->\n\t\t\t\t<div class=\"sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n\t\t\t\t\t${this.announceMessage}\n\t\t\t\t</div>\n\n\t\t\t\t<section @click=${(event: Event) => event.stopPropagation()} class=\"flex\">\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-label=\"Previous ${this.activePreset ? this.activePreset.toLowerCase() : 'date range'}\"\n\t\t\t\t\t\t\t@click=${(e: Event) => this.shiftDateRange(-1, e)}\n\t\t\t\t\t\t\t?disabled=${this.disabled || !this.dateFrom.value || !this.dateTo.value || !this.canNavigateBackward()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_left\n\t\t\t\t\t\t</schmancy-icon-button>\n\n\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\tclass=\"w-max\"\n\t\t\t\t\t\t\tvariant=\"outlined\"\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-haspopup=\"menu\"\n\t\t\t\t\t\t\taria-expanded=${this.isOpen}\n\t\t\t\t\t\t\taria-label=\"Select date range. Current: ${this.selectedDateRange || 'No date selected'}\"\n\t\t\t\t\t\t\taria-readonly=\"${this.step !== undefined}\"\n\t\t\t\t\t\t\t@click=${(e: MouseEvent) => this.toggleDropdown(e)}\n\t\t\t\t\t\t\t?disabled=${this.disabled}\n\t\t\t\t\t\t\tstyle=\"${this.step !== undefined ? 'cursor: default;' : ''}\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t${this.selectedDateRange || this.placeholder}\n\t\t\t\t\t\t</schmancy-button>\n\n\t\t\t\t\t\t<schmancy-icon-button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-label=\"Next ${this.activePreset ? this.activePreset.toLowerCase() : 'date range'}\"\n\t\t\t\t\t\t\t@click=${(e: Event) => this.shiftDateRange(1, e)}\n\t\t\t\t\t\t\t?disabled=${this.disabled || !this.dateFrom.value || !this.dateTo.value || !this.canNavigateForward()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tarrow_right\n\t\t\t\t\t\t</schmancy-icon-button>\n\t\t\t\t</section>\n\t\t\t</div>\n\t\t`\n\t}\n}","import dayjs from 'dayjs'\r\nimport { PresetUnit } from './date-range-presets'\r\n\r\n/**\r\n * Format a date range into a human-readable string\r\n */\r\nexport function formatDateRange(\r\n\tfromValue: string,\r\n\ttoValue: string,\r\n\ttype: 'date' | 'datetime-local',\r\n\tplaceholder: string\r\n): string {\r\n\tif (!fromValue || !toValue) {\r\n\t\treturn placeholder\r\n\t}\r\n\r\n\tconst fromDate = dayjs(fromValue)\r\n\tconst toDate = dayjs(toValue)\r\n\r\n\tif (!fromDate.isValid() || !toDate.isValid()) {\r\n\t\treturn placeholder\r\n\t}\r\n\r\n\t// Format times if needed (for datetime-local)\r\n\tconst fromTime = type === 'datetime-local' ? fromDate.format(' h:mm A') : ''\r\n\tconst toTime = type === 'datetime-local' ? toDate.format(' h:mm A') : ''\r\n\r\n\t// Check if same day\r\n\tif (fromDate.isSame(toDate, 'day')) {\r\n\t\treturn `${fromDate.format('ddd, MMM D, YYYY')}${fromTime}`\r\n\t}\r\n\r\n\t// Check if same month and year\r\n\tif (fromDate.isSame(toDate, 'month') && fromDate.isSame(toDate, 'year')) {\r\n\t\treturn `${fromDate.format('ddd MMM D')} - ${toDate.format('ddd D, YYYY')}${toTime}`\r\n\t}\r\n\r\n\t// Check if same year\r\n\tif (fromDate.isSame(toDate, 'year')) {\r\n\t\treturn `${fromDate.format('ddd MMM D')} - ${toDate.format('ddd MMM D, YYYY')}${toTime}`\r\n\t}\r\n\r\n\t// Different years\r\n\treturn `${fromDate.format('ddd MMM D, YYYY')}${fromTime} - ${toDate.format('ddd MMM D, YYYY')}${toTime}`\r\n}\r\n\r\n/**\r\n * Detect the type of date range (full month, full quarter, etc.)\r\n */\r\nexport interface DateRangeType {\r\n\tisFullMonth: boolean\r\n\tisFullQuarter: boolean\r\n\tisFullYear: boolean\r\n\tisFullWeek: boolean\r\n}\r\n\r\nexport function detectDateRangeType(fromDate: dayjs.Dayjs, toDate: dayjs.Dayjs): DateRangeType {\r\n\treturn {\r\n\t\tisFullMonth: fromDate.date() === 1 && toDate.isSame(fromDate.endOf('month'), 'day'),\r\n\t\tisFullQuarter: fromDate.isSame(fromDate.startOf('quarter'), 'day') && toDate.isSame(toDate.endOf('quarter'), 'day'),\r\n\t\tisFullYear: fromDate.isSame(fromDate.startOf('year'), 'day') && toDate.isSame(toDate.endOf('year'), 'day'),\r\n\t\tisFullWeek: fromDate.day() === 0 && toDate.day() === 6 && toDate.diff(fromDate, 'days') === 6,\r\n\t}\r\n}\r\n\r\n/**\r\n * Calculate the appropriate shift unit and amount for a date range\r\n */\r\nexport function calculateShiftParams(\r\n\tfromDate: dayjs.Dayjs,\r\n\ttoDate: dayjs.Dayjs,\r\n\tactivePresetStep?: PresetUnit\r\n): { unit: PresetUnit; amount: number } {\r\n\tif (activePresetStep) {\r\n\t\treturn { unit: activePresetStep, amount: 1 }\r\n\t}\r\n\r\n\tconst rangeDurationInDays = toDate.diff(fromDate, 'day')\r\n\r\n\t// For very long ranges, use years\r\n\tif (rangeDurationInDays >= 360) {\r\n\t\treturn { unit: 'year', amount: Math.round(rangeDurationInDays / 365) }\r\n\t}\r\n\t// For long ranges, use quarters\r\n\telse if (rangeDurationInDays >= 90) {\r\n\t\treturn { unit: 'quarter', amount: Math.round(rangeDurationInDays / 90) }\r\n\t}\r\n\t// For medium-long ranges, use months\r\n\telse if (rangeDurationInDays >= 30) {\r\n\t\treturn { unit: 'month', amount: Math.round(rangeDurationInDays / 30) }\r\n\t}\r\n\t// For medium ranges, use weeks\r\n\telse if (rangeDurationInDays >= 7) {\r\n\t\treturn { unit: 'week', amount: Math.round(rangeDurationInDays / 7) }\r\n\t}\r\n\t// For shorter ranges, use days\r\n\telse {\r\n\t\treturn { unit: 'day', amount: rangeDurationInDays + 1 }\r\n\t}\r\n}\r\n\r\n/**\r\n * Helper method to safely add/subtract quarter values\r\n */\r\nexport function adjustQuarter(date: dayjs.Dayjs, amount: number, direction: 1 | -1): dayjs.Dayjs {\r\n\t// Get current quarter (1-4)\r\n\tconst currentQuarter = date.quarter()\r\n\r\n\t// Calculate new quarter\r\n\tlet newQuarter = currentQuarter + direction * amount\r\n\tlet yearAdjustment = 0\r\n\r\n\t// Handle year boundaries\r\n\twhile (newQuarter > 4) {\r\n\t\tnewQuarter -= 4\r\n\t\tyearAdjustment += 1\r\n\t}\r\n\r\n\twhile (newQuarter < 1) {\r\n\t\tnewQuarter += 4\r\n\t\tyearAdjustment -= 1\r\n\t}\r\n\r\n\t// Adjust year if needed\r\n\tconst adjustedDate = date.add(yearAdjustment, 'year')\r\n\r\n\t// Set to the start of the new quarter\r\n\tconst newDate = adjustedDate.month((newQuarter - 1) * 3)\r\n\r\n\t// Maintain the same day of month if possible\r\n\tconst daysInMonth = newDate.daysInMonth()\r\n\tconst targetDay = Math.min(date.date(), daysInMonth)\r\n\r\n\treturn newDate.date(targetDay)\r\n}"],"names":["t","e","n","r","i","s","u","a","o","c","f","h","d","l","$","y","M","name","weekdays","split","months","ordinal","m","String","length","Array","join","v","z","utcOffset","Math","abs","floor","date","year","month","clone","add","ceil","p","w","D","ms","Q","toLowerCase","replace","g","S","_","O","args","arguments","b","locale","$L","utc","$u","x","$x","$offset","this","parse","prototype","$d","Date","NaN","test","match","substring","UTC","init","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","toString","isSame","startOf","endOf","isAfter","isBefore","$g","set","unix","valueOf","getTime","toDate","apply","slice","$locale","weekStart","$set","min","daysInMonth","get","Number","round","subtract","format","invalidDate","meridiem","monthsShort","weekdaysMin","weekdaysShort","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","k","forEach","extend","$i","isDayjs","en","Ls","quarter","bind","generateLastNDaysPresets","days","map","label","range","dateFrom","dayjs","dateTo","step","generateLastNWeeksPresets","weeks","generateLastNMonthsPresets","generateLastNQuartersPresets","quarters","enforceDateFormat","dateString","expectedFormat","parsedDate","validateInitialDateRange","formattedDateFrom","formattedDateTo","SchmancyDateRangeDialog","$LitElement","constructor","super","type","value","activePreset","presetCategories","allPresets","flatMap","presets","quickSelect","find","filter","periods","yearToDate","groups","push","input","target","dispatchEvent","CustomEvent","detail","bubbles","composed","preset","stopPropagation","$dialog","dismiss","fromDate","swapIfNeeded","message","presetGroups","getPresetGroups","html","repeat","group","handlePresetSelection","ifDefined","minDate","maxDate","handleFromDateChange","handleToDateChange","applyManualDateSelection","__decorateClass","property","Object","customElement","quarterOfYear","SchmancyDateRange","customPresets","disabled","required","placeholder","clearable","isOpen","selectedDateRange","announceMessage","isMobile","presetRanges","memoizedPresets","Map","disconnectedCallback","connectedCallback","initPresetRanges","checkMobileView","dateFormat","getDateFormat","validatedRange","updateSelectedDateRange","now","setupEventHandlers","fromEvent","document","pipe","takeUntil","disconnecting","subscribe","event","handleKeyboardNavigation","window","debounceTime","changedProps","updated","has","cacheKey","JSON","stringify","cached","category","includeTime","categories","customCategory","checkAndUpdateActivePreset","fromValue","toValue","fromTime","toTime","announceToScreenReader","closeDropdown","openDropdown","dialogContent","setDateRange","container","createElement","render","sheet","component","uid","close","title","hideActions","position","then","direction","dir","daysDiff","amount","unit","rangeType","isFullMonth","isFullQuarter","isFullYear","isFullWeek","day","newFromDate","newToDate","key","contains","shiftDateRange","preventDefault","ctrlKey","currentFrom","currentTo","monthStart","monthEnd","matchingPreset","innerWidth","canNavigateBackward","canNavigateForward","timer","toggleDropdown","Boolean","state"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";const d=require("lit"),o=require("lit/decorators.js");require("rxjs"),require("rxjs/operators"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const m=require("./formField.mixin-BfJMifU9.cjs");require("./tailwind.mixin-Cp4PyXok.cjs");var l=Object.defineProperty,D=Object.getOwnPropertyDescriptor,n=(a,t,i,r)=>{for(var s,h=r>1?void 0:r?D(t,i):t,e=a.length-1;e>=0;e--)(s=a[e])&&(h=(r?s(t,i,h):s(h))||h);return r&&h&&l(t,i,h),h};exports.SchmancyDateRangeInline=class extends m.SchmancyFormField(){constructor(){super(...arguments),this.type="date",this.dateFrom={label:"From",value:""},this.dateTo={label:"To",value:""},this.compact=!1,this.autoCorrect=!0,this.minGap=0,this.defaultGap=1,this.allowSameDate=!1,this.validationState={dateFromError:"",dateToError:"",rangeError:""}}connectedCallback(){super.connectedCallback(),this.dateFrom.value||this.dateTo.value?this.validateAndCorrect():this.setSmartDefaults()}setSmartDefaults(){const a=new Date,t=new Date(a);t.setDate(t.getDate()+this.defaultGap);const i=this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD";this.dateFrom={...this.dateFrom,value:this.formatDate(a,i)},this.dateTo={...this.dateTo,value:this.formatDate(t,i)}}formatDate(a,t){const i=a.getFullYear(),r=String(a.getMonth()+1).padStart(2,"0"),s=String(a.getDate()).padStart(2,"0");return t==="YYYY-MM-DD"?`${i}-${r}-${s}`:`${i}-${r}-${s}T${String(a.getHours()).padStart(2,"0")}:${String(a.getMinutes()).padStart(2,"0")}`}parseDate(a){if(!a)return null;const t=new Date(a);return isNaN(t.getTime())?null:t}getDaysBetween(a,t){return Math.floor((t.getTime()-a.getTime())/864e5)}handleDateFromChange(a){const t=a.target.value;if(this.dateFrom={...this.dateFrom,value:t},this.validationState={...this.validationState,dateFromError:"",rangeError:""},!t)return this.required?(this.validationState={...this.validationState,dateFromError:"Start date is required"},void(this.error=!0)):void this.emitChange();this.validateAndCorrect("from")}handleDateToChange(a){const t=a.target.value;if(this.dateTo={...this.dateTo,value:t},this.validationState={...this.validationState,dateToError:"",rangeError:""},!t)return this.required?(this.validationState={...this.validationState,dateToError:"End date is required"},void(this.error=!0)):void this.emitChange();this.validateAndCorrect("to")}validateAndCorrect(a){const t=this.parseDate(this.dateFrom.value),i=this.parseDate(this.dateTo.value);let r=!1;const s={dateFromError:"",dateToError:"",rangeError:""};if(this.dateFrom.value&&!t&&(s.dateFromError="Invalid date format",r=!0),this.dateTo.value&&!i&&(s.dateToError="Invalid date format",r=!0),t&&i){const h=this.getDaysBetween(t,i);if(t>i){if(this.autoCorrect){if(a==="from"){const e=new Date(t);e.setDate(e.getDate()+this.defaultGap),this.dateTo={...this.dateTo,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}else if(a==="to"){const e=new Date(i);e.setDate(e.getDate()-this.defaultGap),this.dateFrom={...this.dateFrom,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}else{const e=this.dateFrom.value;this.dateFrom={...this.dateFrom,value:this.dateTo.value},this.dateTo={...this.dateTo,value:e}}return void this.validateAndCorrect()}s.rangeError="End date must be after start date",r=!0}if(!this.allowSameDate&&h===0){if(this.autoCorrect&&a){if(a==="from"){const e=new Date(t);e.setDate(e.getDate()+this.defaultGap),this.dateTo={...this.dateTo,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}else{const e=new Date(i);e.setDate(e.getDate()-this.defaultGap),this.dateFrom={...this.dateFrom,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}return void this.validateAndCorrect()}s.rangeError="Start and end dates cannot be the same",r=!0}if(this.minGap>0&&h<this.minGap){if(this.autoCorrect&&a){if(a==="from"){const e=new Date(t);e.setDate(e.getDate()+this.minGap),this.dateTo={...this.dateTo,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}else{const e=new Date(i);e.setDate(e.getDate()-this.minGap),this.dateFrom={...this.dateFrom,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}return void this.validateAndCorrect()}s.rangeError=`Minimum ${this.minGap} day${this.minGap>1?"s":""} required between dates`,r=!0}if(this.maxGap!==void 0&&h>this.maxGap){if(this.autoCorrect&&a){if(a==="from"){const e=new Date(t);e.setDate(e.getDate()+this.maxGap),this.dateTo={...this.dateTo,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}else{const e=new Date(i);e.setDate(e.getDate()-this.maxGap),this.dateFrom={...this.dateFrom,value:this.formatDate(e,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}}return void this.validateAndCorrect()}s.rangeError=`Maximum ${this.maxGap} day${this.maxGap>1?"s":""} allowed between dates`,r=!0}if(this.minDate){const e=this.parseDate(this.minDate);e&&t<e&&(s.dateFromError="Date is before minimum allowed date",r=!0)}if(this.maxDate){const e=this.parseDate(this.maxDate);e&&i>e&&(s.dateToError="Date is after maximum allowed date",r=!0)}}this.validationState=s,this.error=r,this.emitChange()}getComputedMinDateTo(){if(!this.dateFrom.value)return this.minDate;const a=this.parseDate(this.dateFrom.value);if(!a)return this.minDate;const t=new Date(a);if(this.allowSameDate||t.setDate(t.getDate()+1),this.minGap>0&&t.setDate(a.getDate()+this.minGap),this.minDate){const i=this.parseDate(this.minDate);if(i&&i>t)return this.minDate}return this.formatDate(t,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}getComputedMaxDateFrom(){if(!this.dateTo.value)return this.maxDate;const a=this.parseDate(this.dateTo.value);if(!a)return this.maxDate;const t=new Date(a);if(this.allowSameDate||t.setDate(t.getDate()-1),this.minGap>0&&t.setDate(a.getDate()-this.minGap),this.maxDate){const i=this.parseDate(this.maxDate);if(i&&i<t)return this.maxDate}return this.formatDate(t,this.type==="datetime-local"?"YYYY-MM-DDTHH:mm":"YYYY-MM-DD")}emitChange(){const a=!(this.error||!this.dateFrom.value||!this.dateTo.value||this.validationState.dateFromError||this.validationState.dateToError||this.validationState.rangeError);this.dispatchEvent(new CustomEvent("change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value,isValid:a},bubbles:!0,composed:!0}))}render(){const a=this.validationState.dateFromError||this.validationState.rangeError,t=this.validationState.dateToError||this.validationState.rangeError;return d.html`
|
|
2
|
-
<div class="w-full">
|
|
3
|
-
<div class="flex items-start gap-2 w-full">
|
|
4
|
-
<div class="flex-1">
|
|
5
|
-
<schmancy-input
|
|
6
|
-
.type=${this.type}
|
|
7
|
-
.label=${this.dateFrom.label}
|
|
8
|
-
.value=${this.dateFrom.value}
|
|
9
|
-
.min=${this.minDate}
|
|
10
|
-
.max=${this.getComputedMaxDateFrom()}
|
|
11
|
-
@change=${this.handleDateFromChange}
|
|
12
|
-
.error=${!!a}
|
|
13
|
-
.hint=${a||""}
|
|
14
|
-
.required=${this.required}
|
|
15
|
-
.disabled=${this.disabled}
|
|
16
|
-
size=${this.compact?"sm":"md"}
|
|
17
|
-
></schmancy-input>
|
|
18
|
-
</div>
|
|
19
|
-
|
|
20
|
-
<div class="flex items-center justify-center ${this.compact?"pt-8":"pt-10"} px-1">
|
|
21
|
-
<schmancy-icon class="text-surface-onVariant opacity-50">
|
|
22
|
-
arrow_forward
|
|
23
|
-
</schmancy-icon>
|
|
24
|
-
</div>
|
|
25
|
-
|
|
26
|
-
<div class="flex-1">
|
|
27
|
-
<schmancy-input
|
|
28
|
-
.type=${this.type}
|
|
29
|
-
.label=${this.dateTo.label}
|
|
30
|
-
.value=${this.dateTo.value}
|
|
31
|
-
.min=${this.getComputedMinDateTo()}
|
|
32
|
-
.max=${this.maxDate}
|
|
33
|
-
@change=${this.handleDateToChange}
|
|
34
|
-
.error=${!!t}
|
|
35
|
-
.hint=${t||""}
|
|
36
|
-
.required=${this.required}
|
|
37
|
-
.disabled=${this.disabled}
|
|
38
|
-
size=${this.compact?"sm":"md"}
|
|
39
|
-
></schmancy-input>
|
|
40
|
-
</div>
|
|
41
|
-
</div>
|
|
42
|
-
</div>
|
|
43
|
-
`}},n([o.property({type:String})],exports.SchmancyDateRangeInline.prototype,"type",2),n([o.property({type:Object})],exports.SchmancyDateRangeInline.prototype,"dateFrom",2),n([o.property({type:Object})],exports.SchmancyDateRangeInline.prototype,"dateTo",2),n([o.property({type:String})],exports.SchmancyDateRangeInline.prototype,"minDate",2),n([o.property({type:String})],exports.SchmancyDateRangeInline.prototype,"maxDate",2),n([o.property({type:Boolean})],exports.SchmancyDateRangeInline.prototype,"compact",2),n([o.property({type:Boolean})],exports.SchmancyDateRangeInline.prototype,"autoCorrect",2),n([o.property({type:Number})],exports.SchmancyDateRangeInline.prototype,"minGap",2),n([o.property({type:Number})],exports.SchmancyDateRangeInline.prototype,"maxGap",2),n([o.property({type:Number})],exports.SchmancyDateRangeInline.prototype,"defaultGap",2),n([o.property({type:Boolean})],exports.SchmancyDateRangeInline.prototype,"allowSameDate",2),n([o.state()],exports.SchmancyDateRangeInline.prototype,"validationState",2),exports.SchmancyDateRangeInline=n([o.customElement("schmancy-date-range-inline")],exports.SchmancyDateRangeInline);
|
|
44
|
-
//# sourceMappingURL=date-range-inline-CgX2o0FP.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date-range-inline-CgX2o0FP.cjs","sources":["../src/date-range-inline/date-range-inline.ts"],"sourcesContent":["import { html } from 'lit'\r\nimport { customElement, property, state } from 'lit/decorators.js'\r\nimport { SchmancyFormField } from '@mixins/index'\r\n\r\ndeclare global {\r\n\tinterface HTMLElementTagNameMap {\r\n\t\t'schmancy-date-range-inline': SchmancyDateRangeInline\r\n\t}\r\n}\r\n\r\nexport type SchmancyDateRangeInlineChangeEvent = CustomEvent<{\r\n\tdateFrom: string\r\n\tdateTo: string\r\n\tisValid: boolean\r\n}>\r\n\r\n/**\r\n * Smart inline date range picker that handles all the heavy lifting.\r\n * Auto-corrects invalid ranges, provides smart defaults, and validates dates.\r\n */\r\n@customElement('schmancy-date-range-inline')\r\nexport default class SchmancyDateRangeInline extends SchmancyFormField() {\r\n\t/**\r\n\t * Input type - 'date' or 'datetime-local'\r\n\t */\r\n\t@property({ type: String })\r\n\ttype: 'date' | 'datetime-local' = 'date'\r\n\r\n\t/**\r\n\t * From date configuration\r\n\t */\r\n\t@property({ type: Object })\r\n\tdateFrom: { label: string; value: string } = { label: 'From', value: '' }\r\n\r\n\t/**\r\n\t * To date configuration\r\n\t */\r\n\t@property({ type: Object })\r\n\tdateTo: { label: string; value: string } = { label: 'To', value: '' }\r\n\r\n\t/**\r\n\t * Minimum allowed date\r\n\t */\r\n\t@property({ type: String })\r\n\tminDate?: string\r\n\r\n\t/**\r\n\t * Maximum allowed date\r\n\t */\r\n\t@property({ type: String })\r\n\tmaxDate?: string\r\n\r\n\t/**\r\n\t * Compact mode for smaller UI\r\n\t */\r\n\t@property({ type: Boolean })\r\n\tcompact = false\r\n\r\n\t/**\r\n\t * Auto-correct invalid date ranges\r\n\t */\r\n\t@property({ type: Boolean })\r\n\tautoCorrect = true\r\n\r\n\t/**\r\n\t * Minimum gap between dates (in days)\r\n\t */\r\n\t@property({ type: Number })\r\n\tminGap = 0\r\n\r\n\t/**\r\n\t * Maximum gap between dates (in days)\r\n\t */\r\n\t@property({ type: Number })\r\n\tmaxGap?: number\r\n\r\n\t/**\r\n\t * Default gap when auto-setting dates (in days)\r\n\t */\r\n\t@property({ type: Number })\r\n\tdefaultGap = 1\r\n\r\n\t/**\r\n\t * Whether to allow same date selection\r\n\t */\r\n\t@property({ type: Boolean })\r\n\tallowSameDate = false\r\n\r\n\t/**\r\n\t * Internal validation state\r\n\t */\r\n\t@state()\r\n\tprivate validationState = {\r\n\t\tdateFromError: '',\r\n\t\tdateToError: '',\r\n\t\trangeError: ''\r\n\t}\r\n\r\n\tconnectedCallback() {\r\n\t\tsuper.connectedCallback()\r\n\t\t// Initialize with smart defaults if no values provided\r\n\t\tif (!this.dateFrom.value && !this.dateTo.value) {\r\n\t\t\tthis.setSmartDefaults()\r\n\t\t} else {\r\n\t\t\t// Validate initial values\r\n\t\t\tthis.validateAndCorrect()\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Set smart default dates based on context\r\n\t */\r\n\tprivate setSmartDefaults() {\r\n\t\tconst today = new Date()\r\n\t\tconst tomorrow = new Date(today)\r\n\t\ttomorrow.setDate(tomorrow.getDate() + this.defaultGap)\r\n\r\n\t\tconst format = this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD'\r\n\t\t\r\n\t\tthis.dateFrom = {\r\n\t\t\t...this.dateFrom,\r\n\t\t\tvalue: this.formatDate(today, format)\r\n\t\t}\r\n\t\t\r\n\t\tthis.dateTo = {\r\n\t\t\t...this.dateTo,\r\n\t\t\tvalue: this.formatDate(tomorrow, format)\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Format date to required string format\r\n\t */\r\n\tprivate formatDate(date: Date, format: string): string {\r\n\t\tconst year = date.getFullYear()\r\n\t\tconst month = String(date.getMonth() + 1).padStart(2, '0')\r\n\t\tconst day = String(date.getDate()).padStart(2, '0')\r\n\t\t\r\n\t\tif (format === 'YYYY-MM-DD') {\r\n\t\t\treturn `${year}-${month}-${day}`\r\n\t\t} else {\r\n\t\t\tconst hours = String(date.getHours()).padStart(2, '0')\r\n\t\t\tconst minutes = String(date.getMinutes()).padStart(2, '0')\r\n\t\t\treturn `${year}-${month}-${day}T${hours}:${minutes}`\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Parse date string to Date object\r\n\t */\r\n\tprivate parseDate(dateStr: string): Date | null {\r\n\t\tif (!dateStr) return null\r\n\t\tconst date = new Date(dateStr)\r\n\t\treturn isNaN(date.getTime()) ? null : date\r\n\t}\r\n\r\n\t/**\r\n\t * Calculate days between two dates\r\n\t */\r\n\tprivate getDaysBetween(date1: Date, date2: Date): number {\r\n\t\tconst msPerDay = 24 * 60 * 60 * 1000\r\n\t\treturn Math.floor((date2.getTime() - date1.getTime()) / msPerDay)\r\n\t}\r\n\r\n\t/**\r\n\t * Handle from date change with validation and auto-correction\r\n\t */\r\n\tprivate handleDateFromChange(e: Event) {\r\n\t\tconst input = e.target as HTMLInputElement\r\n\t\tconst newValue = input.value\r\n\r\n\t\t// Update the value\r\n\t\tthis.dateFrom = { ...this.dateFrom, value: newValue }\r\n\r\n\t\t// Clear previous errors\r\n\t\tthis.validationState = { ...this.validationState, dateFromError: '', rangeError: '' }\r\n\r\n\t\tif (!newValue) {\r\n\t\t\t// Allow empty for optional fields\r\n\t\t\tif (!this.required) {\r\n\t\t\t\tthis.emitChange()\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\tthis.validationState = { ...this.validationState, dateFromError: 'Start date is required' }\r\n\t\t\tthis.error = true\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\t// Validate and potentially auto-correct\r\n\t\tthis.validateAndCorrect('from')\r\n\t}\r\n\r\n\t/**\r\n\t * Handle to date change with validation and auto-correction\r\n\t */\r\n\tprivate handleDateToChange(e: Event) {\r\n\t\tconst input = e.target as HTMLInputElement\r\n\t\tconst newValue = input.value\r\n\r\n\t\t// Update the value\r\n\t\tthis.dateTo = { ...this.dateTo, value: newValue }\r\n\r\n\t\t// Clear previous errors\r\n\t\tthis.validationState = { ...this.validationState, dateToError: '', rangeError: '' }\r\n\r\n\t\tif (!newValue) {\r\n\t\t\t// Allow empty for optional fields\r\n\t\t\tif (!this.required) {\r\n\t\t\t\tthis.emitChange()\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\tthis.validationState = { ...this.validationState, dateToError: 'End date is required' }\r\n\t\t\tthis.error = true\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\t// Validate and potentially auto-correct\r\n\t\tthis.validateAndCorrect('to')\r\n\t}\r\n\r\n\t/**\r\n\t * Validate dates and auto-correct if enabled\r\n\t */\r\n\tprivate validateAndCorrect(changedField?: 'from' | 'to') {\r\n\t\tconst fromDate = this.parseDate(this.dateFrom.value)\r\n\t\tconst toDate = this.parseDate(this.dateTo.value)\r\n\r\n\t\t// Reset validation state\r\n\t\tlet hasError = false\r\n\t\tconst newValidationState = { dateFromError: '', dateToError: '', rangeError: '' }\r\n\r\n\t\t// Validate individual dates\r\n\t\tif (this.dateFrom.value && !fromDate) {\r\n\t\t\tnewValidationState.dateFromError = 'Invalid date format'\r\n\t\t\thasError = true\r\n\t\t}\r\n\r\n\t\tif (this.dateTo.value && !toDate) {\r\n\t\t\tnewValidationState.dateToError = 'Invalid date format'\r\n\t\t\thasError = true\r\n\t\t}\r\n\r\n\t\t// If both dates are valid, check range constraints\r\n\t\tif (fromDate && toDate) {\r\n\t\t\tconst daysBetween = this.getDaysBetween(fromDate, toDate)\r\n\r\n\t\t\t// Check if from date is after to date\r\n\t\t\tif (fromDate > toDate) {\r\n\t\t\t\tif (this.autoCorrect) {\r\n\t\t\t\t\t// Auto-correct based on which field changed\r\n\t\t\t\t\tif (changedField === 'from') {\r\n\t\t\t\t\t\t// User changed from date, adjust to date\r\n\t\t\t\t\t\tconst newToDate = new Date(fromDate)\r\n\t\t\t\t\t\tnewToDate.setDate(newToDate.getDate() + this.defaultGap)\r\n\t\t\t\t\t\tthis.dateTo = {\r\n\t\t\t\t\t\t\t...this.dateTo,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newToDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (changedField === 'to') {\r\n\t\t\t\t\t\t// User changed to date, adjust from date\r\n\t\t\t\t\t\tconst newFromDate = new Date(toDate)\r\n\t\t\t\t\t\tnewFromDate.setDate(newFromDate.getDate() - this.defaultGap)\r\n\t\t\t\t\t\tthis.dateFrom = {\r\n\t\t\t\t\t\t\t...this.dateFrom,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newFromDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// No specific field changed, swap them\r\n\t\t\t\t\t\tconst tempValue = this.dateFrom.value\r\n\t\t\t\t\t\tthis.dateFrom = { ...this.dateFrom, value: this.dateTo.value }\r\n\t\t\t\t\t\tthis.dateTo = { ...this.dateTo, value: tempValue }\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Re-validate after correction\r\n\t\t\t\t\tthis.validateAndCorrect()\r\n\t\t\t\t\treturn\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnewValidationState.rangeError = 'End date must be after start date'\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check same date constraint\r\n\t\t\tif (!this.allowSameDate && daysBetween === 0) {\r\n\t\t\t\tif (this.autoCorrect && changedField) {\r\n\t\t\t\t\t// Auto-correct by adjusting the other date\r\n\t\t\t\t\tif (changedField === 'from') {\r\n\t\t\t\t\t\tconst newToDate = new Date(fromDate)\r\n\t\t\t\t\t\tnewToDate.setDate(newToDate.getDate() + this.defaultGap)\r\n\t\t\t\t\t\tthis.dateTo = {\r\n\t\t\t\t\t\t\t...this.dateTo,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newToDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconst newFromDate = new Date(toDate)\r\n\t\t\t\t\t\tnewFromDate.setDate(newFromDate.getDate() - this.defaultGap)\r\n\t\t\t\t\t\tthis.dateFrom = {\r\n\t\t\t\t\t\t\t...this.dateFrom,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newFromDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Re-validate after correction\r\n\t\t\t\t\tthis.validateAndCorrect()\r\n\t\t\t\t\treturn\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnewValidationState.rangeError = 'Start and end dates cannot be the same'\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check minimum gap\r\n\t\t\tif (this.minGap > 0 && daysBetween < this.minGap) {\r\n\t\t\t\tif (this.autoCorrect && changedField) {\r\n\t\t\t\t\t// Auto-correct to maintain minimum gap\r\n\t\t\t\t\tif (changedField === 'from') {\r\n\t\t\t\t\t\tconst newToDate = new Date(fromDate)\r\n\t\t\t\t\t\tnewToDate.setDate(newToDate.getDate() + this.minGap)\r\n\t\t\t\t\t\tthis.dateTo = {\r\n\t\t\t\t\t\t\t...this.dateTo,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newToDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconst newFromDate = new Date(toDate)\r\n\t\t\t\t\t\tnewFromDate.setDate(newFromDate.getDate() - this.minGap)\r\n\t\t\t\t\t\tthis.dateFrom = {\r\n\t\t\t\t\t\t\t...this.dateFrom,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newFromDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Re-validate after correction\r\n\t\t\t\t\tthis.validateAndCorrect()\r\n\t\t\t\t\treturn\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnewValidationState.rangeError = `Minimum ${this.minGap} day${this.minGap > 1 ? 's' : ''} required between dates`\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check maximum gap\r\n\t\t\tif (this.maxGap !== undefined && daysBetween > this.maxGap) {\r\n\t\t\t\tif (this.autoCorrect && changedField) {\r\n\t\t\t\t\t// Auto-correct to maintain maximum gap\r\n\t\t\t\t\tif (changedField === 'from') {\r\n\t\t\t\t\t\tconst newToDate = new Date(fromDate)\r\n\t\t\t\t\t\tnewToDate.setDate(newToDate.getDate() + this.maxGap)\r\n\t\t\t\t\t\tthis.dateTo = {\r\n\t\t\t\t\t\t\t...this.dateTo,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newToDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tconst newFromDate = new Date(toDate)\r\n\t\t\t\t\t\tnewFromDate.setDate(newFromDate.getDate() - this.maxGap)\r\n\t\t\t\t\t\tthis.dateFrom = {\r\n\t\t\t\t\t\t\t...this.dateFrom,\r\n\t\t\t\t\t\t\tvalue: this.formatDate(newFromDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Re-validate after correction\r\n\t\t\t\t\tthis.validateAndCorrect()\r\n\t\t\t\t\treturn\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnewValidationState.rangeError = `Maximum ${this.maxGap} day${this.maxGap > 1 ? 's' : ''} allowed between dates`\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check against min/max date constraints\r\n\t\t\tif (this.minDate) {\r\n\t\t\t\tconst minDateObj = this.parseDate(this.minDate)\r\n\t\t\t\tif (minDateObj && fromDate < minDateObj) {\r\n\t\t\t\t\tnewValidationState.dateFromError = 'Date is before minimum allowed date'\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (this.maxDate) {\r\n\t\t\t\tconst maxDateObj = this.parseDate(this.maxDate)\r\n\t\t\t\tif (maxDateObj && toDate > maxDateObj) {\r\n\t\t\t\t\tnewValidationState.dateToError = 'Date is after maximum allowed date'\r\n\t\t\t\t\thasError = true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Update validation state\r\n\t\tthis.validationState = newValidationState\r\n\t\tthis.error = hasError\r\n\r\n\t\t// Emit change event with validation status\r\n\t\tthis.emitChange()\r\n\t}\r\n\r\n\t/**\r\n\t * Get computed min date for the \"to\" field based on \"from\" value\r\n\t */\r\n\tprivate getComputedMinDateTo(): string | undefined {\r\n\t\tif (!this.dateFrom.value) return this.minDate\r\n\r\n\t\tconst fromDate = this.parseDate(this.dateFrom.value)\r\n\t\tif (!fromDate) return this.minDate\r\n\r\n\t\t// Calculate minimum date based on constraints\r\n\t\tconst minToDate = new Date(fromDate)\r\n\t\t\r\n\t\tif (!this.allowSameDate) {\r\n\t\t\tminToDate.setDate(minToDate.getDate() + 1)\r\n\t\t}\r\n\t\t\r\n\t\tif (this.minGap > 0) {\r\n\t\t\tminToDate.setDate(fromDate.getDate() + this.minGap)\r\n\t\t}\r\n\r\n\t\t// Compare with global minDate if set\r\n\t\tif (this.minDate) {\r\n\t\t\tconst globalMin = this.parseDate(this.minDate)\r\n\t\t\tif (globalMin && globalMin > minToDate) {\r\n\t\t\t\treturn this.minDate\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this.formatDate(minToDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t}\r\n\r\n\t/**\r\n\t * Get computed max date for the \"from\" field based on \"to\" value\r\n\t */\r\n\tprivate getComputedMaxDateFrom(): string | undefined {\r\n\t\tif (!this.dateTo.value) return this.maxDate\r\n\r\n\t\tconst toDate = this.parseDate(this.dateTo.value)\r\n\t\tif (!toDate) return this.maxDate\r\n\r\n\t\t// Calculate maximum date based on constraints\r\n\t\tconst maxFromDate = new Date(toDate)\r\n\t\t\r\n\t\tif (!this.allowSameDate) {\r\n\t\t\tmaxFromDate.setDate(maxFromDate.getDate() - 1)\r\n\t\t}\r\n\t\t\r\n\t\tif (this.minGap > 0) {\r\n\t\t\tmaxFromDate.setDate(toDate.getDate() - this.minGap)\r\n\t\t}\r\n\r\n\t\t// Compare with global maxDate if set\r\n\t\tif (this.maxDate) {\r\n\t\t\tconst globalMax = this.parseDate(this.maxDate)\r\n\t\t\tif (globalMax && globalMax < maxFromDate) {\r\n\t\t\t\treturn this.maxDate\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn this.formatDate(maxFromDate, this.type === 'datetime-local' ? 'YYYY-MM-DDTHH:mm' : 'YYYY-MM-DD')\r\n\t}\r\n\r\n\temitChange() {\r\n\t\tconst isValid = !this.error && \r\n\t\t\t!!this.dateFrom.value && \r\n\t\t\t!!this.dateTo.value && \r\n\t\t\t!this.validationState.dateFromError && \r\n\t\t\t!this.validationState.dateToError && \r\n\t\t\t!this.validationState.rangeError\r\n\r\n\t\tthis.dispatchEvent(new CustomEvent<SchmancyDateRangeInlineChangeEvent['detail']>('change', {\r\n\t\t\tdetail: {\r\n\t\t\t\tdateFrom: this.dateFrom.value,\r\n\t\t\t\tdateTo: this.dateTo.value,\r\n\t\t\t\tisValid\r\n\t\t\t},\r\n\t\t\tbubbles: true,\r\n\t\t\tcomposed: true\r\n\t\t}))\r\n\t}\r\n\r\n\tprotected render() {\r\n\t\t// Determine which error to show on each input\r\n\t\tconst fromError = this.validationState.dateFromError || this.validationState.rangeError\r\n\t\tconst toError = this.validationState.dateToError || this.validationState.rangeError\r\n\r\n\t\treturn html`\r\n\t\t\t<div class=\"w-full\">\r\n\t\t\t\t<div class=\"flex items-start gap-2 w-full\">\r\n\t\t\t\t\t<div class=\"flex-1\">\r\n\t\t\t\t\t\t<schmancy-input\r\n\t\t\t\t\t\t\t.type=${this.type}\r\n\t\t\t\t\t\t\t.label=${this.dateFrom.label}\r\n\t\t\t\t\t\t\t.value=${this.dateFrom.value}\r\n\t\t\t\t\t\t\t.min=${this.minDate}\r\n\t\t\t\t\t\t\t.max=${this.getComputedMaxDateFrom()}\r\n\t\t\t\t\t\t\t@change=${this.handleDateFromChange}\r\n\t\t\t\t\t\t\t.error=${!!fromError}\r\n\t\t\t\t\t\t\t.hint=${fromError || ''}\r\n\t\t\t\t\t\t\t.required=${this.required}\r\n\t\t\t\t\t\t\t.disabled=${this.disabled}\r\n\t\t\t\t\t\t\tsize=${this.compact ? 'sm' : 'md'}\r\n\t\t\t\t\t\t></schmancy-input>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"flex items-center justify-center ${this.compact ? 'pt-8' : 'pt-10'} px-1\">\r\n\t\t\t\t\t\t<schmancy-icon class=\"text-surface-onVariant opacity-50\">\r\n\t\t\t\t\t\t\tarrow_forward\r\n\t\t\t\t\t\t</schmancy-icon>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"flex-1\">\r\n\t\t\t\t\t\t<schmancy-input\r\n\t\t\t\t\t\t\t.type=${this.type}\r\n\t\t\t\t\t\t\t.label=${this.dateTo.label}\r\n\t\t\t\t\t\t\t.value=${this.dateTo.value}\r\n\t\t\t\t\t\t\t.min=${this.getComputedMinDateTo()}\r\n\t\t\t\t\t\t\t.max=${this.maxDate}\r\n\t\t\t\t\t\t\t@change=${this.handleDateToChange}\r\n\t\t\t\t\t\t\t.error=${!!toError}\r\n\t\t\t\t\t\t\t.hint=${toError || ''}\r\n\t\t\t\t\t\t\t.required=${this.required}\r\n\t\t\t\t\t\t\t.disabled=${this.disabled}\r\n\t\t\t\t\t\t\tsize=${this.compact ? 'sm' : 'md'}\r\n\t\t\t\t\t\t></schmancy-input>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t`\r\n\t}\r\n}"],"names":["SchmancyDateRangeInline","SchmancyFormField","constructor","super","arguments","this","type","dateFrom","label","value","dateTo","compact","autoCorrect","minGap","defaultGap","allowSameDate","validationState","dateFromError","dateToError","rangeError","connectedCallback","validateAndCorrect","setSmartDefaults","today","Date","tomorrow","setDate","getDate","format","formatDate","date","year","getFullYear","month","String","getMonth","padStart","day","getHours","getMinutes","dateStr","isNaN","getTime","date1","date2","Math","floor","e","newValue","target","required","error","emitChange","changedField","fromDate","parseDate","toDate","hasError","newValidationState","daysBetween","getDaysBetween","newToDate","newFromDate","tempValue","maxGap","minDate","minDateObj","maxDate","maxDateObj","getComputedMinDateTo","minToDate","globalMin","getComputedMaxDateFrom","maxFromDate","globalMax","isValid","dispatchEvent","CustomEvent","detail","bubbles","composed","render","fromError","toError","html","handleDateFromChange","disabled","handleDateToChange","__decorateClass","property","prototype","Object","Boolean","Number","state","customElement"],"mappings":"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"}
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
import { html as m } from "lit";
|
|
2
|
-
import { property as n, state as l, customElement as D } from "lit/decorators.js";
|
|
3
|
-
import "rxjs";
|
|
4
|
-
import "rxjs/operators";
|
|
5
|
-
import "lit/directives/class-map.js";
|
|
6
|
-
import "lit/directives/style-map.js";
|
|
7
|
-
import { S as p } from "./formField.mixin-BCGA7Ea3.js";
|
|
8
|
-
import "./tailwind.mixin-Bp_PR6yc.js";
|
|
9
|
-
var u = Object.defineProperty, c = Object.getOwnPropertyDescriptor, h = (a, t, i, r) => {
|
|
10
|
-
for (var s, d = r > 1 ? void 0 : r ? c(t, i) : t, e = a.length - 1; e >= 0; e--) (s = a[e]) && (d = (r ? s(t, i, d) : s(d)) || d);
|
|
11
|
-
return r && d && u(t, i, d), d;
|
|
12
|
-
};
|
|
13
|
-
let o = class extends p() {
|
|
14
|
-
constructor() {
|
|
15
|
-
super(...arguments), this.type = "date", this.dateFrom = { label: "From", value: "" }, this.dateTo = { label: "To", value: "" }, this.compact = !1, this.autoCorrect = !0, this.minGap = 0, this.defaultGap = 1, this.allowSameDate = !1, this.validationState = { dateFromError: "", dateToError: "", rangeError: "" };
|
|
16
|
-
}
|
|
17
|
-
connectedCallback() {
|
|
18
|
-
super.connectedCallback(), this.dateFrom.value || this.dateTo.value ? this.validateAndCorrect() : this.setSmartDefaults();
|
|
19
|
-
}
|
|
20
|
-
setSmartDefaults() {
|
|
21
|
-
const a = /* @__PURE__ */ new Date(), t = new Date(a);
|
|
22
|
-
t.setDate(t.getDate() + this.defaultGap);
|
|
23
|
-
const i = this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD";
|
|
24
|
-
this.dateFrom = { ...this.dateFrom, value: this.formatDate(a, i) }, this.dateTo = { ...this.dateTo, value: this.formatDate(t, i) };
|
|
25
|
-
}
|
|
26
|
-
formatDate(a, t) {
|
|
27
|
-
const i = a.getFullYear(), r = String(a.getMonth() + 1).padStart(2, "0"), s = String(a.getDate()).padStart(2, "0");
|
|
28
|
-
return t === "YYYY-MM-DD" ? `${i}-${r}-${s}` : `${i}-${r}-${s}T${String(a.getHours()).padStart(2, "0")}:${String(a.getMinutes()).padStart(2, "0")}`;
|
|
29
|
-
}
|
|
30
|
-
parseDate(a) {
|
|
31
|
-
if (!a) return null;
|
|
32
|
-
const t = new Date(a);
|
|
33
|
-
return isNaN(t.getTime()) ? null : t;
|
|
34
|
-
}
|
|
35
|
-
getDaysBetween(a, t) {
|
|
36
|
-
return Math.floor((t.getTime() - a.getTime()) / 864e5);
|
|
37
|
-
}
|
|
38
|
-
handleDateFromChange(a) {
|
|
39
|
-
const t = a.target.value;
|
|
40
|
-
if (this.dateFrom = { ...this.dateFrom, value: t }, this.validationState = { ...this.validationState, dateFromError: "", rangeError: "" }, !t) return this.required ? (this.validationState = { ...this.validationState, dateFromError: "Start date is required" }, void (this.error = !0)) : void this.emitChange();
|
|
41
|
-
this.validateAndCorrect("from");
|
|
42
|
-
}
|
|
43
|
-
handleDateToChange(a) {
|
|
44
|
-
const t = a.target.value;
|
|
45
|
-
if (this.dateTo = { ...this.dateTo, value: t }, this.validationState = { ...this.validationState, dateToError: "", rangeError: "" }, !t) return this.required ? (this.validationState = { ...this.validationState, dateToError: "End date is required" }, void (this.error = !0)) : void this.emitChange();
|
|
46
|
-
this.validateAndCorrect("to");
|
|
47
|
-
}
|
|
48
|
-
validateAndCorrect(a) {
|
|
49
|
-
const t = this.parseDate(this.dateFrom.value), i = this.parseDate(this.dateTo.value);
|
|
50
|
-
let r = !1;
|
|
51
|
-
const s = { dateFromError: "", dateToError: "", rangeError: "" };
|
|
52
|
-
if (this.dateFrom.value && !t && (s.dateFromError = "Invalid date format", r = !0), this.dateTo.value && !i && (s.dateToError = "Invalid date format", r = !0), t && i) {
|
|
53
|
-
const d = this.getDaysBetween(t, i);
|
|
54
|
-
if (t > i) {
|
|
55
|
-
if (this.autoCorrect) {
|
|
56
|
-
if (a === "from") {
|
|
57
|
-
const e = new Date(t);
|
|
58
|
-
e.setDate(e.getDate() + this.defaultGap), this.dateTo = { ...this.dateTo, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
59
|
-
} else if (a === "to") {
|
|
60
|
-
const e = new Date(i);
|
|
61
|
-
e.setDate(e.getDate() - this.defaultGap), this.dateFrom = { ...this.dateFrom, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
62
|
-
} else {
|
|
63
|
-
const e = this.dateFrom.value;
|
|
64
|
-
this.dateFrom = { ...this.dateFrom, value: this.dateTo.value }, this.dateTo = { ...this.dateTo, value: e };
|
|
65
|
-
}
|
|
66
|
-
return void this.validateAndCorrect();
|
|
67
|
-
}
|
|
68
|
-
s.rangeError = "End date must be after start date", r = !0;
|
|
69
|
-
}
|
|
70
|
-
if (!this.allowSameDate && d === 0) {
|
|
71
|
-
if (this.autoCorrect && a) {
|
|
72
|
-
if (a === "from") {
|
|
73
|
-
const e = new Date(t);
|
|
74
|
-
e.setDate(e.getDate() + this.defaultGap), this.dateTo = { ...this.dateTo, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
75
|
-
} else {
|
|
76
|
-
const e = new Date(i);
|
|
77
|
-
e.setDate(e.getDate() - this.defaultGap), this.dateFrom = { ...this.dateFrom, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
78
|
-
}
|
|
79
|
-
return void this.validateAndCorrect();
|
|
80
|
-
}
|
|
81
|
-
s.rangeError = "Start and end dates cannot be the same", r = !0;
|
|
82
|
-
}
|
|
83
|
-
if (this.minGap > 0 && d < this.minGap) {
|
|
84
|
-
if (this.autoCorrect && a) {
|
|
85
|
-
if (a === "from") {
|
|
86
|
-
const e = new Date(t);
|
|
87
|
-
e.setDate(e.getDate() + this.minGap), this.dateTo = { ...this.dateTo, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
88
|
-
} else {
|
|
89
|
-
const e = new Date(i);
|
|
90
|
-
e.setDate(e.getDate() - this.minGap), this.dateFrom = { ...this.dateFrom, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
91
|
-
}
|
|
92
|
-
return void this.validateAndCorrect();
|
|
93
|
-
}
|
|
94
|
-
s.rangeError = `Minimum ${this.minGap} day${this.minGap > 1 ? "s" : ""} required between dates`, r = !0;
|
|
95
|
-
}
|
|
96
|
-
if (this.maxGap !== void 0 && d > this.maxGap) {
|
|
97
|
-
if (this.autoCorrect && a) {
|
|
98
|
-
if (a === "from") {
|
|
99
|
-
const e = new Date(t);
|
|
100
|
-
e.setDate(e.getDate() + this.maxGap), this.dateTo = { ...this.dateTo, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
101
|
-
} else {
|
|
102
|
-
const e = new Date(i);
|
|
103
|
-
e.setDate(e.getDate() - this.maxGap), this.dateFrom = { ...this.dateFrom, value: this.formatDate(e, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD") };
|
|
104
|
-
}
|
|
105
|
-
return void this.validateAndCorrect();
|
|
106
|
-
}
|
|
107
|
-
s.rangeError = `Maximum ${this.maxGap} day${this.maxGap > 1 ? "s" : ""} allowed between dates`, r = !0;
|
|
108
|
-
}
|
|
109
|
-
if (this.minDate) {
|
|
110
|
-
const e = this.parseDate(this.minDate);
|
|
111
|
-
e && t < e && (s.dateFromError = "Date is before minimum allowed date", r = !0);
|
|
112
|
-
}
|
|
113
|
-
if (this.maxDate) {
|
|
114
|
-
const e = this.parseDate(this.maxDate);
|
|
115
|
-
e && i > e && (s.dateToError = "Date is after maximum allowed date", r = !0);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
this.validationState = s, this.error = r, this.emitChange();
|
|
119
|
-
}
|
|
120
|
-
getComputedMinDateTo() {
|
|
121
|
-
if (!this.dateFrom.value) return this.minDate;
|
|
122
|
-
const a = this.parseDate(this.dateFrom.value);
|
|
123
|
-
if (!a) return this.minDate;
|
|
124
|
-
const t = new Date(a);
|
|
125
|
-
if (this.allowSameDate || t.setDate(t.getDate() + 1), this.minGap > 0 && t.setDate(a.getDate() + this.minGap), this.minDate) {
|
|
126
|
-
const i = this.parseDate(this.minDate);
|
|
127
|
-
if (i && i > t) return this.minDate;
|
|
128
|
-
}
|
|
129
|
-
return this.formatDate(t, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD");
|
|
130
|
-
}
|
|
131
|
-
getComputedMaxDateFrom() {
|
|
132
|
-
if (!this.dateTo.value) return this.maxDate;
|
|
133
|
-
const a = this.parseDate(this.dateTo.value);
|
|
134
|
-
if (!a) return this.maxDate;
|
|
135
|
-
const t = new Date(a);
|
|
136
|
-
if (this.allowSameDate || t.setDate(t.getDate() - 1), this.minGap > 0 && t.setDate(a.getDate() - this.minGap), this.maxDate) {
|
|
137
|
-
const i = this.parseDate(this.maxDate);
|
|
138
|
-
if (i && i < t) return this.maxDate;
|
|
139
|
-
}
|
|
140
|
-
return this.formatDate(t, this.type === "datetime-local" ? "YYYY-MM-DDTHH:mm" : "YYYY-MM-DD");
|
|
141
|
-
}
|
|
142
|
-
emitChange() {
|
|
143
|
-
const a = !(this.error || !this.dateFrom.value || !this.dateTo.value || this.validationState.dateFromError || this.validationState.dateToError || this.validationState.rangeError);
|
|
144
|
-
this.dispatchEvent(new CustomEvent("change", { detail: { dateFrom: this.dateFrom.value, dateTo: this.dateTo.value, isValid: a }, bubbles: !0, composed: !0 }));
|
|
145
|
-
}
|
|
146
|
-
render() {
|
|
147
|
-
const a = this.validationState.dateFromError || this.validationState.rangeError, t = this.validationState.dateToError || this.validationState.rangeError;
|
|
148
|
-
return m`
|
|
149
|
-
<div class="w-full">
|
|
150
|
-
<div class="flex items-start gap-2 w-full">
|
|
151
|
-
<div class="flex-1">
|
|
152
|
-
<schmancy-input
|
|
153
|
-
.type=${this.type}
|
|
154
|
-
.label=${this.dateFrom.label}
|
|
155
|
-
.value=${this.dateFrom.value}
|
|
156
|
-
.min=${this.minDate}
|
|
157
|
-
.max=${this.getComputedMaxDateFrom()}
|
|
158
|
-
@change=${this.handleDateFromChange}
|
|
159
|
-
.error=${!!a}
|
|
160
|
-
.hint=${a || ""}
|
|
161
|
-
.required=${this.required}
|
|
162
|
-
.disabled=${this.disabled}
|
|
163
|
-
size=${this.compact ? "sm" : "md"}
|
|
164
|
-
></schmancy-input>
|
|
165
|
-
</div>
|
|
166
|
-
|
|
167
|
-
<div class="flex items-center justify-center ${this.compact ? "pt-8" : "pt-10"} px-1">
|
|
168
|
-
<schmancy-icon class="text-surface-onVariant opacity-50">
|
|
169
|
-
arrow_forward
|
|
170
|
-
</schmancy-icon>
|
|
171
|
-
</div>
|
|
172
|
-
|
|
173
|
-
<div class="flex-1">
|
|
174
|
-
<schmancy-input
|
|
175
|
-
.type=${this.type}
|
|
176
|
-
.label=${this.dateTo.label}
|
|
177
|
-
.value=${this.dateTo.value}
|
|
178
|
-
.min=${this.getComputedMinDateTo()}
|
|
179
|
-
.max=${this.maxDate}
|
|
180
|
-
@change=${this.handleDateToChange}
|
|
181
|
-
.error=${!!t}
|
|
182
|
-
.hint=${t || ""}
|
|
183
|
-
.required=${this.required}
|
|
184
|
-
.disabled=${this.disabled}
|
|
185
|
-
size=${this.compact ? "sm" : "md"}
|
|
186
|
-
></schmancy-input>
|
|
187
|
-
</div>
|
|
188
|
-
</div>
|
|
189
|
-
</div>
|
|
190
|
-
`;
|
|
191
|
-
}
|
|
192
|
-
};
|
|
193
|
-
h([n({ type: String })], o.prototype, "type", 2), h([n({ type: Object })], o.prototype, "dateFrom", 2), h([n({ type: Object })], o.prototype, "dateTo", 2), h([n({ type: String })], o.prototype, "minDate", 2), h([n({ type: String })], o.prototype, "maxDate", 2), h([n({ type: Boolean })], o.prototype, "compact", 2), h([n({ type: Boolean })], o.prototype, "autoCorrect", 2), h([n({ type: Number })], o.prototype, "minGap", 2), h([n({ type: Number })], o.prototype, "maxGap", 2), h([n({ type: Number })], o.prototype, "defaultGap", 2), h([n({ type: Boolean })], o.prototype, "allowSameDate", 2), h([l()], o.prototype, "validationState", 2), o = h([D("schmancy-date-range-inline")], o);
|
|
194
|
-
export {
|
|
195
|
-
o as S
|
|
196
|
-
};
|
|
197
|
-
//# sourceMappingURL=date-range-inline-DTQLESAZ.js.map
|