@mhmo91/schmancy 0.4.23 → 0.4.32
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/ai/select.md +35 -0
- package/ai/sheet.md +486 -87
- package/ai/tabs.md +186 -63
- package/dist/ai/select.md +35 -0
- package/dist/ai/sheet.md +486 -87
- package/dist/ai/tabs.md +186 -63
- package/dist/{animated-text-Be4toKE0.cjs → animated-text-BitOmeE1.cjs} +2 -2
- package/dist/{animated-text-Be4toKE0.cjs.map → animated-text-BitOmeE1.cjs.map} +1 -1
- package/dist/{animated-text-CNPSIIYg.js → animated-text-DcLpvyCq.js} +3 -3
- package/dist/{animated-text-CNPSIIYg.js.map → animated-text-DcLpvyCq.js.map} +1 -1
- package/dist/animated-text.cjs +1 -1
- package/dist/animated-text.js +1 -1
- package/dist/area.cjs +1 -1
- package/dist/{area.component-YKEQV9hc.cjs → area.component-BTLn3oIv.cjs} +2 -2
- package/dist/{area.component-YKEQV9hc.cjs.map → area.component-BTLn3oIv.cjs.map} +1 -1
- package/dist/{area.component-i-mmh5is.js → area.component-xbNRrst9.js} +3 -3
- package/dist/{area.component-i-mmh5is.js.map → area.component-xbNRrst9.js.map} +1 -1
- package/dist/area.js +1 -1
- package/dist/{autocomplete-EapOt3ES.js → autocomplete-BqRrw118.js} +3 -3
- package/dist/{autocomplete-EapOt3ES.js.map → autocomplete-BqRrw118.js.map} +1 -1
- package/dist/{autocomplete-C0EU8KiN.cjs → autocomplete-Dvc06UNM.cjs} +2 -2
- package/dist/{autocomplete-C0EU8KiN.cjs.map → autocomplete-Dvc06UNM.cjs.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/{avatar-DzJUPJtZ.js → avatar-CVzlATFH.js} +60 -66
- package/dist/avatar-CVzlATFH.js.map +1 -0
- package/dist/{avatar-D1ojwes6.cjs → avatar-DIALT_3k.cjs} +12 -18
- package/dist/avatar-DIALT_3k.cjs.map +1 -0
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-DPTS3Kpw.js → boat-ByFTBKD2.js} +2 -2
- package/dist/{boat-DPTS3Kpw.js.map → boat-ByFTBKD2.js.map} +1 -1
- package/dist/{boat-C59hzqZ0.cjs → boat-Dtum9CaN.cjs} +2 -2
- package/dist/{boat-C59hzqZ0.cjs.map → boat-Dtum9CaN.cjs.map} +1 -1
- package/dist/boat.cjs +1 -1
- package/dist/boat.js +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.js +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{checkbox-C-kjO37F.cjs → checkbox-220X9LTx.cjs} +2 -2
- package/dist/{checkbox-C-kjO37F.cjs.map → checkbox-220X9LTx.cjs.map} +1 -1
- package/dist/{checkbox-B85eeKqn.js → checkbox-Dq0Lm3AM.js} +2 -2
- package/dist/{checkbox-B85eeKqn.js.map → checkbox-Dq0Lm3AM.js.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-BNRMzGrx.js → chips-aRU1fwEV.js} +3 -3
- package/dist/{chips-BNRMzGrx.js.map → chips-aRU1fwEV.js.map} +1 -1
- package/dist/{chips-DW6y4ZMs.cjs → chips-jORxgpG7.cjs} +2 -2
- package/dist/{chips-DW6y4ZMs.cjs.map → chips-jORxgpG7.cjs.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +1 -1
- package/dist/{circular-progress-BridvYCS.cjs → circular-progress-DMccmWrI.cjs} +2 -2
- package/dist/{circular-progress-BridvYCS.cjs.map → circular-progress-DMccmWrI.cjs.map} +1 -1
- package/dist/{circular-progress-Cl_dXUPO.js → circular-progress-Dis30LMa.js} +3 -3
- package/dist/{circular-progress-Cl_dXUPO.js.map → circular-progress-Dis30LMa.js.map} +1 -1
- package/dist/circular-progress.cjs +1 -1
- package/dist/circular-progress.js +1 -1
- package/dist/code-highlight.cjs +1 -1
- package/dist/code-highlight.js +1 -1
- package/dist/{code-preview-B8X7JaxA.js → code-preview-BwIb73Yd.js} +2 -2
- package/dist/{code-preview-B8X7JaxA.js.map → code-preview-BwIb73Yd.js.map} +1 -1
- package/dist/{code-preview-B0oGIV9F.cjs → code-preview-CCHcWZvS.cjs} +2 -2
- package/dist/{code-preview-B0oGIV9F.cjs.map → code-preview-CCHcWZvS.cjs.map} +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.js +1 -1
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/{date-range-9sVFbxK0.js → date-range-CA_4vjWe.js} +3 -3
- package/dist/{date-range-9sVFbxK0.js.map → date-range-CA_4vjWe.js.map} +1 -1
- package/dist/{date-range-DqaB9kwM.cjs → date-range-DinaPWK0.cjs} +2 -2
- package/dist/{date-range-DqaB9kwM.cjs.map → date-range-DinaPWK0.cjs.map} +1 -1
- package/dist/{date-range-inline-DGRKHzTX.cjs → date-range-inline-CGMvaSeh.cjs} +2 -2
- package/dist/{date-range-inline-DGRKHzTX.cjs.map → date-range-inline-CGMvaSeh.cjs.map} +1 -1
- package/dist/{date-range-inline-Bqnc8wBb.js → date-range-inline-DFjyAvPv.js} +3 -3
- package/dist/{date-range-inline-Bqnc8wBb.js.map → date-range-inline-DFjyAvPv.js.map} +1 -1
- package/dist/date-range-inline.cjs +1 -1
- package/dist/date-range-inline.js +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-u5isp6Vb.js → delay-BJwsHbg3.js} +2 -2
- package/dist/{delay-u5isp6Vb.js.map → delay-BJwsHbg3.js.map} +1 -1
- package/dist/{delay-ClP0gwsX.cjs → delay-CHAH30wI.cjs} +2 -2
- package/dist/{delay-ClP0gwsX.cjs.map → delay-CHAH30wI.cjs.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{dialog-content-CGgHTvcB.cjs → dialog-content-Bp2kwzxD.cjs} +2 -2
- package/dist/{dialog-content-CGgHTvcB.cjs.map → dialog-content-Bp2kwzxD.cjs.map} +1 -1
- package/dist/{dialog-content-ZpgRQC1m.js → dialog-content-CEZqJRzH.js} +3 -3
- package/dist/{dialog-content-ZpgRQC1m.js.map → dialog-content-CEZqJRzH.js.map} +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +1 -1
- package/dist/{divider-CIXGsKd7.cjs → divider-BEVgt1wl.cjs} +2 -2
- package/dist/{divider-CIXGsKd7.cjs.map → divider-BEVgt1wl.cjs.map} +1 -1
- package/dist/{divider-BK4PNB76.js → divider-DfetUf4S.js} +3 -3
- package/dist/{divider-BK4PNB76.js.map → divider-DfetUf4S.js.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{dropdown-content-CeYUqD56.cjs → dropdown-content-CERnSXjI.cjs} +2 -2
- package/dist/{dropdown-content-CeYUqD56.cjs.map → dropdown-content-CERnSXjI.cjs.map} +1 -1
- package/dist/{dropdown-content-DbHKYDCS.js → dropdown-content-TJmZ3rpA.js} +3 -3
- package/dist/{dropdown-content-DbHKYDCS.js.map → dropdown-content-TJmZ3rpA.js.map} +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/{flex-Dub7SPI7.cjs → flex-ByanQCYb.cjs} +2 -2
- package/dist/{flex-Dub7SPI7.cjs.map → flex-ByanQCYb.cjs.map} +1 -1
- package/dist/{flex-JcwYdb2G.js → flex-CXMNh-nH.js} +2 -2
- package/dist/{flex-JcwYdb2G.js.map → flex-CXMNh-nH.js.map} +1 -1
- package/dist/{form-CMv0SQko.js → form-Boc5Pqhf.js} +2 -2
- package/dist/{form-CMv0SQko.js.map → form-Boc5Pqhf.js.map} +1 -1
- package/dist/{form-DKF6UgIS.cjs → form-lhQx_Ry0.cjs} +2 -2
- package/dist/{form-DKF6UgIS.cjs.map → form-lhQx_Ry0.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{formField.mixin-D0GeY28y.js → formField.mixin-CX7_nvVy.js} +2 -2
- package/dist/{formField.mixin-D0GeY28y.js.map → formField.mixin-CX7_nvVy.js.map} +1 -1
- package/dist/{formField.mixin-BrHllh45.cjs → formField.mixin-DhiLSVHT.cjs} +2 -2
- package/dist/{formField.mixin-BrHllh45.cjs.map → formField.mixin-DhiLSVHT.cjs.map} +1 -1
- package/dist/{icon--s5dpU1N.js → icon-BZw88sCH.js} +2 -2
- package/dist/{icon--s5dpU1N.js.map → icon-BZw88sCH.js.map} +1 -1
- package/dist/{icon-CJe2TSk1.cjs → icon-D1qw18N6.cjs} +2 -2
- package/dist/{icon-CJe2TSk1.cjs.map → icon-D1qw18N6.cjs.map} +1 -1
- package/dist/{icon-button-x5uqpaeg.cjs → icon-button-DBvZApEC.cjs} +2 -2
- package/dist/{icon-button-x5uqpaeg.cjs.map → icon-button-DBvZApEC.cjs.map} +1 -1
- package/dist/{icon-button-Ckd9jE-a.js → icon-button-TbwQrO1b.js} +3 -3
- package/dist/{icon-button-Ckd9jE-a.js.map → icon-button-TbwQrO1b.js.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +112 -112
- package/dist/{input-DHNBYBq4.js → input-BUtEXu3y.js} +3 -3
- package/dist/{input-DHNBYBq4.js.map → input-BUtEXu3y.js.map} +1 -1
- package/dist/{input-BN9xQTH0.cjs → input-C0F9cNoD.cjs} +2 -2
- package/dist/{input-BN9xQTH0.cjs.map → input-C0F9cNoD.cjs.map} +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +1 -1
- package/dist/{list-rGydduh7.js → list-BCD8h2Do.js} +2 -2
- package/dist/{list-rGydduh7.js.map → list-BCD8h2Do.js.map} +1 -1
- package/dist/{list-DZAZpM5m.cjs → list-Bz6tq7ZP.cjs} +2 -2
- package/dist/{list-DZAZpM5m.cjs.map → list-Bz6tq7ZP.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-B1eYYBf4.cjs → litElement.mixin-CII9bbap.cjs} +2 -2
- package/dist/{litElement.mixin-B1eYYBf4.cjs.map → litElement.mixin-CII9bbap.cjs.map} +1 -1
- package/dist/{litElement.mixin-Cq-COufw.js → litElement.mixin-DGeprHKB.js} +2 -2
- package/dist/{litElement.mixin-Cq-COufw.js.map → litElement.mixin-DGeprHKB.js.map} +1 -1
- package/dist/{media-hg61JS4R.cjs → media-CBLuAmNZ.cjs} +2 -2
- package/dist/{media-hg61JS4R.cjs.map → media-CBLuAmNZ.cjs.map} +1 -1
- package/dist/{media-DHgb7H9L.js → media-D6ba0wB1.js} +2 -2
- package/dist/{media-DHgb7H9L.js.map → media-D6ba0wB1.js.map} +1 -1
- package/dist/{menu-D5aDG-Rp.cjs → menu-BDQr8EZ1.cjs} +2 -2
- package/dist/{menu-D5aDG-Rp.cjs.map → menu-BDQr8EZ1.cjs.map} +1 -1
- package/dist/{menu-DvZSvoOx.js → menu-C0SauakY.js} +3 -3
- package/dist/{menu-DvZSvoOx.js.map → menu-C0SauakY.js.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/{notification-service-BzzXjm4l.cjs → notification-service-B1f848tO.cjs} +2 -2
- package/dist/{notification-service-BzzXjm4l.cjs.map → notification-service-B1f848tO.cjs.map} +1 -1
- package/dist/{notification-service-DKHubhXv.js → notification-service-X8mRASdk.js} +3 -3
- package/dist/{notification-service-DKHubhXv.js.map → notification-service-X8mRASdk.js.map} +1 -1
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-T6zGawbH.js → option-DVlCqux7.js} +2 -2
- package/dist/{option-T6zGawbH.js.map → option-DVlCqux7.js.map} +1 -1
- package/dist/{option-DqN5-RK7.cjs → option-ckV22mLf.cjs} +2 -2
- package/dist/{option-DqN5-RK7.cjs.map → option-ckV22mLf.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{payment-card-form-C42icpX4.cjs → payment-card-form-BUsPCZPp.cjs} +2 -2
- package/dist/{payment-card-form-C42icpX4.cjs.map → payment-card-form-BUsPCZPp.cjs.map} +1 -1
- package/dist/{payment-card-form-GEOaUypQ.js → payment-card-form-D7PV8spa.js} +3 -3
- package/dist/{payment-card-form-GEOaUypQ.js.map → payment-card-form-D7PV8spa.js.map} +1 -1
- package/dist/{progress-EL16etnw.js → progress-BZ6AFT0f.js} +2 -2
- package/dist/{progress-EL16etnw.js.map → progress-BZ6AFT0f.js.map} +1 -1
- package/dist/{progress-CL35MIi9.cjs → progress-CABg45XF.cjs} +2 -2
- package/dist/{progress-CL35MIi9.cjs.map → progress-CABg45XF.cjs.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{radio-button-BQ7snEVj.js → radio-button-D4Y1bWGN.js} +3 -3
- package/dist/{radio-button-BQ7snEVj.js.map → radio-button-D4Y1bWGN.js.map} +1 -1
- package/dist/{radio-button-DrSJB4B-.cjs → radio-button-DQ4VclEZ.cjs} +2 -2
- package/dist/{radio-button-DrSJB4B-.cjs.map → radio-button-DQ4VclEZ.cjs.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/{schmancy-steps-container-2WW-9LYL.js → schmancy-steps-container-BskkdQwD.js} +2 -2
- package/dist/{schmancy-steps-container-2WW-9LYL.js.map → schmancy-steps-container-BskkdQwD.js.map} +1 -1
- package/dist/{schmancy-steps-container-C_HHZFeb.cjs → schmancy-steps-container-CZ0upElE.cjs} +2 -2
- package/dist/{schmancy-steps-container-C_HHZFeb.cjs.map → schmancy-steps-container-CZ0upElE.cjs.map} +1 -1
- package/dist/select-DfQogfes.cjs +57 -0
- package/dist/{select-Bl8FO2kb.js.map → select-DfQogfes.cjs.map} +1 -1
- package/dist/{select-Bl8FO2kb.js → select-wui4bIUE.js} +23 -20
- package/dist/select-wui4bIUE.js.map +1 -0
- package/dist/select.cjs +1 -1
- package/dist/select.js +3 -2
- package/dist/{selector-hook-DPe2CGKx.js → selector-hook-DL0SIQiY.js} +16 -16
- package/dist/{selector-hook-DPe2CGKx.js.map → selector-hook-DL0SIQiY.js.map} +1 -1
- package/dist/{sheet-CdcA_ZIk.js → sheet-BGuqw1NG.js} +4 -4
- package/dist/{sheet-CdcA_ZIk.js.map → sheet-BGuqw1NG.js.map} +1 -1
- package/dist/{sheet-BVr3bq9r.cjs → sheet-DlLj6OeU.cjs} +2 -2
- package/dist/{sheet-BVr3bq9r.cjs.map → sheet-DlLj6OeU.cjs.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +2 -2
- package/dist/{sheet.service-D_jE8pUg.cjs → sheet.service-DQQ44gXD.cjs} +3 -3
- package/dist/{sheet.service-D_jE8pUg.cjs.map → sheet.service-DQQ44gXD.cjs.map} +1 -1
- package/dist/{sheet.service-CKznL-dB.js → sheet.service-Dm2r1_ji.js} +102 -109
- package/dist/{sheet.service-CKznL-dB.js.map → sheet.service-Dm2r1_ji.js.map} +1 -1
- package/dist/{slider-DX-XUnE-.cjs → slider-C2oEvRAS.cjs} +2 -2
- package/dist/{slider-DX-XUnE-.cjs.map → slider-C2oEvRAS.cjs.map} +1 -1
- package/dist/{slider-4ggti1yr.js → slider-Dwm1KfNL.js} +3 -3
- package/dist/{slider-4ggti1yr.js.map → slider-Dwm1KfNL.js.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-BPqLh7JL.js → spinner-Bh6XkC88.js} +2 -2
- package/dist/{spinner-BPqLh7JL.js.map → spinner-Bh6XkC88.js.map} +1 -1
- package/dist/{spinner-Cq8tY2xk.cjs → spinner-DKgZemVU.cjs} +2 -2
- package/dist/{spinner-Cq8tY2xk.cjs.map → spinner-DKgZemVU.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/store.js +1 -1
- package/dist/{surface-YyZ8eXfj.cjs → surface-DIIUamff.cjs} +2 -2
- package/dist/{surface-YyZ8eXfj.cjs.map → surface-DIIUamff.cjs.map} +1 -1
- package/dist/{surface-1xboRERM.js → surface-DhiuAGb8.js} +2 -2
- package/dist/{surface-1xboRERM.js.map → surface-DhiuAGb8.js.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-DpXmflf7.cjs → table-BrAoSQhN.cjs} +2 -2
- package/dist/{table-DpXmflf7.cjs.map → table-BrAoSQhN.cjs.map} +1 -1
- package/dist/{table-C6EWKqDY.js → table-DSZ9kmUG.js} +2 -2
- package/dist/{table-C6EWKqDY.js.map → table-DSZ9kmUG.js.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-compatibility-AFzKAP2D.js → tabs-compatibility-B7aJnQ0X.js} +2 -2
- package/dist/{tabs-compatibility-AFzKAP2D.js.map → tabs-compatibility-B7aJnQ0X.js.map} +1 -1
- package/dist/{tabs-compatibility-ThgWuSrK.cjs → tabs-compatibility-Ck74XeID.cjs} +2 -2
- package/dist/{tabs-compatibility-ThgWuSrK.cjs.map → tabs-compatibility-Ck74XeID.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-CBu1BEQZ.cjs +2 -0
- package/dist/{tailwind.mixin-DNME2oUL.cjs.map → tailwind.mixin-CBu1BEQZ.cjs.map} +1 -1
- package/dist/tailwind.mixin-DWhCm94g.js +43 -0
- package/dist/{tailwind.mixin-epCxS6FK.js.map → tailwind.mixin-DWhCm94g.js.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-JO7OVdfk.js → textarea-Bq0XdGaH.js} +2 -2
- package/dist/{textarea-JO7OVdfk.js.map → textarea-Bq0XdGaH.js.map} +1 -1
- package/dist/{textarea-B_TlKSop.cjs → textarea-CGTMdhoF.cjs} +2 -2
- package/dist/{textarea-B_TlKSop.cjs.map → textarea-CGTMdhoF.cjs.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-DnrKANEK.cjs → theme-button-CznhJ8g_.cjs} +2 -2
- package/dist/{theme-button-DnrKANEK.cjs.map → theme-button-CznhJ8g_.cjs.map} +1 -1
- package/dist/{theme-button-C8cK7un6.js → theme-button-DYoygmRA.js} +2 -2
- package/dist/{theme-button-C8cK7un6.js.map → theme-button-DYoygmRA.js.map} +1 -1
- package/dist/theme-button.cjs +1 -1
- package/dist/theme-button.js +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.js +1 -1
- package/dist/{timezone-C56jMhLK.cjs → timezone-BCGcdasU.cjs} +2 -2
- package/dist/{timezone-C56jMhLK.cjs.map → timezone-BCGcdasU.cjs.map} +1 -1
- package/dist/{timezone-CEEEd-9_.js → timezone-Co7gqqQt.js} +3 -3
- package/dist/{timezone-CEEEd-9_.js.map → timezone-Co7gqqQt.js.map} +1 -1
- package/dist/{tooltip-twQMYpmk.cjs → tooltip-Bqa0D34J.cjs} +2 -2
- package/dist/{tooltip-twQMYpmk.cjs.map → tooltip-Bqa0D34J.cjs.map} +1 -1
- package/dist/{tooltip-CnuYee5c.js → tooltip-DBuaAFmK.js} +2 -2
- package/dist/{tooltip-CnuYee5c.js.map → tooltip-DBuaAFmK.js.map} +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/{tree-Dv5R6kdP.cjs → tree-CFeXYaJy.cjs} +2 -2
- package/dist/{tree-Dv5R6kdP.cjs.map → tree-CFeXYaJy.cjs.map} +1 -1
- package/dist/{tree-CfnCGGn7.js → tree-CfE695gp.js} +2 -2
- package/dist/{tree-CfnCGGn7.js.map → tree-CfE695gp.js.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-egr1HiFJ.cjs → typewriter-B6Jb22Pe.cjs} +2 -2
- package/dist/{typewriter-egr1HiFJ.cjs.map → typewriter-B6Jb22Pe.cjs.map} +1 -1
- package/dist/{typewriter-DAxRjeRy.js → typewriter-BZ_adVXB.js} +4 -4
- package/dist/{typewriter-DAxRjeRy.js.map → typewriter-BZ_adVXB.js.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-De5UXL0j.js → typography-DI5RXpWs.js} +2 -2
- package/dist/{typography-De5UXL0j.js.map → typography-DI5RXpWs.js.map} +1 -1
- package/dist/{typography-DVZ2ezpU.cjs → typography-DvVeO1a_.cjs} +2 -2
- package/dist/{typography-DVZ2ezpU.cjs.map → typography-DvVeO1a_.cjs.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/package.json +1 -1
- package/types/src/sheet/sheet.service.d.ts +3 -1
- package/dist/avatar-D1ojwes6.cjs.map +0 -1
- package/dist/avatar-DzJUPJtZ.js.map +0 -1
- package/dist/select-BHRtVoTo.cjs +0 -56
- package/dist/select-BHRtVoTo.cjs.map +0 -1
- package/dist/tailwind.mixin-DNME2oUL.cjs +0 -2
- package/dist/tailwind.mixin-epCxS6FK.js +0 -43
package/dist/components.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./payment-card-form-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./payment-card-form-BUsPCZPp.cjs");Object.defineProperty(exports,"SchmancyPaymentCardForm",{enumerable:!0,get:()=>e.SchmancyPaymentCardForm});
|
|
2
2
|
//# sourceMappingURL=components.cjs.map
|
package/dist/components.js
CHANGED
package/dist/content-drawer.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./avatar-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./avatar-DIALT_3k.cjs");Object.defineProperty(exports,"SchmancyContentDrawer",{enumerable:!0,get:()=>e.SchmancyContentDrawer}),exports.SchmancyContentDrawerID=e.SchmancyContentDrawerID,Object.defineProperty(exports,"SchmancyContentDrawerMain",{enumerable:!0,get:()=>e.SchmancyContentDrawerMain}),exports.SchmancyContentDrawerMaxHeight=e.SchmancyContentDrawerMaxHeight,exports.SchmancyContentDrawerMinWidth=e.SchmancyContentDrawerMinWidth,Object.defineProperty(exports,"SchmancyContentDrawerSheet",{enumerable:!0,get:()=>e.SchmancyContentDrawerSheet}),exports.SchmancyContentDrawerSheetMode=e.SchmancyContentDrawerSheetMode,exports.SchmancyContentDrawerSheetState=e.SchmancyContentDrawerSheetState,exports.schmancyContentDrawer=e.schmancyContentDrawer;
|
|
2
2
|
//# sourceMappingURL=content-drawer.cjs.map
|
package/dist/content-drawer.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { f as n, c as t, g as r, d as c, e as h, h as o, a as S, b as s, s as m } from "./avatar-
|
|
1
|
+
import { f as n, c as t, g as r, d as c, e as h, h as o, a as S, b as s, s as m } from "./avatar-CVzlATFH.js";
|
|
2
2
|
export {
|
|
3
3
|
n as SchmancyContentDrawer,
|
|
4
4
|
t as SchmancyContentDrawerID,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { fromEvent as ne, takeUntil as te, debounceTime as ge, timer as ve } from "rxjs";
|
|
2
2
|
import "lit/directives/class-map.js";
|
|
3
3
|
import "lit/directives/style-map.js";
|
|
4
|
-
import { $ as le } from "./litElement.mixin-
|
|
5
|
-
import "./tailwind.mixin-
|
|
4
|
+
import { $ as le } from "./litElement.mixin-DGeprHKB.js";
|
|
5
|
+
import "./tailwind.mixin-DWhCm94g.js";
|
|
6
6
|
import { property as w, customElement as me, state as I } from "lit/decorators.js";
|
|
7
7
|
import { g as pe } from "./_commonjsHelpers-Dw9sPFZy.js";
|
|
8
8
|
import { html as U } from "lit";
|
|
@@ -635,4 +635,4 @@ export {
|
|
|
635
635
|
O as S,
|
|
636
636
|
Oe as v
|
|
637
637
|
};
|
|
638
|
-
//# sourceMappingURL=date-range-
|
|
638
|
+
//# sourceMappingURL=date-range-CA_4vjWe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-range-9sVFbxK0.js","sources":["../../../../.yarn/berry/cache/dayjs-npm-1.11.13-d478bb9479-10c0.zip/node_modules/dayjs/dayjs.min.js","../../../../.yarn/berry/cache/dayjs-npm-1.11.13-d478bb9479-10c0.zip/node_modules/dayjs/plugin/quarterOfYear.js","../src/date-range/date-range-helpers.ts","../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"],"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\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('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('MMM D')}-${toDate.format('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('MMM D')} - ${toDate.format('MMM D, YYYY')}${toTime}`\r\n\t}\r\n\r\n\t// Different years\r\n\treturn `${fromDate.format('MMM D, YYYY')}${fromTime} - ${toDate.format('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}","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 { $dialog } from '../dialog/dialog-service'\nimport { DateRangePreset, PresetCategory } from './date-range-presets'\n\n/**\n * Dialog content component for date range selection\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\tprivate handleFromDateChange(e: Event) {\n\t\tconst input = e.target as HTMLInputElement\n\t\tthis.dateFrom = { ...this.dateFrom, value: input.value }\n\t\t\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\t\t\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\t\t\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\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<!-- Custom Range Section with Inline Calendars -->\n\t\t\t\t<schmancy-surface type=\"container\" class=\"rounded-xl p-4 mb-6\">\n\t\t\t\t\t<div class=\"flex flex-col gap-4\">\n\t\t\t\t\t\t<div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n\t\t\t\t\t\t\t<!-- From Date Calendar -->\n\t\t\t\t\t\t\t<div class=\"flex flex-col gap-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${this.dateFrom.label || 'From'}\n\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t\ttype=\"${this.type}\"\n\t\t\t\t\t\t\t\t\t.value=\"${this.dateFrom.value}\"\n\t\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.minDate)}\"\n\t\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t\t@change=\"${this.handleFromDateChange}\"\n\t\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!-- To Date Calendar -->\n\t\t\t\t\t\t\t<div class=\"flex flex-col gap-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${this.dateTo.label || 'To'}\n\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t\ttype=\"${this.type}\"\n\t\t\t\t\t\t\t\t\t.value=\"${this.dateTo.value}\"\n\t\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.dateFrom.value)}\"\n\t\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t\t@change=\"${this.handleToDateChange}\"\n\t\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<!-- Apply Button - Now at the bottom for logical flow -->\n\t\t\t\t\t\t<div class=\"flex justify-end mt-2\">\n\t\t\t\t\t\t\t<schmancy-button \n\t\t\t\t\t\t\t\tvariant=\"filled\" \n\t\t\t\t\t\t\t\t@click=\"${(e: Event) => this.applyManualDateSelection(e)}\"\n\t\t\t\t\t\t\t\t?disabled=\"${!this.dateFrom.value || !this.dateTo.value}\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</schmancy-surface>\n\n\t\t\t\t<!-- Presets Section -->\n\t\t\t\t<div class=\"flex-1 overflow-y-auto overflow-x-hidden min-h-0\">\n\t\t\t\t\t<div class=\"grid grid-cols-2 md:grid-cols-5 gap-6\">\n\t\t\t\t\t\t${this.presetCategories.map(\n\t\t\t\t\t\t\tcategory => html`\n\t\t\t\t\t\t\t\t<div class=\"space-y-3\">\n\t\t\t\t\t\t\t\t\t<schmancy-typography type=\"title\" token=\"md\" class=\"text-surface-onVariant font-medium\">\n\t\t\t\t\t\t\t\t\t\t${category.name}\n\t\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t\t<div class=\"space-y-1\">\n\t\t\t\t\t\t\t\t\t\t${category.presets.map(\n\t\t\t\t\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant=\"${this.activePreset === preset.label ? 'filled' : 'text'}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tclass=\"w-full justify-start text-left\"\n\t\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\t\taria-pressed=\"${this.activePreset === preset.label}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\taria-label=\"${preset.label}: ${preset.range.dateFrom} to ${preset.range.dateTo}\"\n\t\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\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"truncate\">${preset.label}</span>\n\t\t\t\t\t\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}","import { $LitElement } from '@mixins/index'\nimport dayjs from 'dayjs'\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear'\nimport { html, PropertyValues } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, fromEvent, takeUntil, timer } from 'rxjs'\nimport { $dialog } from '../dialog/dialog-service'\nimport { adjustQuarter, calculateShiftParams, 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\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\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\tdisconnectedCallback(): void {\n\t\tsuper.disconnectedCallback()\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\n\n\n\tprivate toggleDropdown(e: Event) {\n\t\te.stopPropagation()\n\t\tif (this.disabled) return\n\n\t\tif (this.isOpen) {\n\t\t\tthis.closeDropdown()\n\t\t} else {\n\t\t\tthis.openDropdown()\n\t\t}\n\t}\n\n\tprivate openDropdown() {\n\t\tif (this.disabled) return\n\t\t\n\t\tthis.isOpen = true\n\t\t\n\t\t// Create dialog with the new component\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}}\"\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}}\"\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\t\t\n\t\t// Use the dialog service - it will automatically find the nearest schmancy-theme\n\t\t$dialog.component(dialogContent, {\n\t\t\ttitle: 'Select Date Range',\n\t\t\twidth: this.isMobile ? '100vw' : '800px',\n\t\t\thideActions: true\n\t\t}).then(() => {\n\t\t\tthis.isOpen = false\n\t\t})\n\t}\n\n\tprivate closeDropdown() {\n\t\t$dialog.dismiss()\n\t\tthis.isOpen = false\n\t}\n\n\n\t/**\n\t * Shifts the date range based on its type (preset or custom)\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\n\t\t// Get active preset and calculate shift parameters\n\t\tconst activePreset = this.presetRanges.find(p => p.label === this.activePreset)\n\t\tconst { unit, amount } = calculateShiftParams(fromDate, toDate, activePreset?.step)\n\n\t\t// Detect date range type\n\t\tconst rangeType = detectDateRangeType(fromDate, toDate)\n\n\t\tlet newFromDate: dayjs.Dayjs\n\t\tlet newToDate: dayjs.Dayjs\n\n\t\t// Handle shifting based on unit\n\t\tif (unit === 'quarter') {\n\t\t\tnewFromDate = adjustQuarter(fromDate, amount, dir)\n\t\t\tnewToDate = adjustQuarter(toDate, amount, dir)\n\t\t\t\n\t\t\tif (rangeType.isFullQuarter) {\n\t\t\t\tnewFromDate = newFromDate.startOf('quarter')\n\t\t\t\tnewToDate = newFromDate.endOf('quarter')\n\t\t\t}\n\t\t} else if (unit === 'hour') {\n\t\t\tconst rangeDurationInHours = toDate.diff(fromDate, 'hour')\n\t\t\tnewFromDate = dir > 0 ? fromDate.add(rangeDurationInHours, 'hour') : fromDate.subtract(rangeDurationInHours, 'hour')\n\t\t\tnewToDate = dir > 0 ? toDate.add(rangeDurationInHours, 'hour') : toDate.subtract(rangeDurationInHours, 'hour')\n\t\t} else {\n\t\t\t// Handle all other units (day, week, month, year)\n\t\t\tif (dir > 0) {\n\t\t\t\tnewFromDate = fromDate.add(amount, unit as dayjs.ManipulateType)\n\t\t\t\tnewToDate = toDate.add(amount, unit as dayjs.ManipulateType)\n\t\t\t} else {\n\t\t\t\tnewFromDate = fromDate.subtract(amount, unit as dayjs.ManipulateType)\n\t\t\t\tnewToDate = toDate.subtract(amount, unit as dayjs.ManipulateType)\n\t\t\t}\n\n\t\t\t// Preserve full period ranges\n\t\t\tif (unit === 'year' && rangeType.isFullYear) {\n\t\t\t\tnewFromDate = newFromDate.startOf('year')\n\t\t\t\tnewToDate = newFromDate.endOf('year')\n\t\t\t} else if (unit === 'month' && rangeType.isFullMonth) {\n\t\t\t\tnewFromDate = newFromDate.startOf('month')\n\t\t\t\tnewToDate = newFromDate.endOf('month')\n\t\t\t} else if (unit === 'week' && rangeType.isFullWeek) {\n\t\t\t\tnewFromDate = newFromDate.startOf('week')\n\t\t\t\tnewToDate = newFromDate.endOf('week')\n\t\t\t}\n\t\t}\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\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\n\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\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<!-- Trigger using the preferred schmancy-grid pattern -->\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}\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\t@click=${(e: Event) => this.toggleDropdown(e)}\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}\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}"],"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","adjustQuarter","amount","direction","newQuarter","yearAdjustment","newDate","targetDay","generateLastNDaysPresets","days","map","label","range","dateFrom","dayjs","dateTo","step","generateLastNWeeksPresets","weeks","generateLastNMonthsPresets","generateLastNQuartersPresets","quarters","enforceDateFormat","dateString","expectedFormat","parsedDate","validateInitialDateRange","formattedDateFrom","formattedDateTo","SchmancyDateRangeDialog","$LitElement","super","type","value","activePreset","presetCategories","input","target","dispatchEvent","CustomEvent","detail","bubbles","composed","preset","stopPropagation","$dialog","dismiss","fromDate","swapIfNeeded","message","render","html","ifDefined","minDate","maxDate","handleFromDateChange","handleToDateChange","applyManualDateSelection","category","presets","handlePresetSelection","__decorateClass","property","Object","customElement","quarterOfYear","SchmancyDateRange","customPresets","disabled","required","placeholder","clearable","isOpen","selectedDateRange","announceMessage","isMobile","presetRanges","memoizedPresets","Map","connectedCallback","initPresetRanges","checkMobileView","dateFormat","getDateFormat","validatedRange","updateSelectedDateRange","now","setupEventHandlers","fromEvent","document","pipe","takeUntil","disconnecting","subscribe","event","handleKeyboardNavigation","window","debounceTime","disconnectedCallback","changedProps","updated","has","cacheKey","JSON","stringify","cached","push","includeTime","categories","customCategory","find","checkAndUpdateActivePreset","fromValue","toValue","fromTime","toTime","announceToScreenReader","closeDropdown","openDropdown","dialogContent","setDateRange","component","title","width","hideActions","then","dir","unit","activePresetStep","rangeDurationInDays","rangeType","isFullMonth","isFullQuarter","isFullYear","isFullWeek","day","newFromDate","newToDate","rangeDurationInHours","key","contains","shiftDateRange","preventDefault","ctrlKey","currentFrom","currentTo","monthStart","daysDiff","monthEnd","matchingPreset","innerWidth","timer","toggleDropdown","Boolean","state"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"date-range-CA_4vjWe.js","sources":["../../../../.yarn/berry/cache/dayjs-npm-1.11.13-d478bb9479-10c0.zip/node_modules/dayjs/dayjs.min.js","../../../../.yarn/berry/cache/dayjs-npm-1.11.13-d478bb9479-10c0.zip/node_modules/dayjs/plugin/quarterOfYear.js","../src/date-range/date-range-helpers.ts","../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"],"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\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('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('MMM D')}-${toDate.format('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('MMM D')} - ${toDate.format('MMM D, YYYY')}${toTime}`\r\n\t}\r\n\r\n\t// Different years\r\n\treturn `${fromDate.format('MMM D, YYYY')}${fromTime} - ${toDate.format('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}","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 { $dialog } from '../dialog/dialog-service'\nimport { DateRangePreset, PresetCategory } from './date-range-presets'\n\n/**\n * Dialog content component for date range selection\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\tprivate handleFromDateChange(e: Event) {\n\t\tconst input = e.target as HTMLInputElement\n\t\tthis.dateFrom = { ...this.dateFrom, value: input.value }\n\t\t\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\t\t\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\t\t\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\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<!-- Custom Range Section with Inline Calendars -->\n\t\t\t\t<schmancy-surface type=\"container\" class=\"rounded-xl p-4 mb-6\">\n\t\t\t\t\t<div class=\"flex flex-col gap-4\">\n\t\t\t\t\t\t<div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n\t\t\t\t\t\t\t<!-- From Date Calendar -->\n\t\t\t\t\t\t\t<div class=\"flex flex-col gap-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${this.dateFrom.label || 'From'}\n\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t\ttype=\"${this.type}\"\n\t\t\t\t\t\t\t\t\t.value=\"${this.dateFrom.value}\"\n\t\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.minDate)}\"\n\t\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t\t@change=\"${this.handleFromDateChange}\"\n\t\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!-- To Date Calendar -->\n\t\t\t\t\t\t\t<div class=\"flex flex-col gap-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${this.dateTo.label || 'To'}\n\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t<schmancy-input\n\t\t\t\t\t\t\t\t\ttype=\"${this.type}\"\n\t\t\t\t\t\t\t\t\t.value=\"${this.dateTo.value}\"\n\t\t\t\t\t\t\t\t\tmin=\"${ifDefined(this.dateFrom.value)}\"\n\t\t\t\t\t\t\t\t\tmax=\"${ifDefined(this.maxDate)}\"\n\t\t\t\t\t\t\t\t\t@change=\"${this.handleToDateChange}\"\n\t\t\t\t\t\t\t\t></schmancy-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<!-- Apply Button - Now at the bottom for logical flow -->\n\t\t\t\t\t\t<div class=\"flex justify-end mt-2\">\n\t\t\t\t\t\t\t<schmancy-button \n\t\t\t\t\t\t\t\tvariant=\"filled\" \n\t\t\t\t\t\t\t\t@click=\"${(e: Event) => this.applyManualDateSelection(e)}\"\n\t\t\t\t\t\t\t\t?disabled=\"${!this.dateFrom.value || !this.dateTo.value}\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tApply\n\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</schmancy-surface>\n\n\t\t\t\t<!-- Presets Section -->\n\t\t\t\t<div class=\"flex-1 overflow-y-auto overflow-x-hidden min-h-0\">\n\t\t\t\t\t<div class=\"grid grid-cols-2 md:grid-cols-5 gap-6\">\n\t\t\t\t\t\t${this.presetCategories.map(\n\t\t\t\t\t\t\tcategory => html`\n\t\t\t\t\t\t\t\t<div class=\"space-y-3\">\n\t\t\t\t\t\t\t\t\t<schmancy-typography type=\"title\" token=\"md\" class=\"text-surface-onVariant font-medium\">\n\t\t\t\t\t\t\t\t\t\t${category.name}\n\t\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t\t<div class=\"space-y-1\">\n\t\t\t\t\t\t\t\t\t\t${category.presets.map(\n\t\t\t\t\t\t\t\t\t\t\tpreset => html`\n\t\t\t\t\t\t\t\t\t\t\t\t<schmancy-button\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant=\"${this.activePreset === preset.label ? 'filled' : 'text'}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tclass=\"w-full justify-start text-left\"\n\t\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\t\taria-pressed=\"${this.activePreset === preset.label}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\taria-label=\"${preset.label}: ${preset.range.dateFrom} to ${preset.range.dateTo}\"\n\t\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\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"truncate\">${preset.label}</span>\n\t\t\t\t\t\t\t\t\t\t\t\t</schmancy-button>\n\t\t\t\t\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}","import { $LitElement } from '@mixins/index'\nimport dayjs from 'dayjs'\nimport quarterOfYear from 'dayjs/plugin/quarterOfYear'\nimport { html, PropertyValues } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { debounceTime, fromEvent, takeUntil, timer } from 'rxjs'\nimport { $dialog } from '../dialog/dialog-service'\nimport { adjustQuarter, calculateShiftParams, 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\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\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\tdisconnectedCallback(): void {\n\t\tsuper.disconnectedCallback()\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\n\n\n\tprivate toggleDropdown(e: Event) {\n\t\te.stopPropagation()\n\t\tif (this.disabled) return\n\n\t\tif (this.isOpen) {\n\t\t\tthis.closeDropdown()\n\t\t} else {\n\t\t\tthis.openDropdown()\n\t\t}\n\t}\n\n\tprivate openDropdown() {\n\t\tif (this.disabled) return\n\t\t\n\t\tthis.isOpen = true\n\t\t\n\t\t// Create dialog with the new component\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}}\"\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}}\"\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\t\t\n\t\t// Use the dialog service - it will automatically find the nearest schmancy-theme\n\t\t$dialog.component(dialogContent, {\n\t\t\ttitle: 'Select Date Range',\n\t\t\twidth: this.isMobile ? '100vw' : '800px',\n\t\t\thideActions: true\n\t\t}).then(() => {\n\t\t\tthis.isOpen = false\n\t\t})\n\t}\n\n\tprivate closeDropdown() {\n\t\t$dialog.dismiss()\n\t\tthis.isOpen = false\n\t}\n\n\n\t/**\n\t * Shifts the date range based on its type (preset or custom)\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\n\t\t// Get active preset and calculate shift parameters\n\t\tconst activePreset = this.presetRanges.find(p => p.label === this.activePreset)\n\t\tconst { unit, amount } = calculateShiftParams(fromDate, toDate, activePreset?.step)\n\n\t\t// Detect date range type\n\t\tconst rangeType = detectDateRangeType(fromDate, toDate)\n\n\t\tlet newFromDate: dayjs.Dayjs\n\t\tlet newToDate: dayjs.Dayjs\n\n\t\t// Handle shifting based on unit\n\t\tif (unit === 'quarter') {\n\t\t\tnewFromDate = adjustQuarter(fromDate, amount, dir)\n\t\t\tnewToDate = adjustQuarter(toDate, amount, dir)\n\t\t\t\n\t\t\tif (rangeType.isFullQuarter) {\n\t\t\t\tnewFromDate = newFromDate.startOf('quarter')\n\t\t\t\tnewToDate = newFromDate.endOf('quarter')\n\t\t\t}\n\t\t} else if (unit === 'hour') {\n\t\t\tconst rangeDurationInHours = toDate.diff(fromDate, 'hour')\n\t\t\tnewFromDate = dir > 0 ? fromDate.add(rangeDurationInHours, 'hour') : fromDate.subtract(rangeDurationInHours, 'hour')\n\t\t\tnewToDate = dir > 0 ? toDate.add(rangeDurationInHours, 'hour') : toDate.subtract(rangeDurationInHours, 'hour')\n\t\t} else {\n\t\t\t// Handle all other units (day, week, month, year)\n\t\t\tif (dir > 0) {\n\t\t\t\tnewFromDate = fromDate.add(amount, unit as dayjs.ManipulateType)\n\t\t\t\tnewToDate = toDate.add(amount, unit as dayjs.ManipulateType)\n\t\t\t} else {\n\t\t\t\tnewFromDate = fromDate.subtract(amount, unit as dayjs.ManipulateType)\n\t\t\t\tnewToDate = toDate.subtract(amount, unit as dayjs.ManipulateType)\n\t\t\t}\n\n\t\t\t// Preserve full period ranges\n\t\t\tif (unit === 'year' && rangeType.isFullYear) {\n\t\t\t\tnewFromDate = newFromDate.startOf('year')\n\t\t\t\tnewToDate = newFromDate.endOf('year')\n\t\t\t} else if (unit === 'month' && rangeType.isFullMonth) {\n\t\t\t\tnewFromDate = newFromDate.startOf('month')\n\t\t\t\tnewToDate = newFromDate.endOf('month')\n\t\t\t} else if (unit === 'week' && rangeType.isFullWeek) {\n\t\t\t\tnewFromDate = newFromDate.startOf('week')\n\t\t\t\tnewToDate = newFromDate.endOf('week')\n\t\t\t}\n\t\t}\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\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\n\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\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<!-- Trigger using the preferred schmancy-grid pattern -->\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}\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\t@click=${(e: Event) => this.toggleDropdown(e)}\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}\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}"],"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","adjustQuarter","amount","direction","newQuarter","yearAdjustment","newDate","targetDay","generateLastNDaysPresets","days","map","label","range","dateFrom","dayjs","dateTo","step","generateLastNWeeksPresets","weeks","generateLastNMonthsPresets","generateLastNQuartersPresets","quarters","enforceDateFormat","dateString","expectedFormat","parsedDate","validateInitialDateRange","formattedDateFrom","formattedDateTo","SchmancyDateRangeDialog","$LitElement","super","type","value","activePreset","presetCategories","input","target","dispatchEvent","CustomEvent","detail","bubbles","composed","preset","stopPropagation","$dialog","dismiss","fromDate","swapIfNeeded","message","render","html","ifDefined","minDate","maxDate","handleFromDateChange","handleToDateChange","applyManualDateSelection","category","presets","handlePresetSelection","__decorateClass","property","Object","customElement","quarterOfYear","SchmancyDateRange","customPresets","disabled","required","placeholder","clearable","isOpen","selectedDateRange","announceMessage","isMobile","presetRanges","memoizedPresets","Map","connectedCallback","initPresetRanges","checkMobileView","dateFormat","getDateFormat","validatedRange","updateSelectedDateRange","now","setupEventHandlers","fromEvent","document","pipe","takeUntil","disconnecting","subscribe","event","handleKeyboardNavigation","window","debounceTime","disconnectedCallback","changedProps","updated","has","cacheKey","JSON","stringify","cached","push","includeTime","categories","customCategory","find","checkAndUpdateActivePreset","fromValue","toValue","fromTime","toTime","announceToScreenReader","closeDropdown","openDropdown","dialogContent","setDateRange","component","title","width","hideActions","then","dir","unit","activePresetStep","rangeDurationInDays","rangeType","isFullMonth","isFullQuarter","isFullYear","isFullWeek","day","newFromDate","newToDate","rangeDurationInHours","key","contains","shiftDateRange","preventDefault","ctrlKey","currentFrom","currentTo","monthStart","daysDiff","monthEnd","matchingPreset","innerWidth","timer","toggleDropdown","Boolean","state"],"mappings":";;;;;;;;;;gEAA4M,WAAA;AAA0B,MAAIA,IAAE,KAAIC,IAAE,KAAIC,IAAE,MAAKC,IAAE,eAAcC,IAAE,UAASC,IAAE,UAASC,IAAE,QAAOC,IAAE,OAAMC,IAAE,QAAOC,IAAE,SAAQC,IAAE,WAAUC,IAAE,QAAOC,IAAE,QAAOC,IAAE,gBAAeC,IAAE,8FAA6FC,IAAE,uFAAsFC,KAAE,EAACC,MAAK,MAAKC,UAAS,2DAA2DC,MAAM,GAAA,GAAKC,QAAO,wFAAwFD,MAAM,GAAKE,GAAAA,SAAQ,SAASrB,GAAAA;AAAG,QAAIC,IAAE,CAAC,MAAK,MAAK,MAAK,IAAA,GAAMC,IAAEF,IAAE;AAAI,WAAM,MAAIA,KAAGC,GAAGC,IAAE,MAAI,EAAKD,KAAAA,EAAEC,CAAID,KAAAA,EAAE,MAAI;AAAA,EAAG,EAAA,GAAGqB,IAAE,SAAStB,GAAEC,GAAEC,GAAG;AAAA,QAAIC,IAAEoB,OAAOvB,CAAAA;AAAG,WAAOG,CAAAA,KAAGA,EAAEqB,UAAQvB,IAAED,IAAE,KAAGyB,MAAMxB,IAAE,IAAEE,EAAEqB,MAAQE,EAAAA,KAAKxB,CAAGF,IAAAA;AAAAA,EAAC,GAAE2B,KAAE,EAACtB,GAAEiB,GAAEM,GAAE,SAAS5B,GAAAA;AAAG,QAAIC,IAAAA,CAAGD,EAAE6B,UAAY3B,GAAAA,IAAE4B,KAAKC,IAAI9B,CAAGE,GAAAA,IAAE2B,KAAKE,MAAM9B,IAAE,EAAIE,GAAAA,IAAEF,IAAE;AAAG,YAAOD,KAAG,IAAE,MAAI,OAAKqB,EAAEnB,GAAE,GAAE,GAAA,IAAK,MAAImB,EAAElB,GAAE,GAAE;EAAI,GAAEkB,GAAE,SAAStB,EAAEC,GAAEC,GAAAA;AAAG,QAAGD,EAAEgC,SAAO/B,EAAE+B,KAAAA,EAAO,QAAOjC,CAAAA,EAAEE,GAAED,CAAAA;AAAG,QAAIE,IAAE,MAAID,EAAEgC,KAAAA,IAAOjC,EAAEiC,KAAAA,MAAShC,EAAEiC,MAAAA,IAAQlC,EAAEkC,MAAAA,IAAS/B,IAAEH,EAAEmC,MAAAA,EAAQC,IAAIlC,GAAEM,CAAGJ,GAAAA,IAAEH,IAAEE,IAAE,GAAEE,IAAEL,EAAEmC,MAAQC,EAAAA,IAAIlC,KAAGE,IAAE,KAAG,IAAGI,CAAAA;AAAG,eAAUN,KAAGD,IAAEE,MAAIC,IAAED,IAAEE,IAAEA,IAAEF,OAAK;AAAA,EAAE,GAAEG,GAAE,SAASP,GAAAA;AAAG,WAAOA,IAAE,IAAE8B,KAAKQ,KAAKtC,CAAI,KAAA,IAAE8B,KAAKE,MAAMhC,CAAE;AAAA,EAAA,GAAEuC,GAAE,SAASvC;AAAG,WAAM,EAACgB,GAAEP,GAAEM,GAAEJ,GAAE6B,GAAEhC,GAAEI,GAAEL,GAAEkC,GAAE7B,GAAED,GAAEL,GAAEgB,GAAEjB,GAAEA,GAAED,GAAEsC,IAAGvC,GAAEwC,GAAEjC,EAAGV,EAAAA,CAAAA,KAAIuB,OAAOvB,KAAG,EAAI4C,EAAAA,YAAAA,EAAcC,QAAQ,MAAK,EAAA;AAAA,EAAG,GAAEvC,GAAE,SAASN,GAAAA;AAAG,WAAgBA,MAAT;AAAA,EAAU,EAAG8C,GAAAA,IAAE,MAAKL,IAAE,CAAE;AAACA,EAAAA,EAAEK,CAAG9B,IAAAA;AAAE,MAAIuB,KAAE,kBAAiBQ,KAAE,SAAS/C,GAAG;AAAA,WAAOA,aAAagD,KAAAA,EAAAA,CAAMhD,MAAIA,EAAEuC,EAAAA;AAAAA,EAAG,GAAEC,IAAE,SAASxC,EAAEC,GAAEC,GAAEC;AAAG,QAAIC;AAAE,QAAIH,CAAAA,EAAE,QAAO6C;AAAE,QAAG,OAAiB7C,KAAjB,UAAmB;AAAC,UAAII,IAAEJ,EAAE2C,YAAcH;AAAAA,MAAAA,EAAEpC,CAAKD,MAAAA,IAAEC,IAAGH,MAAIuC,EAAEpC,CAAGH,IAAAA,GAAEE,IAAEC;AAAG,UAAIC,IAAEL,EAAEkB,MAAM,GAAA;AAAK,UAAIf,CAAAA,KAAGE,EAAEkB,SAAO,EAAE,QAAOxB,EAAEM,EAAE,CAAA,CAAA;AAAA,IAAG,OAAK;AAAC,UAAIC,IAAEN,EAAEgB;AAAKwB,MAAAA,EAAElC,CAAGN,IAAAA,GAAEG,IAAEG;AAAAA,IAAC;AAAC,WAAOJ,CAAAA,KAAGC,MAAI0C,IAAE1C,IAAGA,KAAID,CAAAA,KAAG2C;AAAAA,EAAC,GAAEG,IAAE,SAASjD,GAAEC,GAAAA;AAAG,QAAG8C,GAAE/C,CAAAA,EAAG,QAAOA,EAAEoC,MAAQ;AAAA,QAAIlC,IAAE,OAAiBD,KAAjB,WAAmBA,IAAE,CAAE;AAAC,WAAOC,EAAE+B,OAAKjC,GAAEE,EAAEgD,OAAKC,WAAU,IAAIH,EAAE9C,CAAAA;AAAAA,EAAE,GAAEkD,IAAEzB;AAAEyB,EAAAA,EAAEvC,IAAE2B,GAAEY,EAAEhD,IAAE2C,IAAEK,EAAEZ,IAAE,SAASxC,GAAEC,GAAAA;AAAG,WAAOgD,EAAEjD,GAAE,EAACqD,QAAOpD,EAAEqD,IAAGC,KAAItD,EAAEuD,IAAGC,GAAExD,EAAEyD,IAAGC,SAAQ1D,EAAE0D,QAAAA,CAAAA;AAAAA,EAAS;AAAE,MAAIX,IAAE,WAAW;AAAA,aAAShC,EAAEhB,GAAAA;AAAG4D,WAAKN,KAAGd,EAAExC,EAAEqD,QAAO,QAASO,GAAAA,KAAKC,MAAM7D,CAAAA,GAAG4D,KAAKF,KAAGE,KAAKF,MAAI1D,EAAEyD,KAAG,CAAA,GAAGG,KAAKrB,EAAG,IAAA;AAAA,IAAE;AAAC,QAAIjB,IAAEN,EAAE8C;AAAU,WAAOxC,EAAEuC,QAAM,SAAS7D,GAAG4D;AAAAA,WAAKG,KAAG,SAAS/D,GAAAA;AAAG,YAAIC,IAAED,EAAEiC,MAAK/B,IAAEF,EAAEuD;AAAI,YAAUtD,MAAP,KAAS,QAAO,oBAAI+D,KAAKC,GAAK;AAAA,YAAGb,EAAE9C,EAAEL,CAAAA,EAAG,QAAO,oBAAI+D;AAAK,YAAG/D,aAAa+D,KAAK,QAAO,IAAIA,KAAK/D,CAAG;AAAA,YAAoBA,OAAAA,KAAjB,YAAiBA,CAAI,MAAMiE,KAAKjE,IAAG;AAAC,cAAIE,IAAEF,EAAEkE,MAAMrD,CAAG;AAAA,cAAGX,GAAE;AAAC,gBAAIC,IAAED,EAAE,CAAG,IAAA,KAAG,GAAEE,KAAGF,EAAE,CAAA,KAAI,KAAKiE,UAAU,GAAE,CAAG;AAAA,mBAAOlE,IAAE,IAAI8D,KAAKA,KAAKK,IAAIlE,EAAE,CAAA,GAAGC,GAAED,EAAE,CAAI,KAAA,GAAEA,EAAE,CAAA,KAAI,GAAEA,EAAE,CAAA,KAAI,GAAEA,EAAE,MAAI,GAAEE,CAAAA,CAAAA,IAAI,IAAI2D,KAAK7D,EAAE,CAAGC,GAAAA,GAAED,EAAE,CAAA,KAAI,GAAEA,EAAE,CAAI,KAAA,GAAEA,EAAE,CAAI,KAAA,GAAEA,EAAE,CAAA,KAAI,GAAEE,CAAAA;AAAAA,UAAE;AAAA,QAAC;AAAC,eAAO,IAAI2D,KAAK/D,CAAE;AAAA,MAAA,EAAED,CAAAA,GAAG4D,KAAKU,KAAAA;AAAAA,IAAM,GAAEhD,EAAEgD,OAAK,WAAW;AAAA,UAAItE,IAAE4D,KAAKG;AAAGH,WAAKW,KAAGvE,EAAEwE,YAAcZ,GAAAA,KAAKa,KAAGzE,EAAE0E,SAAWd,GAAAA,KAAKe,KAAG3E,EAAE4E,WAAUhB,KAAKiB,KAAG7E,EAAE8E,OAAAA,GAASlB,KAAKmB,KAAG/E,EAAEgF,SAAAA,GAAWpB,KAAKqB,KAAGjF,EAAEkF,WAAatB,GAAAA,KAAKuB,KAAGnF,EAAEoF,WAAaxB,GAAAA,KAAKyB,MAAIrF,EAAEsF,gBAAAA;AAAAA,IAAiB,GAAEhE,EAAEiE,SAAO,WAAA;AAAW,aAAOnC;AAAAA,IAAC,GAAE9B,EAAEkE,UAAQ,WAAW;AAAA,aAAQ5B,KAAKG,GAAG0B,SAAa5E,MAAAA;AAAAA,IAAE,GAAES,EAAEoE,SAAO,SAAS1F,GAAEC,GAAG;AAAA,UAAIC,IAAE+C,EAAEjD;AAAG,aAAO4D,KAAK+B,QAAQ1F,CAAAA,KAAIC,KAAGA,KAAG0D,KAAKgC,MAAM3F;IAAE,GAAEqB,EAAEuE,UAAQ,SAAS7F,GAAEC,GAAG;AAAA,aAAOgD,EAAEjD,CAAAA,IAAG4D,KAAK+B,QAAQ1F,CAAAA;AAAAA,IAAE,GAAEqB,EAAEwE,WAAS,SAAS9F,GAAEC,GAAAA;AAAG,aAAO2D,KAAKgC,MAAM3F,CAAGgD,IAAAA,EAAEjD,CAAE;AAAA,IAAA,GAAEsB,EAAEyE,KAAG,SAAS/F,GAAEC,GAAEC,GAAG;AAAA,aAAOkD,EAAE9C,EAAEN,CAAG4D,IAAAA,KAAK3D,KAAG2D,KAAKoC,IAAI9F,GAAEF,CAAAA;AAAAA,IAAE,GAAEsB,EAAE2E,OAAK,WAAA;AAAW,aAAOnE,KAAKE,MAAM4B,KAAKsC,QAAAA,IAAU,GAAI;AAAA,IAAA,GAAE5E,EAAE4E,UAAQ;AAAW,aAAOtC,KAAKG,GAAGoC,QAAAA;AAAAA,IAAS,GAAE7E,EAAEqE,UAAQ,SAAS3F,GAAEC,GAAG;AAAA,UAAIC,IAAE0D,MAAKzD,IAAIiD,CAAAA,CAAAA,EAAE9C,EAAEL,CAAAA,KAAIA,GAAES,IAAE0C,EAAEb,EAAEvC,CAAAA,GAAGa,IAAE,SAASb,GAAEC,GAAG;AAAA,YAAIG,IAAEgD,EAAEZ,EAAEtC,EAAEsD,KAAGQ,KAAKK,IAAInE,EAAEqE,IAAGtE,GAAED,CAAG,IAAA,IAAIgE,KAAK9D,EAAEqE,IAAGtE,GAAED,CAAGE,GAAAA,CAAAA;AAAG,eAAOC,IAAEC,IAAEA,EAAEwF,MAAMrF,CAAE;AAAA,MAAA,GAAEO,IAAE,SAASd,GAAEC,GAAG;AAAA,eAAOmD,EAAEZ,EAAEtC,EAAEkG,OAAAA,EAASpG,CAAGqG,EAAAA,MAAMnG,EAAEkG,OAAO,GAAA,IAAMjG,IAAE,CAAC,GAAE,GAAE,GAAE,CAAA,IAAG,CAAC,IAAG,IAAG,IAAG,GAAA,GAAMmG,MAAMrG,CAAAA,CAAAA,GAAIC,CAAE;AAAA,MAAA,GAAEa,IAAE6C,KAAKiB,IAAG7D,IAAE4C,KAAKa,IAAGnD,IAAEsC,KAAKe,IAAGhD,IAAE,SAAOiC,KAAKJ,KAAG,QAAM;AAAI,cAAO9C,GAAAA;AAAAA,QAAG,KAAKC;AAAE,iBAAOR,IAAEU,EAAE,GAAE,CAAA,IAAGA,EAAE,IAAG,EAAI;AAAA,QAAA,KAAKJ;AAAE,iBAAON,IAAEU,EAAE,GAAEG,CAAGH,IAAAA,EAAE,GAAEG,IAAE;QAAG,KAAKR;AAAE,cAAIsC,IAAEc,KAAK2C,QAAAA,EAAUC,aAAW,GAAE/D,KAAG1B,IAAE+B,IAAE/B,IAAE,IAAEA,KAAG+B;AAAE,iBAAOjC,EAAEV,IAAEmB,IAAEmB,IAAEnB,KAAG,IAAEmB,IAAGzB,CAAG;AAAA,QAAA,KAAKT;AAAAA,QAAE,KAAKK;AAAE,iBAAOE,EAAEa,IAAE,SAAQ,CAAG;AAAA,QAAA,KAAKrB;AAAE,iBAAOQ,EAAEa,IAAE,WAAU,CAAG;AAAA,QAAA,KAAKtB;AAAE,iBAAOS,EAAEa,IAAE,WAAU,CAAG;AAAA,QAAA,KAAKvB;AAAE,iBAAOU,EAAEa,IAAE,gBAAe,CAAG;AAAA,QAAA;AAAQ,iBAAOiC,KAAKxB,MAAAA;AAAAA,MAAAA;AAAAA,IAAQ,GAAEd,EAAEsE,QAAM,SAAS5F,GAAG;AAAA,aAAO4D,KAAK+B,QAAQ3F,GAAAA,EAAK;AAAA,IAAA,GAAEsB,EAAEmF,OAAK,SAASzG,GAAEC;AAAG,UAAIC,GAAEM,IAAE4C,EAAEb,EAAEvC,CAAAA,GAAGU,IAAE,SAAOkD,KAAKJ,KAAG,QAAM,KAAI3C,KAAGX,IAAE,CAAE,GAACA,EAAEK,KAAGG,IAAE,QAAOR,EAAEU,CAAAA,IAAGF,IAAE,QAAOR,EAAEO,CAAAA,IAAGC,IAAE,SAAQR,EAAES,CAAGD,IAAAA,IAAE,YAAWR,EAAEI,CAAGI,IAAAA,IAAE,SAAQR,EAAEG,CAAAA,IAAGK,IAAE,WAAUR,EAAEE,CAAAA,IAAGM,IAAE,WAAUR,EAAEC,CAAGO,IAAAA,IAAE,gBAAeR,GAAGM,IAAGM,IAAEN,MAAID,IAAEqD,KAAKe,MAAI1E,IAAE2D,KAAKiB,MAAI5E;AAAE,UAAGO,MAAIC,KAAGD,MAAIG,GAAE;AAAC,YAAII,IAAE6C,KAAKxB,MAAQ4D,EAAAA,IAAIpF,GAAE,CAAA;AAAGG,QAAAA,EAAEgD,GAAGlD,CAAAA,EAAGC,CAAGC,GAAAA,EAAEuD,KAAOV,GAAAA,KAAKG,KAAGhD,EAAEiF,IAAIpF,GAAEkB,KAAK4E,IAAI9C,KAAKe,IAAG5D,EAAE4F,YAAAA,CAAAA,CAAAA,EAAgB5C;AAAAA,MAAE,MAAMlD,CAAAA,KAAG+C,KAAKG,GAAGlD,CAAGC,EAAAA,CAAAA;AAAG,aAAO8C,KAAKU,KAAOV,GAAAA;AAAAA,IAAI,GAAEtC,EAAE0E,MAAI,SAAShG,GAAEC,GAAG;AAAA,aAAO2D,KAAKxB,MAAAA,EAAQqE,KAAKzG,GAAEC,CAAAA;AAAAA,IAAE,GAAEqB,EAAEsF,MAAI,SAAS5G,GAAG;AAAA,aAAO4D,KAAKR,EAAEb,EAAEvC,CAAK,CAAA,EAAA;AAAA,IAAA,GAAEsB,EAAEe,MAAI,SAASlC,GAAEO,GAAAA;AAAG,UAAIE,GAAEC,IAAE+C;AAAKzD,MAAAA,IAAE0G,OAAO1G,CAAAA;AAAG,UAAIW,IAAEsC,EAAEb,EAAE7B,CAAAA,GAAGK,IAAE,SAASf,GAAG;AAAA,YAAIC,IAAEgD,EAAEpC;AAAG,eAAOuC,EAAEZ,EAAEvC,EAAEgC,KAAKhC,EAAEgC,KAAOH,IAAAA,KAAKgF,MAAM9G,IAAEG,CAAAA,CAAAA,GAAIU,CAAE;AAAA,MAAA;AAAE,UAAGC,MAAIL,EAAE,QAAOmD,KAAKoC,IAAIvF,GAAEmD,KAAKa,KAAGtE,CAAG;AAAA,UAAGW,MAAIH,EAAE,QAAOiD,KAAKoC,IAAIrF,GAAEiD,KAAKW,KAAGpE,CAAAA;AAAG,UAAGW,MAAIP,EAAE,QAAOQ,EAAE,CAAG;AAAA,UAAGD,MAAIN,EAAE,QAAOO,EAAE;AAAG,UAAIC,KAAGJ,IAAE,IAAGA,EAAEP,CAAAA,IAAGJ,GAAEW,EAAEN,KAAGJ,GAAEU,EAAER,CAAGJ,IAAAA,GAAEY,GAAGE,CAAAA,KAAI,GAAEQ,IAAEsC,KAAKG,GAAGoC,QAAAA,IAAUhG,IAAEa;AAAE,aAAOoC,EAAEZ,EAAElB,GAAEsC;IAAK,GAAEtC,EAAEyF,WAAS,SAAS/G,GAAEC,GAAAA;AAAG,aAAO2D,KAAKvB,SAAOrC,GAAEC,CAAE;AAAA,IAAA,GAAEqB,EAAE0F,SAAO,SAAShH,GAAG;AAAA,UAAIC,IAAE2D,MAAK1D,IAAE0D,KAAK2C,QAAAA;AAAU,UAAI3C,CAAAA,KAAK4B,QAAU,EAAA,QAAOtF,EAAE+G,eAAapG;AAAE,UAAIV,IAAEH,KAAG,wBAAuBI,IAAEgD,EAAExB,EAAEgC,IAAMvD,GAAAA,IAAEuD,KAAKmB,IAAGzE,IAAEsD,KAAKqB,IAAG1E,IAAEqD,KAAKa,IAAGjE,IAAEN,EAAEgB,UAAST,IAAEP,EAAEkB,QAAOV,IAAER,EAAEgH,UAASvG,IAAE,SAASX,GAAEE,GAAEE,GAAEC,GAAAA;AAAG,eAAOL,MAAIA,EAAEE,CAAIF,KAAAA,EAAEC,GAAEE,CAAAA,MAAKC,EAAEF,CAAAA,EAAGoG,MAAM,GAAEjG;MAAE,GAAEO,IAAE,SAASZ,GAAAA;AAAG,eAAOoD,EAAE/C,EAAEA,IAAE,MAAI,IAAGL,GAAE,GAAI;AAAA,MAAA,GAAEc,IAAEJ,KAAG,SAASV,GAAEC,GAAEC,GAAG;AAAA,YAAIC,IAAEH,IAAE,KAAG,OAAK;AAAK,eAAOE,IAAEC,EAAEyC,YAAAA,IAAczC;AAAAA,MAAC;AAAE,aAAOA,EAAE0C,QAAQ9B,GAAG,SAASf,GAAEG,GAAAA;AAAG,eAAOA,KAAG,SAASH,GAAAA;AAAG,kBAAOA,GAAAA;AAAAA,YAAG,KAAI;AAAK,qBAAOuB,OAAOtB,EAAEsE,IAAI+B,MAAM,EAAA;AAAA,YAAI,KAAI;AAAO,qBAAOlD,EAAE/C,EAAEJ,EAAEsE,IAAG,GAAE,GAAA;AAAA,YAAK,KAAI;AAAI,qBAAOhE,IAAE;AAAA,YAAE,KAAI;AAAK,qBAAO6C,EAAE/C,EAAEE,IAAE,GAAE,GAAE,GAAA;AAAA,YAAK,KAAI;AAAM,qBAAOI,EAAET,EAAEiH,aAAY5G,GAAEE,GAAE,CAAA;AAAA,YAAG,KAAI;AAAO,qBAAOE,EAAEF,GAAEF,CAAAA;AAAAA,YAAG,KAAI;AAAI,qBAAON,EAAE0E;AAAAA,YAAG,KAAI;AAAK,qBAAOvB,EAAE/C,EAAEJ,EAAE0E,IAAG,GAAE,GAAA;AAAA,YAAK,KAAI;AAAI,qBAAOpD,OAAOtB,EAAE4E,EAAI;AAAA,YAAA,KAAI;AAAK,qBAAOlE,EAAET,EAAEkH,aAAYnH,EAAE4E,IAAGrE,GAAE,CAAA;AAAA,YAAG,KAAI;AAAM,qBAAOG,EAAET,EAAEmH,eAAcpH,EAAE4E,IAAGrE,GAAE,CAAA;AAAA,YAAG,KAAI;AAAO,qBAAOA,EAAEP,EAAE4E,EAAAA;AAAAA,YAAI,KAAI;AAAI,qBAAOtD,OAAOlB,CAAAA;AAAAA,YAAG,KAAI;AAAK,qBAAO+C,EAAE/C,EAAEA,GAAE,GAAE,GAAK;AAAA,YAAA,KAAI;AAAI,qBAAOO,EAAE,CAAA;AAAA,YAAG,KAAI;AAAK,qBAAOA,EAAE,CAAA;AAAA,YAAG,KAAI;AAAI,qBAAOE,EAAET,GAAEC,GAAE,EAAA;AAAA,YAAI,KAAI;AAAI,qBAAOQ,EAAET,GAAEC,GAAAA;YAAM,KAAI;AAAI,qBAAOiB,OAAOjB,CAAG;AAAA,YAAA,KAAI;AAAK,qBAAO8C,EAAE/C,EAAEC,GAAE,GAAE,GAAA;AAAA,YAAK,KAAI;AAAI,qBAAOiB,OAAOtB,EAAEkF,EAAI;AAAA,YAAA,KAAI;AAAK,qBAAO/B,EAAE/C,EAAEJ,EAAEkF,IAAG,GAAE;YAAK,KAAI;AAAM,qBAAO/B,EAAE/C,EAAEJ,EAAEoF,KAAI,GAAE;YAAK,KAAI;AAAI,qBAAOjF;AAAAA,UAAAA;AAAE,iBAAO;AAAA,QAAI,EAAEJ,MAAII,EAAEyC,QAAQ,KAAI,EAAA;AAAA,MAAI,CAAE;AAAA,IAAA,GAAEvB,EAAEO,YAAU;AAAW,aAAO,KAAA,CAAIC,KAAKgF,MAAMlD,KAAKG,GAAGuD,kBAAAA,IAAoB,EAAG;AAAA,IAAA,GAAEhG,EAAEiG,OAAK,SAASpH,GAAES,GAAEC,GAAG;AAAA,UAAIC,GAAEC,IAAE6C,MAAK5C,IAAEoC,EAAEb,EAAE3B,CAAAA,GAAGU,IAAE2B,EAAE9C,CAAGwB,GAAAA,KAAGL,EAAEO,UAAY+B,IAAAA,KAAK/B,UAAa5B,KAAAA,GAAE6C,IAAEc,OAAKtC,GAAEmB,IAAE;AAAW,eAAOW,EAAE9B,EAAEP,GAAEO;MAAE;AAAE,cAAON,GAAG;AAAA,QAAA,KAAKL;AAAEG,UAAAA,IAAE2B,EAAAA,IAAI;AAAG;AAAA,QAAM,KAAKhC;AAAEK,UAAAA,IAAE2B,EAAAA;AAAI;AAAA,QAAM,KAAK/B;AAAEI,UAAAA,IAAE2B,EAAAA,IAAI;AAAE;AAAA,QAAM,KAAKjC;AAAEM,UAAAA,KAAGgC,IAAEnB,KAAG;AAAO;AAAA,QAAM,KAAKpB;AAAEO,UAAAA,KAAGgC,IAAEnB,KAAG;AAAM;AAAA,QAAM,KAAKrB;AAAEQ,UAAAA,IAAEgC,IAAE5C;AAAE;AAAA,QAAM,KAAKG;AAAES,UAAAA,IAAEgC,IAAE7C;AAAE;AAAA,QAAM,KAAKG;AAAEU,UAAAA,IAAEgC,IAAE9C;AAAE;AAAA,QAAM;AAAQc,UAAAA,IAAEgC;AAAAA,MAAE;AAAA,aAAOjC,IAAEC,IAAEsC,EAAE7C,EAAEO,CAAAA;AAAAA,IAAE,GAAEQ,EAAEqF,cAAY,WAAA;AAAW,aAAO/C,KAAKgC,MAAMnF,CAAGkE,EAAAA;AAAAA,IAAE,GAAErD,EAAEiF,UAAQ,WAAW;AAAA,aAAO9D,EAAEmB,KAAKN;IAAG,GAAEhC,EAAE+B,SAAO,SAASrD,GAAEC,GAAAA;AAAG,UAAID,CAAAA,EAAE,QAAO4D,KAAKN;AAAG,UAAIpD,IAAE0D,KAAKxB,MAAAA,GAAQjC,IAAEqC,EAAExC,GAAEC,GAAE,EAAA;AAAI,aAAOE,MAAID,EAAEoD,KAAGnD,IAAGD;AAAAA,IAAC,GAAEoB,EAAEc,QAAM,WAAW;AAAA,aAAOgB,EAAEZ,EAAEoB,KAAKG,IAAGH,IAAAA;AAAAA,IAAK,GAAEtC,EAAE8E,SAAO,WAAW;AAAA,aAAO,IAAIpC,KAAKJ,KAAKsC,QAAAA,CAAAA;AAAAA,IAAU,GAAE5E,EAAEkG,SAAO,WAAW;AAAA,aAAO5D,KAAK4B,QAAAA,IAAU5B,KAAK6D,YAAAA,IAAc;AAAA,IAAI,GAAEnG,EAAEmG,cAAY,WAAA;AAAW,aAAO7D,KAAKG,GAAG0D,YAAAA;AAAAA,IAAa,GAAEnG,EAAEmE,WAAS,WAAW;AAAA,aAAO7B,KAAKG,GAAG2D,YAAAA;AAAAA,IAAa,GAAE1G;AAAAA,EAAC,EAAI2G,GAAAA,KAAE3E,EAAEc;AAAU,SAAOb,EAAEa,YAAU6D,IAAE,CAAC,CAAC,OAAMxH,CAAG,GAAA,CAAC,MAAKC,CAAAA,GAAG,CAAC,MAAKC,IAAG,CAAC,MAAKC,CAAG,GAAA,CAAC,MAAKC,CAAAA,GAAG,CAAC,MAAKE,IAAG,CAAC,MAAKE,CAAG,GAAA,CAAC,MAAKC,CAAAA,CAAAA,EAAIgH,QAAO,SAAW5H;AAAG2H,IAAAA,GAAE3H,EAAE,CAAI,CAAA,IAAA,SAASC,GAAG;AAAA,aAAO2D,KAAKmC,GAAG9F,GAAED,EAAE,CAAA,GAAGA,EAAE,CAAA,CAAA;AAAA,IAAG;AAAA,EAAE,CAAA,GAAGiD,EAAE4E,SAAO,SAAS7H,GAAEC,GAAAA;AAAG,WAAOD,EAAE8H,OAAK9H,EAAEC,GAAE+C,GAAEC,IAAGjD,EAAE8H,KAAAA,KAAO7E;AAAAA,EAAC,GAAEA,EAAEI,SAAOb,GAAES,EAAE8E,UAAQhF,IAAEE,EAAEgD,OAAK,SAASjG,GAAG;AAAA,WAAOiD,EAAE,MAAIjD;EAAE,GAAEiD,EAAE+E,KAAGvF,EAAEK,CAAGG,GAAAA,EAAEgF,KAAGxF,GAAEQ,EAAEV,IAAE,IAAGU;AAAE,EAAl6NhD;;QCA4KD,GAAUE;uDAAVF,IAAE,SAAQE,KAAE,WAAiB,SAASD,GAAEG,GAAG;AAAA,MAAID,IAAEC,EAAE0D;AAAU3D,EAAAA,EAAE+H,UAAQ,SAASlI;AAAG,WAAO4D,KAAK2B,OAASjF,EAAAA,EAAEN,KAAG8B,KAAKQ,MAAMsB,KAAKzB,MAAAA,IAAQ,KAAG,CAAGyB,IAAAA,KAAKzB,MAAMyB,KAAKzB,MAAQ,IAAA,IAAE,KAAGnC,IAAE;EAAG;AAAE,MAAIK,IAAEF,EAAEkC;AAAIlC,EAAAA,EAAEkC,MAAI,SAASpC,GAAEG,GAAG;AAAA,WAAOH,IAAE4G,OAAO5G,CAAG2D,GAAAA,KAAK2B,OAAShD,EAAAA,EAAEnC,OAAKF,KAAE0D,KAAKvB,IAAI,IAAEpC,GAAED,CAAAA,IAAGK,EAAE8H,KAAKvE,MAAM3D,GAAEG,CAAE;AAAA,EAAA;AAAE,MAAIE,IAAEH,EAAEwF;AAAQxF,EAAAA,EAAEwF,UAAQ,SAAS1F,GAAEG,GAAAA;AAAG,QAAID,IAAEyD,KAAK2B,OAAAA,GAASlF,MAAIF,EAAEG,EAAEF,CAAIA,KAAAA;AAAE,QAAGD,EAAEoC,EAAEtC,CAAAA,MAAKC,IAAE;AAAC,UAAIM,IAAEoD,KAAKsE,YAAU;AAAE,aAAO7H,IAAEuD,KAAKzB,MAAM,IAAE3B,CAAAA,EAAGmF,QAAQ3F,CAAAA,EAAG2F,QAAQ,KAAA,IAAO/B,KAAKzB,MAAM,IAAE3B,IAAE,CAAA,EAAGoF,MAAM5F,CAAAA,EAAG4F,MAAM,KAAA;AAAA,IAAM;AAAC,WAAOtF,EAAE6H,KAAKvE,IAAAA,EAAM3D,GAAEG,CAAE;AAAA,EAAA;AAAC,GCwG/uB;AAAA,SAAAgI,GAAcnG,GAAmBoG,GAAgBC,GAK5D;AAAA,MAAAC,IAHmBtG,EAAKiG,QAAAA,IAGMI,IAAYD,GAC1CG,IAAiB;AAGrB,SAAOD,IAAa,IACLA,CAAAA,KAAA,GACIC,KAAA;AAGnB,SAAOD,IAAa,IACLA,CAAAA,KAAA,GACIC,KAAA;AAInB,QAGMC,IAHexG,EAAKI,IAAImG,GAAgB,MAGjBrG,EAAAA,MAAyB,KAAlBoG,IAAa,EAG3C5B,GAAAA,IAAc8B,EAAQ9B,YACtB+B,GAAAA,IAAY5G,KAAK4E,IAAIzE,EAAKA,KAAQ0E,GAAAA,CAAAA;AAEjC,SAAA8B,EAAQxG,KAAKyG,CACrB;AAAA;AC2CA,SAASC,GAAyBC,GAAgB5B,GAAAA;AAC1C,SAAA4B,EAAKC,IAAU3I,CAAAA,OAAA,EACrB4I,OAAO,QAAQ5I,CACf6I,SAAAA,OAAO,EACNC,UAAUC,IAAQlC,SAAS7G,IAAI,GAAG,MAAA,EAAQyF,QAAQ,KAAA,EAAOqB,OAAOA,CAAAA,GAChEkC,QAAQD,EAAQrD,EAAAA,MAAM,KAAOoB,EAAAA,OAAOA,CAErCmC,EAAAA,GAAAA,MAAM,MAER,EAAA;AAAA;AAEA,SAASC,GAA0BC,GAAiBrC,GAC5C;AAAA,SAAAqC,EAAMR,IAAU3I,CAAAA,OAAA,EACtB4I,OAAO,QAAQ5I,CAAAA,UACf6I,OAAO,EACNC,UAAUC,EAAAA,EAAQlC,SAAS7G,GAAG,SAASyF,QAAQ,MAAA,EAAQqB,OAAOA,CAAAA,GAC9DkC,QAAQD,EAAAA,EAAQrD,MAAM,KAAA,EAAOoB,OAAOA,CAErCmC,EAAAA,GAAAA,MAAM,OAER,EAAA;AAAA;AAEA,SAASG,GAA2BlI,GAAkB4F,GAC9C;AAAA,SAAA5F,EAAOyH,IAAU3I,CAAAA,OAAA,EACvB4I,OAAO,QAAQ5I,CAAAA,WACf6I,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS7G,GAAG,QAAA,EAAUyF,QAAQ,OAAA,EAASqB,OAAOA,CAAAA,GAChEkC,QAAQD,EAAQrD,EAAAA,MAAM,KAAOoB,EAAAA,OAAOA,CAErCmC,EAAAA,GAAAA,MAAM,QAER,EAAA;AAAA;AAEA,SAASI,GAA6BC,GAAoBxC,GAClD;AAAA,SAAAwC,EAASX,IAAU3I,CAAAA,OAAA,EACzB4I,OAAO,QAAQ5I,CACf6I,aAAAA,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS7G,GAAG,UAAA,EAAYyF,QAAQ,SAAWqB,EAAAA,OAAOA,CACpEkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,KAAOoB,EAAAA,OAAOA,MAErCmC,MAAM,UAAA,EAAA;AAER;AC7MA,SAASM,GAAkBC,GAAgCC,GAC1D;AAAA,MAAA,CAAKD,EACG,QAAA;AAGF,QAAAE,IAAaX,EAAMS,CAErB;AAAA,SAACE,EAAWpE,QAAAA,IAIToE,EAAW5C,OAAO2C,CAAAA,IAHjB;AAIT;AAUA,SAASE,GACRb,GACAE,GACAS;AAMM,QAAAG,IAAoBL,GAAkBT,GAAUW,CAChDI,GAAAA,IAAkBN,GAAkBP,GAAQS;AAI3C,SAAA,EACNX,UAAUc,GACVZ,QAAQa,GACRvE,SALesE,MAAsB,QAAQC,MAAoB,KAApBA;AAO/C;;;;;ACzCa,IAAAC,IAAN,cAAsCC,GAAtC,EAAA;AAAA,EAAA,cAAAC;AAAAA,UAAAA,GAAA/G,YACwDS,KAAAuG,OAAA,QAClCvG,KAAAoF,WAA6C,EAAEF,OAAO,QAAQsB,OAAO,GACrExG,GAAAA,KAAAsF,SAA2C,EAAEJ,OAAO,MAAMsB,OAAO,GAGnCxG,GAAAA,KAAAyG,eAAA,MAC/BzG,KAAA0G,mBAAqC,CAAA;AAAA,EAAC;AAAA,EAEzD,qBAAqBrK,GAAAA;AAC5B,UAAMsK,IAAQtK,EAAEuK;AAChB5G,SAAKoF,WAAW,EAAA,GAAKpF,KAAKoF,UAAUoB,OAAOG,EAAMH,MAAAA,GAG7CxG,KAAKsF,OAAOkB,SAASnB,EAAMrF,KAAKoF,SAASoB,OAAOvE,QAAQoD,EAAMrF,KAAKsF,OAAOkB,YACxExG,KAAAsF,SAAS,EAAKtF,GAAAA,KAAKsF,QAAQkB,OAAOxG,KAAKoF,SAASoB,MAAAA,IAGjDxG,KAAA6G,cAAc,IAAIC,YAAY,eAAe,EACjDC,QAAQ,EAAE3B,UAAUpF,KAAKoF,SAASoB,OAAOlB,QAAQtF,KAAKsF,OAAOkB,MAAAA,GAC7DQ,SAAS,IACTC,UAAU,GAAA,CAAA,CAAA;AAAA,EACT;AAAA,EAGK,mBAAmB5K,GAC1B;AAAA,UAAMsK,IAAQtK,EAAEuK;AAChB5G,SAAKsF,SAAS,EAAA,GAAKtF,KAAKsF,QAAQkB,OAAOG,EAAMH,MAAAA,GAExCxG,KAAA6G,cAAc,IAAIC,YAAY,eAAe,EACjDC,QAAQ,EAAE3B,UAAUpF,KAAKoF,SAASoB,OAAOlB,QAAQtF,KAAKsF,OAAOkB,MAAAA,GAC7DQ,SAAS,IACTC,UAAU,GAAA,CAAA,CAAA;AAAA,EACT;AAAA,EAGK,sBAAsBC,GAAyB7K,GAAAA;AACtDA,IAAAA,EAAE8K,gBAAAA,GACGnH,KAAA6G,cAAc,IAAIC,YAAY,iBAAiB,EACnDC,QAAQ,EAAEG,QACVF,EAAAA,GAAAA,SAAAA,IACAC,UAAAA,GAEDG,CAAAA,CAAAA,GAAAA,EAAQC;EAAQ;AAAA,EAGT,yBAAyBhL,GAAAA;AAChCA,MAAE8K,gBAAAA;AAEF,UAAMG,IAAWjC,EAAMrF,KAAKoF,SAASoB,KAC/BhE,GAAAA,IAAS6C,EAAMrF,KAAKsF,OAAOkB,KAAAA;AAE5Bc,IAAAA,EAAS1F,QAAcY,KAAAA,EAAOZ,QAS9B5B,KAAAA,KAAA6G,cAAc,IAAIC,YAAY,eAAe,EACjDC,QAAQ,EACP3B,UAAUpF,KAAKoF,SAASoB,OACxBlB,QAAQtF,KAAKsF,OAAOkB,OACpBe,cAAcD,EAASrF,QAAQO,CAAAA,EAAAA,GAEhCwE,SAAS,IACTC,UAAU,GAAA,CAAA,CAAA,GAGXG,EAAQC,QAlBFrH,KAAAA,KAAA6G,cAAc,IAAIC,YAAY,YAAY,EAC9CC,QAAQ,EAAES,SAAS,gDAAA,GACnBR,SAAS,IACTC,aAec,CAAA,CAAA;AAAA,EAAA;AAAA,EAGjB,SAAAQ;AACQ,WAAAC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,WASE1H,KAAKoF,SAASF,SAAS,MAAA;AAAA;AAAA;AAAA,iBAGjBlF,KAAKuG,IAAAA;AAAAA,mBACHvG,KAAKoF,SAASoB,KAAAA;AAAAA,gBACjBmB,EAAU3H,KAAK4H,OAAAA,CAAAA;AAAAA,gBACfD,EAAU3H,KAAK6H,OAAAA,CAAAA;AAAAA,oBACX7H,KAAK8H,oBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,WAOd9H,KAAKsF,OAAOJ,SAAS,IAAA;AAAA;AAAA;AAAA,iBAGflF,KAAKuG,IAAAA;AAAAA,mBACHvG,KAAKsF,OAAOkB,KAAAA;AAAAA,gBACfmB,EAAU3H,KAAKoF,SAASoB,KAAAA,CAAAA;AAAAA,gBACxBmB,EAAU3H,KAAK6H,OAAAA,CAAAA;AAAAA,oBACX7H,KAAK+H,kBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,kBASN1L,OAAa2D,KAAKgI,yBAAyB3L,CAAAA,CAAAA;AAAAA,sBACxC2D,KAAKoF,SAASoB,SAAUxG,CAAAA,KAAKsF,OAAOkB,KAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,QAWlDxG,KAAK0G,iBAAiBzB,IACXgD,OAAAP;AAAAA;AAAAA;AAAAA,YAGPO,EAAS5K,IAAAA;AAAAA;AAAAA;AAAAA,YAGT4K,EAASC,QAAQjD,IACRiC,CAAAA,MAAAQ;AAAAA;AAAAA,wBAEG1H,KAAKyG,iBAAiBS,EAAOhC,QAAQ,WAAW,MAAA;AAAA;AAAA,uBAEhD7I,OAAa2D,KAAKmI,sBAAsBjB,GAAQ7K,CAAAA,CAAAA;AAAAA,6BAC3C2D,KAAKyG,iBAAiBS,EAAOhC,KAAAA;AAAAA,2BAC/BgC,EAAOhC,KAAUgC,KAAAA,EAAO/B,MAAMC,QAAAA,OAAe8B,EAAO/B,MAAMG,MAAAA;AAAAA,sBAC/D4B,EAAO/B,MAAMC,QAAe8B,OAAAA,EAAO/B,MAAMG,MAAAA;AAAAA;AAAAA,sCAEzB4B,EAAOhC,KAAAA;AAAAA;AAAAA;;;;;;;;EAOtC;AArJsBkD;AAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OADNyI,CAAAA,CAAAA,GAAAA,EACgBlG,WAAA,QAAA,CACAkI,GAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM+B,OAFNlC,CAAAA,CAAAA,GAAAA,EAEgBlG,WAAA,YAAA,CACAkI,GAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM+B,OAHNlC,CAAAA,CAAAA,GAAAA,EAGgBlG,WAAA,UAAA,IACAkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAAAA,CAAAA,CAAAA,GAJNyI,EAIgBlG,WAAA,WAAA,CAAA,GACAkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAAAA,CAAAA,CAAAA,GALNyI,EAKgBlG,WAAA,WAAA,CAAA,GACAkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAAAA,CAAAA,CAAAA,GANNyI,EAMgBlG,WAAA,gBAAA,CAAA,GACDkI,EAAA,CAA1BC,EAAS,EAAE9B,MAAM1I,MAPNuI,CAAAA,CAAAA,GAAAA,EAOelG,WAAA,oBAAA,CAPfkG,GAAAA,IAANgC,EAAA,CADNG,GAAc,4BAAA,CAAA,GACFnC;;;;;ACDbf,EAAMpB,OAAOuE,EAcA;AAAA,IAAAC,IAAN,cAAgCpC,GAAhC,EAAA;AAAA,EAAA,cAAAC;AAAAA,UAAAA,GAAA/G,SAEwDS,GAAAA,KAAAuG,OAAA,QAClCvG,KAAAoF,WAA6C,EAAEF,OAAO,QAAQsB,OAAO,GACrExG,GAAAA,KAAAsF,SAA2C,EAAEJ,OAAO,MAAMsB,OAAO,GAKlExG,GAAAA,KAAA0I,gBAItB,CAAA,GAEmC1I,KAAA2I,WAAAA,IACA3I,KAAA4I,WAAA,IACE5I,KAAA6I,cAAA,qBACD7I,KAAA8I,YAAA,IAGhC9I,KAAQ+I,SAAAA,IACR/I,KAAQgJ,oBAA4B,IACpChJ,KAAQyG,eAA8B,MACtCzG,KAAQiJ,kBAA0B,IAClCjJ,KAAQkJ,WAAW,IAG5BlJ,KAAQmJ,eAAkC,CAG1CnJ,GAAAA,KAAQ0G,mBAAqC,CAAA,GAGrC1G,KAAAoJ,sCAAsBC;AAAAA,EAA8B;AAAA,EAE5D,oBACC/C;AAAAA,UAAMgD,kBACNtJ,GAAAA,KAAKuJ,iBACLvJ,GAAAA,KAAKwJ,gBAGC;AAAA,UAAAC,IAAazJ,KAAK0J,cAClBC,GAAAA,IAAiB1D,GAAyBjG,KAAKoF,SAASoB,OAAOxG,KAAKsF,OAAOkB,OAAOiD,CAExF;AAAA,QAAIE,EAAe/H,QACb5B,MAAAoF,SAASoB,QAAQmD,EAAevE,UAChCpF,KAAAsF,OAAOkB,QAAQmD,EAAerE,QACnCtF,KAAK4J,wBAAAA;AAAAA,SACC;AACN,YAAMC,IAAMxE,EAAAA,EAAQjC,OAAOqG,CAAAA;AAC3BzJ,WAAKoF,SAASoB,QAAQqD,GACtB7J,KAAKsF,OAAOkB,QAAQqD,GACpB7J,KAAK4J,wBAAwB;AAAA,IAAA;AAI9B5J,SAAK8J,mBAAAA;AAAAA,EAAmB;AAAA,EAGjB,qBAEkBC;AAAAA,IAAAA,GAAAC,UAAU,SAAA,EACjCC,KAAKC,GAAUlK,KAAKmK,aAAAA,CAAAA,EACpBC,UAAmBC,OAAAA;AACnBrK,WAAKsK,yBAAyBD,CAAK;AAAA,IAAA,CAAA,GAI3BN,GAAAQ,QAAQ,QAChBN,EAAAA,KACAO,GAAa,GAAA,GACbN,GAAUlK,KAAKmK,gBAEfC,UAAU,MAAA;AACVpK,WAAKwJ,gBAAAA;AAAAA,IAAgB,CACrB;AAAA,EAAA;AAAA,EAGH,uBAAAiB;AACCnE,UAAMmE,qBAAAA;AAAAA,EAAqB;AAAA,EAG5B,QAAQC,GAAAA;AACPpE,UAAMqE,QAAQD,CAGZA,GAAAA,CAAAA,EAAaE,IAAI,UAAA,KAAA,CAAeF,EAAaE,IAAI,QACxB,KAAzB5K,KAAKoF,UAAUoB,UAAU,UAAaxG,KAAKsF,QAAQkB,UAAU,UAE9DxG,KAAK4J,wBAAAA;AAAAA,EACN;AAAA,EAGO,mBACD;AAAA,UAAAxG,IAASpD,KAAK0J,cACdmB,GAAAA,IAAW,GAAG7K,KAAKuG,IAAQnD,IAAAA,CAAAA,IAAU0H,KAAKC,UAAU/K,KAAK0I,aAAAA,CAAAA;AAG/D,QAAI1I,KAAKoJ,gBAAgBwB,IAAIC,CAAW,GAAA;AACvC,YAAMG,IAAShL,KAAKoJ,gBAAgBpG,IAAI6H,CAAAA;AAMxC,aALA7K,KAAK0G,mBAAmBsE,GACxBhL,KAAKmJ,eAAe,CAAA,GAAA,KACpB6B,EAAOhH,QAAoBiE,CAAAA,MAC1BjI;AAAAA,aAAKmJ,aAAa8B,KAAAA,GAAQhD,EAASC,OAAAA;AAAAA,MAAO,CAE3C;AAAA,IAAA;AAaD,QATAlI,KAAK0G,mBHvHS,SAAyBtD,GAAgB8H,IAAAA,IACxD;AAAA,YAAMC,IAA+B,CAAA;AA0J9B,aAvJHD,KACHC,EAAWF,KAAK,EACf5N,MAAM,SACN6K,SAAS,CACR,EACChD,OAAO,iBACPC,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS,IAAI,OAAA,EAASC,OAAOA,CAAAA,GAC/CkC,QAAQD,EAAAA,EAAQjC,OAAOA,CAAAA,EAAAA,GAExBmC,MAAM,OAAA,GAEP,EACCL,OAAO,iBACPC,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS,IAAI,OAASC,EAAAA,OAAOA,CAC/CkC,GAAAA,QAAQD,EAAQjC,EAAAA,OAAOA,CAExBmC,EAAAA,GAAAA,MAAM,OAOV4F,CAAAA,EAAAA,CAAAA,GAAAA,EAAWF,KAAK,EACf5N,MAAM,QACN6K,SAAS,CACR,EACChD,OAAO,SACPC,OAAO,EACNC,UAAUC,EAAQtD,EAAAA,QAAQ,KAAOqB,EAAAA,OAAOA,CACxCkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,OAAOoB,OAAOA,CAAAA,EAAAA,GAErCmC,MAAM,MAAA,GAEP,EACCL,OAAO,aACPC,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS,GAAG,MAAA,EAAQpB,QAAQ,KAAA,EAAOqB,OAAOA,CAAAA,GAC5DkC,QAAQD,EAAAA,EAAQlC,SAAS,GAAG,MAAQnB,EAAAA,MAAM,KAAOoB,EAAAA,OAAOA,CAEzDmC,EAAAA,GAAAA,MAAM,MAEJR,GAAAA,GAAAA,GAAyB,CAAC,GAAG,IAAI,IAAI,IAAI,EAAA,GAAK3B,CAKnD+H,CAAAA,EAAAA,CAAAA,GAAAA,EAAWF,KAAK,EACf5N,MAAM,SACN6K,SAAS,CACR,EACChD,OAAO,aACPC,OAAO,EACNC,UAAUC,EAAQtD,EAAAA,QAAQ,MAAQqB,EAAAA,OAAOA,CACzCkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,MAAQoB,EAAAA,OAAOA,CAEtCmC,EAAAA,GAAAA,MAAM,UAEP,EACCL,OAAO,aACPC,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS,GAAG,OAAA,EAASpB,QAAQ,MAAA,EAAQqB,OAAOA,CAAAA,GAC9DkC,QAAQD,EAAAA,EAAQlC,SAAS,GAAG,OAASnB,EAAAA,MAAM,MAAQoB,EAAAA,OAAOA,CAE3DmC,EAAAA,GAAAA,MAAM,OAEJC,GAAAA,GAAAA,GAA0B,CAAC,GAAG,CAAIpC,GAAAA,CAAAA,CAAAA,EAAAA,CAAAA,GAKvC+H,EAAWF,KAAK,EACf5N,MAAM,UACN6K,SAAS,CACR,EACChD,OAAO,cACPC,OAAO,EACNC,UAAUC,EAAQtD,EAAAA,QAAQ,OAASqB,EAAAA,OAAOA,CAC1CkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,OAASoB,EAAAA,OAAOA,CAEvCmC,EAAAA,GAAAA,MAAM,QAEP,GAAA,EACCL,OAAO,cACPC,OAAO,EACNC,UAAUC,EAAQlC,EAAAA,SAAS,GAAG,OAAA,EAASpB,QAAQ,OAAA,EAASqB,OAAOA,CAAAA,GAC/DkC,QAAQD,EAAAA,EAAQlC,SAAS,GAAG,OAASnB,EAAAA,MAAM,OAASoB,EAAAA,OAAOA,CAE5DmC,EAAAA,GAAAA,MAAM,QAEJG,GAAAA,GAAAA,GAA2B,CAAC,GAAG,CAAItC,GAAAA,CAAAA,CAAAA,EAAAA,CAAAA,GAKxC+H,EAAWF,KAAK,EACf5N,MAAM,YACN6K,SAAS,CACR,EACChD,OAAO,gBACPC,OAAO,EACNC,UAAUC,EAAQtD,EAAAA,QAAQ,SAAWqB,EAAAA,OAAOA,CAC5CkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,SAAWoB,EAAAA,OAAOA,CAEzCmC,EAAAA,GAAAA,MAAM,UAEP,GAAA,EACCL,OAAO,gBACPC,OAAO,EACNC,UAAUC,EAAAA,EAAQlC,SAAS,GAAG,SAAWpB,EAAAA,QAAQ,WAAWqB,OAAOA,CAAAA,GACnEkC,QAAQD,EAAAA,EAAQlC,SAAS,GAAG,SAAWnB,EAAAA,MAAM,SAAWoB,EAAAA,OAAOA,CAEhEmC,EAAAA,GAAAA,MAAM,UAEJI,GAAAA,GAAAA,GAA6B,CAAC,GAAG,CAAIvC,GAAAA,CAAAA,CAAAA,EAAAA,CAAAA,GAK1C+H,EAAWF,KAAK,EACf5N,MAAM,SACN6K,SAAS,CACR,EACChD,OAAO,aACPC,OAAO,EACNC,UAAUC,EAAQtD,EAAAA,QAAQ,MAAQqB,EAAAA,OAAOA,CACzCkC,GAAAA,QAAQD,EAAQrD,EAAAA,MAAM,MAAQoB,EAAAA,OAAOA,CAEtCmC,EAAAA,GAAAA,MAAM,OAEP,GAAA,EACCL,OAAO,aACPC,OAAO,EACNC,UAAUC,EAAAA,EAAQlC,SAAS,GAAG,MAAQpB,EAAAA,QAAQ,MAAQqB,EAAAA,OAAOA,CAC7DkC,GAAAA,QAAQD,EAAQlC,EAAAA,SAAS,GAAG,MAAQnB,EAAAA,MAAM,MAAQoB,EAAAA,OAAOA,CAE1DmC,EAAAA,GAAAA,MAAM,OAEP,GAAA,EACCL,OAAO,gBACPC,OAAO,EACNC,UAAUC,EAAAA,EAAQtD,QAAQ,MAAA,EAAQqB,OAAOA,CAAAA,GACzCkC,QAAQD,EAAAA,EAAQrD,MAAM,KAAA,EAAOoB,OAAOA,CAAAA,EAAAA,GAErCmC,MAAM,MAAA,CAAA,EAAA,CAAA,GAKF4F;AAAAA,IACR,EGrCmD/H,GAAQpD,KAAKuG,SAAS,gBAATA,GAG9DvG,KAAKmJ,eAAe,CACfnJ,GAAAA,KAAA0G,iBAAiB1C,QAAoBiE,CAAAA,MACzCjI;AAAAA,WAAKmJ,aAAa8B,KAAAA,GAAQhD,EAASC,OAAAA;AAAAA,IAAO,CAIvClI,GAAAA,KAAK0I,iBAAiB1I,KAAK0I,cAAc9K,SAAS,GAAG;AACxD,YAAMwN,IAAiC,EACtC/N,MAAM,UACN6K,SAASlI,KAAK0I,cAAczD,IAAeiC,CAAAA,OAAA,EAC1ChC,OAAOgC,EAAOhC,OACdC,OAAO,EACNC,UAAU8B,EAAO9B,UACjBE,QAAQ4B,EAAO5B,OAEhBC,GAAAA,MAAM,MAIHvF,EAAAA,EAAAA;AAAAA,WAAA0G,iBAAiBuE,KAAKG,CAC3BpL,GAAAA,KAAKmJ,aAAa8B,KAAAA,GAAQG,EAAelD,OAAAA;AAAAA,IAAO;AAIjDlI,SAAKoJ,gBAAgBhH,IAAIyI,GAAU,CAAA,GAAI7K,KAAK0G,gBAAiB,CAAA;AAAA,EAAA;AAAA,EAGtD,gBAAAgD;AACP,WAAO1J,KAAKoD,WAAWpD,KAAKuG,SAAS,SAAS,eAAe;AAAA,EAAA;AAAA,EAMtD,0BAED;AAAA,UAAAW,IAASlH,KAAKmJ,aAAakC,KAChC1M,CAAAA,MAAKA,EAAEwG,MAAMC,aAAapF,KAAKoF,SAASoB,SAAS7H,EAAEwG,MAAMG,WAAWtF,KAAKsF,OAAOkB,KAAAA;AAGjF,QAAIU,EAIH,QAFAlH,KAAKgJ,oBAAoB9B,EAAOhC,OAChClF,MAAAA,KAAKyG,eAAeS,EAAOhC;AAK5BlF,SAAKsL,2BAA2BtL,KAAKoF,SAASoB,OAAOxG,KAAKsF,OAAOkB,KAGjExG,GAAAA,KAAKyG,eAAe,MACfzG,KAAAgJ,oBJ1LA,SACNuC,GACAC,GACAjF,GACAsC;AAEI,UAAC0C,CAAAA,KAAAA,CAAcC,EACX,QAAA3C;AAGF,YAAAvB,IAAWjC,EAAMkG,CACjB/I,GAAAA,IAAS6C,EAAMmG,CAAAA;AAErB,UAAKlE,CAAAA,EAAS1F,QAAcY,KAAAA,CAAAA,EAAOZ,QAC3B,EAAA,QAAAiH;AAIR,YAAM4C,IAAWlF,MAAS,mBAAmBe,EAASlE,OAAO,SAAA,IAAa,IACpEsI,IAASnF,MAAS,mBAAmB/D,EAAOY,OAAO,SAAA,IAAa;AAGtE,aAAIkE,EAASxF,OAAOU,GAAQ,KAAA,IACpB,GAAG8E,EAASlE,OAAO,aAAA,CAAA,GAAiBqI,CAIxCnE,KAAAA,EAASxF,OAAOU,GAAQ,OAAY8E,KAAAA,EAASxF,OAAOU,GAAQ,MACxD,IAAA,GAAG8E,EAASlE,OAAO,OAAYZ,CAAAA,IAAAA,EAAOY,OAAO,SAAA,CAAA,GAAasI,CAI9DpE,KAAAA,EAASxF,OAAOU,GAAQ,MAAA,IACpB,GAAG8E,EAASlE,OAAO,OAAA,CAAA,MAAcZ,EAAOY,OAAO,aAAiBsI,CAAAA,GAAAA,CAAAA,KAIjE,GAAGpE,EAASlE,OAAO,aAAA,CAAA,GAAiBqI,CAAcjJ,MAAAA,EAAOY,OAAO,aAAA,CAAA,GAAiBsI,CACzF;AAAA,IAAA,EIoJ2C1L,KAAKoF,SAASoB,OAAOxG,KAAKsF,OAAOkB,OAAOxG,KAAKuG,MAAMvG,KAAK6I;EAAW;AAAA,EAGrG,aAAazD,GAAkBE,GACtCtF;AAAAA,SAAKoF,SAASoB,QAAQpB,GACtBpF,KAAKsF,OAAOkB,QAAQlB,GACpBtF,KAAK4J,wBAGL5J,GAAAA,KAAK2L,uBAAuB,uBAAuB3L,KAAKgJ,iBAAAA,EAAAA,GAEnDhJ,KAAA6G,cACJ,IAAIC,YAAkD,UAAU,EAC/DC,QAAQ,EAAE3B,UAAUE,GAAAA,QAAAA,EAAAA,GACpB0B,SAAS,IACTC,UAAU,GAAA,CAAA,CAAA;AAAA,EAEZ;AAAA,EAMO,eAAe5K,GAAAA;AACtBA,MAAE8K,gBAAAA,GACEnH,KAAK2I,aAEL3I,KAAK+I,SACR/I,KAAK4L,cAAAA,IAEL5L,KAAK6L,aAAAA;AAAAA,EACN;AAAA,EAGO,eACP;AAAA,QAAI7L,KAAK2I,SAAU;AAEnB3I,SAAK+I,SAAS;AAGd,UAAM+C,IAAgBpE;AAAAA;AAAAA,aAEX1H,KAAKuG,IAAAA;AAAAA,iBACDvG,KAAKoF,QAAAA;AAAAA,eACPpF,KAAKsF,MAAAA;AAAAA,gBACJtF,KAAK4H,OAAAA;AAAAA,gBACL5H,KAAK6H,OAAAA;AAAAA,qBACA7H,KAAKyG,YAAAA;AAAAA,yBACDzG,KAAK0G,gBAAAA;AAAAA,sBACPrK,CAAAA,MAAAA;AACb2D,WAAAyG,eAAepK,EAAE0K,OAAOG,OAAOhC,OAC/BlF,KAAA+L,aAAa1P,EAAE0K,OAAOG,OAAO/B,MAAMC,UAAU/I,EAAE0K,OAAOG,OAAO/B,MAAMG,MAAM;AAAA,IAAA,CAAA;AAAA,oBAE/D,MAAMtF,KAAK4J,wBAAAA,CAAAA;AAAAA,oBACVvN,CAAAA,MAAAA;AAChB,cAAM+I,UAAEA,GAAAE,QAAUA,GAAQiC,cAAAA,EAAiBlL,IAAAA,EAAE0K;AACzCQ,MAAAA,IACEvH,KAAA+L,aAAazG,GAAQF,KAErBpF,KAAA+L,aAAa3G,GAAUE,CAAM;AAAA,IAAA,CAAA;AAAA,iBAGtBjJ,CAAAA,MAAmB2D,KAAK2L,uBAAuBtP,EAAE0K,OAAOS,OAAAA,CAAAA;AAAAA;AAAAA;AAKxEJ,IAAAA,EAAQ4E,UAAUF,GAAe,EAChCG,OAAO,qBACPC,OAAOlM,KAAKkJ,WAAW,UAAU,SACjCiD,aAAa,GAAA,CAAA,EACXC,KAAK,MACPpM;AAAAA,WAAK+I,SAAS;AAAA,IAAA,CACd;AAAA,EAAA;AAAA,EAGM,gBAAA6C;AACPxE,IAAAA,EAAQC,QAAAA,GACRrH,KAAK+I,SAAAA;AAAAA,EAAS;AAAA,EAOP,eAAerE,GAAmBrI,GAGzC;AAAA,QAFAA,EAAE8K,gBAAAA,GAAAA,CAEGnH,KAAKoF,SAASoB,SAAUxG,CAAAA,KAAKsF,OAAOkB,MAAO;AAEhD,UAAMc,IAAWjC,EAAMrF,KAAKoF,SAASoB,QAC/BhE,IAAS6C,EAAMrF,KAAKsF,OAAOkB,KAEjC;AAAA,QAAA,CAAKc,EAAS1F,QAAAA,KAAAA,CAAcY,EAAOZ,QAAW,EAAA;AAExC,UAAAwB,IAASpD,KAAK0J,cAAAA,GACd2C,IAAM3H,IAAY,IAAI,IAAI,IAG1B+B,IAAezG,KAAKmJ,aAAakC,YAAU1M,EAAEuG,UAAUlF,KAAKyG,YAC5D6F,GAAAA,EAAAA,MAAEA,WAAM7H,EJhOA,IAAA,SACf6C,GACA9E,GACA+J,GAAAA;AAEA,UAAIA,EACH,QAAO,EAAED,MAAMC,GAAkB9H,QAAQ,EAAA;AAG1C,YAAM+H,IAAsBhK,EAAOmB,KAAK2D,GAAU,KAAA;AAGlD,aAAIkF,KAAuB,MACnB,EAAEF,MAAM,QAAQ7H,QAAQvG,KAAKgF,MAAMsJ,IAAsB,GAAA,EAAA,IAGxDA,KAAuB,KACxB,EAAEF,MAAM,WAAW7H,QAAQvG,KAAKgF,MAAMsJ,IAAsB,EAG3DA,EAAAA,IAAAA,KAAuB,KACxB,EAAEF,MAAM,SAAS7H,QAAQvG,KAAKgF,MAAMsJ,IAAsB,EAAA,EAAA,IAGzDA,KAAuB,IACxB,EAAEF,MAAM,QAAQ7H,QAAQvG,KAAKgF,MAAMsJ,IAAsB,CAIzD,EAAA,IAAA,EAAEF,MAAM,OAAO7H,QAAQ+H,IAAsB,EAEtD;AAAA,IAAA,EIiMgDlF,GAAU9E,GAAQiE,GAAclB,OAGxEkH,IJ/OQ,SAAoBnF,GAAuB9E,GAAAA;AACnD,aAAA,EACNkK,aAAapF,EAASjJ,KAAAA,MAAW,KAAKmE,EAAOV,OAAOwF,EAAStF,MAAM,OAAU,GAAA,KAAA,GAC7E2K,eAAerF,EAASxF,OAAOwF,EAASvF,QAAQ,SAAY,GAAA,KAAA,KAAUS,EAAOV,OAAOU,EAAOR,MAAM,SAAY,GAAA,KAAA,GAC7G4K,YAAYtF,EAASxF,OAAOwF,EAASvF,QAAQ,MAAS,GAAA,KAAA,KAAUS,EAAOV,OAAOU,EAAOR,MAAM,MAAS,GAAA,KAAA,GACpG6K,YAAYvF,EAASwF,IAAgC,MAAtB,KAAKtK,EAAOsK,IAAAA,MAAU,KAAKtK,EAAOmB,KAAK2D,GAAU,MAAA,MAAY,EAAZ;AAAA,IAElF,EIwOwCA,GAAU9E,CAAAA;AAE5C,QAAAuK,GACAC;AAGJ,QAAIV,MAAS,UACES,CAAAA,IAAAvI,GAAc8C,GAAU7C,GAAQ4H,IAClCW,IAAAxI,GAAchC,GAAQiC,GAAQ4H,CAEtCI,GAAAA,EAAUE,kBACCI,IAAAA,EAAYhL,QAAQ,SACtBiL,GAAAA,IAAAD,EAAY/K,MAAM,SAEhC;AAAA,aAAWsK,MAAS,QAAQ;AAC3B,YAAMW,IAAuBzK,EAAOmB,KAAK2D,GAAU,MAAA;AACrCyF,MAAAA,IAAAV,IAAM,IAAI/E,EAAS7I,IAAIwO,GAAsB,MAAU3F,IAAAA,EAASnE,SAAS8J,GAAsB,MAAA,GACjGD,IAAAX,IAAM,IAAI7J,EAAO/D,IAAIwO,GAAsB,UAAUzK,EAAOW,SAAS8J,GAAsB,MAAA;AAAA,IAAM,MAGzGZ,KAAM,KACKU,IAAAzF,EAAS7I,IAAIgG,GAAQ6H,CACvBU,GAAAA,IAAAxK,EAAO/D,IAAIgG,GAAQ6H,CAAAA,MAEjBS,IAAAzF,EAASnE,SAASsB,GAAQ6H,CAC5BU,GAAAA,IAAAxK,EAAOW,SAASsB,GAAQ6H,CAIxB,IAATA,MAAS,UAAUG,EAAUG,cAClBG,IAAAA,EAAYhL,QAAQ,MACtBiL,GAAAA,IAAAD,EAAY/K,MAAM,MACX,KAATsK,MAAS,WAAWG,EAAUC,eAC1BK,IAAAA,EAAYhL,QAAQ,OAAA,GACtBiL,IAAAD,EAAY/K,MAAM,OAAA,KACpBsK,MAAS,UAAUG,EAAUI,eACzBE,IAAAA,EAAYhL,QAAQ,MAAA,GACtBiL,IAAAD,EAAY/K,MAAM,MAK3BhC;AAAAA,SAAA+L,aAAagB,EAAY3J,OAAOA,CAAAA,GAAS4J,EAAU5J,OAAOA,CAAAA,CAAAA,GAC1DpD,KAAAsL,2BAA2ByB,EAAY3J,OAAOA,CAAS4J,GAAAA,EAAU5J,OAAOA,CAAO,CAAA;AAAA,EAAA;AAAA,EAM7E,yBAAyBiH,GAChC;AAAA,UAAM6C,IAAM7C,EAAM6C;AAGd,QAAAlN,KAAKoF,SAASoB,SAASxG,KAAKsF,OAAOkB,SAAAA,CAAUxG,KAAK2I,SACrD,SAAQuE,GACP;AAAA,MAAA,KAAK;AACA7C,SAAAA,EAAMzD,WAAW5G,QAAQA,KAAKmN,SAAS9C,EAAMzD,MAAAA,OAC3C5G,KAAAoN,eAAAA,IAAmB/C,CAAAA,GACxBA,EAAMgD,eAEP;AAAA;AAAA,MACD,KAAK;AAAA,SACAhD,EAAMzD,WAAW5G,QAAQA,KAAKmN,SAAS9C,EAAMzD,MAC3C5G,OAAAA,KAAAoN,eAAe,GAAG/C,CACvBA,GAAAA,EAAMgD;AAEP;AAAA,MACD,KAAK;AACA,YAAAhD,EAAMiD,YAAYjD,EAAMzD,WAAW5G,QAAQA,KAAKmN,SAAS9C,EAAMzD,MAAAA,IAAkB;AAEpF,gBAAM2G,IAAclI,EAAMrF,KAAKoF,SAASoB,KAAAA,GAClCgH,IAAYnI,EAAMrF,KAAKsF,OAAOkB,KAC9BiH,GAAAA,IAAaF,EAAYxL,QAAQ,OACjC2L,GAAAA,IAAWF,EAAU7J,KAAK4J,GAAa,KAAA;AAExCvN,eAAA+L,aACJ0B,EAAWrK,OAAOpD,KAAK0J,cACvB+D,CAAAA,GAAAA,EAAWhP,IAAIiP,GAAU,KAAOtK,EAAAA,OAAOpD,KAAK0J,cAAAA,CAAAA,CAAAA,GAE7CW,EAAMgD,eAAAA;AAAAA,QAAe;AAEtB;AAAA,MACD,KAAK;AACA,YAAAhD,EAAMiD,YAAYjD,EAAMzD,WAAW5G,QAAQA,KAAKmN,SAAS9C,EAAMzD,MAAkB,IAAA;AAEpF,gBAAM2G,IAAclI,EAAMrF,KAAKoF,SAASoB,KAClCgH,GAAAA,IAAYnI,EAAMrF,KAAKsF,OAAOkB,KAAAA,GAC9BkH,IAAWF,EAAU7J,KAAK4J,GAAa,KAAA,GACvCI,IAAWH,EAAUxL,MAAM,OAAA;AAE5BhC,eAAA+L,aACJ4B,EAASxK,SAASuK,GAAU,KAAOtK,EAAAA,OAAOpD,KAAK0J,cAAAA,CAAAA,GAC/CiE,EAASvK,OAAOpD,KAAK0J,cAAAA,CAAAA,CAAAA,GAEtBW,EAAMgD,eAAAA;AAAAA,QAAe;AAAA,IAIzB;AAAA,EAAA;AAAA,EAOO,2BAA2B/F,GAAkB9E,GAE9C;AAAA,UAAAoL,IAAiB5N,KAAKmJ,aAAakC,YAC9BnE,EAAO/B,MAAMC,aAAakC,KAAYJ,EAAO/B,MAAMG,WAAW9C,CAIxExC;AAAAA,SAAKyG,eADFmH,IACiBA,EAAe1I,QAEf;AAAA,EACrB;AAAA,EAOO,kBACFlF;AAAAA,SAAAkJ,WAAWqB,OAAOsD,aAAa;AAAA,EAAA;AAAA,EAS7B,uBAAuBrG,GAAAA;AAC9BxH,SAAKiJ,kBAAkBzB,GAEjBsG,GAAA,GAAA,EACJ7D,KAAKC,GAAUlK,KAAKmK,aAAAA,CAAAA,EACpBC,UAAU,MACVpK;AAAAA,WAAKiJ,kBAAkB;AAAA,IAAA,CACvB;AAAA,EAAA;AAAA,EAIH,SAAAxB;AACQ,WAAAC;AAAAA,0BACiB1H,KAAK2I,WAAW,mCAAmC,EAAA;AAAA;AAAA;AAAA,OAGtE3I,KAAKiJ,eAAAA;AAAAA;AAAAA;AAAAA;AAAAA,sBAIWoB,OAAiBA,EAAMlD,gBAAAA,CAAAA;AAAAA;AAAAA;AAAAA,8BAGhBnH,KAAKyG,eAAezG,KAAKyG,aAAazH,YAAgB,IAAA,YAAA;AAAA,gBACnE3C,OAAa2D,KAAKoN,mBAAmB/Q,CAAAA,CAAAA;AAAAA,mBACnC2D,KAAK2I,YAAa3I,CAAAA,KAAKoF,SAASoB,SAAAA,CAAUxG,KAAKsF,OAAOkB,KAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,uBAUlDxG,KAAK+I,MAAAA;AAAAA,iDACqB/I,KAAKgJ,qBAAqB,kBAAA;AAAA,gBAC1D3M,OAAa2D,KAAK+N,eAAe1R,CAAAA,CAAAA;AAAAA;AAAAA,SAEzC2D,KAAKgJ,qBAAqBhJ,KAAK6I,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,0BAKd7I,KAAKyG,eAAezG,KAAKyG,aAAazH,YAAgB,IAAA,YAAA;AAAA,gBAC/D3C,OAAa2D,KAAKoN,eAAe,GAAG/Q,CAAAA,CAAAA;AAAAA,mBAClC2D,KAAK2I,YAAa3I,CAAAA,KAAKoF,SAASoB,SAAAA,CAAUxG,KAAKsF,OAAOkB,KAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAAK;AAAA;AA5bjD4B,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAFN8K,CAAAA,CAAAA,GAAAA,EAEgBvI,WAAA,QAAA,IACAkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM+B,OAHNG,CAAAA,CAAAA,GAAAA,EAGgBvI,WAAA,YAAA,CACAkI,GAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM+B,OAAAA,CAAAA,CAAAA,GAJNG,EAIgBvI,WAAA,UAAA,CACAkI,GAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAAAA,CAAAA,CAAAA,GALN8K,EAKgBvI,WAAA,WAAA,CAAA,GACAkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OANN8K,CAAAA,CAAAA,GAAAA,EAMgBvI,WAAA,WAAA,CAAA,GAGDkI,EAAA,CAA1BC,EAAS,EAAE9B,MAAM1I,MATN4K,CAAAA,CAAAA,GAAAA,EASevI,WAAA,iBAAA,CAAA,GAKCkI,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAdN8K,CAAAA,CAAAA,GAAAA,EAcgBvI,WAAA,UAAA,CAAA,GACCkI,EAAA,CAA5BC,EAAS,EAAE9B,MAAMyH,QAfNvF,CAAAA,CAAAA,GAAAA,EAeiBvI,WAAA,YAAA,CACAkI,GAAAA,EAAA,CAA5BC,EAAS,EAAE9B,MAAMyH,QAAAA,CAAAA,CAAAA,GAhBNvF,EAgBiBvI,WAAA,YAAA,CACDkI,GAAAA,EAAA,CAA3BC,EAAS,EAAE9B,MAAM5I,OAAAA,CAAAA,CAAAA,GAjBN8K,EAiBgBvI,WAAA,eAAA,CACCkI,GAAAA,EAAA,CAA5BC,EAAS,EAAE9B,MAAMyH,QAAAA,CAAAA,CAAAA,GAlBNvF,EAkBiBvI,WAAA,aAAA,CAGZkI,GAAAA,EAAA,CAAhB6F,EArBWxF,CAAAA,GAAAA,EAqBKvI,WAAA,UAAA,CACAkI,GAAAA,EAAA,CAAhB6F,EAAAA,CAAAA,GAtBWxF,EAsBKvI,WAAA,qBAAA,CACAkI,GAAAA,EAAA,CAAhB6F,EAvBWxF,CAAAA,GAAAA,EAuBKvI,WAAA,gBAAA,IACAkI,EAAA,CAAhB6F,EAxBWxF,CAAAA,GAAAA,EAwBKvI,WAAA,mBAAA,CAAA,GACAkI,EAAA,CAAhB6F,MAzBWxF,EAyBKvI,WAAA,YAAA,CAAA,GAzBLuI,IAANL,EAAA,CADNG,GAAc,qBAAA,CAAA,GACFE;","x_google_ignoreList":[0,1]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const H=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const ce=require("./litElement.mixin-B1eYYBf4.cjs");require("./tailwind.mixin-DNME2oUL.cjs");const v=require("lit/decorators.js"),he=require("./_commonjsHelpers-k2hpEU-q.cjs"),I=require("lit"),Z=require("./dialog-service-BZZK8N6A.cjs"),J=require("lit/directives/if-defined.js");var re,se={exports:{}},pe=(re||(re=1,se.exports=function(){var t=1e3,a=6e4,e=36e5,o="millisecond",c="second",i="minute",p="hour",y="day",S="week",T="month",$="quarter",M="year",b="date",x="Invalid Date",U=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,P=/\[([^\]]+)]|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,le={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(h){var n=["th","st","nd","rd"],r=h%100;return"["+h+(n[(r-20)%10]||n[r]||n[0])+"]"}},G=function(h,n,r){var d=String(h);return!d||d.length>=n?h:""+Array(n+1-d.length).join(r)+h},me={s:G,z:function(h){var n=-h.utcOffset(),r=Math.abs(n),d=Math.floor(r/60),s=r%60;return(n<=0?"+":"-")+G(d,2,"0")+":"+G(s,2,"0")},m:function h(n,r){if(n.date()<r.date())return-h(r,n);var d=12*(r.year()-n.year())+(r.month()-n.month()),s=n.clone().add(d,T),l=r-s<0,m=n.clone().add(d+(l?-1:1),T);return+(-(d+(r-s)/(l?s-m:m-s))||0)},a:function(h){return h<0?Math.ceil(h)||0:Math.floor(h)},p:function(h){return{M:T,y:M,w:S,d:y,D:b,h:p,m:i,s:c,ms:o,Q:$}[h]||String(h||"").toLowerCase().replace(/s$/,"")},u:function(h){return h===void 0}},j="en",L={};L[j]=le;var te="$isDayjsObject",X=function(h){return h instanceof Q||!(!h||!h[te])},z=function h(n,r,d){var s;if(!n)return j;if(typeof n=="string"){var l=n.toLowerCase();L[l]&&(s=l),r&&(L[l]=r,s=l);var m=n.split("-");if(!s&&m.length>1)return h(m[0])}else{var g=n.name;L[g]=n,s=g}return!d&&s&&(j=s),s||!d&&j},F=function(h,n){if(X(h))return h.clone();var r=typeof n=="object"?n:{};return r.date=h,r.args=arguments,new Q(r)},f=me;f.l=z,f.i=X,f.w=function(h,n){return F(h,{locale:n.$L,utc:n.$u,x:n.$x,$offset:n.$offset})};var Q=function(){function h(r){this.$L=z(r.locale,null,!0),this.parse(r),this.$x=this.$x||r.x||{},this[te]=!0}var n=h.prototype;return n.parse=function(r){this.$d=function(d){var s=d.date,l=d.utc;if(s===null)return new Date(NaN);if(f.u(s))return new Date;if(s instanceof Date)return new Date(s);if(typeof s=="string"&&!/Z$/i.test(s)){var m=s.match(U);if(m){var g=m[2]-1||0,D=(m[7]||"0").substring(0,3);return l?new Date(Date.UTC(m[1],g,m[3]||1,m[4]||0,m[5]||0,m[6]||0,D)):new Date(m[1],g,m[3]||1,m[4]||0,m[5]||0,m[6]||0,D)}}return new Date(s)}(r),this.init()},n.init=function(){var r=this.$d;this.$y=r.getFullYear(),this.$M=r.getMonth(),this.$D=r.getDate(),this.$W=r.getDay(),this.$H=r.getHours(),this.$m=r.getMinutes(),this.$s=r.getSeconds(),this.$ms=r.getMilliseconds()},n.$utils=function(){return f},n.isValid=function(){return this.$d.toString()!==x},n.isSame=function(r,d){var s=F(r);return this.startOf(d)<=s&&s<=this.endOf(d)},n.isAfter=function(r,d){return F(r)<this.startOf(d)},n.isBefore=function(r,d){return this.endOf(d)<F(r)},n.$g=function(r,d,s){return f.u(r)?this[d]:this.set(s,r)},n.unix=function(){return Math.floor(this.valueOf()/1e3)},n.valueOf=function(){return this.$d.getTime()},n.startOf=function(r,d){var s=this,l=!!f.u(d)||d,m=f.p(r),g=function(_,R){var q=f.w(s.$u?Date.UTC(s.$y,R,_):new Date(s.$y,R,_),s);return l?q:q.endOf(y)},D=function(_,R){return f.w(s.toDate()[_].apply(s.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(R)),s)},O=this.$W,k=this.$M,Y=this.$D,V="set"+(this.$u?"UTC":"");switch(m){case M:return l?g(1,0):g(31,11);case T:return l?g(1,k):g(0,k+1);case S:var A=this.$locale().weekStart||0,W=(O<A?O+7:O)-A;return g(l?Y-W:Y+(6-W),k);case y:case b:return D(V+"Hours",0);case p:return D(V+"Minutes",1);case i:return D(V+"Seconds",2);case c:return D(V+"Milliseconds",3);default:return this.clone()}},n.endOf=function(r){return this.startOf(r,!1)},n.$set=function(r,d){var s,l=f.p(r),m="set"+(this.$u?"UTC":""),g=(s={},s[y]=m+"Date",s[b]=m+"Date",s[T]=m+"Month",s[M]=m+"FullYear",s[p]=m+"Hours",s[i]=m+"Minutes",s[c]=m+"Seconds",s[o]=m+"Milliseconds",s)[l],D=l===y?this.$D+(d-this.$W):d;if(l===T||l===M){var O=this.clone().set(b,1);O.$d[g](D),O.init(),this.$d=O.set(b,Math.min(this.$D,O.daysInMonth())).$d}else g&&this.$d[g](D);return this.init(),this},n.set=function(r,d){return this.clone().$set(r,d)},n.get=function(r){return this[f.p(r)]()},n.add=function(r,d){var s,l=this;r=Number(r);var m=f.p(d),g=function(k){var Y=F(l);return f.w(Y.date(Y.date()+Math.round(k*r)),l)};if(m===T)return this.set(T,this.$M+r);if(m===M)return this.set(M,this.$y+r);if(m===y)return g(1);if(m===S)return g(7);var D=(s={},s[i]=a,s[p]=e,s[c]=t,s)[m]||1,O=this.$d.getTime()+r*D;return f.w(O,this)},n.subtract=function(r,d){return this.add(-1*r,d)},n.format=function(r){var d=this,s=this.$locale();if(!this.isValid())return s.invalidDate||x;var l=r||"YYYY-MM-DDTHH:mm:ssZ",m=f.z(this),g=this.$H,D=this.$m,O=this.$M,k=s.weekdays,Y=s.months,V=s.meridiem,A=function(R,q,N,B){return R&&(R[q]||R(d,l))||N[q].slice(0,B)},W=function(R){return f.s(g%12||12,R,"0")},_=V||function(R,q,N){var B=R<12?"AM":"PM";return N?B.toLowerCase():B};return l.replace(P,function(R,q){return q||function(N){switch(N){case"YY":return String(d.$y).slice(-2);case"YYYY":return f.s(d.$y,4,"0");case"M":return O+1;case"MM":return f.s(O+1,2,"0");case"MMM":return A(s.monthsShort,O,Y,3);case"MMMM":return A(Y,O);case"D":return d.$D;case"DD":return f.s(d.$D,2,"0");case"d":return String(d.$W);case"dd":return A(s.weekdaysMin,d.$W,k,2);case"ddd":return A(s.weekdaysShort,d.$W,k,3);case"dddd":return k[d.$W];case"H":return String(g);case"HH":return f.s(g,2,"0");case"h":return W(1);case"hh":return W(2);case"a":return _(g,D,!0);case"A":return _(g,D,!1);case"m":return String(D);case"mm":return f.s(D,2,"0");case"s":return String(d.$s);case"ss":return f.s(d.$s,2,"0");case"SSS":return f.s(d.$ms,3,"0");case"Z":return m}return null}(R)||m.replace(":","")})},n.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},n.diff=function(r,d,s){var l,m=this,g=f.p(d),D=F(r),O=(D.utcOffset()-this.utcOffset())*a,k=this-D,Y=function(){return f.m(m,D)};switch(g){case M:l=Y()/12;break;case T:l=Y();break;case $:l=Y()/3;break;case S:l=(k-O)/6048e5;break;case y:l=(k-O)/864e5;break;case p:l=k/e;break;case i:l=k/a;break;case c:l=k/t;break;default:l=k}return s?l:f.a(l)},n.daysInMonth=function(){return this.endOf(T).$D},n.$locale=function(){return L[this.$L]},n.locale=function(r,d){if(!r)return this.$L;var s=this.clone(),l=z(r,d,!0);return l&&(s.$L=l),s},n.clone=function(){return f.w(this.$d,this)},n.toDate=function(){return new Date(this.valueOf())},n.toJSON=function(){return this.isValid()?this.toISOString():null},n.toISOString=function(){return this.$d.toISOString()},n.toString=function(){return this.$d.toUTCString()},h}(),ae=Q.prototype;return F.prototype=ae,[["$ms",o],["$s",c],["$m",i],["$H",p],["$W",y],["$M",T],["$y",M],["$D",b]].forEach(function(h){ae[h[1]]=function(n){return this.$g(n,h[0],h[1])}}),F.extend=function(h,n){return h.$i||(h(n,Q,F),h.$i=!0),F},F.locale=z,F.isDayjs=X,F.unix=function(h){return F(1e3*h)},F.en=L[j],F.Ls=L,F.p={},F}()),se.exports);const u=he.getDefaultExportFromCjs(pe);var ne,ie={exports:{}},K,ee,fe=ne?ie.exports:(ne=1,ie.exports=(K="month",ee="quarter",function(t,a){var e=a.prototype;e.quarter=function(i){return this.$utils().u(i)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(i-1))};var o=e.add;e.add=function(i,p){return i=Number(i),this.$utils().p(p)===ee?this.add(3*i,K):o.bind(this)(i,p)};var c=e.startOf;e.startOf=function(i,p){var y=this.$utils(),S=!!y.u(p)||p;if(y.p(i)===ee){var T=this.quarter()-1;return S?this.month(3*T).startOf(K).startOf("day"):this.month(3*T+2).endOf(K).endOf("day")}return c.bind(this)(i,p)}}));const ye=he.getDefaultExportFromCjs(fe);function oe(t,a,e){let o=t.quarter()+e*a,c=0;for(;o>4;)o-=4,c+=1;for(;o<1;)o+=4,c-=1;const i=t.add(c,"year").month(3*(o-1)),p=i.daysInMonth(),y=Math.min(t.date(),p);return i.date(y)}function ge(t,a){return t.map(e=>({label:`Last ${e} Days`,range:{dateFrom:u().subtract(e-1,"days").startOf("day").format(a),dateTo:u().endOf("day").format(a)},step:"day"}))}function ve(t,a){return t.map(e=>({label:`Last ${e} Weeks`,range:{dateFrom:u().subtract(e,"weeks").startOf("week").format(a),dateTo:u().endOf("day").format(a)},step:"week"}))}function be(t,a){return t.map(e=>({label:`Last ${e} Months`,range:{dateFrom:u().subtract(e,"months").startOf("month").format(a),dateTo:u().endOf("day").format(a)},step:"month"}))}function $e(t,a){return t.map(e=>({label:`Last ${e} Quarters`,range:{dateFrom:u().subtract(e,"quarters").startOf("quarter").format(a),dateTo:u().endOf("day").format(a)},step:"quarter"}))}function de(t,a){if(!t)return null;const e=u(t);return e.isValid()?e.format(a):null}function ue(t,a,e){const o=de(t,e),c=de(a,e);return{dateFrom:o,dateTo:c,isValid:o!==null&&c!==null}}var De=Object.defineProperty,Te=Object.getOwnPropertyDescriptor,E=(t,a,e,o)=>{for(var c,i=o>1?void 0:o?Te(a,e):a,p=t.length-1;p>=0;p--)(c=t[p])&&(i=(o?c(a,e,i):c(i))||i);return o&&i&&De(a,e,i),i};let C=class extends ce.$LitElement(){constructor(){super(...arguments),this.type="date",this.dateFrom={label:"From",value:""},this.dateTo={label:"To",value:""},this.activePreset=null,this.presetCategories=[]}handleFromDateChange(t){const a=t.target;this.dateFrom={...this.dateFrom,value:a.value},this.dateTo.value&&u(this.dateFrom.value).isAfter(u(this.dateTo.value))&&(this.dateTo={...this.dateTo,value:this.dateFrom.value}),this.dispatchEvent(new CustomEvent("date-change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value},bubbles:!0,composed:!0}))}handleToDateChange(t){const a=t.target;this.dateTo={...this.dateTo,value:a.value},this.dispatchEvent(new CustomEvent("date-change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value},bubbles:!0,composed:!0}))}handlePresetSelection(t,a){a.stopPropagation(),this.dispatchEvent(new CustomEvent("preset-select",{detail:{preset:t},bubbles:!0,composed:!0})),Z.$dialog.dismiss()}applyManualDateSelection(t){t.stopPropagation();const a=u(this.dateFrom.value),e=u(this.dateTo.value);a.isValid()&&e.isValid()?(this.dispatchEvent(new CustomEvent("apply-dates",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value,swapIfNeeded:a.isAfter(e)},bubbles:!0,composed:!0})),Z.$dialog.dismiss()):this.dispatchEvent(new CustomEvent("announce",{detail:{message:"Invalid date format. Please check your input."},bubbles:!0,composed:!0}))}render(){return I.html`
|
|
1
|
+
"use strict";const H=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const ce=require("./litElement.mixin-CII9bbap.cjs");require("./tailwind.mixin-CBu1BEQZ.cjs");const v=require("lit/decorators.js"),he=require("./_commonjsHelpers-k2hpEU-q.cjs"),I=require("lit"),Z=require("./dialog-service-BZZK8N6A.cjs"),J=require("lit/directives/if-defined.js");var re,se={exports:{}},pe=(re||(re=1,se.exports=function(){var t=1e3,a=6e4,e=36e5,o="millisecond",c="second",i="minute",p="hour",y="day",S="week",T="month",$="quarter",M="year",b="date",x="Invalid Date",U=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,P=/\[([^\]]+)]|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,le={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(h){var n=["th","st","nd","rd"],r=h%100;return"["+h+(n[(r-20)%10]||n[r]||n[0])+"]"}},G=function(h,n,r){var d=String(h);return!d||d.length>=n?h:""+Array(n+1-d.length).join(r)+h},me={s:G,z:function(h){var n=-h.utcOffset(),r=Math.abs(n),d=Math.floor(r/60),s=r%60;return(n<=0?"+":"-")+G(d,2,"0")+":"+G(s,2,"0")},m:function h(n,r){if(n.date()<r.date())return-h(r,n);var d=12*(r.year()-n.year())+(r.month()-n.month()),s=n.clone().add(d,T),l=r-s<0,m=n.clone().add(d+(l?-1:1),T);return+(-(d+(r-s)/(l?s-m:m-s))||0)},a:function(h){return h<0?Math.ceil(h)||0:Math.floor(h)},p:function(h){return{M:T,y:M,w:S,d:y,D:b,h:p,m:i,s:c,ms:o,Q:$}[h]||String(h||"").toLowerCase().replace(/s$/,"")},u:function(h){return h===void 0}},j="en",L={};L[j]=le;var te="$isDayjsObject",X=function(h){return h instanceof Q||!(!h||!h[te])},z=function h(n,r,d){var s;if(!n)return j;if(typeof n=="string"){var l=n.toLowerCase();L[l]&&(s=l),r&&(L[l]=r,s=l);var m=n.split("-");if(!s&&m.length>1)return h(m[0])}else{var g=n.name;L[g]=n,s=g}return!d&&s&&(j=s),s||!d&&j},F=function(h,n){if(X(h))return h.clone();var r=typeof n=="object"?n:{};return r.date=h,r.args=arguments,new Q(r)},f=me;f.l=z,f.i=X,f.w=function(h,n){return F(h,{locale:n.$L,utc:n.$u,x:n.$x,$offset:n.$offset})};var Q=function(){function h(r){this.$L=z(r.locale,null,!0),this.parse(r),this.$x=this.$x||r.x||{},this[te]=!0}var n=h.prototype;return n.parse=function(r){this.$d=function(d){var s=d.date,l=d.utc;if(s===null)return new Date(NaN);if(f.u(s))return new Date;if(s instanceof Date)return new Date(s);if(typeof s=="string"&&!/Z$/i.test(s)){var m=s.match(U);if(m){var g=m[2]-1||0,D=(m[7]||"0").substring(0,3);return l?new Date(Date.UTC(m[1],g,m[3]||1,m[4]||0,m[5]||0,m[6]||0,D)):new Date(m[1],g,m[3]||1,m[4]||0,m[5]||0,m[6]||0,D)}}return new Date(s)}(r),this.init()},n.init=function(){var r=this.$d;this.$y=r.getFullYear(),this.$M=r.getMonth(),this.$D=r.getDate(),this.$W=r.getDay(),this.$H=r.getHours(),this.$m=r.getMinutes(),this.$s=r.getSeconds(),this.$ms=r.getMilliseconds()},n.$utils=function(){return f},n.isValid=function(){return this.$d.toString()!==x},n.isSame=function(r,d){var s=F(r);return this.startOf(d)<=s&&s<=this.endOf(d)},n.isAfter=function(r,d){return F(r)<this.startOf(d)},n.isBefore=function(r,d){return this.endOf(d)<F(r)},n.$g=function(r,d,s){return f.u(r)?this[d]:this.set(s,r)},n.unix=function(){return Math.floor(this.valueOf()/1e3)},n.valueOf=function(){return this.$d.getTime()},n.startOf=function(r,d){var s=this,l=!!f.u(d)||d,m=f.p(r),g=function(_,R){var q=f.w(s.$u?Date.UTC(s.$y,R,_):new Date(s.$y,R,_),s);return l?q:q.endOf(y)},D=function(_,R){return f.w(s.toDate()[_].apply(s.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(R)),s)},O=this.$W,k=this.$M,Y=this.$D,V="set"+(this.$u?"UTC":"");switch(m){case M:return l?g(1,0):g(31,11);case T:return l?g(1,k):g(0,k+1);case S:var A=this.$locale().weekStart||0,W=(O<A?O+7:O)-A;return g(l?Y-W:Y+(6-W),k);case y:case b:return D(V+"Hours",0);case p:return D(V+"Minutes",1);case i:return D(V+"Seconds",2);case c:return D(V+"Milliseconds",3);default:return this.clone()}},n.endOf=function(r){return this.startOf(r,!1)},n.$set=function(r,d){var s,l=f.p(r),m="set"+(this.$u?"UTC":""),g=(s={},s[y]=m+"Date",s[b]=m+"Date",s[T]=m+"Month",s[M]=m+"FullYear",s[p]=m+"Hours",s[i]=m+"Minutes",s[c]=m+"Seconds",s[o]=m+"Milliseconds",s)[l],D=l===y?this.$D+(d-this.$W):d;if(l===T||l===M){var O=this.clone().set(b,1);O.$d[g](D),O.init(),this.$d=O.set(b,Math.min(this.$D,O.daysInMonth())).$d}else g&&this.$d[g](D);return this.init(),this},n.set=function(r,d){return this.clone().$set(r,d)},n.get=function(r){return this[f.p(r)]()},n.add=function(r,d){var s,l=this;r=Number(r);var m=f.p(d),g=function(k){var Y=F(l);return f.w(Y.date(Y.date()+Math.round(k*r)),l)};if(m===T)return this.set(T,this.$M+r);if(m===M)return this.set(M,this.$y+r);if(m===y)return g(1);if(m===S)return g(7);var D=(s={},s[i]=a,s[p]=e,s[c]=t,s)[m]||1,O=this.$d.getTime()+r*D;return f.w(O,this)},n.subtract=function(r,d){return this.add(-1*r,d)},n.format=function(r){var d=this,s=this.$locale();if(!this.isValid())return s.invalidDate||x;var l=r||"YYYY-MM-DDTHH:mm:ssZ",m=f.z(this),g=this.$H,D=this.$m,O=this.$M,k=s.weekdays,Y=s.months,V=s.meridiem,A=function(R,q,N,B){return R&&(R[q]||R(d,l))||N[q].slice(0,B)},W=function(R){return f.s(g%12||12,R,"0")},_=V||function(R,q,N){var B=R<12?"AM":"PM";return N?B.toLowerCase():B};return l.replace(P,function(R,q){return q||function(N){switch(N){case"YY":return String(d.$y).slice(-2);case"YYYY":return f.s(d.$y,4,"0");case"M":return O+1;case"MM":return f.s(O+1,2,"0");case"MMM":return A(s.monthsShort,O,Y,3);case"MMMM":return A(Y,O);case"D":return d.$D;case"DD":return f.s(d.$D,2,"0");case"d":return String(d.$W);case"dd":return A(s.weekdaysMin,d.$W,k,2);case"ddd":return A(s.weekdaysShort,d.$W,k,3);case"dddd":return k[d.$W];case"H":return String(g);case"HH":return f.s(g,2,"0");case"h":return W(1);case"hh":return W(2);case"a":return _(g,D,!0);case"A":return _(g,D,!1);case"m":return String(D);case"mm":return f.s(D,2,"0");case"s":return String(d.$s);case"ss":return f.s(d.$s,2,"0");case"SSS":return f.s(d.$ms,3,"0");case"Z":return m}return null}(R)||m.replace(":","")})},n.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},n.diff=function(r,d,s){var l,m=this,g=f.p(d),D=F(r),O=(D.utcOffset()-this.utcOffset())*a,k=this-D,Y=function(){return f.m(m,D)};switch(g){case M:l=Y()/12;break;case T:l=Y();break;case $:l=Y()/3;break;case S:l=(k-O)/6048e5;break;case y:l=(k-O)/864e5;break;case p:l=k/e;break;case i:l=k/a;break;case c:l=k/t;break;default:l=k}return s?l:f.a(l)},n.daysInMonth=function(){return this.endOf(T).$D},n.$locale=function(){return L[this.$L]},n.locale=function(r,d){if(!r)return this.$L;var s=this.clone(),l=z(r,d,!0);return l&&(s.$L=l),s},n.clone=function(){return f.w(this.$d,this)},n.toDate=function(){return new Date(this.valueOf())},n.toJSON=function(){return this.isValid()?this.toISOString():null},n.toISOString=function(){return this.$d.toISOString()},n.toString=function(){return this.$d.toUTCString()},h}(),ae=Q.prototype;return F.prototype=ae,[["$ms",o],["$s",c],["$m",i],["$H",p],["$W",y],["$M",T],["$y",M],["$D",b]].forEach(function(h){ae[h[1]]=function(n){return this.$g(n,h[0],h[1])}}),F.extend=function(h,n){return h.$i||(h(n,Q,F),h.$i=!0),F},F.locale=z,F.isDayjs=X,F.unix=function(h){return F(1e3*h)},F.en=L[j],F.Ls=L,F.p={},F}()),se.exports);const u=he.getDefaultExportFromCjs(pe);var ne,ie={exports:{}},K,ee,fe=ne?ie.exports:(ne=1,ie.exports=(K="month",ee="quarter",function(t,a){var e=a.prototype;e.quarter=function(i){return this.$utils().u(i)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(i-1))};var o=e.add;e.add=function(i,p){return i=Number(i),this.$utils().p(p)===ee?this.add(3*i,K):o.bind(this)(i,p)};var c=e.startOf;e.startOf=function(i,p){var y=this.$utils(),S=!!y.u(p)||p;if(y.p(i)===ee){var T=this.quarter()-1;return S?this.month(3*T).startOf(K).startOf("day"):this.month(3*T+2).endOf(K).endOf("day")}return c.bind(this)(i,p)}}));const ye=he.getDefaultExportFromCjs(fe);function oe(t,a,e){let o=t.quarter()+e*a,c=0;for(;o>4;)o-=4,c+=1;for(;o<1;)o+=4,c-=1;const i=t.add(c,"year").month(3*(o-1)),p=i.daysInMonth(),y=Math.min(t.date(),p);return i.date(y)}function ge(t,a){return t.map(e=>({label:`Last ${e} Days`,range:{dateFrom:u().subtract(e-1,"days").startOf("day").format(a),dateTo:u().endOf("day").format(a)},step:"day"}))}function ve(t,a){return t.map(e=>({label:`Last ${e} Weeks`,range:{dateFrom:u().subtract(e,"weeks").startOf("week").format(a),dateTo:u().endOf("day").format(a)},step:"week"}))}function be(t,a){return t.map(e=>({label:`Last ${e} Months`,range:{dateFrom:u().subtract(e,"months").startOf("month").format(a),dateTo:u().endOf("day").format(a)},step:"month"}))}function $e(t,a){return t.map(e=>({label:`Last ${e} Quarters`,range:{dateFrom:u().subtract(e,"quarters").startOf("quarter").format(a),dateTo:u().endOf("day").format(a)},step:"quarter"}))}function de(t,a){if(!t)return null;const e=u(t);return e.isValid()?e.format(a):null}function ue(t,a,e){const o=de(t,e),c=de(a,e);return{dateFrom:o,dateTo:c,isValid:o!==null&&c!==null}}var De=Object.defineProperty,Te=Object.getOwnPropertyDescriptor,E=(t,a,e,o)=>{for(var c,i=o>1?void 0:o?Te(a,e):a,p=t.length-1;p>=0;p--)(c=t[p])&&(i=(o?c(a,e,i):c(i))||i);return o&&i&&De(a,e,i),i};let C=class extends ce.$LitElement(){constructor(){super(...arguments),this.type="date",this.dateFrom={label:"From",value:""},this.dateTo={label:"To",value:""},this.activePreset=null,this.presetCategories=[]}handleFromDateChange(t){const a=t.target;this.dateFrom={...this.dateFrom,value:a.value},this.dateTo.value&&u(this.dateFrom.value).isAfter(u(this.dateTo.value))&&(this.dateTo={...this.dateTo,value:this.dateFrom.value}),this.dispatchEvent(new CustomEvent("date-change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value},bubbles:!0,composed:!0}))}handleToDateChange(t){const a=t.target;this.dateTo={...this.dateTo,value:a.value},this.dispatchEvent(new CustomEvent("date-change",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value},bubbles:!0,composed:!0}))}handlePresetSelection(t,a){a.stopPropagation(),this.dispatchEvent(new CustomEvent("preset-select",{detail:{preset:t},bubbles:!0,composed:!0})),Z.$dialog.dismiss()}applyManualDateSelection(t){t.stopPropagation();const a=u(this.dateFrom.value),e=u(this.dateTo.value);a.isValid()&&e.isValid()?(this.dispatchEvent(new CustomEvent("apply-dates",{detail:{dateFrom:this.dateFrom.value,dateTo:this.dateTo.value,swapIfNeeded:a.isAfter(e)},bubbles:!0,composed:!0})),Z.$dialog.dismiss()):this.dispatchEvent(new CustomEvent("announce",{detail:{message:"Invalid date format. Please check your input."},bubbles:!0,composed:!0}))}render(){return I.html`
|
|
2
2
|
<div class="w-full min-h-[400px] max-h-[80vh] flex flex-col p-4">
|
|
3
3
|
<!-- Custom Range Section with Inline Calendars -->
|
|
4
4
|
<schmancy-surface type="container" class="rounded-xl p-4 mb-6">
|
|
@@ -128,4 +128,4 @@
|
|
|
128
128
|
</section>
|
|
129
129
|
</div>
|
|
130
130
|
`}},w([v.property({type:String})],exports.SchmancyDateRange.prototype,"type",2),w([v.property({type:Object})],exports.SchmancyDateRange.prototype,"dateFrom",2),w([v.property({type:Object})],exports.SchmancyDateRange.prototype,"dateTo",2),w([v.property({type:String})],exports.SchmancyDateRange.prototype,"minDate",2),w([v.property({type:String})],exports.SchmancyDateRange.prototype,"maxDate",2),w([v.property({type:Array})],exports.SchmancyDateRange.prototype,"customPresets",2),w([v.property({type:String})],exports.SchmancyDateRange.prototype,"format",2),w([v.property({type:Boolean})],exports.SchmancyDateRange.prototype,"disabled",2),w([v.property({type:Boolean})],exports.SchmancyDateRange.prototype,"required",2),w([v.property({type:String})],exports.SchmancyDateRange.prototype,"placeholder",2),w([v.property({type:Boolean})],exports.SchmancyDateRange.prototype,"clearable",2),w([v.state()],exports.SchmancyDateRange.prototype,"isOpen",2),w([v.state()],exports.SchmancyDateRange.prototype,"selectedDateRange",2),w([v.state()],exports.SchmancyDateRange.prototype,"activePreset",2),w([v.state()],exports.SchmancyDateRange.prototype,"announceMessage",2),w([v.state()],exports.SchmancyDateRange.prototype,"isMobile",2),exports.SchmancyDateRange=w([v.customElement("schmancy-date-range")],exports.SchmancyDateRange),exports.validateInitialDateRange=ue;
|
|
131
|
-
//# sourceMappingURL=date-range-
|
|
131
|
+
//# sourceMappingURL=date-range-DinaPWK0.cjs.map
|