erp-pro-ui 0.2.5 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.cjs +1 -1
- package/dist/accordion.mjs +1 -1
- package/dist/alert.cjs +1 -1
- package/dist/alert.mjs +1 -1
- package/dist/animated-content.cjs +1 -1
- package/dist/animated-content.mjs +1 -1
- package/dist/ascii-text.cjs +1 -1
- package/dist/ascii-text.mjs +1 -1
- package/dist/background-gradient-animation.cjs +1 -1
- package/dist/background-gradient-animation.mjs +1 -1
- package/dist/button-hover-border-gradient.cjs +1 -1
- package/dist/button-hover-border-gradient.mjs +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.mjs +1 -1
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.mjs +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.mjs +1 -1
- package/dist/carousel.cjs +1 -1
- package/dist/carousel.mjs +1 -1
- package/dist/catalog.cjs +21 -0
- package/dist/catalog.cjs.map +1 -1
- package/dist/catalog.d.ts +37 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.mjs +21 -0
- package/dist/catalog.mjs.map +1 -1
- package/dist/charts.cjs +1 -1
- package/dist/charts.mjs +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.mjs +1 -1
- package/dist/chip.cjs +1 -1
- package/dist/chip.mjs +1 -1
- package/dist/chroma-grid.cjs +1 -1
- package/dist/chroma-grid.mjs +1 -1
- package/dist/chunks/{drawer-DaoAXL-w.mjs → Drawer-BhTTQV8Q.mjs} +2 -2
- package/dist/chunks/{drawer-DaoAXL-w.mjs.map → Drawer-BhTTQV8Q.mjs.map} +1 -1
- package/dist/chunks/{drawer-D07dGN6R.cjs → Drawer-C_DLqrus.cjs} +2 -3
- package/dist/chunks/{drawer-D07dGN6R.cjs.map → Drawer-C_DLqrus.cjs.map} +1 -1
- package/dist/chunks/{DropdownMenu-BtTOri-A.mjs → DropdownMenu-B18BI5l7.mjs} +2 -2
- package/dist/chunks/{DropdownMenu-BtTOri-A.mjs.map → DropdownMenu-B18BI5l7.mjs.map} +1 -1
- package/dist/chunks/{DropdownMenu-BDrNYO-D.cjs → DropdownMenu-CEmlmX7P.cjs} +2 -3
- package/dist/chunks/{DropdownMenu-BDrNYO-D.cjs.map → DropdownMenu-CEmlmX7P.cjs.map} +1 -1
- package/dist/chunks/{HoverBorderGradient-NbdXeLgC.mjs → HoverBorderGradient-CGKcviEd.mjs} +2 -2
- package/dist/chunks/{HoverBorderGradient-NbdXeLgC.mjs.map → HoverBorderGradient-CGKcviEd.mjs.map} +1 -1
- package/dist/chunks/{HoverBorderGradient-9pfvBoHR.cjs → HoverBorderGradient-DTKasFZO.cjs} +2 -3
- package/dist/chunks/{HoverBorderGradient-9pfvBoHR.cjs.map → HoverBorderGradient-DTKasFZO.cjs.map} +1 -1
- package/dist/chunks/{SunToMoonButton-BkEfkElJ.mjs → SunToMoonButton-DIMK53fW.mjs} +2 -2
- package/dist/chunks/{SunToMoonButton-BkEfkElJ.mjs.map → SunToMoonButton-DIMK53fW.mjs.map} +1 -1
- package/dist/chunks/{SunToMoonButton-jS4BJD9q.cjs → SunToMoonButton-DUuIqw22.cjs} +2 -3
- package/dist/chunks/{SunToMoonButton-jS4BJD9q.cjs.map → SunToMoonButton-DUuIqw22.cjs.map} +1 -1
- package/dist/chunks/{Tooltip-DD30yj3A.cjs → Tooltip-1yPGRJ2Q.cjs} +10 -8
- package/dist/chunks/Tooltip-1yPGRJ2Q.cjs.map +1 -0
- package/dist/chunks/{Tooltip-DK3B879v.mjs → Tooltip-CEj-I4JO.mjs} +10 -7
- package/dist/chunks/Tooltip-CEj-I4JO.mjs.map +1 -0
- package/dist/chunks/{accordion-6zxJUYXr.mjs → accordion-Cf-Q3rec.mjs} +2 -2
- package/dist/chunks/{accordion-6zxJUYXr.mjs.map → accordion-Cf-Q3rec.mjs.map} +1 -1
- package/dist/chunks/{accordion-CmB6EidC.cjs → accordion-X4PNqWkW.cjs} +2 -3
- package/dist/chunks/{accordion-CmB6EidC.cjs.map → accordion-X4PNqWkW.cjs.map} +1 -1
- package/dist/chunks/{alert-C5KEeQqh.cjs → alert-BEMULPIi.cjs} +2 -3
- package/dist/chunks/{alert-C5KEeQqh.cjs.map → alert-BEMULPIi.cjs.map} +1 -1
- package/dist/chunks/{alert-XVmYJgds.mjs → alert-GImBqaCY.mjs} +2 -2
- package/dist/chunks/{alert-XVmYJgds.mjs.map → alert-GImBqaCY.mjs.map} +1 -1
- package/dist/chunks/{animated-content-bK6xp-vc.mjs → animated-content-Bp-Yt0_7.mjs} +1 -1
- package/dist/chunks/{animated-content-bK6xp-vc.mjs.map → animated-content-Bp-Yt0_7.mjs.map} +1 -1
- package/dist/chunks/{animated-content-CLsFnjgr.cjs → animated-content-tSHXDZq2.cjs} +1 -2
- package/dist/chunks/{animated-content-CLsFnjgr.cjs.map → animated-content-tSHXDZq2.cjs.map} +1 -1
- package/dist/chunks/{ascii-text-BFnpVur6.cjs → ascii-text-Ctua6ucZ.cjs} +2 -2
- package/dist/chunks/{ascii-text-BFnpVur6.cjs.map → ascii-text-Ctua6ucZ.cjs.map} +1 -1
- package/dist/chunks/{ascii-text-Bdy4C5rU.mjs → ascii-text-QyP7JU7g.mjs} +1 -1
- package/dist/chunks/{ascii-text-Bdy4C5rU.mjs.map → ascii-text-QyP7JU7g.mjs.map} +1 -1
- package/dist/chunks/{background-gradient-animation-BR9wx6Z8.mjs → background-gradient-animation-CZUD_aq2.mjs} +2 -2
- package/dist/chunks/{background-gradient-animation-BR9wx6Z8.mjs.map → background-gradient-animation-CZUD_aq2.mjs.map} +1 -1
- package/dist/chunks/{background-gradient-animation-CiNdmA61.cjs → background-gradient-animation-PvM0i88k.cjs} +2 -3
- package/dist/chunks/{background-gradient-animation-CiNdmA61.cjs.map → background-gradient-animation-PvM0i88k.cjs.map} +1 -1
- package/dist/chunks/{button-A6UTvrOu.mjs → button-CAU9ej3h.mjs} +3 -2
- package/dist/chunks/button-CAU9ej3h.mjs.map +1 -0
- package/dist/chunks/{button-C4MXPxsC.cjs → button-D2ZYmVda.cjs} +3 -3
- package/dist/chunks/button-D2ZYmVda.cjs.map +1 -0
- package/dist/chunks/{button-hover-border-gradient-ssmwU5-U.cjs → button-hover-border-gradient-D12Zjmd3.cjs} +2 -3
- package/dist/chunks/{button-hover-border-gradient-ssmwU5-U.cjs.map → button-hover-border-gradient-D12Zjmd3.cjs.map} +1 -1
- package/dist/chunks/{button-hover-border-gradient-DnFvjNNw.mjs → button-hover-border-gradient-VNEg4V0o.mjs} +2 -2
- package/dist/chunks/{button-hover-border-gradient-DnFvjNNw.mjs.map → button-hover-border-gradient-VNEg4V0o.mjs.map} +1 -1
- package/dist/chunks/calendar-BlUhssD4.mjs +203 -0
- package/dist/chunks/calendar-BlUhssD4.mjs.map +1 -0
- package/dist/chunks/calendar-CdKKhdx5.cjs +208 -0
- package/dist/chunks/calendar-CdKKhdx5.cjs.map +1 -0
- package/dist/chunks/{card-RrT68nvu.cjs → card-C_Qr7E6E.cjs} +1 -2
- package/dist/chunks/{card-RrT68nvu.cjs.map → card-C_Qr7E6E.cjs.map} +1 -1
- package/dist/chunks/{card-BId1_zHw.mjs → card-DYHDNCPK.mjs} +1 -1
- package/dist/chunks/{card-BId1_zHw.mjs.map → card-DYHDNCPK.mjs.map} +1 -1
- package/dist/chunks/{carousel-Cv0m1Pp5.cjs → carousel-DtOJEbEU.cjs} +4 -5
- package/dist/chunks/{carousel-Cv0m1Pp5.cjs.map → carousel-DtOJEbEU.cjs.map} +1 -1
- package/dist/chunks/{carousel-Dd4rp-jr.mjs → carousel-eeqWZZHE.mjs} +4 -4
- package/dist/chunks/{carousel-Dd4rp-jr.mjs.map → carousel-eeqWZZHE.mjs.map} +1 -1
- package/dist/chunks/chartStyles-2mTluDoo.cjs +108 -0
- package/dist/chunks/chartStyles-2mTluDoo.cjs.map +1 -0
- package/dist/chunks/chartStyles-DrHVYS5N.mjs +55 -0
- package/dist/chunks/chartStyles-DrHVYS5N.mjs.map +1 -0
- package/dist/chunks/{charts-BmIV-mJy.cjs → charts-DMu4zp8j.cjs} +43 -94
- package/dist/chunks/charts-DMu4zp8j.cjs.map +1 -0
- package/dist/chunks/{charts-DkVu0rFc.mjs → charts-DlskmT1J.mjs} +3 -54
- package/dist/chunks/charts-DlskmT1J.mjs.map +1 -0
- package/dist/chunks/{checkbox-3aB7XC9_.mjs → checkbox-D7EJQbqC.mjs} +1 -1
- package/dist/chunks/{checkbox-3aB7XC9_.mjs.map → checkbox-D7EJQbqC.mjs.map} +1 -1
- package/dist/chunks/{checkbox-D8ivRZ1x.cjs → checkbox-Lw2UqyNE.cjs} +1 -2
- package/dist/chunks/{checkbox-D8ivRZ1x.cjs.map → checkbox-Lw2UqyNE.cjs.map} +1 -1
- package/dist/chunks/{chip-B0YzBwkz.cjs → chip-D5i9VT9O.cjs} +4 -5
- package/dist/chunks/{chip-B0YzBwkz.cjs.map → chip-D5i9VT9O.cjs.map} +1 -1
- package/dist/chunks/{chip-CqcdcSs2.mjs → chip-DBlSQcqR.mjs} +4 -4
- package/dist/chunks/{chip-CqcdcSs2.mjs.map → chip-DBlSQcqR.mjs.map} +1 -1
- package/dist/chunks/{chroma-grid-DcZ9f4Ui.cjs → chroma-grid-CTDtdFUm.cjs} +2 -3
- package/dist/chunks/{chroma-grid-DcZ9f4Ui.cjs.map → chroma-grid-CTDtdFUm.cjs.map} +1 -1
- package/dist/chunks/{chroma-grid-opB2DBtS.mjs → chroma-grid-DuLTfGVP.mjs} +2 -2
- package/dist/chunks/{chroma-grid-opB2DBtS.mjs.map → chroma-grid-DuLTfGVP.mjs.map} +1 -1
- package/dist/chunks/{color-palette-pLh6En3n.cjs → color-palette-DQQ9UV0N.cjs} +2 -2
- package/dist/chunks/{color-palette-pLh6En3n.cjs.map → color-palette-DQQ9UV0N.cjs.map} +1 -1
- package/dist/chunks/{color-palette-C3lesasJ.mjs → color-palette-G1HUXWJP.mjs} +1 -1
- package/dist/chunks/{color-palette-C3lesasJ.mjs.map → color-palette-G1HUXWJP.mjs.map} +1 -1
- package/dist/chunks/{combobox-CtNrGmuR.cjs → combobox-CkNzH1YV.cjs} +6 -6
- package/dist/chunks/{combobox-CtNrGmuR.cjs.map → combobox-CkNzH1YV.cjs.map} +1 -1
- package/dist/chunks/{combobox-B6yk5U82.mjs → combobox-xNmFFHd6.mjs} +5 -5
- package/dist/chunks/{combobox-B6yk5U82.mjs.map → combobox-xNmFFHd6.mjs.map} +1 -1
- package/dist/chunks/dashboard-cards-Bww66_5K.cjs +6570 -0
- package/dist/chunks/dashboard-cards-Bww66_5K.cjs.map +1 -0
- package/dist/chunks/dashboard-cards-lnifLEyj.mjs +6385 -0
- package/dist/chunks/dashboard-cards-lnifLEyj.mjs.map +1 -0
- package/dist/chunks/{data-table-fAEuevPn.cjs → data-table-BCVbzkLo.cjs} +48 -37
- package/dist/chunks/data-table-BCVbzkLo.cjs.map +1 -0
- package/dist/chunks/{data-table-Dtf6lKpp.mjs → data-table-C25KHEn4.mjs} +47 -36
- package/dist/chunks/data-table-C25KHEn4.mjs.map +1 -0
- package/dist/chunks/date-picker--cqsgsIV.mjs +587 -0
- package/dist/chunks/date-picker--cqsgsIV.mjs.map +1 -0
- package/dist/chunks/date-picker-BJQdFyqr.cjs +592 -0
- package/dist/chunks/date-picker-BJQdFyqr.cjs.map +1 -0
- package/dist/chunks/{dialog-DSyq6MS3.mjs → dialog-BHIeG3Sg.mjs} +3 -3
- package/dist/chunks/{dialog-DSyq6MS3.mjs.map → dialog-BHIeG3Sg.mjs.map} +1 -1
- package/dist/chunks/{dialog-J2ZTSTpL.cjs → dialog-CLKU0cXX.cjs} +3 -4
- package/dist/chunks/{dialog-J2ZTSTpL.cjs.map → dialog-CLKU0cXX.cjs.map} +1 -1
- package/dist/chunks/draggable-grid-2L_eHKfp.cjs +245 -0
- package/dist/chunks/draggable-grid-2L_eHKfp.cjs.map +1 -0
- package/dist/chunks/draggable-grid-IuCMSOsE.mjs +240 -0
- package/dist/chunks/draggable-grid-IuCMSOsE.mjs.map +1 -0
- package/dist/chunks/event-calendar-CO2doGJW.mjs +1191 -0
- package/dist/chunks/event-calendar-CO2doGJW.mjs.map +1 -0
- package/dist/chunks/event-calendar-CvficOuV.cjs +1208 -0
- package/dist/chunks/event-calendar-CvficOuV.cjs.map +1 -0
- package/dist/chunks/{form-X6Vyaavl.cjs → form-DARN6jtX.cjs} +1 -2
- package/dist/chunks/{form-X6Vyaavl.cjs.map → form-DARN6jtX.cjs.map} +1 -1
- package/dist/chunks/{form-CtZ6U-_B.mjs → form-DNuFklNR.mjs} +1 -1
- package/dist/chunks/{form-CtZ6U-_B.mjs.map → form-DNuFklNR.mjs.map} +1 -1
- package/dist/chunks/{gradual-blur-C6NOnjTw.cjs → gradual-blur-BBLbpXD4.cjs} +2 -3
- package/dist/chunks/{gradual-blur-C6NOnjTw.cjs.map → gradual-blur-BBLbpXD4.cjs.map} +1 -1
- package/dist/chunks/{gradual-blur-DXfxpCdB.mjs → gradual-blur-BPx2MSWI.mjs} +2 -2
- package/dist/chunks/{gradual-blur-DXfxpCdB.mjs.map → gradual-blur-BPx2MSWI.mjs.map} +1 -1
- package/dist/chunks/{hover-card-C88rU-nW.mjs → hover-card-BkVHGXz6.mjs} +1 -1
- package/dist/chunks/{hover-card-C88rU-nW.mjs.map → hover-card-BkVHGXz6.mjs.map} +1 -1
- package/dist/chunks/{hover-card--rplmsA_.cjs → hover-card-DwZFtu8w.cjs} +1 -2
- package/dist/chunks/{hover-card--rplmsA_.cjs.map → hover-card-DwZFtu8w.cjs.map} +1 -1
- package/dist/chunks/{icons-CRanVZB1.cjs → icons-Ci8yEvvF.cjs} +1 -2
- package/dist/chunks/{icons-CRanVZB1.cjs.map → icons-Ci8yEvvF.cjs.map} +1 -1
- package/dist/chunks/{icons-bx3nrxNv.mjs → icons-CkVHNbbN.mjs} +1 -1
- package/dist/chunks/{icons-bx3nrxNv.mjs.map → icons-CkVHNbbN.mjs.map} +1 -1
- package/dist/chunks/{input-Bqo9Q5zF.mjs → input-B-XSdnfh.mjs} +4 -4
- package/dist/chunks/{input-Bqo9Q5zF.mjs.map → input-B-XSdnfh.mjs.map} +1 -1
- package/dist/chunks/{input-DkCPyWXi.cjs → input-EH7x0pQY.cjs} +4 -5
- package/dist/chunks/{input-DkCPyWXi.cjs.map → input-EH7x0pQY.cjs.map} +1 -1
- package/dist/chunks/{label-Drxg0cG2.mjs → label-CcsncrKQ.mjs} +1 -1
- package/dist/chunks/{label-Drxg0cG2.mjs.map → label-CcsncrKQ.mjs.map} +1 -1
- package/dist/chunks/{label-BKzqfAAq.cjs → label-Du-5H7wd.cjs} +1 -2
- package/dist/chunks/{label-BKzqfAAq.cjs.map → label-Du-5H7wd.cjs.map} +1 -1
- package/dist/chunks/{loading-Dtosnb4A.mjs → loading-2Lh_355V.mjs} +2 -2
- package/dist/chunks/{loading-Dtosnb4A.mjs.map → loading-2Lh_355V.mjs.map} +1 -1
- package/dist/chunks/{loading-BiM4mKh6.cjs → loading-DeGHTDO2.cjs} +2 -3
- package/dist/chunks/{loading-BiM4mKh6.cjs.map → loading-DeGHTDO2.cjs.map} +1 -1
- package/dist/chunks/{multi-select-combobox-Do23ZfOQ.mjs → multi-select-combobox-BOdKmPj2.mjs} +4 -4
- package/dist/chunks/{multi-select-combobox-Do23ZfOQ.mjs.map → multi-select-combobox-BOdKmPj2.mjs.map} +1 -1
- package/dist/chunks/{multi-select-combobox-C0DoDzxQ.cjs → multi-select-combobox-PPYRcaPg.cjs} +5 -5
- package/dist/chunks/{multi-select-combobox-C0DoDzxQ.cjs.map → multi-select-combobox-PPYRcaPg.cjs.map} +1 -1
- package/dist/chunks/{otp-input-JOysxKfD.mjs → otp-input--_itTXaL.mjs} +1 -1
- package/dist/chunks/{otp-input-JOysxKfD.mjs.map → otp-input--_itTXaL.mjs.map} +1 -1
- package/dist/chunks/{otp-input-CkhV-sGl.cjs → otp-input-Dgw_47Z7.cjs} +1 -2
- package/dist/chunks/{otp-input-CkhV-sGl.cjs.map → otp-input-Dgw_47Z7.cjs.map} +1 -1
- package/dist/chunks/{overlay-DNnZywyR.cjs → overlay-15EzdrIu.cjs} +1 -2
- package/dist/chunks/{overlay-DNnZywyR.cjs.map → overlay-15EzdrIu.cjs.map} +1 -1
- package/dist/chunks/{overlay-BzkUmjQ-.mjs → overlay-BMbhF-EC.mjs} +1 -1
- package/dist/chunks/{overlay-BzkUmjQ-.mjs.map → overlay-BMbhF-EC.mjs.map} +1 -1
- package/dist/chunks/{password-strength-meter-DCi_BP7e.cjs → password-strength-meter-Be1c-dnK.cjs} +2 -3
- package/dist/chunks/{password-strength-meter-DCi_BP7e.cjs.map → password-strength-meter-Be1c-dnK.cjs.map} +1 -1
- package/dist/chunks/{password-strength-meter-BsvqQBAg.mjs → password-strength-meter-Q1Qr-4tz.mjs} +2 -2
- package/dist/chunks/{password-strength-meter-BsvqQBAg.mjs.map → password-strength-meter-Q1Qr-4tz.mjs.map} +1 -1
- package/dist/chunks/{progress-bar-CYaBO_lS.cjs → progress-bar-BsnX079N.cjs} +3 -3
- package/dist/chunks/{progress-bar-CYaBO_lS.cjs.map → progress-bar-BsnX079N.cjs.map} +1 -1
- package/dist/chunks/{progress-bar-DQ5ZKk2Y.mjs → progress-bar-l5WpbpZf.mjs} +2 -2
- package/dist/chunks/{progress-bar-DQ5ZKk2Y.mjs.map → progress-bar-l5WpbpZf.mjs.map} +1 -1
- package/dist/chunks/{radio-CuiM_gDv.mjs → radio-B94_TGtz.mjs} +2 -2
- package/dist/chunks/{radio-CuiM_gDv.mjs.map → radio-B94_TGtz.mjs.map} +1 -1
- package/dist/chunks/{radio-zx9xEW_C.cjs → radio-W_NiS_dO.cjs} +2 -3
- package/dist/chunks/{radio-zx9xEW_C.cjs.map → radio-W_NiS_dO.cjs.map} +1 -1
- package/dist/chunks/{select-bZ9WqLOc.cjs → select-C5lkcrSB.cjs} +5 -6
- package/dist/chunks/{select-bZ9WqLOc.cjs.map → select-C5lkcrSB.cjs.map} +1 -1
- package/dist/chunks/{select-CUaSNR09.mjs → select-DnSSxddm.mjs} +5 -5
- package/dist/chunks/{select-CUaSNR09.mjs.map → select-DnSSxddm.mjs.map} +1 -1
- package/dist/chunks/{sidebar-Dhf_Arae.mjs → sidebar-C3Sx87wD.mjs} +10 -11
- package/dist/chunks/{sidebar-Dhf_Arae.mjs.map → sidebar-C3Sx87wD.mjs.map} +1 -1
- package/dist/chunks/{sidebar-3i4mGE6T.cjs → sidebar-DDRWkz5k.cjs} +10 -12
- package/dist/chunks/{sidebar-3i4mGE6T.cjs.map → sidebar-DDRWkz5k.cjs.map} +1 -1
- package/dist/chunks/{skeleton-DCBGLNAZ.cjs → skeleton-B2u9c1xJ.cjs} +2 -3
- package/dist/chunks/{skeleton-DCBGLNAZ.cjs.map → skeleton-B2u9c1xJ.cjs.map} +1 -1
- package/dist/chunks/{skeleton-nH1eAN96.mjs → skeleton-DVAlrOq2.mjs} +2 -2
- package/dist/chunks/{skeleton-nH1eAN96.mjs.map → skeleton-DVAlrOq2.mjs.map} +1 -1
- package/dist/chunks/{spinners-g6_Up5Rb.mjs → spinners-BQtIp2ov.mjs} +2 -2
- package/dist/chunks/{spinners-g6_Up5Rb.mjs.map → spinners-BQtIp2ov.mjs.map} +1 -1
- package/dist/chunks/{spinners-C9acUulz.cjs → spinners-BiebALzS.cjs} +2 -3
- package/dist/chunks/{spinners-C9acUulz.cjs.map → spinners-BiebALzS.cjs.map} +1 -1
- package/dist/chunks/{splash-cursor-BqG7ClsJ.cjs → splash-cursor-8b7ORB2k.cjs} +2 -3
- package/dist/chunks/{splash-cursor-BqG7ClsJ.cjs.map → splash-cursor-8b7ORB2k.cjs.map} +1 -1
- package/dist/chunks/{splash-cursor-N4FdnkOa.mjs → splash-cursor-CeZffMed.mjs} +2 -2
- package/dist/chunks/{splash-cursor-N4FdnkOa.mjs.map → splash-cursor-CeZffMed.mjs.map} +1 -1
- package/dist/chunks/{spotlight-card-BmsqC7wm.cjs → spotlight-card-BQjp7hO1.cjs} +2 -3
- package/dist/chunks/{spotlight-card-BmsqC7wm.cjs.map → spotlight-card-BQjp7hO1.cjs.map} +1 -1
- package/dist/chunks/{spotlight-card-D9Z3nTmb.mjs → spotlight-card-DiPtBCAK.mjs} +2 -2
- package/dist/chunks/{spotlight-card-D9Z3nTmb.mjs.map → spotlight-card-DiPtBCAK.mjs.map} +1 -1
- package/dist/chunks/{stepper-DepvEGfr.cjs → stepper-BuhQfQTH.cjs} +5 -6
- package/dist/chunks/{stepper-DepvEGfr.cjs.map → stepper-BuhQfQTH.cjs.map} +1 -1
- package/dist/chunks/{stepper-Jv5OS1nY.mjs → stepper-CVNcexxq.mjs} +5 -5
- package/dist/chunks/{stepper-Jv5OS1nY.mjs.map → stepper-CVNcexxq.mjs.map} +1 -1
- package/dist/chunks/{sun-to-moon-button-PwgTPsTW.cjs → sun-to-moon-button-BzYGFhrg.cjs} +4 -5
- package/dist/chunks/{sun-to-moon-button-PwgTPsTW.cjs.map → sun-to-moon-button-BzYGFhrg.cjs.map} +1 -1
- package/dist/chunks/{sun-to-moon-button-BJtBEaa3.mjs → sun-to-moon-button-CRXBMFZb.mjs} +4 -4
- package/dist/chunks/{sun-to-moon-button-BJtBEaa3.mjs.map → sun-to-moon-button-CRXBMFZb.mjs.map} +1 -1
- package/dist/chunks/{switch-X3l8xnle.cjs → switch-CEoT3MgX.cjs} +1 -2
- package/dist/chunks/{switch-X3l8xnle.cjs.map → switch-CEoT3MgX.cjs.map} +1 -1
- package/dist/chunks/{switch-iPsN1NS2.mjs → switch-DUnNe4xP.mjs} +1 -1
- package/dist/chunks/{switch-iPsN1NS2.mjs.map → switch-DUnNe4xP.mjs.map} +1 -1
- package/dist/chunks/{textarea-CGRl2hrM.cjs → textarea-Bschfj24.cjs} +2 -3
- package/dist/chunks/{textarea-CGRl2hrM.cjs.map → textarea-Bschfj24.cjs.map} +1 -1
- package/dist/chunks/{textarea-Bdo-Trvi.mjs → textarea-CfeKo5HA.mjs} +2 -2
- package/dist/chunks/{textarea-Bdo-Trvi.mjs.map → textarea-CfeKo5HA.mjs.map} +1 -1
- package/dist/chunks/{theme-koPrLKQv.mjs → theme-BXML6jHE.mjs} +1 -1
- package/dist/chunks/{theme-koPrLKQv.mjs.map → theme-BXML6jHE.mjs.map} +1 -1
- package/dist/chunks/{theme-D6B-FaoE.cjs → theme-BzTaXYZ8.cjs} +1 -2
- package/dist/chunks/{theme-D6B-FaoE.cjs.map → theme-BzTaXYZ8.cjs.map} +1 -1
- package/dist/chunks/{toast-BcBidy5n.mjs → toast-D1W0BvoH.mjs} +2 -2
- package/dist/chunks/{toast-BcBidy5n.mjs.map → toast-D1W0BvoH.mjs.map} +1 -1
- package/dist/chunks/{toast-DiFgv3IL.cjs → toast-DL8svc6q.cjs} +2 -3
- package/dist/chunks/{toast-DiFgv3IL.cjs.map → toast-DL8svc6q.cjs.map} +1 -1
- package/dist/chunks/{truncated-text-BIXqNfOL.cjs → truncated-text-D0t4atw5.cjs} +3 -3
- package/dist/chunks/{truncated-text-BIXqNfOL.cjs.map → truncated-text-D0t4atw5.cjs.map} +1 -1
- package/dist/chunks/{truncated-text-C9t9o9IA.mjs → truncated-text-DIkg-8Vo.mjs} +2 -2
- package/dist/chunks/{truncated-text-C9t9o9IA.mjs.map → truncated-text-DIkg-8Vo.mjs.map} +1 -1
- package/dist/chunks/{typography-LwwY_MOy.cjs → typography-C5fYwhp2.cjs} +3 -3
- package/dist/chunks/{typography-LwwY_MOy.cjs.map → typography-C5fYwhp2.cjs.map} +1 -1
- package/dist/chunks/{typography-Ct-jDJP3.mjs → typography-Czi7t5y4.mjs} +2 -2
- package/dist/chunks/{typography-Ct-jDJP3.mjs.map → typography-Czi7t5y4.mjs.map} +1 -1
- package/dist/chunks/{utils-LRbEQHYs.cjs → utils-CoA0q63n.cjs} +84 -4
- package/dist/chunks/utils-CoA0q63n.cjs.map +1 -0
- package/dist/chunks/{utils-7S0u48mU.mjs → utils-Dc7j29ec.mjs} +84 -4
- package/dist/chunks/utils-Dc7j29ec.mjs.map +1 -0
- package/dist/color-palette.cjs +1 -1
- package/dist/color-palette.mjs +1 -1
- package/dist/combobox.cjs +1 -1
- package/dist/combobox.mjs +1 -1
- package/dist/components/data-display/charts/chartPalette.d.ts +1 -1
- package/dist/components/data-display/dashboard-cards/AIFeatureAdoptionCard.d.ts +26 -0
- package/dist/components/data-display/dashboard-cards/AIFeatureAdoptionCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/AIInsightsCard.d.ts +30 -0
- package/dist/components/data-display/dashboard-cards/AIInsightsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/AcquisitionChannelCard.d.ts +24 -0
- package/dist/components/data-display/dashboard-cards/AcquisitionChannelCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/BarBreakdownCard.d.ts +49 -0
- package/dist/components/data-display/dashboard-cards/BarBreakdownCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/CustomerLifecycleCard.d.ts +24 -0
- package/dist/components/data-display/dashboard-cards/CustomerLifecycleCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/DeviceSalesCard.d.ts +25 -0
- package/dist/components/data-display/dashboard-cards/DeviceSalesCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/EarningReportsTabsCard.d.ts +143 -0
- package/dist/components/data-display/dashboard-cards/EarningReportsTabsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/EarningsCard.d.ts +43 -0
- package/dist/components/data-display/dashboard-cards/EarningsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/ExpensesCard.d.ts +26 -0
- package/dist/components/data-display/dashboard-cards/ExpensesCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/FinancialPLCard.d.ts +78 -0
- package/dist/components/data-display/dashboard-cards/FinancialPLCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/IncomeExpenseCard.d.ts +30 -0
- package/dist/components/data-display/dashboard-cards/IncomeExpenseCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/InventoryCards.d.ts +44 -0
- package/dist/components/data-display/dashboard-cards/InventoryCards.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/PaymentSummaryCard.d.ts +45 -0
- package/dist/components/data-display/dashboard-cards/PaymentSummaryCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/RevenueGrowthCard.d.ts +26 -0
- package/dist/components/data-display/dashboard-cards/RevenueGrowthCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/SalesHeatmapCard.d.ts +36 -0
- package/dist/components/data-display/dashboard-cards/SalesHeatmapCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/SalesOverviewCard.d.ts +33 -0
- package/dist/components/data-display/dashboard-cards/SalesOverviewCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/SeatUtilizationCard.d.ts +22 -0
- package/dist/components/data-display/dashboard-cards/SeatUtilizationCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/ShipmentStatisticsCard.d.ts +33 -0
- package/dist/components/data-display/dashboard-cards/ShipmentStatisticsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/StockAvailabilityCard.d.ts +24 -0
- package/dist/components/data-display/dashboard-cards/StockAvailabilityCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/SubscriptionHealthCard.d.ts +23 -0
- package/dist/components/data-display/dashboard-cards/SubscriptionHealthCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/SupportTrackerCard.d.ts +25 -0
- package/dist/components/data-display/dashboard-cards/SupportTrackerCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/ToolUsageOverviewCard.d.ts +22 -0
- package/dist/components/data-display/dashboard-cards/ToolUsageOverviewCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/TopPlansCard.d.ts +23 -0
- package/dist/components/data-display/dashboard-cards/TopPlansCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/TopSellingItemsCard.d.ts +42 -0
- package/dist/components/data-display/dashboard-cards/TopSellingItemsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/TopToolsCard.d.ts +22 -0
- package/dist/components/data-display/dashboard-cards/TopToolsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/TopicsCard.d.ts +18 -0
- package/dist/components/data-display/dashboard-cards/TopicsCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/VehicleConditionCard.d.ts +20 -0
- package/dist/components/data-display/dashboard-cards/VehicleConditionCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/VehiclesOverviewCard.d.ts +21 -0
- package/dist/components/data-display/dashboard-cards/VehiclesOverviewCard.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/_PLCardHeader.d.ts +63 -0
- package/dist/components/data-display/dashboard-cards/_PLCardHeader.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/_PLCharts.d.ts +33 -0
- package/dist/components/data-display/dashboard-cards/_PLCharts.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/_PLKpiStrip.d.ts +11 -0
- package/dist/components/data-display/dashboard-cards/_PLKpiStrip.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/_PLOverview.d.ts +9 -0
- package/dist/components/data-display/dashboard-cards/_PLOverview.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/_TabTooltip.d.ts +8 -0
- package/dist/components/data-display/dashboard-cards/_TabTooltip.d.ts.map +1 -0
- package/dist/components/data-display/dashboard-cards/index.d.ts +57 -0
- package/dist/components/data-display/dashboard-cards/index.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTable.d.ts.map +1 -1
- package/dist/components/data-display/data-table/DataTableControls.d.ts.map +1 -1
- package/dist/components/data-display/event-calendar/AddEventPanel.d.ts +11 -0
- package/dist/components/data-display/event-calendar/AddEventPanel.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/CalendarHeader.d.ts +13 -0
- package/dist/components/data-display/event-calendar/CalendarHeader.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/CalendarSidebar.d.ts +13 -0
- package/dist/components/data-display/event-calendar/CalendarSidebar.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/EventCalendar.d.ts +3 -0
- package/dist/components/data-display/event-calendar/EventCalendar.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/EventDetailDrawer.d.ts +10 -0
- package/dist/components/data-display/event-calendar/EventDetailDrawer.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/EventFilterList.d.ts +9 -0
- package/dist/components/data-display/event-calendar/EventFilterList.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/EventPill.d.ts +10 -0
- package/dist/components/data-display/event-calendar/EventPill.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/MiniCalendarPicker.d.ts +9 -0
- package/dist/components/data-display/event-calendar/MiniCalendarPicker.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/calendarUtils.d.ts +27 -0
- package/dist/components/data-display/event-calendar/calendarUtils.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/index.d.ts +4 -0
- package/dist/components/data-display/event-calendar/index.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/types.d.ts +52 -0
- package/dist/components/data-display/event-calendar/types.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/views/DayView.d.ts +10 -0
- package/dist/components/data-display/event-calendar/views/DayView.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/views/ListView.d.ts +10 -0
- package/dist/components/data-display/event-calendar/views/ListView.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/views/MonthView.d.ts +11 -0
- package/dist/components/data-display/event-calendar/views/MonthView.d.ts.map +1 -0
- package/dist/components/data-display/event-calendar/views/WeekView.d.ts +10 -0
- package/dist/components/data-display/event-calendar/views/WeekView.d.ts.map +1 -0
- package/dist/components/forms/button/Button.d.ts.map +1 -1
- package/dist/components/forms/calendar/Calendar.d.ts +1 -1
- package/dist/components/forms/calendar/Calendar.d.ts.map +1 -1
- package/dist/components/forms/calendar/types.d.ts +6 -0
- package/dist/components/forms/calendar/types.d.ts.map +1 -1
- package/dist/components/forms/date-picker/DatePicker.d.ts.map +1 -1
- package/dist/components/layout/draggable-grid/DraggableGrid.d.ts +20 -0
- package/dist/components/layout/draggable-grid/DraggableGrid.d.ts.map +1 -0
- package/dist/components/layout/draggable-grid/index.d.ts +3 -0
- package/dist/components/layout/draggable-grid/index.d.ts.map +1 -0
- package/dist/components/navigation/sidebar/DashboardSidebarShell.d.ts.map +1 -1
- package/dist/components/overlays/tooltip/Tooltip.d.ts +3 -1
- package/dist/components/overlays/tooltip/Tooltip.d.ts.map +1 -1
- package/dist/dashboard-cards.cjs +33 -0
- package/dist/dashboard-cards.d.ts +2 -0
- package/dist/dashboard-cards.mjs +2 -0
- package/dist/data-table.cjs +1 -1
- package/dist/data-table.mjs +1 -1
- package/dist/date-picker.cjs +1 -1
- package/dist/date-picker.mjs +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.mjs +1 -1
- package/dist/docs.cjs +44 -0
- package/dist/docs.cjs.map +1 -1
- package/dist/docs.d.ts.map +1 -1
- package/dist/docs.mjs +44 -0
- package/dist/docs.mjs.map +1 -1
- package/dist/draggable-grid.cjs +3 -0
- package/dist/draggable-grid.d.ts +2 -0
- package/dist/draggable-grid.mjs +2 -0
- package/dist/drawer.cjs +2 -2
- package/dist/drawer.mjs +1 -1
- package/dist/event-calendar.cjs +5 -0
- package/dist/event-calendar.d.ts +2 -0
- package/dist/event-calendar.mjs +2 -0
- package/dist/form.cjs +1 -1
- package/dist/form.mjs +1 -1
- package/dist/gradual-blur.cjs +1 -1
- package/dist/gradual-blur.mjs +1 -1
- package/dist/hover-border-gradient.cjs +1 -1
- package/dist/hover-border-gradient.mjs +1 -1
- package/dist/hover-card.cjs +1 -1
- package/dist/hover-card.mjs +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.mjs +1 -1
- package/dist/index.cjs +91 -332
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +10 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +57 -329
- package/dist/index.mjs.map +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.mjs +1 -1
- package/dist/label.cjs +1 -1
- package/dist/label.mjs +1 -1
- package/dist/loading.cjs +1 -1
- package/dist/loading.mjs +1 -1
- package/dist/multi-select-combobox.cjs +1 -1
- package/dist/multi-select-combobox.mjs +1 -1
- package/dist/otp-input.cjs +1 -1
- package/dist/otp-input.mjs +1 -1
- package/dist/password-strength-meter.cjs +1 -1
- package/dist/password-strength-meter.mjs +1 -1
- package/dist/progress-bar.cjs +1 -1
- package/dist/progress-bar.mjs +1 -1
- package/dist/radio.cjs +1 -1
- package/dist/radio.mjs +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.mjs +1 -1
- package/dist/sidebar.cjs +1 -1
- package/dist/sidebar.mjs +1 -1
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.mjs +1 -1
- package/dist/spinners.cjs +1 -1
- package/dist/spinners.mjs +1 -1
- package/dist/splash-cursor.cjs +1 -1
- package/dist/splash-cursor.mjs +1 -1
- package/dist/spotlight-card.cjs +1 -1
- package/dist/spotlight-card.mjs +1 -1
- package/dist/stepper.cjs +1 -1
- package/dist/stepper.mjs +1 -1
- package/dist/sun-to-moon-button.cjs +2 -2
- package/dist/sun-to-moon-button.mjs +2 -2
- package/dist/switch.cjs +1 -1
- package/dist/switch.mjs +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.mjs +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.mjs +1 -1
- package/dist/toast.cjs +1 -1
- package/dist/toast.mjs +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.mjs +1 -1
- package/dist/truncated-text.cjs +1 -1
- package/dist/truncated-text.mjs +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.mjs +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.mjs +1 -1
- package/package.json +44 -11
- package/dist/chunks/Tooltip-DD30yj3A.cjs.map +0 -1
- package/dist/chunks/Tooltip-DK3B879v.mjs.map +0 -1
- package/dist/chunks/button-A6UTvrOu.mjs.map +0 -1
- package/dist/chunks/button-C4MXPxsC.cjs.map +0 -1
- package/dist/chunks/calendar-5XzPqKbE.mjs +0 -178
- package/dist/chunks/calendar-5XzPqKbE.mjs.map +0 -1
- package/dist/chunks/calendar-CQJgQ5H_.cjs +0 -184
- package/dist/chunks/calendar-CQJgQ5H_.cjs.map +0 -1
- package/dist/chunks/charts-BmIV-mJy.cjs.map +0 -1
- package/dist/chunks/charts-DkVu0rFc.mjs.map +0 -1
- package/dist/chunks/data-table-Dtf6lKpp.mjs.map +0 -1
- package/dist/chunks/data-table-fAEuevPn.cjs.map +0 -1
- package/dist/chunks/date-picker-BmQ0rgwH.mjs +0 -228
- package/dist/chunks/date-picker-BmQ0rgwH.mjs.map +0 -1
- package/dist/chunks/date-picker-qpUZMtZC.cjs +0 -234
- package/dist/chunks/date-picker-qpUZMtZC.cjs.map +0 -1
- package/dist/chunks/utils-7S0u48mU.mjs.map +0 -1
- package/dist/chunks/utils-LRbEQHYs.cjs.map +0 -1
- /package/dist/chunks/{chunk-B_GkZjkl.cjs → chunk-D6vf50IK.cjs} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-calendar-CO2doGJW.mjs","names":[],"sources":["../../src/components/data-display/event-calendar/calendarUtils.ts","../../src/components/data-display/event-calendar/MiniCalendarPicker.tsx","../../src/components/data-display/event-calendar/types.ts","../../src/components/data-display/event-calendar/EventFilterList.tsx","../../src/components/data-display/event-calendar/CalendarSidebar.tsx","../../src/components/data-display/event-calendar/CalendarHeader.tsx","../../src/components/data-display/event-calendar/EventPill.tsx","../../src/components/data-display/event-calendar/views/MonthView.tsx","../../src/components/data-display/event-calendar/views/WeekView.tsx","../../src/components/data-display/event-calendar/views/DayView.tsx","../../src/components/data-display/event-calendar/views/ListView.tsx","../../src/components/data-display/event-calendar/AddEventPanel.tsx","../../src/components/data-display/event-calendar/EventDetailDrawer.tsx","../../src/components/data-display/event-calendar/EventCalendar.tsx"],"sourcesContent":["import type { CalendarEvent } from './types';\n\nexport const GRID_START_HOUR = 6;\nexport const GRID_END_HOUR = 22;\nexport const HOUR_HEIGHT_PX = 80;\n\nexport function isSameDay(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() &&\n a.getMonth() === b.getMonth() &&\n a.getDate() === b.getDate()\n );\n}\n\nexport function isToday(date: Date): boolean {\n return isSameDay(date, new Date());\n}\n\nexport function addDays(date: Date, n: number): Date {\n const d = new Date(date);\n d.setDate(d.getDate() + n);\n return d;\n}\n\nexport function addMonths(date: Date, n: number): Date {\n const d = new Date(date);\n d.setMonth(d.getMonth() + n);\n return d;\n}\n\nexport function addWeeks(date: Date, n: number): Date {\n return addDays(date, n * 7);\n}\n\nexport function startOfWeek(date: Date): Date {\n const d = new Date(date);\n d.setDate(d.getDate() - d.getDay());\n d.setHours(0, 0, 0, 0);\n return d;\n}\n\nexport function startOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth(), 1);\n}\n\nexport function endOfMonth(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0, 23, 59, 59, 999);\n}\n\nexport function getMonthGridDays(date: Date): Date[] {\n const first = startOfMonth(date);\n const gridStart = startOfWeek(first);\n return Array.from({ length: 42 }, (_, i) => addDays(gridStart, i));\n}\n\nexport function getWeekDays(date: Date): Date[] {\n const sunday = startOfWeek(date);\n return Array.from({ length: 7 }, (_, i) => addDays(sunday, i));\n}\n\nexport function getEventsForDay(events: CalendarEvent[], day: Date): CalendarEvent[] {\n const dayStart = new Date(day);\n dayStart.setHours(0, 0, 0, 0);\n const dayEnd = new Date(day);\n dayEnd.setHours(23, 59, 59, 999);\n return events.filter((e) => e.start <= dayEnd && e.end >= dayStart);\n}\n\nexport function formatMonthYear(date: Date): string {\n return date.toLocaleDateString('en-US', { month: 'long', year: 'numeric' });\n}\n\nexport function formatWeekRange(date: Date): string {\n const days = getWeekDays(date);\n const start = days[0]!;\n const end = days[6]!;\n const startStr = start.toLocaleDateString('en-US', { month: 'long', day: 'numeric' });\n const endStr =\n start.getMonth() === end.getMonth()\n ? end.getDate().toString()\n : end.toLocaleDateString('en-US', { month: 'long', day: 'numeric' });\n return `${startStr}–${endStr}, ${end.getFullYear()}`;\n}\n\nexport function formatDayFull(date: Date): string {\n return date.toLocaleDateString('en-US', { month: 'long', day: 'numeric', year: 'numeric' });\n}\n\nexport function formatShortDate(date: Date): string {\n return `${date.getMonth() + 1}/${date.getDate()}`;\n}\n\nexport function formatHour(h: number): string {\n if (h === 0) return '12AM';\n if (h === 12) return '12PM';\n return h < 12 ? `${h}AM` : `${h - 12}PM`;\n}\n\nexport function formatTime(date: Date): string {\n let h = date.getHours();\n const m = date.getMinutes();\n const ampm = h >= 12 ? 'pm' : 'am';\n h = h % 12 || 12;\n const mm = m.toString().padStart(2, '0');\n return `${h}:${mm}${ampm}`;\n}\n\nexport function formatListDate(date: Date): string {\n return date.toLocaleDateString('en-US', { month: 'long', day: 'numeric', year: 'numeric' });\n}\n\nexport function formatListDayName(date: Date): string {\n return date.toLocaleDateString('en-US', { weekday: 'long' });\n}\n\nexport function generateId(): string {\n return Math.random().toString(36).slice(2) + Date.now().toString(36);\n}\n\nexport function getEventTopPx(event: CalendarEvent): number {\n const startH = event.start.getHours() + event.start.getMinutes() / 60;\n return (startH - GRID_START_HOUR) * HOUR_HEIGHT_PX;\n}\n\nexport function getEventHeightPx(event: CalendarEvent): number {\n const startH = event.start.getHours() + event.start.getMinutes() / 60;\n const endH = event.end.getHours() + event.end.getMinutes() / 60;\n const clampedEnd = Math.min(endH, GRID_END_HOUR);\n const clampedStart = Math.max(startH, GRID_START_HOUR);\n return Math.max((clampedEnd - clampedStart) * HOUR_HEIGHT_PX, 20);\n}\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Button } from '../../forms/button';\nimport { mergeClassNames } from '../../../utils';\n\nimport { getMonthGridDays, isSameDay, isToday, addMonths } from './calendarUtils';\n\ninterface MiniCalendarPickerProps {\n currentDate: Date;\n onDateChange: (d: Date) => void;\n onMonthChange: (d: Date) => void;\n}\n\nconst DAY_CHARS = ['S', 'M', 'T', 'W', 'T', 'F', 'S'];\n\nconst ChevronLeft = () => (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n);\n\nconst ChevronRight = () => (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M9 18l6-6-6-6\" />\n </svg>\n);\n\nexport const MiniCalendarPicker: FC<MiniCalendarPickerProps> = ({\n currentDate,\n onDateChange,\n onMonthChange,\n}) => {\n const days = getMonthGridDays(currentDate);\n const monthLabel = currentDate.toLocaleDateString('en-US', { month: 'long', year: 'numeric' });\n\n return (\n <div className=\"select-none\">\n <div className=\"mb-2 flex items-center justify-between\">\n <span className=\"text-xs font-semibold text-ds-1\">{monthLabel}</span>\n <div className=\"flex gap-0.5\">\n <Button\n variant=\"tertiary\"\n size=\"small\"\n className=\"h-6 w-6 p-0! hover:opacity-100\"\n aria-label=\"Previous month\"\n onClick={() => onMonthChange(addMonths(currentDate, -1))}\n >\n <ChevronLeft />\n </Button>\n <Button\n variant=\"tertiary\"\n size=\"small\"\n className=\"h-6 w-6 p-0! hover:opacity-100\"\n aria-label=\"Next month\"\n onClick={() => onMonthChange(addMonths(currentDate, 1))}\n >\n <ChevronRight />\n </Button>\n </div>\n </div>\n\n <div className=\"mb-1 grid grid-cols-7\">\n {DAY_CHARS.map((c, i) => (\n <div key={i} className=\"py-0.5 text-center text-[10px] font-medium text-ds-3\">\n {c}\n </div>\n ))}\n </div>\n\n <div className=\"grid grid-cols-7 gap-y-0.5\">\n {days.map((day, i) => {\n const isCurrentMonth = day.getMonth() === currentDate.getMonth();\n const today = isToday(day);\n const selected = isSameDay(day, currentDate);\n return (\n <Button\n key={i}\n variant=\"tertiary\"\n aria-label={day.toDateString()}\n onClick={() => onDateChange(day)}\n className={mergeClassNames(\n 'mx-auto h-6 w-6 rounded-full p-0! text-[10px] hover:opacity-100',\n today ? 'bg-ds-accent! text-ds-on-accent! font-bold' : '',\n !today && selected ? 'bg-ds-surface-3! text-ds-1! font-medium' : '',\n !today && !selected && isCurrentMonth ? 'text-ds-2 hover:bg-ds-surface-3' : '',\n !today && !selected && !isCurrentMonth ? 'text-ds-3 opacity-50' : '',\n )}\n >\n {day.getDate()}\n </Button>\n );\n })}\n </div>\n </div>\n );\n};\n","export type CalendarView = 'month' | 'week' | 'day' | 'list';\nexport type EventLabel = 'personal' | 'business' | 'family' | 'holiday' | 'etc';\n\nexport interface CalendarEvent {\n id: string;\n title: string;\n start: Date;\n end: Date;\n allDay: boolean;\n label: EventLabel;\n url?: string;\n guests?: string;\n location?: string;\n description?: string;\n}\n\nexport interface EventCalendarProps {\n initialEvents?: CalendarEvent[];\n initialView?: CalendarView;\n initialDate?: Date;\n onEventAdd?: (event: CalendarEvent) => void;\n onEventUpdate?: (event: CalendarEvent) => void;\n onEventDelete?: (id: string) => void;\n className?: string;\n}\n\nexport const EVENT_LABEL_CONFIG = {\n personal: { display: 'Personal', color: 'var(--ds-color-danger)', bg: 'var(--ds-color-danger-subtle)' },\n business: { display: 'Business', color: 'var(--ds-color-accent)', bg: 'var(--ds-color-accent-subtle)' },\n family: { display: 'Family', color: 'var(--ds-color-warning)', bg: 'var(--ds-color-warning-subtle)' },\n holiday: { display: 'Holiday', color: 'var(--ds-color-success)', bg: 'var(--ds-color-success-subtle)' },\n etc: { display: 'ETC', color: 'var(--ds-color-info)', bg: 'var(--ds-color-info-subtle)' },\n} as const;\n\nexport const ALL_LABELS: EventLabel[] = ['personal', 'business', 'family', 'holiday', 'etc'];\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Checkbox } from '../../forms/checkbox';\n\nimport { EVENT_LABEL_CONFIG, ALL_LABELS } from './types';\nimport type { EventLabel } from './types';\n\ninterface EventFilterListProps {\n activeLabels: EventLabel[];\n onChange: (labels: EventLabel[]) => void;\n}\n\nconst LABEL_COLOR: Record<EventLabel, string> = {\n personal: 'red',\n business: 'primary',\n family: 'yellow',\n holiday: 'green',\n etc: 'teal',\n};\n\nexport const EventFilterList: FC<EventFilterListProps> = ({ activeLabels, onChange }) => {\n const allActive = activeLabels.length === ALL_LABELS.length;\n\n const toggleAll = () => {\n onChange(allActive ? [] : [...ALL_LABELS]);\n };\n\n const toggleLabel = (label: EventLabel) => {\n if (activeLabels.includes(label)) {\n onChange(activeLabels.filter((l) => l !== label));\n } else {\n onChange([...activeLabels, label]);\n }\n };\n\n return (\n <div className=\"flex flex-col gap-2.5\">\n <Checkbox\n checked={allActive}\n onChange={toggleAll}\n label=\"View all\"\n color=\"primary\"\n />\n {ALL_LABELS.map((label) => {\n const cfg = EVENT_LABEL_CONFIG[label];\n return (\n <Checkbox\n key={label}\n checked={activeLabels.includes(label)}\n onChange={() => toggleLabel(label)}\n label={cfg.display}\n color={LABEL_COLOR[label]}\n />\n );\n })}\n </div>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Button } from '../../forms/button';\n\nimport { MiniCalendarPicker } from './MiniCalendarPicker';\nimport { EventFilterList } from './EventFilterList';\nimport type { EventLabel } from './types';\n\nexport interface CalendarSidebarProps {\n currentDate: Date;\n onDateChange: (d: Date) => void;\n onMonthChange: (d: Date) => void;\n activeLabels: EventLabel[];\n onFiltersChange: (labels: EventLabel[]) => void;\n onAddEvent: () => void;\n}\n\nexport const CalendarSidebarContent: FC<CalendarSidebarProps> = ({\n currentDate,\n onDateChange,\n onMonthChange,\n activeLabels,\n onFiltersChange,\n onAddEvent,\n}) => (\n <div className=\"flex flex-col gap-5\">\n <Button\n variant=\"primary\"\n className=\"w-full\"\n onClick={onAddEvent}\n aria-label=\"Add new event\"\n >\n + Add Event\n </Button>\n\n <MiniCalendarPicker\n currentDate={currentDate}\n onDateChange={onDateChange}\n onMonthChange={onMonthChange}\n />\n\n <div>\n <h3 className=\"mb-3 text-xs font-semibold uppercase tracking-wider text-ds-3\">\n Event Filters\n </h3>\n <EventFilterList activeLabels={activeLabels} onChange={onFiltersChange} />\n </div>\n </div>\n);\n\nexport const CalendarSidebar: FC<CalendarSidebarProps> = (props) => (\n <aside className=\"hidden w-[280px] shrink-0 flex-col border-e border-ds-border-3 bg-ds-surface-1 p-4 lg:flex\">\n <CalendarSidebarContent {...props} />\n </aside>\n);\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Button } from '../../forms/button';\nimport { mergeClassNames } from '../../../utils';\n\nimport {\n formatMonthYear,\n formatWeekRange,\n formatDayFull,\n} from './calendarUtils';\nimport type { CalendarView } from './types';\n\ninterface CalendarHeaderProps {\n view: CalendarView;\n currentDate: Date;\n onPrev: () => void;\n onNext: () => void;\n onViewChange: (v: CalendarView) => void;\n onSidebarToggle?: () => void;\n}\n\nconst VIEWS: { value: CalendarView; label: string }[] = [\n { value: 'month', label: 'Month' },\n { value: 'week', label: 'Week' },\n { value: 'day', label: 'Day' },\n { value: 'list', label: 'List' },\n];\n\nfunction getTitle(view: CalendarView, date: Date): string {\n if (view === 'month' || view === 'list') return formatMonthYear(date);\n if (view === 'week') return formatWeekRange(date);\n return formatDayFull(date);\n}\n\nconst ChevronLeft = () => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n);\n\nconst ChevronRight = () => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <path d=\"M9 18l6-6-6-6\" />\n </svg>\n);\n\nconst MenuIcon = () => (\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <line x1=\"3\" y1=\"6\" x2=\"21\" y2=\"6\" />\n <line x1=\"3\" y1=\"12\" x2=\"21\" y2=\"12\" />\n <line x1=\"3\" y1=\"18\" x2=\"21\" y2=\"18\" />\n </svg>\n);\n\nexport const CalendarHeader: FC<CalendarHeaderProps> = ({\n view,\n currentDate,\n onPrev,\n onNext,\n onViewChange,\n onSidebarToggle,\n}) => (\n <header className=\"flex items-center justify-between border-b border-ds-border-3 bg-ds-surface-1 px-4 py-3\">\n <div className=\"flex items-center gap-2\">\n {onSidebarToggle && (\n <Button\n variant=\"secondary\"\n size=\"small\"\n className=\"h-8 w-8 p-0! hover:opacity-100 lg:hidden\"\n aria-label=\"Toggle calendar sidebar\"\n onClick={onSidebarToggle}\n >\n <MenuIcon />\n </Button>\n )}\n <Button\n variant=\"secondary\"\n size=\"small\"\n className=\"h-8 w-8 p-0! hover:opacity-100\"\n aria-label=\"Previous period\"\n onClick={onPrev}\n >\n <ChevronLeft />\n </Button>\n <Button\n variant=\"secondary\"\n size=\"small\"\n className=\"h-8 w-8 p-0! hover:opacity-100\"\n aria-label=\"Next period\"\n onClick={onNext}\n >\n <ChevronRight />\n </Button>\n <h2 className=\"ms-1 text-base font-semibold text-ds-1\">\n {getTitle(view, currentDate)}\n </h2>\n </div>\n\n <div className=\"flex rounded-lg border border-ds-border-2 bg-ds-surface-2 p-0.5\" role=\"tablist\" aria-label=\"Calendar view\">\n {VIEWS.map(({ value, label }) => (\n <Button\n key={value}\n variant=\"tertiary\"\n size=\"small\"\n role=\"tab\"\n aria-selected={view === value}\n onClick={() => onViewChange(value)}\n className={mergeClassNames(\n 'rounded-md px-3 py-1.5 text-xs font-medium hover:opacity-100',\n view === value\n ? 'bg-ds-surface-1 text-ds-1 shadow-1'\n : 'text-ds-3 hover:text-ds-2',\n )}\n >\n {label}\n </Button>\n ))}\n </div>\n </header>\n);\n","\"use client\";\n\nimport type { FC, KeyboardEvent } from 'react';\n\nimport { Tooltip } from '../../overlays/tooltip/Tooltip';\nimport { TruncatedText } from '../../typography/truncated-text/TruncatedText';\n\nimport { formatDayFull, formatTime } from './calendarUtils';\nimport { EVENT_LABEL_CONFIG } from './types';\nimport type { CalendarEvent } from './types';\n\ninterface EventPillProps {\n event: CalendarEvent;\n compact?: boolean;\n onDoubleClick?: (event: CalendarEvent) => void;\n}\n\nexport const EventPill: FC<EventPillProps> = ({ event, compact = false, onDoubleClick }) => {\n const cfg = EVENT_LABEL_CONFIG[event.label];\n const timeStr = event.allDay\n ? 'All day'\n : `${formatTime(event.start)} – ${formatTime(event.end)}`;\n\n const tooltipContent = (\n <div className=\"flex min-w-0 flex-col gap-1.5\">\n <span className=\"font-semibold leading-snug text-ds-1\">{event.title}</span>\n <div className=\"flex items-center gap-1.5\">\n <span\n className=\"h-2 w-2 shrink-0 rounded-full\"\n style={{ backgroundColor: cfg.color }}\n aria-hidden=\"true\"\n />\n <span className=\"text-xs text-ds-2\">{cfg.display}</span>\n </div>\n <span className=\"text-xs text-ds-3\">{formatDayFull(event.start)}</span>\n <span className=\"text-xs text-ds-3\">{timeStr}</span>\n {event.location && <span className=\"text-xs text-ds-3\">{event.location}</span>}\n </div>\n );\n\n return (\n <Tooltip content={tooltipContent} position=\"top\" delayShow={500} wrapperClassName=\"w-full min-w-0\">\n <div\n className={`w-full min-w-0 cursor-pointer select-none rounded font-medium leading-none ${\n compact ? 'px-1.5 py-1 text-[11px]' : 'px-2 py-1.5 text-xs'\n }`}\n style={{ backgroundColor: cfg.bg, color: cfg.color }}\n role=\"button\"\n tabIndex={0}\n aria-label={`${event.title} – ${cfg.display}`}\n onClick={(e) => e.stopPropagation()}\n onDoubleClick={(e) => {\n e.stopPropagation();\n onDoubleClick?.(event);\n }}\n onKeyDown={(e: KeyboardEvent) => {\n if (e.key === 'Enter') onDoubleClick?.(event);\n }}\n >\n <TruncatedText showTitleOnHover={false}>{event.title}</TruncatedText>\n </div>\n </Tooltip>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Button } from '../../../forms/button';\nimport { mergeClassNames } from '../../../../utils';\n\nimport { getMonthGridDays, getEventsForDay, isToday } from '../calendarUtils';\nimport { EventPill } from '../EventPill';\nimport type { CalendarEvent } from '../types';\n\ninterface MonthViewProps {\n currentDate: Date;\n events: CalendarEvent[];\n onDayClick: (d: Date) => void;\n onEventDoubleClick?: (event: CalendarEvent) => void;\n}\n\nconst DAY_NAMES = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\n\nexport const MonthView: FC<MonthViewProps> = ({ currentDate, events, onDayClick, onEventDoubleClick }) => {\n const days = getMonthGridDays(currentDate);\n const currentMonth = currentDate.getMonth();\n\n return (\n <div className=\"flex flex-1 flex-col overflow-auto\">\n <div className=\"grid grid-cols-7 border-b border-ds-border-3\">\n {DAY_NAMES.map((name) => (\n <div\n key={name}\n className=\"py-2 text-center text-xs font-medium uppercase tracking-wide text-ds-3\"\n >\n {name}\n </div>\n ))}\n </div>\n\n <div className=\"grid flex-1 grid-cols-7 grid-rows-6\">\n {days.map((day, i) => {\n const inMonth = day.getMonth() === currentMonth;\n const today = isToday(day);\n const dayEvents = getEventsForDay(events, day);\n const visible = dayEvents.slice(0, 2);\n const overflow = dayEvents.length - visible.length;\n\n return (\n <Button\n key={i}\n variant=\"tertiary\"\n aria-label={day.toDateString()}\n onClick={() => onDayClick(day)}\n className={mergeClassNames(\n 'flex flex-col items-start gap-1 rounded-none border-b border-e border-ds-border-3 p-1.5 text-start hover:bg-ds-surface-2 hover:opacity-100',\n today ? 'bg-ds-surface-2' : '',\n )}\n >\n <span\n className={mergeClassNames(\n 'self-end flex h-6 w-6 items-center justify-center rounded-full text-xs font-medium leading-none',\n today\n ? 'bg-ds-accent text-ds-on-accent font-bold'\n : inMonth\n ? 'text-ds-2'\n : 'text-ds-3 opacity-50',\n )}\n >\n {day.getDate()}\n </span>\n\n <div className=\"flex w-full min-h-0 flex-col gap-0.5\">\n {visible.map((event) => (\n <EventPill key={event.id} event={event} compact onDoubleClick={onEventDoubleClick} />\n ))}\n {overflow > 0 && (\n <span className=\"px-1 text-[10px] text-ds-3\">+{overflow} more</span>\n )}\n </div>\n </Button>\n );\n })}\n </div>\n </div>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { mergeClassNames } from '../../../../utils';\n\nimport {\n getWeekDays,\n getEventsForDay,\n isSameDay,\n isToday,\n formatShortDate,\n formatHour,\n getEventTopPx,\n getEventHeightPx,\n GRID_START_HOUR,\n GRID_END_HOUR,\n HOUR_HEIGHT_PX,\n} from '../calendarUtils';\nimport { EventPill } from '../EventPill';\nimport { EVENT_LABEL_CONFIG } from '../types';\nimport type { CalendarEvent } from '../types';\n\ninterface WeekViewProps {\n currentDate: Date;\n events: CalendarEvent[];\n onEventDoubleClick?: (event: CalendarEvent) => void;\n}\n\nconst HOURS = Array.from({ length: GRID_END_HOUR - GRID_START_HOUR }, (_, i) => GRID_START_HOUR + i);\nconst DAY_ABBR = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\n\nexport const WeekView: FC<WeekViewProps> = ({ currentDate, events, onEventDoubleClick }) => {\n const weekDays = getWeekDays(currentDate);\n\n return (\n <div className=\"flex flex-col flex-1 overflow-hidden\">\n {/* Column headers */}\n <div className=\"grid border-b border-ds-border-3\" style={{ gridTemplateColumns: '56px repeat(7, 1fr)' }}>\n <div className=\"border-e border-ds-border-3\" />\n {weekDays.map((day) => {\n const today = isToday(day);\n return (\n <div\n key={day.toISOString()}\n className={mergeClassNames(\n 'flex flex-col items-center py-2 text-xs font-medium border-e border-ds-border-3 last:border-e-0',\n today ? 'bg-ds-accent-subtle/30 text-ds-accent' : 'text-ds-3',\n )}\n >\n <span>{DAY_ABBR[day.getDay()]}</span>\n <span className={mergeClassNames(\n 'mt-0.5 flex h-6 w-6 items-center justify-center rounded-full font-semibold',\n today ? 'bg-ds-accent text-ds-on-accent' : 'text-ds-2',\n )}>\n {formatShortDate(day).split('/')[1]}\n </span>\n </div>\n );\n })}\n </div>\n\n {/* All-Day row */}\n <div className=\"grid border-b border-ds-border-3\" style={{ gridTemplateColumns: '56px repeat(7, 1fr)', minHeight: 40 }}>\n <div className=\"flex items-center justify-end pe-2 text-[10px] text-ds-3 border-e border-ds-border-3\">All-day</div>\n {weekDays.map((day) => {\n const allDayEvents = getEventsForDay(events, day).filter((e) => e.allDay);\n return (\n <div key={day.toISOString()} className=\"flex flex-col gap-0.5 p-0.5 border-e border-ds-border-3 last:border-e-0\">\n {allDayEvents.map((e) => <EventPill key={e.id} event={e} compact onDoubleClick={onEventDoubleClick} />)}\n </div>\n );\n })}\n </div>\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-y-auto\">\n <div className=\"grid relative\" style={{ gridTemplateColumns: '56px repeat(7, 1fr)', height: HOURS.length * HOUR_HEIGHT_PX }}>\n {/* Hour labels */}\n <div className=\"relative border-e border-ds-border-3\">\n {HOURS.map((h) => (\n <div key={h} className=\"absolute w-full flex justify-end pe-2\" style={{ top: (h - GRID_START_HOUR) * HOUR_HEIGHT_PX - 8 }}>\n <span className=\"text-[10px] text-ds-3\">{formatHour(h)}</span>\n </div>\n ))}\n </div>\n\n {/* Day columns */}\n {weekDays.map((day) => {\n const today = isToday(day);\n const timedEvents = getEventsForDay(events, day).filter((e) => !e.allDay);\n return (\n <div\n key={day.toISOString()}\n className={mergeClassNames(\n 'relative border-e border-ds-border-3 last:border-e-0',\n today ? 'bg-ds-accent-subtle/20' : '',\n )}\n >\n {HOURS.map((h) => (\n <div\n key={h}\n className=\"border-t border-ds-border-3/50\"\n style={{ height: HOUR_HEIGHT_PX }}\n />\n ))}\n {timedEvents.map((event) => {\n const cfg = EVENT_LABEL_CONFIG[event.label];\n return (\n <div\n key={event.id}\n className=\"absolute inset-x-0.5 cursor-pointer overflow-hidden rounded px-1.5 py-1 text-xs font-medium leading-tight select-none\"\n style={{\n top: getEventTopPx(event),\n height: getEventHeightPx(event),\n backgroundColor: cfg.bg,\n color: cfg.color,\n }}\n title={event.title}\n onDoubleClick={() => onEventDoubleClick?.(event)}\n >\n {event.title}\n </div>\n );\n })}\n </div>\n );\n })}\n </div>\n </div>\n </div>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { getEventsForDay, formatHour, getEventTopPx, getEventHeightPx, GRID_START_HOUR, GRID_END_HOUR, HOUR_HEIGHT_PX } from '../calendarUtils';\nimport { EVENT_LABEL_CONFIG } from '../types';\nimport type { CalendarEvent } from '../types';\n\ninterface DayViewProps {\n currentDate: Date;\n events: CalendarEvent[];\n onEventDoubleClick?: (event: CalendarEvent) => void;\n}\n\nconst HOURS = Array.from({ length: GRID_END_HOUR - GRID_START_HOUR }, (_, i) => GRID_START_HOUR + i);\n\nexport const DayView: FC<DayViewProps> = ({ currentDate, events, onEventDoubleClick }) => {\n const dayName = currentDate.toLocaleDateString('en-US', { weekday: 'long' });\n const allDayEvents = getEventsForDay(events, currentDate).filter((e) => e.allDay);\n const timedEvents = getEventsForDay(events, currentDate).filter((e) => !e.allDay);\n\n return (\n <div className=\"flex flex-col flex-1 overflow-hidden\">\n {/* Column header */}\n <div className=\"grid border-b border-ds-border-3\" style={{ gridTemplateColumns: '56px 1fr' }}>\n <div className=\"border-e border-ds-border-3\" />\n <div className=\"flex flex-col items-center py-2 text-xs font-medium text-ds-accent bg-ds-accent-subtle/30\">\n <span>{dayName}</span>\n <span className=\"mt-0.5 flex h-6 w-6 items-center justify-center rounded-full bg-ds-accent text-ds-on-accent font-semibold\">\n {currentDate.getDate()}\n </span>\n </div>\n </div>\n\n {/* All-Day row */}\n <div className=\"grid border-b border-ds-border-3\" style={{ gridTemplateColumns: '56px 1fr', minHeight: 40 }}>\n <div className=\"flex items-center justify-end pe-2 text-[10px] text-ds-3 border-e border-ds-border-3\">\n All-day\n </div>\n <div className=\"flex flex-col gap-0.5 p-1\">\n {allDayEvents.map((e) => (\n <div\n key={e.id}\n className=\"cursor-pointer truncate rounded px-2 py-1 text-xs font-medium select-none\"\n style={{ backgroundColor: EVENT_LABEL_CONFIG[e.label].bg, color: EVENT_LABEL_CONFIG[e.label].color }}\n title={e.title}\n onDoubleClick={() => onEventDoubleClick?.(e)}\n >\n {e.title}\n </div>\n ))}\n </div>\n </div>\n\n {/* Time grid */}\n <div className=\"flex-1 overflow-y-auto\">\n <div className=\"grid relative\" style={{ gridTemplateColumns: '56px 1fr', height: HOURS.length * HOUR_HEIGHT_PX }}>\n {/* Hour labels */}\n <div className=\"relative border-e border-ds-border-3\">\n {HOURS.map((h) => (\n <div key={h} className=\"absolute w-full flex justify-end pe-2\" style={{ top: (h - GRID_START_HOUR) * HOUR_HEIGHT_PX - 8 }}>\n <span className=\"text-[10px] text-ds-3\">{formatHour(h)}</span>\n </div>\n ))}\n </div>\n\n {/* Day column */}\n <div className=\"relative bg-ds-accent-subtle/20\">\n {HOURS.map((h) => (\n <div key={h} className=\"border-t border-ds-border-3/50\" style={{ height: HOUR_HEIGHT_PX }} />\n ))}\n {timedEvents.map((event) => {\n const cfg = EVENT_LABEL_CONFIG[event.label];\n return (\n <div\n key={event.id}\n className=\"absolute inset-x-1 cursor-pointer overflow-hidden rounded px-2 py-1 text-xs font-medium leading-tight select-none\"\n style={{\n top: getEventTopPx(event),\n height: getEventHeightPx(event),\n backgroundColor: cfg.bg,\n color: cfg.color,\n }}\n title={event.title}\n onDoubleClick={() => onEventDoubleClick?.(event)}\n >\n {event.title}\n </div>\n );\n })}\n </div>\n </div>\n </div>\n </div>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport {\n startOfMonth,\n endOfMonth,\n isSameDay,\n formatListDate,\n formatListDayName,\n formatTime,\n} from '../calendarUtils';\nimport { EVENT_LABEL_CONFIG } from '../types';\nimport type { CalendarEvent } from '../types';\n\ninterface ListViewProps {\n currentDate: Date;\n events: CalendarEvent[];\n onEventDoubleClick?: (event: CalendarEvent) => void;\n}\n\nexport const ListView: FC<ListViewProps> = ({ currentDate, events, onEventDoubleClick }) => {\n const monthStart = startOfMonth(currentDate);\n const monthEnd = endOfMonth(currentDate);\n\n const monthEvents = events\n .filter((e) => e.start <= monthEnd && e.end >= monthStart)\n .sort((a, b) => a.start.getTime() - b.start.getTime());\n\n // Group by day\n const groups: { day: Date; events: CalendarEvent[] }[] = [];\n for (const event of monthEvents) {\n const existing = groups.find((g) => isSameDay(g.day, event.start));\n if (existing) {\n existing.events.push(event);\n } else {\n groups.push({ day: event.start, events: [event] });\n }\n }\n\n if (groups.length === 0) {\n return (\n <div className=\"flex flex-1 items-center justify-center text-sm text-ds-3\">\n No events this month\n </div>\n );\n }\n\n return (\n <div className=\"flex-1 overflow-y-auto\">\n {groups.map(({ day, events: dayEvents }) => (\n <div key={day.toISOString()}>\n {/* Date header */}\n <div className=\"flex items-center justify-between bg-ds-surface-2 px-4 py-2 border-b border-ds-border-3\">\n <span className=\"text-sm font-semibold text-ds-1\">{formatListDate(day)}</span>\n <span className=\"text-xs font-medium text-ds-3\">{formatListDayName(day)}</span>\n </div>\n\n {/* Events */}\n {dayEvents.map((event) => {\n const cfg = EVENT_LABEL_CONFIG[event.label];\n const timeLabel = event.allDay\n ? 'all-day'\n : `${formatTime(event.start)}–${formatTime(event.end)}`;\n return (\n <div\n key={event.id}\n className=\"flex cursor-pointer select-none items-center gap-3 border-b border-ds-border-3 px-4 py-3 transition-colors hover:bg-ds-surface-2\"\n onDoubleClick={() => onEventDoubleClick?.(event)}\n title=\"Double-click to view details\"\n >\n <span className=\"w-28 shrink-0 text-xs text-ds-3\">{timeLabel}</span>\n <span\n className=\"h-2 w-2 shrink-0 rounded-full\"\n style={{ backgroundColor: cfg.color }}\n aria-hidden=\"true\"\n />\n <span className=\"truncate text-sm text-ds-1\">{event.title}</span>\n </div>\n );\n })}\n </div>\n ))}\n </div>\n );\n};\n","\"use client\";\n\nimport { type FC, useEffect, useState } from 'react';\n\nimport { Button } from '../../forms/button';\nimport { Input } from '../../forms/input';\nimport { Select } from '../../forms/select';\nimport { Switch } from '../../forms/switch';\nimport { Textarea } from '../../forms/textarea';\nimport { Drawer } from '../../overlays/drawer/Drawer';\n\nimport { generateId } from './calendarUtils';\nimport { EVENT_LABEL_CONFIG, ALL_LABELS } from './types';\nimport type { CalendarEvent, EventLabel } from './types';\n\ninterface AddEventPanelProps {\n isOpen: boolean;\n onClose: () => void;\n onSubmit: (event: CalendarEvent) => void;\n initialDate?: Date;\n}\n\nfunction toDateInput(d: Date): string {\n return d.toISOString().split('T')[0] ?? '';\n}\n\nconst labelOptions = ALL_LABELS.map((l) => ({\n value: l,\n label: EVENT_LABEL_CONFIG[l].display,\n}));\n\nexport const AddEventPanel: FC<AddEventPanelProps> = ({ isOpen, onClose, onSubmit, initialDate }) => {\n const [title, setTitle] = useState('');\n const [label, setLabel] = useState<EventLabel>('personal');\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n const [allDay, setAllDay] = useState(true);\n const [url, setUrl] = useState('');\n const [guests, setGuests] = useState('');\n const [location, setLocation] = useState('');\n const [description, setDescription] = useState('');\n\n useEffect(() => {\n if (isOpen) {\n const today = initialDate ?? new Date();\n setTitle('');\n setLabel('personal');\n setStartDate(toDateInput(today));\n setEndDate(toDateInput(today));\n setAllDay(true);\n setUrl('');\n setGuests('');\n setLocation('');\n setDescription('');\n }\n }, [isOpen, initialDate]);\n\n const handleSubmit = () => {\n if (!title.trim()) return;\n const start = new Date(startDate);\n const end = new Date(endDate);\n end.setHours(23, 59, 59, 999);\n const event: CalendarEvent = {\n id: generateId(),\n title: title.trim(),\n start,\n end,\n allDay,\n label,\n url: url.trim() || undefined,\n guests: guests.trim() || undefined,\n location: location.trim() || undefined,\n description: description.trim() || undefined,\n };\n onSubmit(event);\n };\n\n return (\n <Drawer\n open={isOpen}\n onOpenChange={(o) => { if (!o) onClose(); }}\n title=\"Add Event\"\n position=\"right\"\n footer={\n <div className=\"flex gap-2\">\n <Button variant=\"primary\" className=\"flex-1\" onClick={handleSubmit} disabled={!title.trim()}>\n Submit\n </Button>\n <Button variant=\"secondary\" onClick={onClose}>\n Cancel\n </Button>\n </div>\n }\n >\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Title</label>\n <Input placeholder=\"Meeting with Jane\" value={title} onChange={(e) => setTitle(e.target.value)} />\n </div>\n\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Label</label>\n <Select\n options={labelOptions}\n value={label}\n onChange={(e) => setLabel(e.target.value as EventLabel)}\n placeholder=\"Select Event Label\"\n />\n </div>\n\n <div className=\"grid grid-cols-2 gap-3\">\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Start date</label>\n <Input type=\"date\" value={startDate} onChange={(e) => setStartDate(e.target.value)} />\n </div>\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">End date</label>\n <Input type=\"date\" value={endDate} onChange={(e) => setEndDate(e.target.value)} />\n </div>\n </div>\n\n <div className=\"flex items-center justify-between\">\n <span className=\"text-xs font-medium text-ds-2\">All day</span>\n <Switch checked={allDay} onChange={(e) => setAllDay(e.target.checked)} aria-label=\"All day event\" />\n </div>\n\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Event URL</label>\n <Input placeholder=\"https://event.com/meeting\" value={url} onChange={(e) => setUrl(e.target.value)} />\n </div>\n\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Guests</label>\n <Input placeholder=\"Select guests\" value={guests} onChange={(e) => setGuests(e.target.value)} />\n </div>\n\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Location</label>\n <Input placeholder=\"Meeting room\" value={location} onChange={(e) => setLocation(e.target.value)} />\n </div>\n\n <div className=\"flex flex-col gap-1.5\">\n <label className=\"text-xs font-medium text-ds-2\">Description</label>\n <Textarea\n placeholder=\"Add description\"\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n className=\"h-24 resize-none\"\n />\n </div>\n </div>\n </Drawer>\n );\n};\n","\"use client\";\n\nimport type { FC } from 'react';\n\nimport { Drawer } from '../../overlays/drawer/Drawer';\n\nimport { formatDayFull, formatTime } from './calendarUtils';\nimport { EVENT_LABEL_CONFIG } from './types';\nimport type { CalendarEvent } from './types';\n\ninterface EventDetailDrawerProps {\n event: CalendarEvent | null;\n open: boolean;\n onClose: () => void;\n}\n\nexport const EventDetailDrawer: FC<EventDetailDrawerProps> = ({ event, open, onClose }) => {\n if (!event) return null;\n const cfg = EVENT_LABEL_CONFIG[event.label];\n const timeStr = event.allDay\n ? 'All day'\n : `${formatTime(event.start)} – ${formatTime(event.end)}`;\n\n return (\n <Drawer\n open={open}\n onOpenChange={(o) => { if (!o) onClose(); }}\n title={event.title}\n position=\"right\"\n >\n <div className=\"flex flex-col gap-5\">\n <span\n className=\"inline-flex w-fit items-center gap-1.5 rounded-full px-3 py-1 text-xs font-semibold\"\n style={{ backgroundColor: cfg.bg, color: cfg.color }}\n >\n <span className=\"h-1.5 w-1.5 rounded-full\" style={{ backgroundColor: cfg.color }} aria-hidden=\"true\" />\n {cfg.display}\n </span>\n\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Date</p>\n <p className=\"text-sm text-ds-1\">{formatDayFull(event.start)}</p>\n </div>\n\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Time</p>\n <p className=\"text-sm text-ds-1\">{timeStr}</p>\n </div>\n\n {event.location && (\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Location</p>\n <p className=\"text-sm text-ds-1\">{event.location}</p>\n </div>\n )}\n\n {event.guests && (\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Guests</p>\n <p className=\"text-sm text-ds-1\">{event.guests}</p>\n </div>\n )}\n\n {event.url && (\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Event URL</p>\n <p className=\"break-all text-sm text-ds-accent\">{event.url}</p>\n </div>\n )}\n\n {event.description && (\n <div className=\"flex flex-col gap-1\">\n <p className=\"text-xs font-semibold uppercase tracking-wider text-ds-3\">Description</p>\n <p className=\"text-sm leading-relaxed text-ds-2\">{event.description}</p>\n </div>\n )}\n </div>\n </Drawer>\n );\n};\n","\"use client\";\n\nimport { useState } from 'react';\n\nimport { Drawer } from '../../overlays/drawer/Drawer';\nimport { mergeClassNames } from '../../../utils';\n\nimport { addDays, addMonths, addWeeks } from './calendarUtils';\nimport { CalendarSidebar, CalendarSidebarContent } from './CalendarSidebar';\nimport { CalendarHeader } from './CalendarHeader';\nimport { MonthView } from './views/MonthView';\nimport { WeekView } from './views/WeekView';\nimport { DayView } from './views/DayView';\nimport { ListView } from './views/ListView';\nimport { AddEventPanel } from './AddEventPanel';\nimport { EventDetailDrawer } from './EventDetailDrawer';\nimport { ALL_LABELS } from './types';\nimport type { CalendarEvent, CalendarView, EventLabel, EventCalendarProps } from './types';\n\nexport const EventCalendar = ({\n initialEvents = [],\n initialView = 'month',\n initialDate,\n onEventAdd,\n className,\n}: EventCalendarProps) => {\n const [view, setView] = useState<CalendarView>(initialView);\n const [currentDate, setCurrentDate] = useState<Date>(initialDate ?? new Date());\n const [events, setEvents] = useState<CalendarEvent[]>(initialEvents);\n const [activeLabels, setActiveLabels] = useState<EventLabel[]>([...ALL_LABELS]);\n const [isAddPanelOpen, setIsAddPanelOpen] = useState(false);\n const [isSidebarDrawerOpen, setIsSidebarDrawerOpen] = useState(false);\n const [selectedEvent, setSelectedEvent] = useState<CalendarEvent | null>(null);\n const [isEventDrawerOpen, setIsEventDrawerOpen] = useState(false);\n\n const handlePrev = () => {\n if (view === 'month' || view === 'list') setCurrentDate((d) => addMonths(d, -1));\n else if (view === 'week') setCurrentDate((d) => addWeeks(d, -1));\n else setCurrentDate((d) => addDays(d, -1));\n };\n\n const handleNext = () => {\n if (view === 'month' || view === 'list') setCurrentDate((d) => addMonths(d, 1));\n else if (view === 'week') setCurrentDate((d) => addWeeks(d, 1));\n else setCurrentDate((d) => addDays(d, 1));\n };\n\n const handleEventSubmit = (event: CalendarEvent) => {\n setEvents((prev) => [...prev, event]);\n onEventAdd?.(event);\n setIsAddPanelOpen(false);\n };\n\n const handleEventDoubleClick = (event: CalendarEvent) => {\n setSelectedEvent(event);\n setIsEventDrawerOpen(true);\n };\n\n const filteredEvents = events.filter((e) => activeLabels.includes(e.label));\n\n const handleDayClick = (day: Date) => {\n setCurrentDate(day);\n setView('day');\n };\n\n const sidebarProps = {\n currentDate,\n onDateChange: (d: Date) => setCurrentDate(d),\n onMonthChange: (d: Date) => setCurrentDate(d),\n activeLabels,\n onFiltersChange: setActiveLabels,\n onAddEvent: () => {\n setIsSidebarDrawerOpen(false);\n setIsAddPanelOpen(true);\n },\n };\n\n return (\n <div className={mergeClassNames('flex h-full overflow-hidden rounded-xl border border-ds-border-3 bg-ds-surface-1', className)}>\n {/* Inline sidebar — hidden on mobile, visible on lg+ */}\n <CalendarSidebar {...sidebarProps} />\n\n {/* Sidebar Drawer — mobile only */}\n <Drawer\n open={isSidebarDrawerOpen}\n onOpenChange={setIsSidebarDrawerOpen}\n title=\"Calendar\"\n position=\"left\"\n >\n <CalendarSidebarContent {...sidebarProps} />\n </Drawer>\n\n <main className=\"flex flex-1 flex-col overflow-hidden\">\n <CalendarHeader\n view={view}\n currentDate={currentDate}\n onPrev={handlePrev}\n onNext={handleNext}\n onViewChange={setView}\n onSidebarToggle={() => setIsSidebarDrawerOpen(true)}\n />\n\n {view === 'month' && (\n <MonthView\n currentDate={currentDate}\n events={filteredEvents}\n onDayClick={handleDayClick}\n onEventDoubleClick={handleEventDoubleClick}\n />\n )}\n {view === 'week' && (\n <WeekView\n currentDate={currentDate}\n events={filteredEvents}\n onEventDoubleClick={handleEventDoubleClick}\n />\n )}\n {view === 'day' && (\n <DayView\n currentDate={currentDate}\n events={filteredEvents}\n onEventDoubleClick={handleEventDoubleClick}\n />\n )}\n {view === 'list' && (\n <ListView\n currentDate={currentDate}\n events={filteredEvents}\n onEventDoubleClick={handleEventDoubleClick}\n />\n )}\n </main>\n\n <AddEventPanel\n isOpen={isAddPanelOpen}\n onClose={() => setIsAddPanelOpen(false)}\n onSubmit={handleEventSubmit}\n initialDate={currentDate}\n />\n\n <EventDetailDrawer\n event={selectedEvent}\n open={isEventDrawerOpen}\n onClose={() => setIsEventDrawerOpen(false)}\n />\n </div>\n );\n};\n"],"mappings":"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"}
|