@banzamel/mineralui 2.1.1 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{MAvatar-BcO8hMnU.js → MAvatar-DtJCj3dD.js} +1 -1
- package/dist/{MAvatar-BcO8hMnU.js.map → MAvatar-DtJCj3dD.js.map} +1 -1
- package/dist/{MAvatar-C4N2ztLf.cjs → MAvatar-bUWENcq-.cjs} +2 -2
- package/dist/{MAvatar-C4N2ztLf.cjs.map → MAvatar-bUWENcq-.cjs.map} +1 -1
- package/dist/{MButton-B8kFTOPJ.cjs → MButton-R08y1HCT.cjs} +2 -2
- package/dist/{MButton-B8kFTOPJ.cjs.map → MButton-R08y1HCT.cjs.map} +1 -1
- package/dist/{MButtonGroup-C3Ar0gfk.cjs → MButtonGroup-C-LiXWRC.cjs} +2 -2
- package/dist/{MButtonGroup-C3Ar0gfk.cjs.map → MButtonGroup-C-LiXWRC.cjs.map} +1 -1
- package/dist/{MCard-szs5kIek.cjs → MCard-1OVOl4Ql.cjs} +2 -2
- package/dist/{MCard-szs5kIek.cjs.map → MCard-1OVOl4Ql.cjs.map} +1 -1
- package/dist/{MCard-dLMQQ97e.js → MCard-azpp4YVD.js} +1 -1
- package/dist/{MCard-dLMQQ97e.js.map → MCard-azpp4YVD.js.map} +1 -1
- package/dist/{MCheckbox-CATWU11D.cjs → MCheckbox-CM5HJQWW.cjs} +2 -2
- package/dist/{MCheckbox-CATWU11D.cjs.map → MCheckbox-CM5HJQWW.cjs.map} +1 -1
- package/dist/{MConflictIllustration-Mnz1q7Ey.cjs → MConflictIllustration-B2AtfpYO.cjs} +2 -2
- package/dist/{MConflictIllustration-Mnz1q7Ey.cjs.map → MConflictIllustration-B2AtfpYO.cjs.map} +1 -1
- package/dist/{MDetailList-BBgUaSDJ.cjs → MDetailList-BhKBJwpd.cjs} +2 -2
- package/dist/{MDetailList-BBgUaSDJ.cjs.map → MDetailList-BhKBJwpd.cjs.map} +1 -1
- package/dist/{MDetailList-zlwdeA-r.js → MDetailList-BjvZUyNj.js} +2 -2
- package/dist/{MDetailList-zlwdeA-r.js.map → MDetailList-BjvZUyNj.js.map} +1 -1
- package/dist/{MDropdownMenu-omTEUh4V.js → MDropdownMenu-CZmU3uku.js} +1 -1
- package/dist/{MDropdownMenu-omTEUh4V.js.map → MDropdownMenu-CZmU3uku.js.map} +1 -1
- package/dist/{MDropdownMenu-1RqWjxHp.cjs → MDropdownMenu-hXaIMkAj.cjs} +2 -2
- package/dist/{MDropdownMenu-1RqWjxHp.cjs.map → MDropdownMenu-hXaIMkAj.cjs.map} +1 -1
- package/dist/{MGrid-B2qzYD6S.cjs → MGrid-B_0kFUws.cjs} +2 -2
- package/dist/{MGrid-B2qzYD6S.cjs.map → MGrid-B_0kFUws.cjs.map} +1 -1
- package/dist/{MGrid-Cy44dWyC.js → MGrid-CYL3cbUI.js} +1 -1
- package/dist/{MGrid-Cy44dWyC.js.map → MGrid-CYL3cbUI.js.map} +1 -1
- package/dist/{MHeading-CyuxSnhl.cjs → MHeading-BLnb3dNv.cjs} +2 -2
- package/dist/{MHeading-CyuxSnhl.cjs.map → MHeading-BLnb3dNv.cjs.map} +1 -1
- package/dist/{MI18nProvider-C90EVyFz.cjs → MI18nProvider-Cg-vxV6j.cjs} +2 -2
- package/dist/{MI18nProvider-C90EVyFz.cjs.map → MI18nProvider-Cg-vxV6j.cjs.map} +1 -1
- package/dist/{MInput-Cw9ZVcNO.cjs → MInput-BhTAfpYS.cjs} +2 -2
- package/dist/{MInput-Cw9ZVcNO.cjs.map → MInput-BhTAfpYS.cjs.map} +1 -1
- package/dist/{MInput-Baokf17V.js → MInput-CgtX0fUN.js} +1 -1
- package/dist/{MInput-Baokf17V.js.map → MInput-CgtX0fUN.js.map} +1 -1
- package/dist/{MInputCVC-DNzDAbfU.js → MInputCVC-BGYhUGDE.js} +3 -3
- package/dist/{MInputCVC-DNzDAbfU.js.map → MInputCVC-BGYhUGDE.js.map} +1 -1
- package/dist/{MInputCVC-Bqcp5Uu3.cjs → MInputCVC-E2Z2hYfy.cjs} +2 -2
- package/dist/{MInputCVC-Bqcp5Uu3.cjs.map → MInputCVC-E2Z2hYfy.cjs.map} +1 -1
- package/dist/{MInputSearch-D9bp1QAz.cjs → MInputSearch-DE9Jqp0i.cjs} +2 -2
- package/dist/{MInputSearch-D9bp1QAz.cjs.map → MInputSearch-DE9Jqp0i.cjs.map} +1 -1
- package/dist/{MInputSearch-Bswi-Kj0.js → MInputSearch-DEr5HBgw.js} +2 -2
- package/dist/{MInputSearch-Bswi-Kj0.js.map → MInputSearch-DEr5HBgw.js.map} +1 -1
- package/dist/{MKbd-CiwDwFwA.cjs → MKbd-n4fhKIxb.cjs} +2 -2
- package/dist/{MKbd-CiwDwFwA.cjs.map → MKbd-n4fhKIxb.cjs.map} +1 -1
- package/dist/{MLink-B7gXA8qY.cjs → MLink-Biipj7xz.cjs} +2 -2
- package/dist/{MLink-B7gXA8qY.cjs.map → MLink-Biipj7xz.cjs.map} +1 -1
- package/dist/MLoader-CnvWqFtA.js +41 -0
- package/dist/MLoader-CnvWqFtA.js.map +1 -0
- package/dist/MLoader-XcpKlLrd.cjs +2 -0
- package/dist/MLoader-XcpKlLrd.cjs.map +1 -0
- package/dist/{MPagination-DpUtB6t6.js → MPagination-7yTbB8dZ.js} +1 -1
- package/dist/{MPagination-DpUtB6t6.js.map → MPagination-7yTbB8dZ.js.map} +1 -1
- package/dist/{MPagination-C2GmGkVA.cjs → MPagination-DTqT33Mx.cjs} +2 -2
- package/dist/{MPagination-C2GmGkVA.cjs.map → MPagination-DTqT33Mx.cjs.map} +1 -1
- package/dist/{MPopover-BVBN5SJi.cjs → MPopover-hDqrn317.cjs} +2 -2
- package/dist/{MPopover-BVBN5SJi.cjs.map → MPopover-hDqrn317.cjs.map} +1 -1
- package/dist/{MPortal-Djrw2WhD.cjs → MPortal-BciZHNDC.cjs} +2 -2
- package/dist/{MPortal-Djrw2WhD.cjs.map → MPortal-BciZHNDC.cjs.map} +1 -1
- package/dist/{MSimpleGrid-BVeCK9Ci.js → MSimpleGrid-BWKurW6H.js} +1 -1
- package/dist/{MSimpleGrid-BVeCK9Ci.js.map → MSimpleGrid-BWKurW6H.js.map} +1 -1
- package/dist/{MSimpleGrid-BR352NiK.cjs → MSimpleGrid-BwNfaxQP.cjs} +2 -2
- package/dist/{MSimpleGrid-BR352NiK.cjs.map → MSimpleGrid-BwNfaxQP.cjs.map} +1 -1
- package/dist/{MSkeleton-DyQBeuVT.cjs → MSkeleton-CLSU5pL6.cjs} +2 -2
- package/dist/{MSkeleton-DyQBeuVT.cjs.map → MSkeleton-CLSU5pL6.cjs.map} +1 -1
- package/dist/{MSlider-Ds2Fls86.cjs → MSlider-DZnMB49q.cjs} +2 -2
- package/dist/{MSlider-Ds2Fls86.cjs.map → MSlider-DZnMB49q.cjs.map} +1 -1
- package/dist/{MStack-BdVvJN5S.cjs → MStack-BP_BUeCc.cjs} +2 -2
- package/dist/{MStack-BdVvJN5S.cjs.map → MStack-BP_BUeCc.cjs.map} +1 -1
- package/dist/{MStack-h11pHEmc.js → MStack-CSCw6to2.js} +1 -1
- package/dist/{MStack-h11pHEmc.js.map → MStack-CSCw6to2.js.map} +1 -1
- package/dist/{MSubText-DWNMJupD.cjs → MSubText-VHsgFsv2.cjs} +2 -2
- package/dist/{MSubText-DWNMJupD.cjs.map → MSubText-VHsgFsv2.cjs.map} +1 -1
- package/dist/{MSurface-BS9l7GDH.cjs → MSurface-CYeVFOw_.cjs} +2 -2
- package/dist/{MSurface-BS9l7GDH.cjs.map → MSurface-CYeVFOw_.cjs.map} +1 -1
- package/dist/{MTag-BwQbycZO.cjs → MTag-BtlOVMRl.cjs} +2 -2
- package/dist/{MTag-BwQbycZO.cjs.map → MTag-BtlOVMRl.cjs.map} +1 -1
- package/dist/{MText-Cjt1oTPr.cjs → MText-j6Zbbj5Y.cjs} +2 -2
- package/dist/{MText-Cjt1oTPr.cjs.map → MText-j6Zbbj5Y.cjs.map} +1 -1
- package/dist/{MTooltip-gpvKWQzD.cjs → MTooltip-BEfO9jTe.cjs} +2 -2
- package/dist/{MTooltip-gpvKWQzD.cjs.map → MTooltip-BEfO9jTe.cjs.map} +1 -1
- package/dist/{MTooltip-Ctyjwxv-.js → MTooltip-BTJkzOah.js} +1 -1
- package/dist/{MTooltip-Ctyjwxv-.js.map → MTooltip-BTJkzOah.js.map} +1 -1
- package/dist/{MTreeView-BS60bIj7.cjs → MTreeView-1IqmVPMv.cjs} +2 -2
- package/dist/{MTreeView-BS60bIj7.cjs.map → MTreeView-1IqmVPMv.cjs.map} +1 -1
- package/dist/{MTreeView-DTsi4bye.js → MTreeView-DQaRF0ty.js} +1 -1
- package/dist/{MTreeView-DTsi4bye.js.map → MTreeView-DQaRF0ty.js.map} +1 -1
- package/dist/{arduino-CA8n1Qq3.cjs → arduino-DdDHMIWB.cjs} +1 -1
- package/dist/{arduino-CA8n1Qq3.cjs.map → arduino-DdDHMIWB.cjs.map} +1 -1
- package/dist/{arduino-WKgN2ikT.js → arduino-UeOrXakL.js} +1 -1
- package/dist/{arduino-WKgN2ikT.js.map → arduino-UeOrXakL.js.map} +1 -1
- package/dist/{bash-DObE5DDq.cjs → bash-B17_F5Sw.cjs} +1 -1
- package/dist/{bash-DObE5DDq.cjs.map → bash-B17_F5Sw.cjs.map} +1 -1
- package/dist/{bash-vBtVVub9.js → bash-CrHemXky.js} +1 -1
- package/dist/{bash-vBtVVub9.js.map → bash-CrHemXky.js.map} +1 -1
- package/dist/{c-7RiNX--m.js → c-D9302r2r.js} +1 -1
- package/dist/{c-7RiNX--m.js.map → c-D9302r2r.js.map} +1 -1
- package/dist/{c-Bb-MtVny.cjs → c-ODLxeMV_.cjs} +1 -1
- package/dist/{c-Bb-MtVny.cjs.map → c-ODLxeMV_.cjs.map} +1 -1
- package/dist/cards-BBYh24NQ.cjs +2 -0
- package/dist/cards-BBYh24NQ.cjs.map +1 -0
- package/dist/{cards-BkRqUJ2V.js → cards-Du2kX3Br.js} +377 -359
- package/dist/{cards-BkRqUJ2V.js.map → cards-Du2kX3Br.js.map} +1 -1
- package/dist/cards.cjs +1 -1
- package/dist/cards.js +2 -2
- package/dist/components/cards/MCardGrid/MCardGrid.d.ts +1 -1
- package/dist/components/cards/MCardGrid/MCardGrid.types.d.ts +16 -0
- package/dist/components/data/MDataTable/MDataTable.d.ts +1 -1
- package/dist/components/data/MDataTable/MDataTable.types.d.ts +16 -0
- package/dist/components/data/useMCardGrid.d.ts +2 -0
- package/dist/components/data/useMTable.d.ts +2 -0
- package/dist/{controls-CSTIosnc.js → controls-Cbv4FmNq.js} +2 -2
- package/dist/{controls-CSTIosnc.js.map → controls-Cbv4FmNq.js.map} +1 -1
- package/dist/{controls-BopaNWb_.cjs → controls-DrdHBBtm.cjs} +2 -2
- package/dist/{controls-BopaNWb_.cjs.map → controls-DrdHBBtm.cjs.map} +1 -1
- package/dist/controls.cjs +1 -1
- package/dist/controls.js +1 -1
- package/dist/{core-o3cw16Db.cjs → core-DBpQf3uY.cjs} +1 -1
- package/dist/{core-o3cw16Db.cjs.map → core-DBpQf3uY.cjs.map} +1 -1
- package/dist/{core-DC6zSfZo.js → core-yRqh2XLu.js} +1 -1
- package/dist/{core-DC6zSfZo.js.map → core-yRqh2XLu.js.map} +1 -1
- package/dist/{cpp-CaNnFjgy.js → cpp-CLYSpJBB.js} +1 -1
- package/dist/{cpp-CaNnFjgy.js.map → cpp-CLYSpJBB.js.map} +1 -1
- package/dist/{cpp-BVKrJvso.cjs → cpp-DuTgLZC1.cjs} +1 -1
- package/dist/{cpp-BVKrJvso.cjs.map → cpp-DuTgLZC1.cjs.map} +1 -1
- package/dist/{css-NqBDP7ZC.js → css-BgGh0eG1.js} +1 -1
- package/dist/{css-NqBDP7ZC.js.map → css-BgGh0eG1.js.map} +1 -1
- package/dist/{css-C2sjPfLl.cjs → css-D0f-qByc.cjs} +1 -1
- package/dist/{css-C2sjPfLl.cjs.map → css-D0f-qByc.cjs.map} +1 -1
- package/dist/data-BgTkBMkP.js +674 -0
- package/dist/data-BgTkBMkP.js.map +1 -0
- package/dist/data-Csb03WFo.cjs +2 -0
- package/dist/data-Csb03WFo.cjs.map +1 -0
- package/dist/data.cjs +1 -1
- package/dist/data.js +2 -2
- package/dist/{display-B7Wh5nnM.js → display-D9H8MP8D.js} +15 -15
- package/dist/{display-B7Wh5nnM.js.map → display-D9H8MP8D.js.map} +1 -1
- package/dist/{display-BgZbdTDd.cjs → display-IMWtdmxS.cjs} +2 -2
- package/dist/{display-BgZbdTDd.cjs.map → display-IMWtdmxS.cjs.map} +1 -1
- package/dist/display.cjs +1 -1
- package/dist/display.js +2 -2
- package/dist/{dropdowns-Befc3lmC.cjs → dropdowns-D_nUdflh.cjs} +2 -2
- package/dist/{dropdowns-Befc3lmC.cjs.map → dropdowns-D_nUdflh.cjs.map} +1 -1
- package/dist/{dropdowns-DGvRs-VE.js → dropdowns-oj4--GbK.js} +3 -3
- package/dist/{dropdowns-DGvRs-VE.js.map → dropdowns-oj4--GbK.js.map} +1 -1
- package/dist/dropdowns.cjs +1 -1
- package/dist/dropdowns.js +1 -1
- package/dist/{feedback-C445FEHb.js → feedback-D7BTlioj.js} +79 -114
- package/dist/feedback-D7BTlioj.js.map +1 -0
- package/dist/feedback-u1ssUT7e.cjs +2 -0
- package/dist/{feedback-C8RfsfYJ.cjs.map → feedback-u1ssUT7e.cjs.map} +1 -1
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +5 -4
- package/dist/{form-DSlAmTT1.cjs → form-BWGLrCPi.cjs} +2 -2
- package/dist/{form-DSlAmTT1.cjs.map → form-BWGLrCPi.cjs.map} +1 -1
- package/dist/{form-BWWLNji0.js → form-CgH1hioG.js} +1 -1
- package/dist/{form-BWWLNji0.js.map → form-CgH1hioG.js.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/i18n.cjs +1 -1
- package/dist/{icons-DX_cScBq.cjs → icons-BfdQ45F2.cjs} +2 -2
- package/dist/{icons-DX_cScBq.cjs.map → icons-BfdQ45F2.cjs.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/illustrations.cjs +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +31 -30
- package/dist/{inputs-BZxorlLv.js → inputs-DQrjGfwd.js} +2 -2
- package/dist/{inputs-BZxorlLv.js.map → inputs-DQrjGfwd.js.map} +1 -1
- package/dist/{inputs-BiZXyZSE.cjs → inputs-DsFdc0Io.cjs} +2 -2
- package/dist/{inputs-BiZXyZSE.cjs.map → inputs-DsFdc0Io.cjs.map} +1 -1
- package/dist/inputs.cjs +1 -1
- package/dist/inputs.js +4 -4
- package/dist/{javascript-BgwyrBZi.cjs → javascript-CGjvHPZ1.cjs} +1 -1
- package/dist/{javascript-BgwyrBZi.cjs.map → javascript-CGjvHPZ1.cjs.map} +1 -1
- package/dist/{javascript-BltQGQAn.js → javascript-CX3JhsYu.js} +1 -1
- package/dist/{javascript-BltQGQAn.js.map → javascript-CX3JhsYu.js.map} +1 -1
- package/dist/{json-DWmLrT_r.cjs → json-B8svQsK0.cjs} +1 -1
- package/dist/{json-DWmLrT_r.cjs.map → json-B8svQsK0.cjs.map} +1 -1
- package/dist/{json-DbCISZXi.js → json-BPIcVdlp.js} +1 -1
- package/dist/{json-DbCISZXi.js.map → json-BPIcVdlp.js.map} +1 -1
- package/dist/{layout-Ct6ViwDQ.cjs → layout-B_2yBP1M.cjs} +2 -2
- package/dist/{layout-Ct6ViwDQ.cjs.map → layout-B_2yBP1M.cjs.map} +1 -1
- package/dist/{layout-CnEOTJnJ.js → layout-BuvV-N9H.js} +4 -4
- package/dist/{layout-CnEOTJnJ.js.map → layout-BuvV-N9H.js.map} +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +5 -5
- package/dist/{licensing-hMT26Vnv.cjs → licensing-DysMClel.cjs} +2 -2
- package/dist/{licensing-hMT26Vnv.cjs.map → licensing-DysMClel.cjs.map} +1 -1
- package/dist/{locale-BNyzqXAU.js → locale-CS1-IY_I.js} +1 -1
- package/dist/{locale-BNyzqXAU.js.map → locale-CS1-IY_I.js.map} +1 -1
- package/dist/{locale-C5ik0c3d.cjs → locale-CbnstsMH.cjs} +2 -2
- package/dist/{locale-C5ik0c3d.cjs.map → locale-CbnstsMH.cjs.map} +1 -1
- package/dist/{media-DxnELIZO.js → media-5IsYrhIQ.js} +1 -1
- package/dist/{media-DxnELIZO.js.map → media-5IsYrhIQ.js.map} +1 -1
- package/dist/{media-DZaGKh5V.cjs → media-Xt6MkVhb.cjs} +2 -2
- package/dist/{media-DZaGKh5V.cjs.map → media-Xt6MkVhb.cjs.map} +1 -1
- package/dist/media.cjs +1 -1
- package/dist/media.js +2 -2
- package/dist/{overlays-WsQqxqk1.cjs → overlays-BAJDNT1m.cjs} +2 -2
- package/dist/{overlays-WsQqxqk1.cjs.map → overlays-BAJDNT1m.cjs.map} +1 -1
- package/dist/{overlays-BfIrSHDo.js → overlays-WA3jnWTG.js} +6 -6
- package/dist/{overlays-BfIrSHDo.js.map → overlays-WA3jnWTG.js.map} +1 -1
- package/dist/overlays.cjs +1 -1
- package/dist/overlays.js +3 -3
- package/dist/{php-dSXzrC_Z.js → php-CBRzjinf.js} +1 -1
- package/dist/{php-dSXzrC_Z.js.map → php-CBRzjinf.js.map} +1 -1
- package/dist/{php-CssmZWrI.cjs → php-CKyelegh.cjs} +1 -1
- package/dist/{php-CssmZWrI.cjs.map → php-CKyelegh.cjs.map} +1 -1
- package/dist/primitives.cjs +1 -1
- package/dist/style-runtime.cjs +1 -1
- package/dist/style-runtime.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/{theme-DltOEniv.cjs → theme-BfNZicWk.cjs} +2 -2
- package/dist/{theme-DltOEniv.cjs.map → theme-BfNZicWk.cjs.map} +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/{typescript-DeaMWtYF.cjs → typescript-D6PDzwkM.cjs} +1 -1
- package/dist/{typescript-DeaMWtYF.cjs.map → typescript-D6PDzwkM.cjs.map} +1 -1
- package/dist/{typescript-CxKdKTKz.js → typescript-Xt3Sotw5.js} +1 -1
- package/dist/{typescript-CxKdKTKz.js.map → typescript-Xt3Sotw5.js.map} +1 -1
- package/dist/{typography-vZwd5E5h.cjs → typography-Dk9kIORI.cjs} +2 -2
- package/dist/{typography-vZwd5E5h.cjs.map → typography-Dk9kIORI.cjs.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/{useGhostText-Nw9XCpWS.cjs → useGhostText-Dmkw3Am8.cjs} +2 -2
- package/dist/{useGhostText-Nw9XCpWS.cjs.map → useGhostText-Dmkw3Am8.cjs.map} +1 -1
- package/dist/{useInteractionEffect-Gs9HBi2T.cjs → useInteractionEffect-DFTdcWHl.cjs} +2 -2
- package/dist/{useInteractionEffect-Gs9HBi2T.cjs.map → useInteractionEffect-DFTdcWHl.cjs.map} +1 -1
- package/dist/{useKeyboardNav-DDN-oeqd.cjs → useKeyboardNav-HVG9JFD2.cjs} +2 -2
- package/dist/{useKeyboardNav-DDN-oeqd.cjs.map → useKeyboardNav-HVG9JFD2.cjs.map} +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/{xml-BUuYcpx2.cjs → xml-4YlaGgjP.cjs} +1 -1
- package/dist/{xml-BUuYcpx2.cjs.map → xml-4YlaGgjP.cjs.map} +1 -1
- package/dist/{xml-BPoVPJlJ.js → xml-CrpWqcDk.js} +1 -1
- package/dist/{xml-BPoVPJlJ.js.map → xml-CrpWqcDk.js.map} +1 -1
- package/package.json +1 -1
- package/dist/cards-DK7j03NN.cjs +0 -2
- package/dist/cards-DK7j03NN.cjs.map +0 -1
- package/dist/data-CjVcevdT.js +0 -654
- package/dist/data-CjVcevdT.js.map +0 -1
- package/dist/data-D8qUIvWv.cjs +0 -2
- package/dist/data-D8qUIvWv.cjs.map +0 -1
- package/dist/feedback-C445FEHb.js.map +0 -1
- package/dist/feedback-C8RfsfYJ.cjs +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display-BgZbdTDd.cjs","names":[],"sources":["../src/components/display/MCollapsible/MCollapsible.tsx","../src/components/display/MAccordion/MAccordion.tsx","../src/components/display/MProgressBar/MProgressBar.tsx","../src/components/display/MCountUp/MCountUp.tsx","../src/components/display/MCodeBlock/MCodeBlock.tsx","../src/components/display/MReveal/MReveal.tsx","../src/components/display/MTimeAgo/MTimeAgo.tsx","../src/components/display/MColorPicker/MColorPicker.tsx","../src/components/display/MEmptyState/MEmptyState.tsx","../src/components/display/MBlur/MBlur.tsx","../src/components/display/MStepper/MStepper.tsx","../src/components/display/MTimeline/MTimeline.tsx"],"sourcesContent":["import {useState} from 'react'\nimport {MButton} from '../../controls'\nimport {MStack} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport type {MCollapsibleProps} from './MCollapsible.types'\nimport {MChevronDownIcon} from '../../../icons'\nimport './MCollapsible.css'\n\n// MToggle a section of content with a built-in trigger and disclosure state.\nexport function MCollapsible({\n title,\n defaultOpen = false,\n open: controlledOpen,\n onToggle,\n color = 'primary',\n className,\n children,\n ...rest\n}: MCollapsibleProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen)\n const open = controlledOpen ?? internalOpen\n\n const handleToggle = () => {\n const nextOpen = !open\n\n if (controlledOpen === undefined) {\n setInternalOpen(nextOpen)\n }\n\n onToggle?.(nextOpen)\n }\n\n const chevronIcon = (\n <span className={cn('chevron', open && 'open')} aria-hidden=\"true\">\n <MChevronDownIcon />\n </span>\n )\n\n return (\n <div className={cn('collapsible', className)} {...rest}>\n <MButton\n variant=\"ghost\"\n color={color}\n className=\"trigger\"\n aria-expanded={open}\n onClick={handleToggle}\n endIcon={chevronIcon}\n >\n {title}\n </MButton>\n <div className={cn('content-wrap', open && 'open')} aria-hidden={!open}>\n <MStack className=\"content\">{children}</MStack>\n </div>\n </div>\n )\n}\n","import {useState, useCallback, Children, isValidElement} from 'react'\nimport {MCollapsible} from '../MCollapsible'\nimport {cn} from '../../../utils/cn'\nimport type {MAccordionProps, MAccordionItemProps} from './MAccordion.types'\nimport './MAccordion.css'\n\nexport function MAccordionItem(_props: MAccordionItemProps) {\n return null\n}\n\nexport function MAccordion({\n multiple = false,\n defaultOpen,\n onChange,\n bordered = false,\n color,\n className,\n children,\n ...rest\n}: MAccordionProps) {\n const initialOpen = Array.isArray(defaultOpen) ? defaultOpen : defaultOpen ? [defaultOpen] : []\n\n const [openIds, setOpenIds] = useState<string[]>(initialOpen)\n\n const handleToggle = useCallback(\n (id: string, isOpen: boolean) => {\n setOpenIds((prev) => {\n let next: string[]\n if (isOpen) {\n next = multiple ? [...prev, id] : [id]\n } else {\n next = prev.filter((v) => v !== id)\n }\n onChange?.(next)\n return next\n })\n },\n [multiple, onChange]\n )\n\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === MAccordionItem\n )\n\n return (\n <div className={cn('accordion', bordered && 'bordered', className)} {...rest}>\n {items.map((child) => {\n if (!isValidElement<MAccordionItemProps>(child)) return null\n const {id, title, children: content, disabled, color: itemColor} = child.props\n const isOpen = openIds.includes(id)\n\n return (\n <div key={id} className={cn('accordion-item', disabled && 'disabled')}>\n <MCollapsible\n title={title}\n open={isOpen}\n onToggle={disabled ? undefined : (open) => handleToggle(id, open)}\n color={itemColor ?? color}\n >\n {content}\n </MCollapsible>\n </div>\n )\n })}\n </div>\n )\n}\n","import {useState, useEffect, useRef, useCallback} from 'react'\nimport type {MProgressBarProps} from './MProgressBar.types'\nimport {cn} from '../../../utils/cn'\nimport './MProgressBar.css'\n\nconst DURATION = 800\n\nfunction easeOutCubic(t: number) {\n return 1 - Math.pow(1 - t, 3)\n}\n\n// Render a horizontal bar that fills to represent progress as a percentage.\nexport function MProgressBar({\n value,\n max = 100,\n color = 'primary',\n size = 'md',\n label,\n showValue = false,\n animated = false,\n striped = false,\n className,\n ...rest\n}: MProgressBarProps) {\n const percent = Math.min(100, Math.max(0, (value / max) * 100))\n const [displayPercent, setDisplayPercent] = useState(0)\n const [barPercent, setBarPercent] = useState(0)\n const prevPercent = useRef(0)\n const rafRef = useRef(0)\n\n const animate = useCallback((from: number, to: number) => {\n cancelAnimationFrame(rafRef.current)\n const start = performance.now()\n\n const step = (now: number) => {\n const elapsed = now - start\n const progress = Math.min(elapsed / DURATION, 1)\n const eased = easeOutCubic(progress)\n const current = from + (to - from) * eased\n\n setDisplayPercent(current)\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n // Set bar width immediately for CSS transition\n setBarPercent(to)\n rafRef.current = requestAnimationFrame(step)\n }, [])\n\n useEffect(() => {\n animate(prevPercent.current, percent)\n prevPercent.current = percent\n return () => cancelAnimationFrame(rafRef.current)\n }, [percent, animate])\n\n return (\n <div\n className={cn('progress-bar', `color-${color}`, size, className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-label={label}\n {...rest}\n >\n {(label || showValue) && (\n <div className=\"progress-bar-header\">\n {label && <span className=\"progress-bar-label\">{label}</span>}\n {showValue && <span className=\"progress-bar-value\">{Math.round(displayPercent)}%</span>}\n </div>\n )}\n <div className=\"progress-bar-track\">\n <div\n className={cn('progress-bar-fill', animated && 'animated', striped && 'striped')}\n style={{width: `${barPercent}%`}}\n />\n </div>\n </div>\n )\n}\n","import {useState, useEffect, useRef} from 'react'\nimport type {MCountUpProps} from './MCountUp.types'\nimport {cn} from '../../../utils/cn'\n\n// Animate a number from a start value to a target, with an easing curve.\nexport function MCountUp({\n value,\n from = 0,\n duration = 1000,\n decimals = 0,\n prefix = '',\n suffix = '',\n separator = '',\n className,\n ...rest\n}: MCountUpProps) {\n const [display, setDisplay] = useState(from)\n const rafRef = useRef<number>(0)\n const startRef = useRef<number | null>(null)\n\n useEffect(() => {\n const startValue = display\n startRef.current = null\n\n const step = (timestamp: number) => {\n if (startRef.current === null) startRef.current = timestamp\n const elapsed = timestamp - startRef.current\n const progress = Math.min(elapsed / duration, 1)\n const eased = 1 - Math.pow(1 - progress, 3)\n const current = startValue + (value - startValue) * eased\n\n setDisplay(current)\n\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n rafRef.current = requestAnimationFrame(step)\n return () => cancelAnimationFrame(rafRef.current)\n }, [value, duration])\n\n const formatted = formatNumber(display, decimals, separator)\n\n return (\n <span className={cn('count-up', className)} {...rest}>\n {prefix}\n {formatted}\n {suffix}\n </span>\n )\n}\n\nfunction formatNumber(num: number, decimals: number, separator: string): string {\n const fixed = num.toFixed(decimals)\n if (!separator) return fixed\n\n const [int, dec] = fixed.split('.')\n const withSep = int.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n return dec !== undefined ? `${withSep}.${dec}` : withSep\n}\n","import {useEffect, useMemo, useRef, useState} from 'react'\nimport type {MCodeBlockProps} from './MCodeBlock.types'\nimport {MCard, MCardBody, MCardHeader} from '../../cards'\nimport {MButton} from '../../controls'\nimport {MBadge} from '../../feedback'\nimport {MInline} from '../../layout'\nimport {MText} from '../../typography'\nimport {MCopyIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MCodeBlock.css'\nimport type {HLJSApi, LanguageFn} from 'highlight.js'\n\nconst languageMap: Record<string, string> = {\n c: 'c',\n cpp: 'cpp',\n 'c++': 'cpp',\n arduino: 'arduino',\n ino: 'arduino',\n ts: 'typescript',\n typescript: 'typescript',\n tsx: 'tsx',\n js: 'javascript',\n javascript: 'javascript',\n jsx: 'jsx',\n json: 'json',\n css: 'css',\n html: 'html',\n markup: 'html',\n bash: 'bash',\n shell: 'bash',\n shellscript: 'bash',\n php: 'php',\n}\n\nconst languageLoaders: Record<string, () => Promise<{default: LanguageFn}>> = {\n xml: () => import('highlight.js/lib/languages/xml'),\n css: () => import('highlight.js/lib/languages/css'),\n javascript: () => import('highlight.js/lib/languages/javascript'),\n typescript: () => import('highlight.js/lib/languages/typescript'),\n json: () => import('highlight.js/lib/languages/json'),\n bash: () => import('highlight.js/lib/languages/bash'),\n c: () => import('highlight.js/lib/languages/c'),\n cpp: () => import('highlight.js/lib/languages/cpp'),\n arduino: () => import('highlight.js/lib/languages/arduino'),\n php: () => import('highlight.js/lib/languages/php'),\n}\n\nlet highlightJsPromise: Promise<HLJSApi> | null = null\nconst codeBlockTypingSpeed = 42\nconst codeBlockTypingStartDelay = 200\n\nfunction escapeHtml(value: string): string {\n return value.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>')\n}\n\nfunction resolveLanguage(language: string): string {\n return languageMap[language] ?? language\n}\n\nasync function getHighlightJs(): Promise<HLJSApi> {\n if (!highlightJsPromise) {\n highlightJsPromise = (async () => {\n const highlightJsCore = (await import('highlight.js/lib/core')).default\n const highlightJs = highlightJsCore.newInstance()\n\n for (const [language, loadLanguage] of Object.entries(languageLoaders)) {\n const definition = await loadLanguage()\n highlightJs.registerLanguage(language, definition.default)\n }\n\n highlightJs.registerAliases(['shell', 'shellscript'], {languageName: 'bash'})\n highlightJs.registerAliases('markup', {languageName: 'xml'})\n\n return highlightJs\n })()\n }\n\n return highlightJsPromise\n}\n\n// Render a syntax-highlighted code block with optional card header and copy action.\nexport function MCodeBlock({\n code,\n language = 'tsx',\n title,\n showHeader = true,\n showLanguage = true,\n showCopyButton = true,\n copyLabel = 'Copy',\n copiedLabel = 'Copied',\n maxHeight,\n stretch = false,\n animated = false,\n lineNumbers = false,\n className,\n ...rest\n}: MCodeBlockProps) {\n const normalizedLanguage = useMemo(() => resolveLanguage(language.trim().toLowerCase()), [language])\n const [visibleLength, setVisibleLength] = useState(() => (animated ? 0 : code.length))\n const renderedCode = animated ? code.slice(0, visibleLength) : code\n const [highlightedCode, setHighlightedCode] = useState(() => escapeHtml(renderedCode))\n const [copied, setCopied] = useState(false)\n const copyTimeoutRef = useRef<number | null>(null)\n const typingTimeoutRef = useRef<number | null>(null)\n const scrollRef = useRef<HTMLDivElement | null>(null)\n const canCopy = typeof navigator !== 'undefined' && typeof navigator.clipboard?.writeText === 'function'\n const hasHeader = showHeader && (Boolean(title) || showLanguage || showCopyButton)\n const lineCount = useMemo(() => Math.max(1, renderedCode.split('\\n').length), [renderedCode])\n\n useEffect(() => {\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n typingTimeoutRef.current = null\n }\n\n setVisibleLength(animated ? 0 : code.length)\n }, [animated, code])\n\n useEffect(() => {\n if (!animated || code.length === 0) {\n return\n }\n\n if (visibleLength < code.length) {\n typingTimeoutRef.current = window.setTimeout(\n () => {\n setVisibleLength((current) => Math.min(current + 1, code.length))\n typingTimeoutRef.current = null\n },\n visibleLength === 0 ? codeBlockTypingStartDelay : codeBlockTypingSpeed\n )\n }\n\n return () => {\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n typingTimeoutRef.current = null\n }\n }\n }, [animated, code.length, visibleLength])\n\n useEffect(() => {\n let active = true\n\n async function highlightCode() {\n try {\n const highlightJs = await getHighlightJs()\n const languageDefinition = highlightJs.getLanguage(normalizedLanguage)\n const html = languageDefinition\n ? highlightJs.highlight(renderedCode, {\n language: normalizedLanguage,\n ignoreIllegals: true,\n }).value\n : escapeHtml(renderedCode)\n\n if (active) {\n setHighlightedCode(html)\n }\n } catch {\n if (active) {\n setHighlightedCode(escapeHtml(renderedCode))\n }\n }\n }\n\n void highlightCode()\n\n return () => {\n active = false\n }\n }, [normalizedLanguage, renderedCode])\n\n useEffect(() => {\n return () => {\n if (copyTimeoutRef.current !== null) {\n window.clearTimeout(copyTimeoutRef.current)\n }\n\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n }\n }\n }, [])\n\n useEffect(() => {\n if (!animated || !scrollRef.current) {\n return\n }\n\n scrollRef.current.scrollTop = scrollRef.current.scrollHeight\n }, [animated, visibleLength])\n\n async function handleCopy() {\n if (!canCopy) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(code)\n setCopied(true)\n\n if (copyTimeoutRef.current !== null) {\n window.clearTimeout(copyTimeoutRef.current)\n }\n\n copyTimeoutRef.current = window.setTimeout(() => {\n setCopied(false)\n copyTimeoutRef.current = null\n }, 1200)\n } catch {\n setCopied(false)\n }\n }\n\n return (\n <MCard className={cn('code-block-card', className)} {...rest} padded={false} stretch={stretch}>\n {hasHeader && (\n <MCardHeader className=\"code-block-header\">\n <MInline\n className=\"code-block-header-layout\"\n align=\"center\"\n justify=\"between\"\n wrap=\"nowrap\"\n px=\"lg\"\n py=\"md\"\n >\n <MInline className=\"code-block-header-meta\" align=\"center\" wrap=\"wrap\">\n {title && (\n <MText as=\"span\" className=\"code-block-title\" size=\"sm\" weight=\"semibold\">\n {title}\n </MText>\n )}\n {showLanguage && language && (\n <MBadge color=\"info\" size=\"sm\">\n {language}\n </MBadge>\n )}\n </MInline>\n {showCopyButton && (\n <MButton\n variant=\"ghost\"\n size=\"sm\"\n color=\"neutral\"\n startIcon={<MCopyIcon size=\"sm\" aria-hidden=\"true\" />}\n onClick={handleCopy}\n disabled={!canCopy}\n >\n {copied ? copiedLabel : copyLabel}\n </MButton>\n )}\n </MInline>\n </MCardHeader>\n )}\n\n <MCardBody className=\"code-block-body\">\n <div\n ref={scrollRef}\n className=\"code-block-scroll\"\n style={maxHeight ? {maxHeight, overflowY: 'auto'} : undefined}\n >\n <pre\n className={cn(\n 'code-block-pre',\n lineNumbers && 'with-line-numbers',\n `language-${normalizedLanguage}`\n )}\n >\n {lineNumbers && (\n <span className=\"code-block-line-numbers\" aria-hidden=\"true\">\n {Array.from({length: lineCount}, (_, index) => (\n <span key={index + 1} className=\"code-block-line-number\">\n {index + 1}\n </span>\n ))}\n </span>\n )}\n <span className=\"code-block-code-shell\">\n <code\n className={cn('code-block-code', 'hljs', `language-${normalizedLanguage}`)}\n dangerouslySetInnerHTML={{__html: highlightedCode}}\n />\n </span>\n </pre>\n </div>\n </MCardBody>\n </MCard>\n )\n}\n","import {useEffect, useRef} from 'react'\nimport type {CSSProperties} from 'react'\nimport type {MRevealProps} from './MReveal.types'\nimport {cn} from '../../../utils/cn'\n\nfunction getRevealOffset(direction: MRevealProps['direction'], distance: number) {\n switch (direction) {\n case 'down':\n return {x: 0, y: -distance}\n case 'left':\n return {x: distance, y: 0}\n case 'right':\n return {x: -distance, y: 0}\n case 'none':\n return {x: 0, y: 0}\n case 'up':\n default:\n return {x: 0, y: distance}\n }\n}\n\nexport function MReveal({\n children,\n direction = 'up',\n delay = 0,\n duration = 0.46,\n distance = 20,\n once = true,\n trigger = 'view',\n className,\n style,\n ...rest\n}: MRevealProps) {\n const revealRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n const node = revealRef.current\n if (!node) {\n return\n }\n\n const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches\n\n node.classList.remove('revealed')\n\n if (prefersReducedMotion) {\n node.classList.add('revealed')\n return\n }\n\n if (trigger === 'mount') {\n const frame = window.requestAnimationFrame(() => {\n node.classList.add('revealed')\n })\n\n return () => window.cancelAnimationFrame(frame)\n }\n\n const observer = new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n node.classList.add('revealed')\n if (once) {\n observer.disconnect()\n }\n } else if (!once) {\n node.classList.remove('revealed')\n }\n }\n },\n {threshold: 0.2}\n )\n\n observer.observe(node)\n\n return () => observer.disconnect()\n }, [delay, direction, distance, duration, once, trigger])\n\n const offset = getRevealOffset(direction, distance)\n const revealStyle = {\n minWidth: 0,\n maxWidth: '100%',\n '--reveal-delay': `${delay}s`,\n '--reveal-duration': `${duration}s`,\n '--reveal-translate-x': `${offset.x}px`,\n '--reveal-translate-y': `${offset.y}px`,\n ...style,\n } as CSSProperties\n\n return (\n <div ref={revealRef} className={cn('reveal', className)} style={revealStyle} {...rest}>\n {children}\n </div>\n )\n}\n","import {useEffect, useMemo, useState} from 'react'\nimport type {MTimeAgoProps, MTimeAgoUpdate} from './MTimeAgo.types'\nimport {cn} from '../../../utils/cn'\nimport {useDocumentLocale} from '../../../utils/locale'\nimport {\n formatAbsoluteTime,\n formatRelativeTime,\n getAutoUpdateInterval,\n parseRelativeThreshold,\n toDate,\n} from '../../../utils/relativeTime'\nimport './MTimeAgo.css'\n\nfunction getUpdateInterval(update: MTimeAgoUpdate, value: Date | string | number, now: number): number | null {\n if (update === 'none') return null\n if (update === 'minute') return 60 * 1000\n if (update === 'hour') return 60 * 60 * 1000\n if (update === 'day') return 24 * 60 * 60 * 1000\n return getAutoUpdateInterval(value, now)\n}\n\nexport function MTimeAgo({\n value,\n locale: localeOverride,\n maxRelative,\n fallbackFormat = 'date',\n titleAbsolute = true,\n update = 'auto',\n className,\n ...rest\n}: MTimeAgoProps) {\n const locale = useDocumentLocale(localeOverride)\n const [now, setNow] = useState(() => Date.now())\n const interval = useMemo(() => getUpdateInterval(update, value, now), [now, update, value])\n\n useEffect(() => {\n if (!interval) return\n\n const id = window.setInterval(() => setNow(Date.now()), interval)\n return () => window.clearInterval(id)\n }, [interval])\n\n const date = useMemo(() => toDate(value), [value])\n const maxRelativeMs = useMemo(() => parseRelativeThreshold(maxRelative), [maxRelative])\n\n const absolute = useMemo(() => formatAbsoluteTime(value, locale, fallbackFormat), [value, locale, fallbackFormat])\n\n const content = useMemo(() => {\n if (!date) return String(value)\n\n const diff = Math.abs(date.getTime() - now)\n if (maxRelativeMs != null && diff > maxRelativeMs) {\n return absolute ?? String(value)\n }\n\n return formatRelativeTime(date, {locale, now}) ?? absolute ?? String(value)\n }, [absolute, date, locale, maxRelativeMs, now, value])\n\n return (\n <time\n className={cn('time ago', className)}\n dateTime={date?.toISOString()}\n title={titleAbsolute ? (absolute ?? undefined) : undefined}\n {...rest}\n >\n {content}\n </time>\n )\n}\n","import {useCallback, useEffect, useRef, useState} from 'react'\nimport type * as React from 'react'\nimport type {MColorPickerProps} from './MColorPicker.types'\nimport {cn} from '../../../utils/cn'\nimport './MColorPicker.css'\n\nfunction hsvToHex(h: number, s: number, v: number): string {\n const f = (n: number) => {\n const k = (n + h / 60) % 6\n return v - v * s * Math.max(0, Math.min(k, 4 - k, 1))\n }\n const r = Math.round(f(5) * 255)\n const g = Math.round(f(3) * 255)\n const b = Math.round(f(1) * 255)\n return `#${[r, g, b].map((c) => c.toString(16).padStart(2, '0')).join('')}`\n}\n\nfunction hexToHsv(hex: string): [number, number, number] {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return [0, 0, 1]\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const d = max - min\n let h = 0\n if (d !== 0) {\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n const s = max === 0 ? 0 : d / max\n return [h, s, max]\n}\n\nfunction hexToRgb(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'rgb(0, 0, 0)'\n const [r, g, b] = m.map((c) => parseInt(c, 16))\n return `rgb(${r}, ${g}, ${b})`\n}\n\nfunction hexToHsl(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'hsl(0, 0%, 0%)'\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const l = (max + min) / 2\n let h = 0\n let s = 0\n if (max !== min) {\n const d = max - min\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n return `hsl(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`\n}\n\nfunction formatOutput(hex: string, format: string): string {\n if (format === 'rgb') return hexToRgb(hex)\n if (format === 'hsl') return hexToHsl(hex)\n return hex\n}\n\nfunction normalizeToHex(value: string): string {\n if (!value) return '#000000'\n if (value.startsWith('#')) return value.length === 7 ? value : '#000000'\n const rgbMatch = value.match(/rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)/)\n if (rgbMatch) {\n return `#${[rgbMatch[1], rgbMatch[2], rgbMatch[3]]\n .map((c) => parseInt(c).toString(16).padStart(2, '0'))\n .join('')}`\n }\n return '#000000'\n}\n\nconst DEFAULT_SWATCHES = [\n '#ef4444',\n '#f97316',\n '#eab308',\n '#22c55e',\n '#06b6d4',\n '#3b82f6',\n '#8b5cf6',\n '#ec4899',\n '#000000',\n '#ffffff',\n]\n\nexport function MColorPicker({\n value,\n onChange,\n swatches = DEFAULT_SWATCHES,\n format = 'hex',\n size = 'md',\n label,\n disabled = false,\n className,\n ...rest\n}: MColorPickerProps) {\n const hex = normalizeToHex(value ?? '#3b82f6')\n const [hsv, setHsv] = useState<[number, number, number]>(() => hexToHsv(hex))\n const [inputValue, setInputValue] = useState(formatOutput(hex, format))\n const areaRef = useRef<HTMLDivElement>(null)\n const hueRef = useRef<HTMLDivElement>(null)\n const dragging = useRef<'area' | 'hue' | null>(null)\n\n useEffect(() => {\n const newHex = normalizeToHex(value ?? '#3b82f6')\n setHsv(hexToHsv(newHex))\n setInputValue(formatOutput(newHex, format))\n }, [value, format])\n\n const emit = useCallback(\n (h: number, s: number, v: number) => {\n const newHex = hsvToHex(h, s, v)\n setHsv([h, s, v])\n setInputValue(formatOutput(newHex, format))\n onChange?.(formatOutput(newHex, format))\n },\n [onChange, format]\n )\n\n function handleAreaPointer(e: React.PointerEvent | PointerEvent) {\n const rect = areaRef.current?.getBoundingClientRect()\n if (!rect) return\n const s = Math.max(0, Math.min(1, (e.clientX - rect.left) / rect.width))\n const v = Math.max(0, Math.min(1, 1 - (e.clientY - rect.top) / rect.height))\n emit(hsv[0], s, v)\n }\n\n function handleHuePointer(e: React.PointerEvent | PointerEvent) {\n const rect = hueRef.current?.getBoundingClientRect()\n if (!rect) return\n const h = Math.max(0, Math.min(360, ((e.clientX - rect.left) / rect.width) * 360))\n emit(h, hsv[1], hsv[2])\n }\n\n useEffect(() => {\n function onMove(e: PointerEvent) {\n if (dragging.current === 'area') handleAreaPointer(e)\n else if (dragging.current === 'hue') handleHuePointer(e)\n }\n function onUp() {\n dragging.current = null\n }\n window.addEventListener('pointermove', onMove)\n window.addEventListener('pointerup', onUp)\n return () => {\n window.removeEventListener('pointermove', onMove)\n window.removeEventListener('pointerup', onUp)\n }\n })\n\n function handleInputChange(val: string) {\n setInputValue(val)\n try {\n const h = normalizeToHex(val)\n if (h !== '#000000' || val === '#000000' || val.toLowerCase() === 'rgb(0, 0, 0)') {\n setHsv(hexToHsv(h))\n onChange?.(formatOutput(h, format))\n }\n } catch {\n // ignore invalid input while typing\n }\n }\n\n const currentHex = hsvToHex(hsv[0], hsv[1], hsv[2])\n\n return (\n <div className={cn('color-picker', size, disabled && 'disabled', className)} {...rest}>\n {label && <label className=\"label\">{label}</label>}\n\n <div\n ref={areaRef}\n className=\"area\"\n style={{background: `hsl(${hsv[0]}, 100%, 50%)`}}\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'area'\n handleAreaPointer(e)\n }}\n >\n <div className=\"white\" />\n <div className=\"black\" />\n <div\n className=\"cursor\"\n style={{\n left: `${hsv[1] * 100}%`,\n top: `${(1 - hsv[2]) * 100}%`,\n background: currentHex,\n }}\n />\n </div>\n\n <div\n ref={hueRef}\n className=\"hue\"\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'hue'\n handleHuePointer(e)\n }}\n >\n <div className=\"hue-thumb\" style={{left: `${(hsv[0] / 360) * 100}%`}} />\n </div>\n\n <div className=\"controls\">\n <div className=\"preview\" style={{background: currentHex}} />\n <input\n type=\"text\"\n className=\"input\"\n value={inputValue}\n onChange={(e) => handleInputChange(e.target.value)}\n disabled={disabled}\n />\n </div>\n\n {swatches.length > 0 && (\n <div className=\"swatches\">\n {swatches.map((swatch) => (\n <button\n key={swatch}\n type=\"button\"\n className={cn('swatch', currentHex.toLowerCase() === swatch.toLowerCase() && 'active')}\n style={{background: swatch}}\n onClick={() => {\n if (disabled) return\n const [h, s, v] = hexToHsv(swatch)\n emit(h, s, v)\n }}\n />\n ))}\n </div>\n )}\n </div>\n )\n}\n","import {isValidElement, cloneElement} from 'react'\nimport type {MEmptyStateProps} from './MEmptyState.types'\nimport {MButton} from '../../controls/MButton'\nimport {cn} from '../../../utils/cn'\nimport './MEmptyState.css'\n\nconst BUTTON_SIZE_MAP = {xs: 'xs', sm: 'sm', md: 'sm', lg: 'md', xl: 'lg'} as const\n\nexport function MEmptyState({\n icon,\n illustration,\n title,\n description,\n buttonText,\n onAction,\n color = 'neutral',\n size = 'md',\n className,\n children,\n ...rest\n}: MEmptyStateProps) {\n return (\n <div className={cn('empty-state', `color-${color}`, size, className)} {...rest}>\n {illustration && (\n <div className=\"empty-state-illustration\">\n {isValidElement(illustration) ? cloneElement(illustration, {color} as any) : illustration}\n </div>\n )}\n {!illustration && icon && <div className=\"empty-state-icon\">{icon}</div>}\n <div className=\"empty-state-content\">\n <div className=\"empty-state-title\">{title}</div>\n {description && <div className=\"empty-state-description\">{description}</div>}\n </div>\n {buttonText && onAction && (\n <div className=\"empty-state-action\">\n <MButton size={BUTTON_SIZE_MAP[size]} variant=\"outlined\" color={color} onClick={onAction}>\n {buttonText}\n </MButton>\n </div>\n )}\n {children}\n </div>\n )\n}\n","import {useCallback, useState} from 'react'\nimport type {CSSProperties, KeyboardEvent, MouseEvent} from 'react'\nimport type {MBlurProps} from './MBlur.types'\nimport {cn} from '../../../utils/cn'\nimport './MBlur.css'\n\n// Obscure inline content with a CSS blur filter until the viewer opts in to reveal it.\nexport function MBlur({\n children,\n amount = 6,\n reveal = 'hover',\n revealed,\n defaultRevealed = false,\n onToggle,\n inline = true,\n className,\n style,\n onClick,\n onKeyDown,\n ...rest\n}: MBlurProps) {\n const controlled = revealed !== undefined\n const [internal, setInternal] = useState(defaultRevealed)\n const isRevealed = controlled ? revealed : internal\n const interactive = reveal !== 'none'\n\n const setRevealed = useCallback(\n (next: boolean) => {\n if (!controlled) {\n setInternal(next)\n }\n onToggle?.(next)\n },\n [controlled, onToggle]\n )\n\n const handleClick = (event: MouseEvent<HTMLSpanElement>) => {\n if (reveal === 'click') {\n setRevealed(!isRevealed)\n }\n onClick?.(event)\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLSpanElement>) => {\n if (reveal === 'click' && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault()\n setRevealed(!isRevealed)\n }\n onKeyDown?.(event)\n }\n\n const mergedStyle: CSSProperties = {\n ...style,\n ['--mineral-blur-amount' as string]: `${amount}px`,\n }\n\n return (\n <span\n className={cn('blur', inline ? 'inline' : 'block', `reveal-${reveal}`, isRevealed && 'revealed', className)}\n style={mergedStyle}\n tabIndex={interactive && reveal === 'click' ? 0 : undefined}\n role={reveal === 'click' ? 'button' : undefined}\n aria-pressed={reveal === 'click' ? isRevealed : undefined}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n <span className={'blur-inner'} aria-hidden={!isRevealed}>\n {children}\n </span>\n </span>\n )\n}\n","import {Children, isValidElement} from 'react'\nimport type {MStepperProps, MStepProps} from './MStepper.types'\nimport type {MSize} from '../../../theme'\nimport {cn} from '../../../utils/cn'\nimport {MCheckIcon} from '../../../icons'\nimport './MStepper.css'\n\nconst CHECK_SIZE: Record<MSize, number> = {xs: 10, sm: 14, md: 18, lg: 22, xl: 28}\n\nexport function MStep(_props: MStepProps) {\n return null\n}\n\nexport function MStepper({\n activeStep,\n variant = 'horizontal',\n color = 'primary',\n size = 'md',\n clickable = false,\n onChange,\n className,\n children,\n ...rest\n}: MStepperProps) {\n const steps = Children.toArray(children).filter((child) => isValidElement(child) && (child.type as any) === MStep)\n\n return (\n <div className={cn('stepper', variant, `color-${color}`, size, className)} role=\"list\" {...rest}>\n {steps.map((child, index) => {\n if (!isValidElement<MStepProps>(child)) return null\n const {id, title, description, icon, disabled, optional, error} = child.props\n const isActive = index === activeStep\n const isCompleted = index < activeStep\n const isClickable = clickable && !disabled\n\n const handleClick = () => {\n if (isClickable && onChange) {\n onChange(index)\n }\n }\n\n return (\n <div\n key={id}\n className={cn(\n 'stepper-step',\n isActive && 'active',\n isCompleted && 'completed',\n disabled && 'disabled',\n error && 'error',\n isClickable && 'clickable'\n )}\n role=\"listitem\"\n aria-current={isActive ? 'step' : undefined}\n >\n <div\n className=\"stepper-indicator\"\n onClick={isClickable ? handleClick : undefined}\n role={isClickable ? 'button' : undefined}\n tabIndex={isClickable ? 0 : undefined}\n onKeyDown={\n isClickable\n ? (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleClick()\n }\n }\n : undefined\n }\n >\n {error\n ? '!'\n : isCompleted\n ? (icon ?? <MCheckIcon size={CHECK_SIZE[size]} />)\n : (icon ?? index + 1)}\n </div>\n <div className=\"stepper-content\">\n <span className=\"stepper-title\">{title}</span>\n {description && <span className=\"stepper-description\">{description}</span>}\n {optional && <span className=\"stepper-optional\">Optional</span>}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n","import {Children, isValidElement} from 'react'\nimport type {MTimelineProps, MTimelineItemProps} from './MTimeline.types'\nimport {cn} from '../../../utils/cn'\nimport './MTimeline.css'\n\nexport function MTimelineItem(_props: MTimelineItemProps) {\n return null\n}\n\nexport function MTimeline({\n align = 'left',\n color = 'primary',\n size = 'md',\n className,\n children,\n ...rest\n}: MTimelineProps) {\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === MTimelineItem\n )\n\n return (\n <div className={cn('timeline', `align-${align}`, `color-${color}`, size, className)} {...rest}>\n {items.map((child, index) => {\n if (!isValidElement<MTimelineItemProps>(child)) return null\n const {id, title, description, date, icon, color: itemColor} = child.props\n const side = align === 'alternate' ? (index % 2 === 0 ? 'left' : 'right') : undefined\n\n return (\n <div key={id} className={cn('timeline-item', side && `side-${side}`)}>\n <div className={cn('timeline-dot', itemColor && `color-${itemColor}`)}>{icon}</div>\n <div className=\"timeline-content\">\n <span className=\"timeline-title\">{title}</span>\n {description && <span className=\"timeline-description\">{description}</span>}\n {date && <span className=\"timeline-date\">{date}</span>}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"display-IMWtdmxS.cjs","names":[],"sources":["../src/components/display/MCollapsible/MCollapsible.tsx","../src/components/display/MAccordion/MAccordion.tsx","../src/components/display/MProgressBar/MProgressBar.tsx","../src/components/display/MCountUp/MCountUp.tsx","../src/components/display/MCodeBlock/MCodeBlock.tsx","../src/components/display/MReveal/MReveal.tsx","../src/components/display/MTimeAgo/MTimeAgo.tsx","../src/components/display/MColorPicker/MColorPicker.tsx","../src/components/display/MEmptyState/MEmptyState.tsx","../src/components/display/MBlur/MBlur.tsx","../src/components/display/MStepper/MStepper.tsx","../src/components/display/MTimeline/MTimeline.tsx"],"sourcesContent":["import {useState} from 'react'\nimport {MButton} from '../../controls'\nimport {MStack} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport type {MCollapsibleProps} from './MCollapsible.types'\nimport {MChevronDownIcon} from '../../../icons'\nimport './MCollapsible.css'\n\n// MToggle a section of content with a built-in trigger and disclosure state.\nexport function MCollapsible({\n title,\n defaultOpen = false,\n open: controlledOpen,\n onToggle,\n color = 'primary',\n className,\n children,\n ...rest\n}: MCollapsibleProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen)\n const open = controlledOpen ?? internalOpen\n\n const handleToggle = () => {\n const nextOpen = !open\n\n if (controlledOpen === undefined) {\n setInternalOpen(nextOpen)\n }\n\n onToggle?.(nextOpen)\n }\n\n const chevronIcon = (\n <span className={cn('chevron', open && 'open')} aria-hidden=\"true\">\n <MChevronDownIcon />\n </span>\n )\n\n return (\n <div className={cn('collapsible', className)} {...rest}>\n <MButton\n variant=\"ghost\"\n color={color}\n className=\"trigger\"\n aria-expanded={open}\n onClick={handleToggle}\n endIcon={chevronIcon}\n >\n {title}\n </MButton>\n <div className={cn('content-wrap', open && 'open')} aria-hidden={!open}>\n <MStack className=\"content\">{children}</MStack>\n </div>\n </div>\n )\n}\n","import {useState, useCallback, Children, isValidElement} from 'react'\nimport {MCollapsible} from '../MCollapsible'\nimport {cn} from '../../../utils/cn'\nimport type {MAccordionProps, MAccordionItemProps} from './MAccordion.types'\nimport './MAccordion.css'\n\nexport function MAccordionItem(_props: MAccordionItemProps) {\n return null\n}\n\nexport function MAccordion({\n multiple = false,\n defaultOpen,\n onChange,\n bordered = false,\n color,\n className,\n children,\n ...rest\n}: MAccordionProps) {\n const initialOpen = Array.isArray(defaultOpen) ? defaultOpen : defaultOpen ? [defaultOpen] : []\n\n const [openIds, setOpenIds] = useState<string[]>(initialOpen)\n\n const handleToggle = useCallback(\n (id: string, isOpen: boolean) => {\n setOpenIds((prev) => {\n let next: string[]\n if (isOpen) {\n next = multiple ? [...prev, id] : [id]\n } else {\n next = prev.filter((v) => v !== id)\n }\n onChange?.(next)\n return next\n })\n },\n [multiple, onChange]\n )\n\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === MAccordionItem\n )\n\n return (\n <div className={cn('accordion', bordered && 'bordered', className)} {...rest}>\n {items.map((child) => {\n if (!isValidElement<MAccordionItemProps>(child)) return null\n const {id, title, children: content, disabled, color: itemColor} = child.props\n const isOpen = openIds.includes(id)\n\n return (\n <div key={id} className={cn('accordion-item', disabled && 'disabled')}>\n <MCollapsible\n title={title}\n open={isOpen}\n onToggle={disabled ? undefined : (open) => handleToggle(id, open)}\n color={itemColor ?? color}\n >\n {content}\n </MCollapsible>\n </div>\n )\n })}\n </div>\n )\n}\n","import {useState, useEffect, useRef, useCallback} from 'react'\nimport type {MProgressBarProps} from './MProgressBar.types'\nimport {cn} from '../../../utils/cn'\nimport './MProgressBar.css'\n\nconst DURATION = 800\n\nfunction easeOutCubic(t: number) {\n return 1 - Math.pow(1 - t, 3)\n}\n\n// Render a horizontal bar that fills to represent progress as a percentage.\nexport function MProgressBar({\n value,\n max = 100,\n color = 'primary',\n size = 'md',\n label,\n showValue = false,\n animated = false,\n striped = false,\n className,\n ...rest\n}: MProgressBarProps) {\n const percent = Math.min(100, Math.max(0, (value / max) * 100))\n const [displayPercent, setDisplayPercent] = useState(0)\n const [barPercent, setBarPercent] = useState(0)\n const prevPercent = useRef(0)\n const rafRef = useRef(0)\n\n const animate = useCallback((from: number, to: number) => {\n cancelAnimationFrame(rafRef.current)\n const start = performance.now()\n\n const step = (now: number) => {\n const elapsed = now - start\n const progress = Math.min(elapsed / DURATION, 1)\n const eased = easeOutCubic(progress)\n const current = from + (to - from) * eased\n\n setDisplayPercent(current)\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n // Set bar width immediately for CSS transition\n setBarPercent(to)\n rafRef.current = requestAnimationFrame(step)\n }, [])\n\n useEffect(() => {\n animate(prevPercent.current, percent)\n prevPercent.current = percent\n return () => cancelAnimationFrame(rafRef.current)\n }, [percent, animate])\n\n return (\n <div\n className={cn('progress-bar', `color-${color}`, size, className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-label={label}\n {...rest}\n >\n {(label || showValue) && (\n <div className=\"progress-bar-header\">\n {label && <span className=\"progress-bar-label\">{label}</span>}\n {showValue && <span className=\"progress-bar-value\">{Math.round(displayPercent)}%</span>}\n </div>\n )}\n <div className=\"progress-bar-track\">\n <div\n className={cn('progress-bar-fill', animated && 'animated', striped && 'striped')}\n style={{width: `${barPercent}%`}}\n />\n </div>\n </div>\n )\n}\n","import {useState, useEffect, useRef} from 'react'\nimport type {MCountUpProps} from './MCountUp.types'\nimport {cn} from '../../../utils/cn'\n\n// Animate a number from a start value to a target, with an easing curve.\nexport function MCountUp({\n value,\n from = 0,\n duration = 1000,\n decimals = 0,\n prefix = '',\n suffix = '',\n separator = '',\n className,\n ...rest\n}: MCountUpProps) {\n const [display, setDisplay] = useState(from)\n const rafRef = useRef<number>(0)\n const startRef = useRef<number | null>(null)\n\n useEffect(() => {\n const startValue = display\n startRef.current = null\n\n const step = (timestamp: number) => {\n if (startRef.current === null) startRef.current = timestamp\n const elapsed = timestamp - startRef.current\n const progress = Math.min(elapsed / duration, 1)\n const eased = 1 - Math.pow(1 - progress, 3)\n const current = startValue + (value - startValue) * eased\n\n setDisplay(current)\n\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n rafRef.current = requestAnimationFrame(step)\n return () => cancelAnimationFrame(rafRef.current)\n }, [value, duration])\n\n const formatted = formatNumber(display, decimals, separator)\n\n return (\n <span className={cn('count-up', className)} {...rest}>\n {prefix}\n {formatted}\n {suffix}\n </span>\n )\n}\n\nfunction formatNumber(num: number, decimals: number, separator: string): string {\n const fixed = num.toFixed(decimals)\n if (!separator) return fixed\n\n const [int, dec] = fixed.split('.')\n const withSep = int.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n return dec !== undefined ? `${withSep}.${dec}` : withSep\n}\n","import {useEffect, useMemo, useRef, useState} from 'react'\nimport type {MCodeBlockProps} from './MCodeBlock.types'\nimport {MCard, MCardBody, MCardHeader} from '../../cards'\nimport {MButton} from '../../controls'\nimport {MBadge} from '../../feedback'\nimport {MInline} from '../../layout'\nimport {MText} from '../../typography'\nimport {MCopyIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MCodeBlock.css'\nimport type {HLJSApi, LanguageFn} from 'highlight.js'\n\nconst languageMap: Record<string, string> = {\n c: 'c',\n cpp: 'cpp',\n 'c++': 'cpp',\n arduino: 'arduino',\n ino: 'arduino',\n ts: 'typescript',\n typescript: 'typescript',\n tsx: 'tsx',\n js: 'javascript',\n javascript: 'javascript',\n jsx: 'jsx',\n json: 'json',\n css: 'css',\n html: 'html',\n markup: 'html',\n bash: 'bash',\n shell: 'bash',\n shellscript: 'bash',\n php: 'php',\n}\n\nconst languageLoaders: Record<string, () => Promise<{default: LanguageFn}>> = {\n xml: () => import('highlight.js/lib/languages/xml'),\n css: () => import('highlight.js/lib/languages/css'),\n javascript: () => import('highlight.js/lib/languages/javascript'),\n typescript: () => import('highlight.js/lib/languages/typescript'),\n json: () => import('highlight.js/lib/languages/json'),\n bash: () => import('highlight.js/lib/languages/bash'),\n c: () => import('highlight.js/lib/languages/c'),\n cpp: () => import('highlight.js/lib/languages/cpp'),\n arduino: () => import('highlight.js/lib/languages/arduino'),\n php: () => import('highlight.js/lib/languages/php'),\n}\n\nlet highlightJsPromise: Promise<HLJSApi> | null = null\nconst codeBlockTypingSpeed = 42\nconst codeBlockTypingStartDelay = 200\n\nfunction escapeHtml(value: string): string {\n return value.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>')\n}\n\nfunction resolveLanguage(language: string): string {\n return languageMap[language] ?? language\n}\n\nasync function getHighlightJs(): Promise<HLJSApi> {\n if (!highlightJsPromise) {\n highlightJsPromise = (async () => {\n const highlightJsCore = (await import('highlight.js/lib/core')).default\n const highlightJs = highlightJsCore.newInstance()\n\n for (const [language, loadLanguage] of Object.entries(languageLoaders)) {\n const definition = await loadLanguage()\n highlightJs.registerLanguage(language, definition.default)\n }\n\n highlightJs.registerAliases(['shell', 'shellscript'], {languageName: 'bash'})\n highlightJs.registerAliases('markup', {languageName: 'xml'})\n\n return highlightJs\n })()\n }\n\n return highlightJsPromise\n}\n\n// Render a syntax-highlighted code block with optional card header and copy action.\nexport function MCodeBlock({\n code,\n language = 'tsx',\n title,\n showHeader = true,\n showLanguage = true,\n showCopyButton = true,\n copyLabel = 'Copy',\n copiedLabel = 'Copied',\n maxHeight,\n stretch = false,\n animated = false,\n lineNumbers = false,\n className,\n ...rest\n}: MCodeBlockProps) {\n const normalizedLanguage = useMemo(() => resolveLanguage(language.trim().toLowerCase()), [language])\n const [visibleLength, setVisibleLength] = useState(() => (animated ? 0 : code.length))\n const renderedCode = animated ? code.slice(0, visibleLength) : code\n const [highlightedCode, setHighlightedCode] = useState(() => escapeHtml(renderedCode))\n const [copied, setCopied] = useState(false)\n const copyTimeoutRef = useRef<number | null>(null)\n const typingTimeoutRef = useRef<number | null>(null)\n const scrollRef = useRef<HTMLDivElement | null>(null)\n const canCopy = typeof navigator !== 'undefined' && typeof navigator.clipboard?.writeText === 'function'\n const hasHeader = showHeader && (Boolean(title) || showLanguage || showCopyButton)\n const lineCount = useMemo(() => Math.max(1, renderedCode.split('\\n').length), [renderedCode])\n\n useEffect(() => {\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n typingTimeoutRef.current = null\n }\n\n setVisibleLength(animated ? 0 : code.length)\n }, [animated, code])\n\n useEffect(() => {\n if (!animated || code.length === 0) {\n return\n }\n\n if (visibleLength < code.length) {\n typingTimeoutRef.current = window.setTimeout(\n () => {\n setVisibleLength((current) => Math.min(current + 1, code.length))\n typingTimeoutRef.current = null\n },\n visibleLength === 0 ? codeBlockTypingStartDelay : codeBlockTypingSpeed\n )\n }\n\n return () => {\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n typingTimeoutRef.current = null\n }\n }\n }, [animated, code.length, visibleLength])\n\n useEffect(() => {\n let active = true\n\n async function highlightCode() {\n try {\n const highlightJs = await getHighlightJs()\n const languageDefinition = highlightJs.getLanguage(normalizedLanguage)\n const html = languageDefinition\n ? highlightJs.highlight(renderedCode, {\n language: normalizedLanguage,\n ignoreIllegals: true,\n }).value\n : escapeHtml(renderedCode)\n\n if (active) {\n setHighlightedCode(html)\n }\n } catch {\n if (active) {\n setHighlightedCode(escapeHtml(renderedCode))\n }\n }\n }\n\n void highlightCode()\n\n return () => {\n active = false\n }\n }, [normalizedLanguage, renderedCode])\n\n useEffect(() => {\n return () => {\n if (copyTimeoutRef.current !== null) {\n window.clearTimeout(copyTimeoutRef.current)\n }\n\n if (typingTimeoutRef.current !== null) {\n window.clearTimeout(typingTimeoutRef.current)\n }\n }\n }, [])\n\n useEffect(() => {\n if (!animated || !scrollRef.current) {\n return\n }\n\n scrollRef.current.scrollTop = scrollRef.current.scrollHeight\n }, [animated, visibleLength])\n\n async function handleCopy() {\n if (!canCopy) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(code)\n setCopied(true)\n\n if (copyTimeoutRef.current !== null) {\n window.clearTimeout(copyTimeoutRef.current)\n }\n\n copyTimeoutRef.current = window.setTimeout(() => {\n setCopied(false)\n copyTimeoutRef.current = null\n }, 1200)\n } catch {\n setCopied(false)\n }\n }\n\n return (\n <MCard className={cn('code-block-card', className)} {...rest} padded={false} stretch={stretch}>\n {hasHeader && (\n <MCardHeader className=\"code-block-header\">\n <MInline\n className=\"code-block-header-layout\"\n align=\"center\"\n justify=\"between\"\n wrap=\"nowrap\"\n px=\"lg\"\n py=\"md\"\n >\n <MInline className=\"code-block-header-meta\" align=\"center\" wrap=\"wrap\">\n {title && (\n <MText as=\"span\" className=\"code-block-title\" size=\"sm\" weight=\"semibold\">\n {title}\n </MText>\n )}\n {showLanguage && language && (\n <MBadge color=\"info\" size=\"sm\">\n {language}\n </MBadge>\n )}\n </MInline>\n {showCopyButton && (\n <MButton\n variant=\"ghost\"\n size=\"sm\"\n color=\"neutral\"\n startIcon={<MCopyIcon size=\"sm\" aria-hidden=\"true\" />}\n onClick={handleCopy}\n disabled={!canCopy}\n >\n {copied ? copiedLabel : copyLabel}\n </MButton>\n )}\n </MInline>\n </MCardHeader>\n )}\n\n <MCardBody className=\"code-block-body\">\n <div\n ref={scrollRef}\n className=\"code-block-scroll\"\n style={maxHeight ? {maxHeight, overflowY: 'auto'} : undefined}\n >\n <pre\n className={cn(\n 'code-block-pre',\n lineNumbers && 'with-line-numbers',\n `language-${normalizedLanguage}`\n )}\n >\n {lineNumbers && (\n <span className=\"code-block-line-numbers\" aria-hidden=\"true\">\n {Array.from({length: lineCount}, (_, index) => (\n <span key={index + 1} className=\"code-block-line-number\">\n {index + 1}\n </span>\n ))}\n </span>\n )}\n <span className=\"code-block-code-shell\">\n <code\n className={cn('code-block-code', 'hljs', `language-${normalizedLanguage}`)}\n dangerouslySetInnerHTML={{__html: highlightedCode}}\n />\n </span>\n </pre>\n </div>\n </MCardBody>\n </MCard>\n )\n}\n","import {useEffect, useRef} from 'react'\nimport type {CSSProperties} from 'react'\nimport type {MRevealProps} from './MReveal.types'\nimport {cn} from '../../../utils/cn'\n\nfunction getRevealOffset(direction: MRevealProps['direction'], distance: number) {\n switch (direction) {\n case 'down':\n return {x: 0, y: -distance}\n case 'left':\n return {x: distance, y: 0}\n case 'right':\n return {x: -distance, y: 0}\n case 'none':\n return {x: 0, y: 0}\n case 'up':\n default:\n return {x: 0, y: distance}\n }\n}\n\nexport function MReveal({\n children,\n direction = 'up',\n delay = 0,\n duration = 0.46,\n distance = 20,\n once = true,\n trigger = 'view',\n className,\n style,\n ...rest\n}: MRevealProps) {\n const revealRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n const node = revealRef.current\n if (!node) {\n return\n }\n\n const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches\n\n node.classList.remove('revealed')\n\n if (prefersReducedMotion) {\n node.classList.add('revealed')\n return\n }\n\n if (trigger === 'mount') {\n const frame = window.requestAnimationFrame(() => {\n node.classList.add('revealed')\n })\n\n return () => window.cancelAnimationFrame(frame)\n }\n\n const observer = new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n node.classList.add('revealed')\n if (once) {\n observer.disconnect()\n }\n } else if (!once) {\n node.classList.remove('revealed')\n }\n }\n },\n {threshold: 0.2}\n )\n\n observer.observe(node)\n\n return () => observer.disconnect()\n }, [delay, direction, distance, duration, once, trigger])\n\n const offset = getRevealOffset(direction, distance)\n const revealStyle = {\n minWidth: 0,\n maxWidth: '100%',\n '--reveal-delay': `${delay}s`,\n '--reveal-duration': `${duration}s`,\n '--reveal-translate-x': `${offset.x}px`,\n '--reveal-translate-y': `${offset.y}px`,\n ...style,\n } as CSSProperties\n\n return (\n <div ref={revealRef} className={cn('reveal', className)} style={revealStyle} {...rest}>\n {children}\n </div>\n )\n}\n","import {useEffect, useMemo, useState} from 'react'\nimport type {MTimeAgoProps, MTimeAgoUpdate} from './MTimeAgo.types'\nimport {cn} from '../../../utils/cn'\nimport {useDocumentLocale} from '../../../utils/locale'\nimport {\n formatAbsoluteTime,\n formatRelativeTime,\n getAutoUpdateInterval,\n parseRelativeThreshold,\n toDate,\n} from '../../../utils/relativeTime'\nimport './MTimeAgo.css'\n\nfunction getUpdateInterval(update: MTimeAgoUpdate, value: Date | string | number, now: number): number | null {\n if (update === 'none') return null\n if (update === 'minute') return 60 * 1000\n if (update === 'hour') return 60 * 60 * 1000\n if (update === 'day') return 24 * 60 * 60 * 1000\n return getAutoUpdateInterval(value, now)\n}\n\nexport function MTimeAgo({\n value,\n locale: localeOverride,\n maxRelative,\n fallbackFormat = 'date',\n titleAbsolute = true,\n update = 'auto',\n className,\n ...rest\n}: MTimeAgoProps) {\n const locale = useDocumentLocale(localeOverride)\n const [now, setNow] = useState(() => Date.now())\n const interval = useMemo(() => getUpdateInterval(update, value, now), [now, update, value])\n\n useEffect(() => {\n if (!interval) return\n\n const id = window.setInterval(() => setNow(Date.now()), interval)\n return () => window.clearInterval(id)\n }, [interval])\n\n const date = useMemo(() => toDate(value), [value])\n const maxRelativeMs = useMemo(() => parseRelativeThreshold(maxRelative), [maxRelative])\n\n const absolute = useMemo(() => formatAbsoluteTime(value, locale, fallbackFormat), [value, locale, fallbackFormat])\n\n const content = useMemo(() => {\n if (!date) return String(value)\n\n const diff = Math.abs(date.getTime() - now)\n if (maxRelativeMs != null && diff > maxRelativeMs) {\n return absolute ?? String(value)\n }\n\n return formatRelativeTime(date, {locale, now}) ?? absolute ?? String(value)\n }, [absolute, date, locale, maxRelativeMs, now, value])\n\n return (\n <time\n className={cn('time ago', className)}\n dateTime={date?.toISOString()}\n title={titleAbsolute ? (absolute ?? undefined) : undefined}\n {...rest}\n >\n {content}\n </time>\n )\n}\n","import {useCallback, useEffect, useRef, useState} from 'react'\nimport type * as React from 'react'\nimport type {MColorPickerProps} from './MColorPicker.types'\nimport {cn} from '../../../utils/cn'\nimport './MColorPicker.css'\n\nfunction hsvToHex(h: number, s: number, v: number): string {\n const f = (n: number) => {\n const k = (n + h / 60) % 6\n return v - v * s * Math.max(0, Math.min(k, 4 - k, 1))\n }\n const r = Math.round(f(5) * 255)\n const g = Math.round(f(3) * 255)\n const b = Math.round(f(1) * 255)\n return `#${[r, g, b].map((c) => c.toString(16).padStart(2, '0')).join('')}`\n}\n\nfunction hexToHsv(hex: string): [number, number, number] {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return [0, 0, 1]\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const d = max - min\n let h = 0\n if (d !== 0) {\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n const s = max === 0 ? 0 : d / max\n return [h, s, max]\n}\n\nfunction hexToRgb(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'rgb(0, 0, 0)'\n const [r, g, b] = m.map((c) => parseInt(c, 16))\n return `rgb(${r}, ${g}, ${b})`\n}\n\nfunction hexToHsl(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'hsl(0, 0%, 0%)'\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const l = (max + min) / 2\n let h = 0\n let s = 0\n if (max !== min) {\n const d = max - min\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n return `hsl(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`\n}\n\nfunction formatOutput(hex: string, format: string): string {\n if (format === 'rgb') return hexToRgb(hex)\n if (format === 'hsl') return hexToHsl(hex)\n return hex\n}\n\nfunction normalizeToHex(value: string): string {\n if (!value) return '#000000'\n if (value.startsWith('#')) return value.length === 7 ? value : '#000000'\n const rgbMatch = value.match(/rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)/)\n if (rgbMatch) {\n return `#${[rgbMatch[1], rgbMatch[2], rgbMatch[3]]\n .map((c) => parseInt(c).toString(16).padStart(2, '0'))\n .join('')}`\n }\n return '#000000'\n}\n\nconst DEFAULT_SWATCHES = [\n '#ef4444',\n '#f97316',\n '#eab308',\n '#22c55e',\n '#06b6d4',\n '#3b82f6',\n '#8b5cf6',\n '#ec4899',\n '#000000',\n '#ffffff',\n]\n\nexport function MColorPicker({\n value,\n onChange,\n swatches = DEFAULT_SWATCHES,\n format = 'hex',\n size = 'md',\n label,\n disabled = false,\n className,\n ...rest\n}: MColorPickerProps) {\n const hex = normalizeToHex(value ?? '#3b82f6')\n const [hsv, setHsv] = useState<[number, number, number]>(() => hexToHsv(hex))\n const [inputValue, setInputValue] = useState(formatOutput(hex, format))\n const areaRef = useRef<HTMLDivElement>(null)\n const hueRef = useRef<HTMLDivElement>(null)\n const dragging = useRef<'area' | 'hue' | null>(null)\n\n useEffect(() => {\n const newHex = normalizeToHex(value ?? '#3b82f6')\n setHsv(hexToHsv(newHex))\n setInputValue(formatOutput(newHex, format))\n }, [value, format])\n\n const emit = useCallback(\n (h: number, s: number, v: number) => {\n const newHex = hsvToHex(h, s, v)\n setHsv([h, s, v])\n setInputValue(formatOutput(newHex, format))\n onChange?.(formatOutput(newHex, format))\n },\n [onChange, format]\n )\n\n function handleAreaPointer(e: React.PointerEvent | PointerEvent) {\n const rect = areaRef.current?.getBoundingClientRect()\n if (!rect) return\n const s = Math.max(0, Math.min(1, (e.clientX - rect.left) / rect.width))\n const v = Math.max(0, Math.min(1, 1 - (e.clientY - rect.top) / rect.height))\n emit(hsv[0], s, v)\n }\n\n function handleHuePointer(e: React.PointerEvent | PointerEvent) {\n const rect = hueRef.current?.getBoundingClientRect()\n if (!rect) return\n const h = Math.max(0, Math.min(360, ((e.clientX - rect.left) / rect.width) * 360))\n emit(h, hsv[1], hsv[2])\n }\n\n useEffect(() => {\n function onMove(e: PointerEvent) {\n if (dragging.current === 'area') handleAreaPointer(e)\n else if (dragging.current === 'hue') handleHuePointer(e)\n }\n function onUp() {\n dragging.current = null\n }\n window.addEventListener('pointermove', onMove)\n window.addEventListener('pointerup', onUp)\n return () => {\n window.removeEventListener('pointermove', onMove)\n window.removeEventListener('pointerup', onUp)\n }\n })\n\n function handleInputChange(val: string) {\n setInputValue(val)\n try {\n const h = normalizeToHex(val)\n if (h !== '#000000' || val === '#000000' || val.toLowerCase() === 'rgb(0, 0, 0)') {\n setHsv(hexToHsv(h))\n onChange?.(formatOutput(h, format))\n }\n } catch {\n // ignore invalid input while typing\n }\n }\n\n const currentHex = hsvToHex(hsv[0], hsv[1], hsv[2])\n\n return (\n <div className={cn('color-picker', size, disabled && 'disabled', className)} {...rest}>\n {label && <label className=\"label\">{label}</label>}\n\n <div\n ref={areaRef}\n className=\"area\"\n style={{background: `hsl(${hsv[0]}, 100%, 50%)`}}\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'area'\n handleAreaPointer(e)\n }}\n >\n <div className=\"white\" />\n <div className=\"black\" />\n <div\n className=\"cursor\"\n style={{\n left: `${hsv[1] * 100}%`,\n top: `${(1 - hsv[2]) * 100}%`,\n background: currentHex,\n }}\n />\n </div>\n\n <div\n ref={hueRef}\n className=\"hue\"\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'hue'\n handleHuePointer(e)\n }}\n >\n <div className=\"hue-thumb\" style={{left: `${(hsv[0] / 360) * 100}%`}} />\n </div>\n\n <div className=\"controls\">\n <div className=\"preview\" style={{background: currentHex}} />\n <input\n type=\"text\"\n className=\"input\"\n value={inputValue}\n onChange={(e) => handleInputChange(e.target.value)}\n disabled={disabled}\n />\n </div>\n\n {swatches.length > 0 && (\n <div className=\"swatches\">\n {swatches.map((swatch) => (\n <button\n key={swatch}\n type=\"button\"\n className={cn('swatch', currentHex.toLowerCase() === swatch.toLowerCase() && 'active')}\n style={{background: swatch}}\n onClick={() => {\n if (disabled) return\n const [h, s, v] = hexToHsv(swatch)\n emit(h, s, v)\n }}\n />\n ))}\n </div>\n )}\n </div>\n )\n}\n","import {isValidElement, cloneElement} from 'react'\nimport type {MEmptyStateProps} from './MEmptyState.types'\nimport {MButton} from '../../controls/MButton'\nimport {cn} from '../../../utils/cn'\nimport './MEmptyState.css'\n\nconst BUTTON_SIZE_MAP = {xs: 'xs', sm: 'sm', md: 'sm', lg: 'md', xl: 'lg'} as const\n\nexport function MEmptyState({\n icon,\n illustration,\n title,\n description,\n buttonText,\n onAction,\n color = 'neutral',\n size = 'md',\n className,\n children,\n ...rest\n}: MEmptyStateProps) {\n return (\n <div className={cn('empty-state', `color-${color}`, size, className)} {...rest}>\n {illustration && (\n <div className=\"empty-state-illustration\">\n {isValidElement(illustration) ? cloneElement(illustration, {color} as any) : illustration}\n </div>\n )}\n {!illustration && icon && <div className=\"empty-state-icon\">{icon}</div>}\n <div className=\"empty-state-content\">\n <div className=\"empty-state-title\">{title}</div>\n {description && <div className=\"empty-state-description\">{description}</div>}\n </div>\n {buttonText && onAction && (\n <div className=\"empty-state-action\">\n <MButton size={BUTTON_SIZE_MAP[size]} variant=\"outlined\" color={color} onClick={onAction}>\n {buttonText}\n </MButton>\n </div>\n )}\n {children}\n </div>\n )\n}\n","import {useCallback, useState} from 'react'\nimport type {CSSProperties, KeyboardEvent, MouseEvent} from 'react'\nimport type {MBlurProps} from './MBlur.types'\nimport {cn} from '../../../utils/cn'\nimport './MBlur.css'\n\n// Obscure inline content with a CSS blur filter until the viewer opts in to reveal it.\nexport function MBlur({\n children,\n amount = 6,\n reveal = 'hover',\n revealed,\n defaultRevealed = false,\n onToggle,\n inline = true,\n className,\n style,\n onClick,\n onKeyDown,\n ...rest\n}: MBlurProps) {\n const controlled = revealed !== undefined\n const [internal, setInternal] = useState(defaultRevealed)\n const isRevealed = controlled ? revealed : internal\n const interactive = reveal !== 'none'\n\n const setRevealed = useCallback(\n (next: boolean) => {\n if (!controlled) {\n setInternal(next)\n }\n onToggle?.(next)\n },\n [controlled, onToggle]\n )\n\n const handleClick = (event: MouseEvent<HTMLSpanElement>) => {\n if (reveal === 'click') {\n setRevealed(!isRevealed)\n }\n onClick?.(event)\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLSpanElement>) => {\n if (reveal === 'click' && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault()\n setRevealed(!isRevealed)\n }\n onKeyDown?.(event)\n }\n\n const mergedStyle: CSSProperties = {\n ...style,\n ['--mineral-blur-amount' as string]: `${amount}px`,\n }\n\n return (\n <span\n className={cn('blur', inline ? 'inline' : 'block', `reveal-${reveal}`, isRevealed && 'revealed', className)}\n style={mergedStyle}\n tabIndex={interactive && reveal === 'click' ? 0 : undefined}\n role={reveal === 'click' ? 'button' : undefined}\n aria-pressed={reveal === 'click' ? isRevealed : undefined}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n <span className={'blur-inner'} aria-hidden={!isRevealed}>\n {children}\n </span>\n </span>\n )\n}\n","import {Children, isValidElement} from 'react'\nimport type {MStepperProps, MStepProps} from './MStepper.types'\nimport type {MSize} from '../../../theme'\nimport {cn} from '../../../utils/cn'\nimport {MCheckIcon} from '../../../icons'\nimport './MStepper.css'\n\nconst CHECK_SIZE: Record<MSize, number> = {xs: 10, sm: 14, md: 18, lg: 22, xl: 28}\n\nexport function MStep(_props: MStepProps) {\n return null\n}\n\nexport function MStepper({\n activeStep,\n variant = 'horizontal',\n color = 'primary',\n size = 'md',\n clickable = false,\n onChange,\n className,\n children,\n ...rest\n}: MStepperProps) {\n const steps = Children.toArray(children).filter((child) => isValidElement(child) && (child.type as any) === MStep)\n\n return (\n <div className={cn('stepper', variant, `color-${color}`, size, className)} role=\"list\" {...rest}>\n {steps.map((child, index) => {\n if (!isValidElement<MStepProps>(child)) return null\n const {id, title, description, icon, disabled, optional, error} = child.props\n const isActive = index === activeStep\n const isCompleted = index < activeStep\n const isClickable = clickable && !disabled\n\n const handleClick = () => {\n if (isClickable && onChange) {\n onChange(index)\n }\n }\n\n return (\n <div\n key={id}\n className={cn(\n 'stepper-step',\n isActive && 'active',\n isCompleted && 'completed',\n disabled && 'disabled',\n error && 'error',\n isClickable && 'clickable'\n )}\n role=\"listitem\"\n aria-current={isActive ? 'step' : undefined}\n >\n <div\n className=\"stepper-indicator\"\n onClick={isClickable ? handleClick : undefined}\n role={isClickable ? 'button' : undefined}\n tabIndex={isClickable ? 0 : undefined}\n onKeyDown={\n isClickable\n ? (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleClick()\n }\n }\n : undefined\n }\n >\n {error\n ? '!'\n : isCompleted\n ? (icon ?? <MCheckIcon size={CHECK_SIZE[size]} />)\n : (icon ?? index + 1)}\n </div>\n <div className=\"stepper-content\">\n <span className=\"stepper-title\">{title}</span>\n {description && <span className=\"stepper-description\">{description}</span>}\n {optional && <span className=\"stepper-optional\">Optional</span>}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n","import {Children, isValidElement} from 'react'\nimport type {MTimelineProps, MTimelineItemProps} from './MTimeline.types'\nimport {cn} from '../../../utils/cn'\nimport './MTimeline.css'\n\nexport function MTimelineItem(_props: MTimelineItemProps) {\n return null\n}\n\nexport function MTimeline({\n align = 'left',\n color = 'primary',\n size = 'md',\n className,\n children,\n ...rest\n}: MTimelineProps) {\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === MTimelineItem\n )\n\n return (\n <div className={cn('timeline', `align-${align}`, `color-${color}`, size, className)} {...rest}>\n {items.map((child, index) => {\n if (!isValidElement<MTimelineItemProps>(child)) return null\n const {id, title, description, date, icon, color: itemColor} = child.props\n const side = align === 'alternate' ? (index % 2 === 0 ? 'left' : 'right') : undefined\n\n return (\n <div key={id} className={cn('timeline-item', side && `side-${side}`)}>\n <div className={cn('timeline-dot', itemColor && `color-${itemColor}`)}>{icon}</div>\n <div className=\"timeline-content\">\n <span className=\"timeline-title\">{title}</span>\n {description && <span className=\"timeline-description\">{description}</span>}\n {date && <span className=\"timeline-date\">{date}</span>}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n"],"mappings":"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"}
|
package/dist/display.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
const {ensureStyles}=require('./style-runtime.cjs')
|
|
2
2
|
ensureStyles()
|
|
3
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./display-
|
|
3
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./display-IMWtdmxS.cjs`),t=require(`./MDetailList-BhKBJwpd.cjs`);exports.MAccordion=e.p,exports.MAccordionItem=e.m,exports.MBlur=e.a,exports.MCodeBlock=e.u,exports.MCollapsible=e.h,exports.MColorPicker=e.s,exports.MCountUp=e.d,exports.MDetailList=t.t,exports.MEmptyState=e.o,exports.MProgressBar=e.f,exports.MRating=t.n,exports.MReveal=e.l,exports.MStep=e.r,exports.MStepper=e.i,exports.MTimeAgo=e.c,exports.MTimeline=e.t,exports.MTimelineItem=e.n;
|
package/dist/display.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {ensureStyles} from './style-runtime.js'
|
|
2
2
|
ensureStyles()
|
|
3
|
-
import { a as e, c as t, d as n, f as r, h as i, i as a, l as o, m as s, n as c, o as l, p as u, r as d, s as f, t as p, u as m } from "./display-
|
|
4
|
-
import { n as h, t as g } from "./MDetailList-
|
|
3
|
+
import { a as e, c as t, d as n, f as r, h as i, i as a, l as o, m as s, n as c, o as l, p as u, r as d, s as f, t as p, u as m } from "./display-D9H8MP8D.js";
|
|
4
|
+
import { n as h, t as g } from "./MDetailList-BjvZUyNj.js";
|
|
5
5
|
export { u as MAccordion, s as MAccordionItem, e as MBlur, m as MCodeBlock, i as MCollapsible, f as MColorPicker, n as MCountUp, g as MDetailList, l as MEmptyState, r as MProgressBar, h as MRating, o as MReveal, d as MStep, a as MStepper, t as MTimeAgo, p as MTimeline, c as MTimelineItem };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require(`./MI18nProvider-C90EVyFz.cjs`),t=require(`./icons-DX_cScBq.cjs`),n=require(`./cn-CU5TNITO.cjs`),r=require(`./validators-B6yWdsu2.cjs`),i=require(`./formatters-CNjg_h7-.cjs`),a=require(`./dateUtils-Dq1vaA-D.cjs`),o=require(`./useGhostText-Nw9XCpWS.cjs`),s=require(`./useKeyboardNav-DDN-oeqd.cjs`),c=require(`./MPopover-BVBN5SJi.cjs`),l=require(`./MButton-B8kFTOPJ.cjs`),u=require(`./MCheckbox-CATWU11D.cjs`),d=require(`./MTag-BwQbycZO.cjs`),f=require(`./MInput-Cw9ZVcNO.cjs`),p=require(`./locale-C5ik0c3d.cjs`);require(`./core-o3cw16Db.cjs`);let m=require(`react`),h=require(`react/jsx-runtime`);function g({options:e,value:r,defaultValue:i,onChange:a,multiple:o=!1,searchable:f=!1,placeholder:p=`MSelect...`,disabled:g=!1,name:ee,id:te,variant:ne=`outlined`,size:_=`md`,color:v,fullWidth:re=!1,label:ie,helperText:y,errorText:ae,error:b=!1,required:oe=!1,loading:se=!1,clearable:ce=!1,maxHeight:x=300,noOptionsText:S=`No options`,renderOption:C,renderValue:w,className:T,style:E}){let[D,O]=(0,m.useState)(!1),[k,A]=(0,m.useState)(i??(o?[]:``)),[j,M]=(0,m.useState)(``),le=(0,m.useRef)(null),N=r===void 0?k:r,P=b||!!ae,F=(0,m.useMemo)(()=>Array.isArray(N)?N:N?[N]:[],[N]),I=(0,m.useMemo)(()=>e.filter(e=>F.includes(e.value)),[e,F]),L=(0,m.useMemo)(()=>{if(!f||!j)return e;let t=j.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(t))},[e,f,j]),R=(0,m.useMemo)(()=>{let e=new Map;for(let t of L){let n=t.group??``;e.has(n)||e.set(n,[]),e.get(n).push(t)}return e},[L]),z=L,B=(0,m.useCallback)(e=>{let t=z[e];if(!(!t||t.disabled))if(o){let e=Array.isArray(N)?N:[],n=e.includes(t.value)?e.filter(e=>e!==t.value):[...e,t.value];r===void 0&&A(n),a?.(n)}else r===void 0&&A(t.value),a?.(t.value),O(!1),M(``)},[z,o,N,r,a]),{activeIndex:V,setActiveIndex:H,resetIndex:ue,onKeyDown:de}=s.t({itemCount:z.length,onSelect:B,onClose:()=>{O(!1),M(``)},isOpen:D}),U=(0,m.useCallback)(()=>{g||(O(e=>!e),ue())},[g,ue]),fe=(0,m.useCallback)(e=>{e.stopPropagation();let t=o?[]:``;r===void 0&&A(t),a?.(t)},[o,r,a]),W=(0,m.useMemo)(()=>w&&I.length>0?w(o?I:I[0]):o&&I.length>0?(0,h.jsx)(`span`,{className:`tags`,children:I.map(e=>(0,h.jsx)(d.t,{label:e.label,color:v,size:_,variant:`solid`},e.value))}):!o&&I.length>0?I[0].label:(0,h.jsx)(`span`,{className:`placeholder`,children:p}),[I,o,w,p,v,_]);return(0,h.jsxs)(`div`,{className:n.t(`select`,v&&`color-${v}`,re&&`full-width`,T),style:E,children:[ie&&(0,h.jsx)(`label`,{htmlFor:te,className:n.t(`field-label`,D&&`focused`,P&&`error`,oe&&`required`),children:ie}),(0,h.jsxs)(`div`,{ref:le,className:n.t(`trigger`,`field-${ne}`,`field-${_}`,D&&`focused`,P&&`error`,g&&`disabled`),onClick:U,onKeyDown:de,tabIndex:g?-1:0,role:`combobox`,"aria-expanded":D,"aria-haspopup":`listbox`,"aria-invalid":P||void 0,id:te,children:[(0,h.jsx)(`span`,{className:`value`,children:W}),se&&(0,h.jsx)(l.r,{size:`sm`,color:v}),ce&&F.length>0&&!se&&!g&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:fe,tabIndex:-1,"aria-label":`Clear selection`,children:(0,h.jsx)(t.Ki,{})}),(0,h.jsx)(`span`,{className:n.t(`arrow`,D&&`open`),"aria-hidden":`true`,children:(0,h.jsx)(t.Hi,{})})]}),ee&&(0,h.jsx)(`input`,{type:`hidden`,name:ee,value:Array.isArray(N)?N.join(`,`):N}),(0,h.jsx)(c.t,{className:`select-popover`,open:D,anchorRef:le,onClose:()=>{O(!1),M(``)},matchWidth:!0,placement:`bottom-start`,children:(0,h.jsxs)(`div`,{style:{maxHeight:x},className:`dropdown`,children:[f&&(0,h.jsx)(`div`,{className:`search-box`,children:(0,h.jsx)(`input`,{type:`text`,className:`search-input`,placeholder:`Search...`,value:j,onChange:e=>{M(e.target.value),H(0)},onKeyDown:de,autoFocus:!0})}),z.length===0?(0,h.jsx)(`div`,{className:`no-options`,children:S}):(0,h.jsx)(`div`,{className:`options-list`,role:`listbox`,children:[...R.entries()].map(([e,t])=>(0,h.jsxs)(`div`,{children:[e&&(0,h.jsx)(`div`,{className:`group-header`,children:e}),t.map(e=>{let t=z.indexOf(e),r=t===V,i=F.includes(e.value);return(0,h.jsxs)(`div`,{className:n.t(`option`,r&&`active`,i&&`selected`,e.disabled&&`disabled`),onClick:()=>!e.disabled&&B(t),onMouseEnter:()=>H(t),role:`option`,"aria-selected":i,"aria-disabled":e.disabled,children:[o&&(0,h.jsx)(u.t,{checked:i,size:`sm`,color:v,clickEffect:`none`,className:`select-check`}),C?C(e,r,i):e.label]},e.value)})]},e))})]})}),(ae||y)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:ae?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:ae}):(0,h.jsx)(`span`,{className:`helper-text`,children:y})})]})}function ee(e){return typeof e==`string`?e:String(e)}function te(e){return typeof e==`string`?e:String(e)}function ne(e,t,n){if(!t)return e;let r=t.toLowerCase();return e.filter(e=>n(e).toLowerCase().includes(r))}function _({options:e,value:r,onChange:i,getOptionLabel:a=ee,getOptionValue:u=te,filterOptions:f,multiple:p=!1,debounceMs:g=0,onInputChange:_,loading:v=!1,loadingText:re=`Loading...`,noOptionsText:ie=`No options`,placeholder:y=`Type to search...`,disabled:ae=!1,name:b,id:oe,variant:se=`outlined`,size:ce=`md`,color:x,fullWidth:S=!1,label:C,helperText:w,errorText:T,error:E=!1,required:D=!1,clearable:O=!1,maxHeight:k=300,renderOption:A,renderTags:j,className:M,style:le}){let[N,P]=(0,m.useState)(!1),[F,I]=(0,m.useState)(``),L=(0,m.useRef)(null),R=(0,m.useRef)(null),z=E||!!T,B=(0,m.useMemo)(()=>r==null?[]:Array.isArray(r)?r.filter(e=>e!=null):[r],[r]),V=(0,m.useMemo)(()=>f?f(e,F):ne(e,F,a),[e,F,f,a]),H=o.r(e=>_?.(e),g),ue=(0,m.useCallback)(e=>{I(e.target.value),H(e.target.value),N||P(!0)},[N,H]),de=(0,m.useCallback)(e=>{let t=V[e];if(t)if(p){let e=[...B],n=u(t),r=e.findIndex(e=>u(e)===n);r>=0?e.splice(r,1):e.push(t),i?.(e),I(``),R.current?.focus()}else i?.(t),I(a(t)),P(!1)},[V,p,B,u,a,i]),U=(0,m.useCallback)(e=>{let t=[...B];t.splice(e,1),i?.(p?t:t[0]??``)},[B,i,p]),{activeIndex:fe,setActiveIndex:W,resetIndex:G,onKeyDown:pe}=s.t({itemCount:V.length,onSelect:de,onClose:()=>P(!1),isOpen:N}),me=(0,m.useCallback)(e=>{if(e.key===`Backspace`&&p&&!F&&B.length>0){U(B.length-1);return}pe(e)},[F,p,B,pe,U]),K=(0,m.useCallback)(e=>{e.stopPropagation(),I(``),i?.(p?[]:``),R.current?.focus()},[p,i]);return(0,h.jsxs)(`div`,{className:n.t(`autocomplete`,x&&`color-${x}`,S&&`full-width`,M),style:le,children:[C&&(0,h.jsx)(`label`,{htmlFor:oe,className:n.t(`field-label`,N&&`focused`,z&&`error`,D&&`required`),children:C}),(0,h.jsxs)(`div`,{ref:L,className:n.t(`input-wrapper`,`field-${se}`,`field-${ce}`,N&&`focused`,z&&`error`,ae&&`disabled`),onClick:()=>R.current?.focus(),children:[p&&B.length>0&&(j?j(B,U):(0,h.jsx)(`span`,{className:`tags`,children:B.map((e,t)=>(0,h.jsx)(d.t,{label:a(e),color:x,size:ce,variant:`solid`,closable:!0,onClose:()=>U(t)},u(e)))})),(0,h.jsx)(`input`,{ref:R,type:`text`,className:`input`,value:F,onChange:ue,onFocus:()=>{P(!0),G()},onKeyDown:me,placeholder:B.length>0?``:y,disabled:ae,id:oe,"aria-expanded":N,"aria-haspopup":`listbox`,"aria-invalid":z||void 0,autoComplete:`off`}),v&&(0,h.jsx)(l.r,{size:`sm`,color:x}),O&&(B.length>0||F)&&!v&&!ae&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:K,tabIndex:-1,children:(0,h.jsx)(t.Ki,{})})]}),b&&(0,h.jsx)(`input`,{type:`hidden`,name:b,value:B.map(u).join(`,`)}),(0,h.jsx)(c.t,{className:n.t(`autocomplete-popover`,x&&`color-${x}`),open:N&&(V.length>0||v||!!F),anchorRef:L,onClose:()=>P(!1),matchWidth:!0,placement:`bottom-start`,children:(0,h.jsx)(`div`,{style:{maxHeight:k},className:`dropdown`,children:v?(0,h.jsx)(`div`,{className:`loading-msg`,children:re}):V.length===0?(0,h.jsx)(`div`,{className:`no-options`,children:ie}):(0,h.jsx)(`div`,{className:`options-list`,role:`listbox`,children:V.map((e,t)=>{let r=t===fe,i=B.some(t=>u(t)===u(e));return(0,h.jsx)(`div`,{className:n.t(`option`,r&&`active`,i&&`selected`),onClick:()=>de(t),onMouseEnter:()=>W(t),role:`option`,"aria-selected":i,children:A?A(e,r):a(e)},u(e))})})})}),(T||w)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:T?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:T}):(0,h.jsx)(`span`,{className:`helper-text`,children:w})})]})}function v(){let t=e.r();return(0,m.useCallback)((e,n)=>t?.t(e,n)??n,[t])}function re(){let e=v();return(0,m.useMemo)(()=>({today:e(`mineralui.datePicker.today`,`Today`),clear:e(`mineralui.datePicker.clear`,`Clear`),previousMonth:e(`mineralui.datePicker.previousMonth`,`Previous month`),nextMonth:e(`mineralui.datePicker.nextMonth`,`Next month`)}),[e])}function ie(){let e=v();return(0,m.useMemo)(()=>({today:e(`mineralui.dateRangePicker.today`,`Today`),clear:e(`mineralui.dateRangePicker.clear`,`Clear`),previousMonth:e(`mineralui.dateRangePicker.previousMonth`,`Previous month`),nextMonth:e(`mineralui.dateRangePicker.nextMonth`,`Next month`),rangeSubtitle:e(`mineralui.dateRangePicker.rangeSubtitle`,`Select start and end dates in one panel.`),defaultRangePlaceholder:e(`mineralui.dateRangePicker.defaultRangePlaceholder`,`Select date range...`),presets:{today:e(`mineralui.dateRangePicker.presets.today`,`Today`),days2:e(`mineralui.dateRangePicker.presets.days2`,`2 days`),days3:e(`mineralui.dateRangePicker.presets.days3`,`3 days`),days7:e(`mineralui.dateRangePicker.presets.days7`,`7 days`),days14:e(`mineralui.dateRangePicker.presets.days14`,`14 days`),days31:e(`mineralui.dateRangePicker.presets.days31`,`31 days`),thisMonth:e(`mineralui.dateRangePicker.presets.thisMonth`,`This month`),previousMonth:e(`mineralui.dateRangePicker.presets.previousMonth`,`Previous month`),months2:e(`mineralui.dateRangePicker.presets.months2`,`2 months`),months3:e(`mineralui.dateRangePicker.presets.months3`,`3 months`),months6:e(`mineralui.dateRangePicker.presets.months6`,`6 months`),year1:e(`mineralui.dateRangePicker.presets.year1`,`1 year`)}}),[e])}var y={primary:`var(--mineral-primary-rgb)`,neutral:`var(--mineral-neutral-rgb)`,success:`var(--mineral-success-rgb)`,error:`var(--mineral-error-rgb)`,warning:`var(--mineral-warning-rgb)`,info:`var(--mineral-info-rgb)`,light:`var(--mineral-light-rgb)`,dark:`var(--mineral-dark-color-rgb)`,news:`var(--mineral-news-rgb)`};function ae(e){return y[e??`primary`]??y.primary}var b=`Date is unavailable`,oe=`Invalid time`;function se(e){if(!e)return null;if(e instanceof Date)return isNaN(e.getTime())?null:new Date(e.getTime());let t=new Date(e);return isNaN(t.getTime())?null:t}function ce(e){let t=e.replace(/DD/g,`dd`).replace(/YYYY/g,`yyyy`),n=t.match(/dd|MM|yyyy/g),r=t.match(/[^dMy]/)?.[0],i=r===`/`||r===`.`||r===`-`?r:`.`;switch(n?.join(`/`)){case`MM/dd/yyyy`:return{inputFormat:`MM/DD/YYYY`,separator:i};case`yyyy/MM/dd`:return{inputFormat:`YYYY/MM/DD`,separator:i};default:return{inputFormat:`DD/MM/YYYY`,separator:i}}}function x(e,t){return e===`12h`?t?`hh:mm:ss AM`:`hh:mm AM`:t?`HH:MM:SS`:`HH:MM`}function S(e,t,n,r,i,a){return e||(n?`${t} ${a??x(r,i)}`:t)}function C(e,t){if(!e)return``;let n=a.o(a._(e),t.format);return t.withTime?`${n} ${a.l(e.getHours(),e.getMinutes(),e.getSeconds(),t.showSeconds,t.timeFormat)}`:n}function w(e,t){return e?e.length<=2?e:e.length<=4?`${e.slice(0,2)}:${e.slice(2)}`:t?`${e.slice(0,2)}:${e.slice(2,4)}:${e.slice(4,6)}`:`${e.slice(0,2)}:${e.slice(2,4)}`:``}function T(e){let t=e.toUpperCase().replace(/[^APM]/g,``);return t?t.startsWith(`AM`)?`AM`:t.startsWith(`PM`)?`PM`:t.startsWith(`A`)?`A`:t.startsWith(`P`)?`P`:``:``}function E(e,t){let n=e.trim();if(!n)return{datePart:``,timePart:``};if(!t)return{datePart:n,timePart:``};let r=n.indexOf(` `);return r===-1?{datePart:n,timePart:``}:{datePart:n.slice(0,r).trim(),timePart:n.slice(r+1).trim()}}function D(e,t){let n=e.toUpperCase(),r=i.u(n),a=r.slice(0,8),o=t.withTime?r.slice(8,8+(t.showSeconds?6:4)):``,s=i.i(a,t.inputFormat,t.separator);if(!t.withTime)return{formatted:s,datePart:s,timePart:``};let c=w(o,t.showSeconds),l=t.timeFormat===`12h`?T(n):``,u=`${c}${l?`${c?` `:``}${l}`:``}`.trim();if(!s)return{formatted:u,datePart:``,timePart:u};let d=a.length===8,f=/\s/.test(n.slice(s.length));return{formatted:u||d&&f?`${s} ${u}`:s,datePart:s,timePart:u}}function O(e,t){return e?a.l(e.getHours(),e.getMinutes(),e.getSeconds(),t,`24h`):``}function k(e,t){let{datePart:n,timePart:i}=E(e,t.withTime);if(!n&&!i)return{status:`empty`};let o=r.a(n,{format:t.inputFormat,minDate:t.minDate??void 0,maxDate:t.maxDate??void 0});if(!o.valid)return o.error===`Incomplete date`?{status:`partial`,datePart:n,timePart:i}:{status:`invalid`,datePart:n,timePart:i,result:o};let s=r.i(n,t.inputFormat);return s?t.isDisabled(s)?{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:b}}:t.withTime?i?a.g(i,t.timeFormat)?{status:`valid`,datePart:n,timePart:i,value:a.r(s,i,{format:t.timeFormat,showSeconds:t.showSeconds})}:{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:oe}}:{status:`valid`,datePart:n,timePart:``,value:a.r(s,``,{format:t.timeFormat,showSeconds:t.showSeconds})}:{status:`valid`,datePart:n,timePart:``,value:a._(s)}:{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:`Invalid date`}}}function A(e){let t=e.hours>=12?`PM`:`AM`;return{hours:e.hours%12||12,minutes:e.minutes,seconds:e.seconds,meridiem:t}}function j(e,t){return t===`AM`?e===12?0:e:e===12?12:e+12}function M({value:e,defaultValue:r,onChange:o,format:s=`dd.MM.yyyy`,locale:l,min:u,max:d,disabledDates:g,placeholder:ee,disabled:te=!1,readOnly:ne=!1,name:_,id:v,variant:ie=`outlined`,size:y=`md`,color:b,label:x,helperText:w,errorText:T,error:E=!1,required:M=!1,clearable:N=!1,withTime:P=!1,validateOnBlur:F=!0,validateOnChange:I=!1,onValidationChange:L,timeFormat:R=`24h`,showSeconds:z=!1,minuteStep:B=1,timePlaceholder:V,inline:H=!1,showTodayButton:ue=!0,firstDayOfWeek:de=1,fullWidth:U=!1,className:fe,style:W}){let G=p.t(l),pe=re(),{inputFormat:me,separator:K}=(0,m.useMemo)(()=>ce(s),[s]),[he,ge]=(0,m.useState)(!1),[_e,ve]=(0,m.useState)(()=>se(r)),[ye,be]=(0,m.useState)({valid:!0}),[xe,q]=(0,m.useState)(!1),J=e===void 0?_e:se(e),[Se,Ce]=(0,m.useState)(()=>C(J,{format:s,withTime:P,timeFormat:R,showSeconds:z})),[we,Te]=(0,m.useState)(()=>O(J,z)),[Y,Ee]=(0,m.useState)(()=>{let e=J?a._(J):new Date;return new Date(e.getFullYear(),e.getMonth(),1)}),[De,Oe]=(0,m.useState)(`days`),ke=(0,m.useRef)(null),Ae=J?.getTime()??null,je=se(u),Me=se(d),Ne=E||xe&&!ye.valid,Pe=T||(xe&&!ye.valid?ye.error:void 0),Fe=a.u(G,de),Ie=a.d(G);(0,m.useEffect)(()=>{if(Ce(C(J,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(J,z)),J){let e=a._(J);Ee(new Date(e.getFullYear(),e.getMonth(),1))}},[s,Ae,z,R,P]);let X=(0,m.useCallback)(e=>a.f(e,je,Me)?Array.isArray(g)?g.some(t=>a.p(t,e)):typeof g==`function`?g(e):!1:!0,[g,Me,je]),Z=(0,m.useCallback)(e=>{be(e),L?.(e)},[L]),Q=(0,m.useCallback)(t=>{e===void 0&&ve(t),o?.(t)},[o,e]),Le=(0,m.useMemo)(()=>k(Se,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X}),[me,Se,X,Me,je,z,R,P]),Re=(0,m.useMemo)(()=>Le.status===`valid`?a._(Le.value):J?a._(J):null,[Le,J]),$=(0,m.useMemo)(()=>P?a.g(Le.status!==`empty`&&Le.timePart?Le.timePart:we||O(J,z),R)??{hours:0,minutes:0,seconds:0}:null,[we,Le,J,z,R,P]),ze=(0,m.useCallback)(e=>{let t=D(e.target.value,{inputFormat:me,separator:K,withTime:P,timeFormat:R,showSeconds:z});Ce(t.formatted),Te(t.timePart);let n=k(t.formatted,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(n.status===`empty`){Z({valid:!0}),Q(null);return}if(n.status===`invalid`&&I)Z(n.result);else if(n.status===`valid`){Z({valid:!0}),Ee(new Date(n.value.getFullYear(),n.value.getMonth(),1));let t=z?6:4,r=P?i.u(e.target.value).slice(8).length:0;(!P||r>=t)&&Q(n.value)}},[Q,Z,me,X,Me,je,K,z,R,I,P]),Be=(0,m.useCallback)(()=>{q(!0);let e=k(Se,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(e.status===`empty`){Z({valid:!0});return}if(e.status===`partial`){F&&Z({valid:!1,error:`Incomplete date`});return}if(e.status===`invalid`){if(P&&e.result.error===oe&&e.datePart){let t=a.l(0,0,0,z,R),n=k(`${e.datePart} ${t}`,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(n.status===`valid`){Z({valid:!0}),Ce(C(n.value,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(n.value,z)),Q(n.value);return}}F&&Z(e.result);return}Z({valid:!0}),Ce(C(e.value,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(e.value,z)),Q(e.value)},[Q,Z,s,me,Se,X,Me,je,z,R,F,P]),Ve=(0,m.useCallback)(e=>{[`Backspace`,`Delete`,`Tab`,`ArrowLeft`,`ArrowRight`,`Home`,`End`,`Enter`].includes(e.key)||e.ctrlKey||e.metaKey||(P?/^[0-9\s:./-APMapm]$/:/^[0-9./-]$/).test(e.key)||e.preventDefault()},[P]),He=(0,m.useCallback)(()=>{Ce(``),Te(``),q(!1),Z({valid:!0}),Q(null)},[Q,Z]),Ue=(0,m.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!(te||ne||H)&&ge(e=>!e)},[te,H,ne]),We=(0,m.useCallback)(e=>{if(X(e))return;let t=P?we||a.l(0,0,0,z,R):``,n=P?a.r(e,t,{format:R,showSeconds:z}):a._(e);q(!0),Z({valid:!0}),Te(t),Ce(C(n,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Ee(new Date(e.getFullYear(),e.getMonth(),1)),Q(n),!P&&!H&&ge(!1)},[Q,we,Z,s,H,X,z,R,P]),Ge=(0,m.useCallback)(()=>{let e=a._(new Date);X(e)||We(e)},[We,X]),Ke=(0,m.useMemo)(()=>{if(!P)return[];let e=[],t=R===`12h`?12:23,n=+(R===`12h`);for(let r=n;r<=t;r+=1)e.push(r);return e},[R,P]),qe=(0,m.useMemo)(()=>{if(!P)return[];let e=[];for(let t=0;t<60;t+=B)e.push(t);return e},[B,P]),Je=(0,m.useMemo)(()=>{if(!P||!z)return[];let e=[];for(let t=0;t<60;t+=1)e.push(t);return e},[z,P]),Ye=(0,m.useCallback)((e,t,n=0)=>{let r=a.l(e,t,n,z,R),i=Re;if(q(!0),Te(r),!i){Ce(r);return}let o=a.r(i,r,{format:R,showSeconds:z});Z({valid:!0}),Ce(C(o,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Q(o)},[Q,Re,Z,s,z,R,P]),Xe=(0,m.useCallback)(e=>{Ye(j($?A($).hours:12,e),$?.minutes??0,$?.seconds??0)},[$,Ye]),Ze=(0,m.useMemo)(()=>{let e=Y.getFullYear(),t=Y.getMonth(),n=a.i(e,t),r=a.a(e,t);de===1&&(r=r===0?6:r-1);let i=[],o=t===0?11:t-1,s=t===0?e-1:e,c=a.i(s,o);for(let e=r-1;e>=0;--e)i.push({date:new Date(s,o,c-e),currentMonth:!1});for(let r=1;r<=n;r+=1)i.push({date:new Date(e,t,r),currentMonth:!0});let l=42-i.length,u=t===11?0:t+1,d=t===11?e+1:e;for(let e=1;e<=l;e+=1)i.push({date:new Date(d,u,e),currentMonth:!1});return i},[de,Y]),Qe=a._(new Date),$e=J?a._(J):Re,et=()=>(0,h.jsxs)(`div`,{className:`calendar`,children:[(0,h.jsxs)(`div`,{className:`calendar-header`,children:[(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>Ee(a.t(Y,-1)),"aria-label":pe.previousMonth,children:(0,h.jsx)(t.Wi,{})}),(0,h.jsxs)(`button`,{type:`button`,className:`header-title`,onClick:()=>Oe(e=>e===`days`?`months`:`days`),children:[Ie[Y.getMonth()],` `,Y.getFullYear()]}),(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>Ee(a.t(Y,1)),"aria-label":pe.nextMonth,children:(0,h.jsx)(t.Ui,{})})]}),De===`days`?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(`div`,{className:`day-names`,children:Fe.map(e=>(0,h.jsx)(`span`,{className:`day-name`,children:e},e))}),(0,h.jsx)(`div`,{className:`day-grid`,children:Ze.map(({date:e,currentMonth:t},r)=>{let i=$e?a.p(e,$e):!1,o=a.p(e,Qe),s=X(e);return(0,h.jsx)(`button`,{type:`button`,className:n.t(`day`,!t&&`other-month`,o&&`today`,i&&`selected`,s&&`disabled`),onClick:()=>We(e),disabled:s,tabIndex:-1,children:e.getDate()},`${e.toISOString()}-${r}`)})})]}):(0,h.jsx)(`div`,{className:`month-grid`,children:Ie.map((e,t)=>(0,h.jsx)(`button`,{type:`button`,className:n.t(`month-cell`,Y.getMonth()===t&&`selected`),onClick:()=>{Ee(new Date(Y.getFullYear(),t,1)),Oe(`days`)},children:e.slice(0,3)},e))}),ue&&(0,h.jsx)(`div`,{className:`footer`,children:(0,h.jsx)(`button`,{type:`button`,className:`today-btn`,onClick:Ge,children:pe.today})})]}),tt=()=>{if(!P)return null;let e=$?A($):null;return(0,h.jsxs)(`div`,{className:`date-picker-time-panel`,children:[(0,h.jsx)(`div`,{className:`date-picker-time-header`,children:`Time`}),(0,h.jsxs)(`div`,{className:`date-picker-time-columns`,children:[(0,h.jsx)(le,{items:Ke,selected:R===`12h`?e?.hours:$?.hours,onSelect:t=>Ye(R===`12h`?j(t,e?.meridiem??`AM`):t,$?.minutes??0,$?.seconds??0),label:`Hr`}),(0,h.jsx)(le,{items:qe,selected:$?.minutes,onSelect:e=>Ye($?.hours??0,e,$?.seconds??0),label:`Min`}),z&&(0,h.jsx)(le,{items:Je,selected:$?.seconds,onSelect:e=>Ye($?.hours??0,$?.minutes??0,e),label:`Sec`}),R===`12h`&&(0,h.jsx)(le,{items:[`AM`,`PM`],selected:e?.meridiem,onSelect:Xe,label:`AM/PM`})]})]})},nt=()=>(0,h.jsxs)(`div`,{className:n.t(`date-picker-popover-content`,P&&`with-time`),children:[et(),tt()]}),rt=P?R===`12h`?z?22:19:z?19:16:10,it=S(ee,s,P,R,z,V);return H?(0,h.jsxs)(`div`,{className:n.t(`date-picker`,b&&`color-${b}`,U&&`full-width`,fe),style:W,children:[(0,h.jsx)(f.t,{value:Se,onChange:ze,onBlur:Be,onKeyDown:Ve,onClear:He,type:`text`,inputMode:P?`text`:`numeric`,autoComplete:`off`,maxLength:rt,placeholder:it,disabled:te,readOnly:ne,id:v,variant:ie,size:y,color:b,label:x,helperText:w,error:Ne,errorText:Pe,required:M,clearable:N,fullWidth:U}),nt(),_&&J&&(0,h.jsx)(`input`,{type:`hidden`,name:_,value:a.s(J,P,z)})]}):(0,h.jsxs)(`div`,{className:n.t(`date-picker`,b&&`color-${b}`,U&&`full-width`,fe),style:W,children:[(0,h.jsx)(`div`,{ref:ke,className:`date-picker-input-anchor`,children:(0,h.jsx)(f.t,{value:Se,onChange:ze,onBlur:Be,onKeyDown:Ve,onClear:He,type:`text`,inputMode:P?`text`:`numeric`,autoComplete:`off`,maxLength:rt,placeholder:it,disabled:te,readOnly:ne,id:v,variant:ie,size:y,color:b,label:x,helperText:w,error:Ne,errorText:Pe,required:M,clearable:N,fullWidth:U,endIcon:(0,h.jsx)(`button`,{type:`button`,className:`date-picker-toggle`,onMouseDown:e=>e.preventDefault(),onClick:Ue,"aria-label":`Open calendar`,disabled:te||ne,children:(0,h.jsx)(t.Pi,{})})})}),_&&J&&(0,h.jsx)(`input`,{type:`hidden`,name:_,value:a.s(J,P,z)}),(0,h.jsx)(c.t,{className:`date-picker-popover`,style:{"--color-rgb":ae(b)},open:he,anchorRef:ke,onClose:()=>ge(!1),placement:`bottom-start`,children:nt()})]})}function le({items:e,selected:t,onSelect:r,label:i}){let a=(0,m.useRef)(null);(0,m.useEffect)(()=>{if(t===void 0||!a.current)return;let e=a.current.querySelector(`[data-value="${t}"]`);if(e){let t=a.current;t.scrollTop=e.offsetTop-t.clientHeight/2+e.offsetHeight/2}},[t]);let o=e=>typeof e==`number`?e.toString().padStart(2,`0`):e;return(0,h.jsxs)(`div`,{className:`date-picker-time-column`,children:[(0,h.jsx)(`div`,{className:`date-picker-time-column-label`,children:i}),(0,h.jsx)(`div`,{ref:a,className:`date-picker-time-column-list`,children:e.map(e=>(0,h.jsx)(`button`,{type:`button`,"data-value":e,className:n.t(`date-picker-time-column-item`,e===t&&`selected`),onClick:()=>r(e),children:o(e)},e))})]})}function N(e){let t=e.hours>=12?`PM`:`AM`;return{hours:e.hours%12||12,minutes:e.minutes,seconds:e.seconds,meridiem:t}}function P(e,t){return t===`AM`?e===12?0:e:e===12?12:e+12}function F(e,t,n,r,i){if(i===`24h`)return a.c(e,t,n,r);let o=N({hours:e,minutes:t,seconds:n}),s=`${o.hours.toString().padStart(2,`0`)}:${o.minutes.toString().padStart(2,`0`)}`;return`${r?`${s}:${o.seconds.toString().padStart(2,`0`)}`:s} ${o.meridiem}`}function I(e,t){if(t===`24h`)return a.h(e);let n=e.trim().toUpperCase().match(/^(\d{1,2}):(\d{2})(?::(\d{2}))?\s*(AM|PM)$/);if(n){let e=parseInt(n[1],10),t=parseInt(n[2],10),r=n[3]?parseInt(n[3],10):0,i=n[4];return e<1||e>12||t>59||r>59?null:{hours:P(e,i),minutes:t,seconds:r}}return a.h(e)}function L(e,t){return e.hours===t.hours?e.minutes===t.minutes?e.seconds-t.seconds:e.minutes-t.minutes:e.hours-t.hours}function R(e,t,n){return(!t||L(e,t)>=0)&&(!n||L(e,n)<=0)}function z({value:e,defaultValue:r,onChange:i,format:a=`24h`,showSeconds:o=!1,minuteStep:s=1,min:l,max:u,placeholder:d,disabled:f=!1,readOnly:p=!1,name:g,id:ee,variant:te=`outlined`,size:ne=`md`,color:_,label:v,helperText:re,errorText:ie,error:y=!1,required:ae=!1,clearable:b=!1,fullWidth:oe=!1,className:se,style:ce}){let[x,S]=(0,m.useState)(!1),[C,w]=(0,m.useState)(r??``),T=(0,m.useRef)(null),E=e===void 0?C:e,D=y||!!ie,O=I(E,a),k=I(l??``,a),A=I(u??``,a),j=O?N(O):null,M=O?F(O.hours,O.minutes,O.seconds,o,a):E,le=(0,m.useMemo)(()=>{let e=[],t=a===`12h`?12:23,n=+(a===`12h`);for(let r=n;r<=t;r++)e.push(r);return e},[a]),L=(0,m.useMemo)(()=>{let e=[];for(let t=0;t<60;t+=s)e.push(t);return e},[s]),z=(0,m.useMemo)(()=>{if(!o)return[];let e=[];for(let t=0;t<60;t++)e.push(t);return e},[o]),V=(0,m.useCallback)((e,t,n=0)=>R({hours:e,minutes:t,seconds:n},k,A),[A,k]),H=(0,m.useCallback)((t,n,r=0)=>{if(!V(t,n,r))return;let s=F(t,n,r,o,a);e===void 0&&w(s),i?.(s)},[a,V,i,o,e]),ue=(0,m.useCallback)(t=>{let n=t.target.value;e===void 0&&w(n)},[e]),de=(0,m.useCallback)(()=>{let t=I(E,a);if(t&&R(t,k,A)){let n=F(t.hours,t.minutes,t.seconds,o,a);e===void 0&&w(n),i?.(n)}},[E,a,A,k,i,o,e]),U=(0,m.useCallback)(e=>{let t=j?.hours??12,n=O?.minutes??0,r=O?.seconds??0;H(P(t,e),n,r)},[j?.hours,H,O?.minutes,O?.seconds]),fe=(0,m.useCallback)(t=>{t.stopPropagation(),e===void 0&&w(``),i?.(``)},[i,e]);return(0,h.jsxs)(`div`,{className:n.t(`time picker`,_&&`color-${_}`,oe&&`full-width`,se),style:ce,children:[v&&(0,h.jsx)(`label`,{htmlFor:ee,className:n.t(`field-label`,x&&`focused`,D&&`error`,ae&&`required`),children:v}),(0,h.jsxs)(`div`,{ref:T,className:n.t(`time trigger`,`field-${te}`,`field-${ne}`,x&&`focused`,D&&`error`,f&&`disabled`),onClick:()=>!f&&!p&&S(!0),children:[(0,h.jsx)(`span`,{className:`time icon`,children:(0,h.jsx)(t.Ni,{})}),(0,h.jsx)(`input`,{type:`text`,className:`time input`,value:M,onChange:ue,onBlur:de,placeholder:d??(a===`12h`?o?`hh:mm:ss AM`:`hh:mm AM`:o?`HH:MM:SS`:`HH:MM`),disabled:f,readOnly:p,id:ee,"aria-invalid":D||void 0}),b&&E&&!f&&(0,h.jsx)(`button`,{type:`button`,className:`time clear clear-btn-base`,onClick:fe,tabIndex:-1,"aria-label":`Clear time`,children:(0,h.jsx)(t.Ki,{})})]}),g&&(0,h.jsx)(`input`,{type:`hidden`,name:g,value:M}),(0,h.jsx)(c.t,{className:`time picker popover`,open:x,anchorRef:T,onClose:()=>S(!1),placement:`bottom-start`,children:(0,h.jsxs)(`div`,{className:`time columns`,children:[(0,h.jsx)(B,{items:le,selected:a===`12h`?j?.hours:O?.hours,onSelect:e=>H(a===`12h`?P(e,j?.meridiem??`AM`):e,O?.minutes??0,O?.seconds??0),isDisabled:e=>!V(a===`12h`?P(e,j?.meridiem??`AM`):e,O?.minutes??0,O?.seconds??0),label:`Hr`}),(0,h.jsx)(B,{items:L,selected:O?.minutes,onSelect:e=>H(O?.hours??0,e,O?.seconds??0),isDisabled:e=>!V(O?.hours??0,e,O?.seconds??0),label:`Min`}),o&&(0,h.jsx)(B,{items:z,selected:O?.seconds,onSelect:e=>H(O?.hours??0,O?.minutes??0,e),isDisabled:e=>!V(O?.hours??0,O?.minutes??0,e),label:`Sec`}),a===`12h`&&(0,h.jsx)(B,{items:[`AM`,`PM`],selected:j?.meridiem,onSelect:U,label:`AM/PM`})]})}),(ie||re)&&(0,h.jsx)(`div`,{className:`time bottom`,children:ie?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:ie}):(0,h.jsx)(`span`,{className:`time helper`,children:re})})]})}function B({items:e,selected:t,onSelect:r,isDisabled:i,label:a}){let o=(0,m.useRef)(null);(0,m.useEffect)(()=>{if(t===void 0||!o.current)return;let e=o.current.querySelector(`[data-value="${t}"]`);if(e){let t=o.current;t.scrollTop=e.offsetTop-t.clientHeight/2+e.offsetHeight/2}},[t]);let s=e=>typeof e==`number`?e.toString().padStart(2,`0`):e;return(0,h.jsxs)(`div`,{className:`time column`,children:[(0,h.jsx)(`div`,{className:`time column label`,children:a}),(0,h.jsx)(`div`,{ref:o,className:`time column list`,children:e.map(e=>{let a=i?.(e)??!1;return(0,h.jsx)(`button`,{type:`button`,"data-value":e,className:n.t(`time column item`,e===t&&`selected`,a&&`disabled`),onClick:()=>r(e),disabled:a,children:s(e)},e)})})]})}function V(e){if(!e)return null;if(e instanceof Date)return a._(e);let t=new Date(e);return isNaN(t.getTime())?null:a._(t)}function H(e,t){return e.getTime()<=t.getTime()?{start:e,end:t}:{start:t,end:e}}function ue(e,t,n){if(!t||!n)return!1;let r=e.getTime();return r>t.getTime()&&r<n.getTime()}function de(e,t,n){return e&&t?`${a.o(e,n)} - ${a.o(t,n)}`:e?`${a.o(e,n)} - ...`:``}function U(e){return new Date(e.getFullYear(),e.getMonth(),1)}function fe(e){return new Date(e.getFullYear(),e.getMonth()+1,0)}function W(e){let t=a._(new Date);return t.setDate(t.getDate()-(e-1)),t}function G(e){let t=a._(new Date);return new Date(t.getFullYear(),t.getMonth()-e,t.getDate())}function pe(e){let t=a._(new Date),n=new Date(t.getFullYear(),t.getMonth()-1,1);return[{label:e.presets.today,value:{start:t,end:t}},{label:e.presets.days2,value:{start:W(2),end:t}},{label:e.presets.days3,value:{start:W(3),end:t}},{label:e.presets.days7,value:{start:W(7),end:t}},{label:e.presets.days14,value:{start:W(14),end:t}},{label:e.presets.days31,value:{start:W(31),end:t}},{label:e.presets.thisMonth,value:{start:U(t),end:fe(t)}},{label:e.presets.previousMonth,value:{start:U(n),end:fe(n)}},{label:e.presets.months2,value:{start:G(2),end:t}},{label:e.presets.months3,value:{start:G(3),end:t}},{label:e.presets.months6,value:{start:G(6),end:t}},{label:e.presets.year1,value:{start:G(12),end:t}}]}function me(e,t){let n=e.getFullYear(),r=e.getMonth(),i=a.i(n,r),o=a.a(n,r);t===1&&(o=o===0?6:o-1);let s=[],c=r===0?11:r-1,l=r===0?n-1:n,u=a.i(l,c);for(let e=o-1;e>=0;--e)s.push({date:new Date(l,c,u-e),currentMonth:!1});for(let e=1;e<=i;e+=1)s.push({date:new Date(n,r,e),currentMonth:!0});let d=42-s.length,f=r===11?0:r+1,p=r===11?n+1:n;for(let e=1;e<=d;e+=1)s.push({date:new Date(p,f,e),currentMonth:!1});return s}function K({value:e,defaultValue:r,onChange:i,format:o=`dd.MM.yyyy`,locale:s,min:l,max:u,disabledDates:d,placeholder:f,disabled:g=!1,readOnly:ee=!1,name:te,id:ne,variant:_=`outlined`,size:v=`md`,color:re,label:y,helperText:b,errorText:oe,error:se=!1,required:ce=!1,clearable:x=!1,inline:S=!1,showTodayButton:C=!0,presets:w=!1,presetsSidebar:T=!1,firstDayOfWeek:E=1,fullWidth:D=!1,allowSameDay:O=!0,className:k,style:A}){let j=p.t(s),M=e?{start:V(e.start),end:V(e.end)}:null,[le,N]=(0,m.useState)(()=>({start:V(r?.start),end:V(r?.end)})),[P,F]=(0,m.useState)(null),[I,L]=(0,m.useState)(!1),R=(0,m.useRef)(null),z=M??le,B=z.start,U=z.end,fe=V(l),W=V(u),G=se||!!oe,K=ie(),he=a.u(j,E),ge=a.d(j),_e=(0,m.useMemo)(()=>w===!0||T&&!w?pe(K):Array.isArray(w)?w:[],[w,T,K]),[ve,ye]=(0,m.useState)(()=>{let e=B??new Date;return new Date(e.getFullYear(),e.getMonth(),1)}),be=B?.getTime()??null;(0,m.useEffect)(()=>{if(!be)return;let e=new Date(be);ye(new Date(e.getFullYear(),e.getMonth(),1))},[be]);let xe=(0,m.useCallback)(e=>a.f(e,fe,W)?Array.isArray(d)?d.some(t=>a.p(t,e)):typeof d==`function`?d(e):!1:!0,[d,W,fe]),q=(0,m.useCallback)(t=>{e===void 0&&N(t),i?.(t)},[i,e]),J=(0,m.useCallback)(e=>{if(!xe(e)){if(!B||B&&U){q({start:e,end:null}),F(null);return}!O&&a.p(e,B)||(q(H(B,e)),F(null),S||L(!1))}},[O,q,U,S,xe,B]),Se=(0,m.useCallback)(e=>{e.stopPropagation(),q({start:null,end:null}),F(null)},[q]),Ce=(0,m.useCallback)(()=>{let e=a._(new Date);xe(e)||(q({start:e,end:e}),ye(new Date(e.getFullYear(),e.getMonth(),1)),F(null),S||L(!1))},[q,S,xe]),we=(0,m.useCallback)(e=>{let t=V(e.value.start),n=V(e.value.end);if(!t||!n)return;let r=H(t,n);xe(r.start)||xe(r.end)||(q(r),ye(new Date(r.start.getFullYear(),r.start.getMonth(),1)),F(null),S||L(!1))},[q,S,xe]),Te=B&&!U?P:null,Y=ve,Ee=a.t(ve,1),De=a._(new Date),Oe=(0,m.useMemo)(()=>de(B,U,o),[U,o,B]),ke=(0,m.useMemo)(()=>[Y,Ee].map(e=>({monthDate:e,days:me(e,E)})),[E,Y,Ee]),Ae=B&&U?`${a.o(B,o)} - ${a.o(U,o)}`:B?`${a.o(B,o)} - ...`:f??K.defaultRangePlaceholder,je=T&&_e.length>0,Me=!T&&_e.length>0,Ne=()=>(0,h.jsx)(`div`,{className:`presets-sidebar`,children:_e.map(e=>(0,h.jsx)(`button`,{type:`button`,className:`preset-sidebar-btn`,onClick:()=>we(e),children:e.label},e.label))}),Pe=()=>(0,h.jsxs)(`div`,{className:`calendar-body`,children:[(0,h.jsxs)(`div`,{className:`calendar-top`,children:[(0,h.jsxs)(`div`,{className:`calendar-caption`,children:[(0,h.jsxs)(`span`,{className:`caption-title`,children:[ge[Y.getMonth()],` `,Y.getFullYear()]}),(0,h.jsx)(`span`,{className:`caption-subtitle`,children:K.rangeSubtitle})]}),(0,h.jsxs)(`div`,{className:`nav-actions`,children:[(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>ye(a.t(ve,-1)),"aria-label":K.previousMonth,children:(0,h.jsx)(t.Wi,{})}),(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>ye(a.t(ve,1)),"aria-label":K.nextMonth,children:(0,h.jsx)(t.Ui,{})})]})]}),Me&&(0,h.jsx)(`div`,{className:`presets`,children:_e.map(e=>(0,h.jsx)(`button`,{type:`button`,className:`preset-btn`,onClick:()=>we(e),children:e.label},e.label))}),(0,h.jsx)(`div`,{className:`months`,children:ke.map(({monthDate:e,days:t})=>(0,h.jsxs)(`div`,{className:`month-panel`,children:[(0,h.jsxs)(`div`,{className:`month-title`,children:[ge[e.getMonth()],` `,e.getFullYear()]}),(0,h.jsx)(`div`,{className:`day-names`,children:he.map(t=>(0,h.jsx)(`span`,{className:`day-name`,children:t},`${e.toISOString()}-${t}`))}),(0,h.jsx)(`div`,{className:`day-grid`,children:t.map(({date:t,currentMonth:r},i)=>{let o=xe(t),s=B?a.p(t,B):!1,c=U?a.p(t,U):!1,l=ue(t,B,U),u=!U&&B&&Te?H(B,Te):null,d=u?ue(t,u.start,u.end):!1,f=u?a.p(t,u.start)||a.p(t,u.end):!1;return(0,h.jsx)(`button`,{type:`button`,className:n.t(`day`,!r&&`other-month`,a.p(t,De)&&`today`,s&&`range-start selected`,c&&`range-end selected`,l&&`in-range`,d&&!f&&`preview-range`,o&&`disabled`),onClick:()=>J(t),onMouseEnter:()=>B&&!U&&F(t),onFocus:()=>B&&!U&&F(t),disabled:o,tabIndex:-1,children:t.getDate()},`${e.toISOString()}-${i}`)})})]},e.toISOString()))}),(0,h.jsxs)(`div`,{className:`footer`,children:[(0,h.jsx)(`span`,{className:`summary`,children:Ae}),(0,h.jsxs)(`div`,{className:`footer-actions`,children:[x&&(B||U)&&(0,h.jsx)(`button`,{type:`button`,className:`footer-btn`,onClick:e=>{e.preventDefault(),q({start:null,end:null}),F(null)},children:K.clear}),C&&(0,h.jsx)(`button`,{type:`button`,className:`footer-btn`,onClick:Ce,children:K.today})]})]})]}),Fe=()=>(0,h.jsxs)(`div`,{className:n.t(`date-range-calendar`,je&&`with-sidebar`),children:[je&&Ne(),Pe()]});return S?(0,h.jsxs)(`div`,{className:n.t(`date-range-picker`,re&&`color-${re}`,D&&`full-width`,k),style:A,children:[y&&(0,h.jsx)(`label`,{className:n.t(`field-label`,G&&`error`,ce&&`required`),children:y}),Fe()]}):(0,h.jsxs)(`div`,{className:n.t(`date-range-picker`,re&&`color-${re}`,D&&`full-width`,k),style:A,children:[y&&(0,h.jsx)(`label`,{htmlFor:ne,className:n.t(`field-label`,I&&`focused`,G&&`error`,ce&&`required`),children:y}),(0,h.jsxs)(`div`,{ref:R,className:n.t(`trigger`,`field-${_}`,`field-${v}`,I&&`focused`,G&&`error`,g&&`disabled`),onClick:()=>!g&&!ee&&L(!0),children:[(0,h.jsx)(`span`,{className:`icon`,children:(0,h.jsx)(t.Pi,{})}),(0,h.jsx)(`input`,{type:`text`,className:`input`,value:Oe,placeholder:f??K.defaultRangePlaceholder,disabled:g,readOnly:!0,id:ne,"aria-invalid":G||void 0}),x&&(B||U)&&!g&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:Se,tabIndex:-1,"aria-label":K.clear,children:(0,h.jsx)(t.Ki,{})})]}),te&&B&&U&&(0,h.jsx)(`input`,{type:`hidden`,name:te,value:`${B.toISOString().split(`T`)[0]}:${U.toISOString().split(`T`)[0]}`}),(0,h.jsx)(c.t,{className:`date-range-picker-popover`,style:{"--color-rgb":ae(re)},open:I,anchorRef:R,onClose:()=>{L(!1),F(null)},placement:`bottom-start`,children:Fe()}),(oe||b)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:oe?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:oe}):(0,h.jsx)(`span`,{className:`helper-text`,children:b})})]})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return K}});
|
|
2
|
-
//# sourceMappingURL=dropdowns-
|
|
1
|
+
const e=require(`./MI18nProvider-Cg-vxV6j.cjs`),t=require(`./icons-BfdQ45F2.cjs`),n=require(`./cn-CU5TNITO.cjs`),r=require(`./validators-B6yWdsu2.cjs`),i=require(`./formatters-CNjg_h7-.cjs`),a=require(`./dateUtils-Dq1vaA-D.cjs`),o=require(`./useGhostText-Dmkw3Am8.cjs`),s=require(`./useKeyboardNav-HVG9JFD2.cjs`),c=require(`./MPopover-hDqrn317.cjs`),l=require(`./MButton-R08y1HCT.cjs`),u=require(`./MCheckbox-CM5HJQWW.cjs`),d=require(`./MTag-BtlOVMRl.cjs`),f=require(`./MInput-BhTAfpYS.cjs`),p=require(`./locale-CbnstsMH.cjs`);require(`./core-DBpQf3uY.cjs`);let m=require(`react`),h=require(`react/jsx-runtime`);function g({options:e,value:r,defaultValue:i,onChange:a,multiple:o=!1,searchable:f=!1,placeholder:p=`MSelect...`,disabled:g=!1,name:ee,id:te,variant:ne=`outlined`,size:_=`md`,color:v,fullWidth:re=!1,label:ie,helperText:y,errorText:ae,error:b=!1,required:oe=!1,loading:se=!1,clearable:ce=!1,maxHeight:x=300,noOptionsText:S=`No options`,renderOption:C,renderValue:w,className:T,style:E}){let[D,O]=(0,m.useState)(!1),[k,A]=(0,m.useState)(i??(o?[]:``)),[j,M]=(0,m.useState)(``),le=(0,m.useRef)(null),N=r===void 0?k:r,P=b||!!ae,F=(0,m.useMemo)(()=>Array.isArray(N)?N:N?[N]:[],[N]),I=(0,m.useMemo)(()=>e.filter(e=>F.includes(e.value)),[e,F]),L=(0,m.useMemo)(()=>{if(!f||!j)return e;let t=j.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(t))},[e,f,j]),R=(0,m.useMemo)(()=>{let e=new Map;for(let t of L){let n=t.group??``;e.has(n)||e.set(n,[]),e.get(n).push(t)}return e},[L]),z=L,B=(0,m.useCallback)(e=>{let t=z[e];if(!(!t||t.disabled))if(o){let e=Array.isArray(N)?N:[],n=e.includes(t.value)?e.filter(e=>e!==t.value):[...e,t.value];r===void 0&&A(n),a?.(n)}else r===void 0&&A(t.value),a?.(t.value),O(!1),M(``)},[z,o,N,r,a]),{activeIndex:V,setActiveIndex:H,resetIndex:ue,onKeyDown:de}=s.t({itemCount:z.length,onSelect:B,onClose:()=>{O(!1),M(``)},isOpen:D}),U=(0,m.useCallback)(()=>{g||(O(e=>!e),ue())},[g,ue]),fe=(0,m.useCallback)(e=>{e.stopPropagation();let t=o?[]:``;r===void 0&&A(t),a?.(t)},[o,r,a]),W=(0,m.useMemo)(()=>w&&I.length>0?w(o?I:I[0]):o&&I.length>0?(0,h.jsx)(`span`,{className:`tags`,children:I.map(e=>(0,h.jsx)(d.t,{label:e.label,color:v,size:_,variant:`solid`},e.value))}):!o&&I.length>0?I[0].label:(0,h.jsx)(`span`,{className:`placeholder`,children:p}),[I,o,w,p,v,_]);return(0,h.jsxs)(`div`,{className:n.t(`select`,v&&`color-${v}`,re&&`full-width`,T),style:E,children:[ie&&(0,h.jsx)(`label`,{htmlFor:te,className:n.t(`field-label`,D&&`focused`,P&&`error`,oe&&`required`),children:ie}),(0,h.jsxs)(`div`,{ref:le,className:n.t(`trigger`,`field-${ne}`,`field-${_}`,D&&`focused`,P&&`error`,g&&`disabled`),onClick:U,onKeyDown:de,tabIndex:g?-1:0,role:`combobox`,"aria-expanded":D,"aria-haspopup":`listbox`,"aria-invalid":P||void 0,id:te,children:[(0,h.jsx)(`span`,{className:`value`,children:W}),se&&(0,h.jsx)(l.r,{size:`sm`,color:v}),ce&&F.length>0&&!se&&!g&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:fe,tabIndex:-1,"aria-label":`Clear selection`,children:(0,h.jsx)(t.Ki,{})}),(0,h.jsx)(`span`,{className:n.t(`arrow`,D&&`open`),"aria-hidden":`true`,children:(0,h.jsx)(t.Hi,{})})]}),ee&&(0,h.jsx)(`input`,{type:`hidden`,name:ee,value:Array.isArray(N)?N.join(`,`):N}),(0,h.jsx)(c.t,{className:`select-popover`,open:D,anchorRef:le,onClose:()=>{O(!1),M(``)},matchWidth:!0,placement:`bottom-start`,children:(0,h.jsxs)(`div`,{style:{maxHeight:x},className:`dropdown`,children:[f&&(0,h.jsx)(`div`,{className:`search-box`,children:(0,h.jsx)(`input`,{type:`text`,className:`search-input`,placeholder:`Search...`,value:j,onChange:e=>{M(e.target.value),H(0)},onKeyDown:de,autoFocus:!0})}),z.length===0?(0,h.jsx)(`div`,{className:`no-options`,children:S}):(0,h.jsx)(`div`,{className:`options-list`,role:`listbox`,children:[...R.entries()].map(([e,t])=>(0,h.jsxs)(`div`,{children:[e&&(0,h.jsx)(`div`,{className:`group-header`,children:e}),t.map(e=>{let t=z.indexOf(e),r=t===V,i=F.includes(e.value);return(0,h.jsxs)(`div`,{className:n.t(`option`,r&&`active`,i&&`selected`,e.disabled&&`disabled`),onClick:()=>!e.disabled&&B(t),onMouseEnter:()=>H(t),role:`option`,"aria-selected":i,"aria-disabled":e.disabled,children:[o&&(0,h.jsx)(u.t,{checked:i,size:`sm`,color:v,clickEffect:`none`,className:`select-check`}),C?C(e,r,i):e.label]},e.value)})]},e))})]})}),(ae||y)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:ae?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:ae}):(0,h.jsx)(`span`,{className:`helper-text`,children:y})})]})}function ee(e){return typeof e==`string`?e:String(e)}function te(e){return typeof e==`string`?e:String(e)}function ne(e,t,n){if(!t)return e;let r=t.toLowerCase();return e.filter(e=>n(e).toLowerCase().includes(r))}function _({options:e,value:r,onChange:i,getOptionLabel:a=ee,getOptionValue:u=te,filterOptions:f,multiple:p=!1,debounceMs:g=0,onInputChange:_,loading:v=!1,loadingText:re=`Loading...`,noOptionsText:ie=`No options`,placeholder:y=`Type to search...`,disabled:ae=!1,name:b,id:oe,variant:se=`outlined`,size:ce=`md`,color:x,fullWidth:S=!1,label:C,helperText:w,errorText:T,error:E=!1,required:D=!1,clearable:O=!1,maxHeight:k=300,renderOption:A,renderTags:j,className:M,style:le}){let[N,P]=(0,m.useState)(!1),[F,I]=(0,m.useState)(``),L=(0,m.useRef)(null),R=(0,m.useRef)(null),z=E||!!T,B=(0,m.useMemo)(()=>r==null?[]:Array.isArray(r)?r.filter(e=>e!=null):[r],[r]),V=(0,m.useMemo)(()=>f?f(e,F):ne(e,F,a),[e,F,f,a]),H=o.r(e=>_?.(e),g),ue=(0,m.useCallback)(e=>{I(e.target.value),H(e.target.value),N||P(!0)},[N,H]),de=(0,m.useCallback)(e=>{let t=V[e];if(t)if(p){let e=[...B],n=u(t),r=e.findIndex(e=>u(e)===n);r>=0?e.splice(r,1):e.push(t),i?.(e),I(``),R.current?.focus()}else i?.(t),I(a(t)),P(!1)},[V,p,B,u,a,i]),U=(0,m.useCallback)(e=>{let t=[...B];t.splice(e,1),i?.(p?t:t[0]??``)},[B,i,p]),{activeIndex:fe,setActiveIndex:W,resetIndex:G,onKeyDown:pe}=s.t({itemCount:V.length,onSelect:de,onClose:()=>P(!1),isOpen:N}),me=(0,m.useCallback)(e=>{if(e.key===`Backspace`&&p&&!F&&B.length>0){U(B.length-1);return}pe(e)},[F,p,B,pe,U]),K=(0,m.useCallback)(e=>{e.stopPropagation(),I(``),i?.(p?[]:``),R.current?.focus()},[p,i]);return(0,h.jsxs)(`div`,{className:n.t(`autocomplete`,x&&`color-${x}`,S&&`full-width`,M),style:le,children:[C&&(0,h.jsx)(`label`,{htmlFor:oe,className:n.t(`field-label`,N&&`focused`,z&&`error`,D&&`required`),children:C}),(0,h.jsxs)(`div`,{ref:L,className:n.t(`input-wrapper`,`field-${se}`,`field-${ce}`,N&&`focused`,z&&`error`,ae&&`disabled`),onClick:()=>R.current?.focus(),children:[p&&B.length>0&&(j?j(B,U):(0,h.jsx)(`span`,{className:`tags`,children:B.map((e,t)=>(0,h.jsx)(d.t,{label:a(e),color:x,size:ce,variant:`solid`,closable:!0,onClose:()=>U(t)},u(e)))})),(0,h.jsx)(`input`,{ref:R,type:`text`,className:`input`,value:F,onChange:ue,onFocus:()=>{P(!0),G()},onKeyDown:me,placeholder:B.length>0?``:y,disabled:ae,id:oe,"aria-expanded":N,"aria-haspopup":`listbox`,"aria-invalid":z||void 0,autoComplete:`off`}),v&&(0,h.jsx)(l.r,{size:`sm`,color:x}),O&&(B.length>0||F)&&!v&&!ae&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:K,tabIndex:-1,children:(0,h.jsx)(t.Ki,{})})]}),b&&(0,h.jsx)(`input`,{type:`hidden`,name:b,value:B.map(u).join(`,`)}),(0,h.jsx)(c.t,{className:n.t(`autocomplete-popover`,x&&`color-${x}`),open:N&&(V.length>0||v||!!F),anchorRef:L,onClose:()=>P(!1),matchWidth:!0,placement:`bottom-start`,children:(0,h.jsx)(`div`,{style:{maxHeight:k},className:`dropdown`,children:v?(0,h.jsx)(`div`,{className:`loading-msg`,children:re}):V.length===0?(0,h.jsx)(`div`,{className:`no-options`,children:ie}):(0,h.jsx)(`div`,{className:`options-list`,role:`listbox`,children:V.map((e,t)=>{let r=t===fe,i=B.some(t=>u(t)===u(e));return(0,h.jsx)(`div`,{className:n.t(`option`,r&&`active`,i&&`selected`),onClick:()=>de(t),onMouseEnter:()=>W(t),role:`option`,"aria-selected":i,children:A?A(e,r):a(e)},u(e))})})})}),(T||w)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:T?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:T}):(0,h.jsx)(`span`,{className:`helper-text`,children:w})})]})}function v(){let t=e.r();return(0,m.useCallback)((e,n)=>t?.t(e,n)??n,[t])}function re(){let e=v();return(0,m.useMemo)(()=>({today:e(`mineralui.datePicker.today`,`Today`),clear:e(`mineralui.datePicker.clear`,`Clear`),previousMonth:e(`mineralui.datePicker.previousMonth`,`Previous month`),nextMonth:e(`mineralui.datePicker.nextMonth`,`Next month`)}),[e])}function ie(){let e=v();return(0,m.useMemo)(()=>({today:e(`mineralui.dateRangePicker.today`,`Today`),clear:e(`mineralui.dateRangePicker.clear`,`Clear`),previousMonth:e(`mineralui.dateRangePicker.previousMonth`,`Previous month`),nextMonth:e(`mineralui.dateRangePicker.nextMonth`,`Next month`),rangeSubtitle:e(`mineralui.dateRangePicker.rangeSubtitle`,`Select start and end dates in one panel.`),defaultRangePlaceholder:e(`mineralui.dateRangePicker.defaultRangePlaceholder`,`Select date range...`),presets:{today:e(`mineralui.dateRangePicker.presets.today`,`Today`),days2:e(`mineralui.dateRangePicker.presets.days2`,`2 days`),days3:e(`mineralui.dateRangePicker.presets.days3`,`3 days`),days7:e(`mineralui.dateRangePicker.presets.days7`,`7 days`),days14:e(`mineralui.dateRangePicker.presets.days14`,`14 days`),days31:e(`mineralui.dateRangePicker.presets.days31`,`31 days`),thisMonth:e(`mineralui.dateRangePicker.presets.thisMonth`,`This month`),previousMonth:e(`mineralui.dateRangePicker.presets.previousMonth`,`Previous month`),months2:e(`mineralui.dateRangePicker.presets.months2`,`2 months`),months3:e(`mineralui.dateRangePicker.presets.months3`,`3 months`),months6:e(`mineralui.dateRangePicker.presets.months6`,`6 months`),year1:e(`mineralui.dateRangePicker.presets.year1`,`1 year`)}}),[e])}var y={primary:`var(--mineral-primary-rgb)`,neutral:`var(--mineral-neutral-rgb)`,success:`var(--mineral-success-rgb)`,error:`var(--mineral-error-rgb)`,warning:`var(--mineral-warning-rgb)`,info:`var(--mineral-info-rgb)`,light:`var(--mineral-light-rgb)`,dark:`var(--mineral-dark-color-rgb)`,news:`var(--mineral-news-rgb)`};function ae(e){return y[e??`primary`]??y.primary}var b=`Date is unavailable`,oe=`Invalid time`;function se(e){if(!e)return null;if(e instanceof Date)return isNaN(e.getTime())?null:new Date(e.getTime());let t=new Date(e);return isNaN(t.getTime())?null:t}function ce(e){let t=e.replace(/DD/g,`dd`).replace(/YYYY/g,`yyyy`),n=t.match(/dd|MM|yyyy/g),r=t.match(/[^dMy]/)?.[0],i=r===`/`||r===`.`||r===`-`?r:`.`;switch(n?.join(`/`)){case`MM/dd/yyyy`:return{inputFormat:`MM/DD/YYYY`,separator:i};case`yyyy/MM/dd`:return{inputFormat:`YYYY/MM/DD`,separator:i};default:return{inputFormat:`DD/MM/YYYY`,separator:i}}}function x(e,t){return e===`12h`?t?`hh:mm:ss AM`:`hh:mm AM`:t?`HH:MM:SS`:`HH:MM`}function S(e,t,n,r,i,a){return e||(n?`${t} ${a??x(r,i)}`:t)}function C(e,t){if(!e)return``;let n=a.o(a._(e),t.format);return t.withTime?`${n} ${a.l(e.getHours(),e.getMinutes(),e.getSeconds(),t.showSeconds,t.timeFormat)}`:n}function w(e,t){return e?e.length<=2?e:e.length<=4?`${e.slice(0,2)}:${e.slice(2)}`:t?`${e.slice(0,2)}:${e.slice(2,4)}:${e.slice(4,6)}`:`${e.slice(0,2)}:${e.slice(2,4)}`:``}function T(e){let t=e.toUpperCase().replace(/[^APM]/g,``);return t?t.startsWith(`AM`)?`AM`:t.startsWith(`PM`)?`PM`:t.startsWith(`A`)?`A`:t.startsWith(`P`)?`P`:``:``}function E(e,t){let n=e.trim();if(!n)return{datePart:``,timePart:``};if(!t)return{datePart:n,timePart:``};let r=n.indexOf(` `);return r===-1?{datePart:n,timePart:``}:{datePart:n.slice(0,r).trim(),timePart:n.slice(r+1).trim()}}function D(e,t){let n=e.toUpperCase(),r=i.u(n),a=r.slice(0,8),o=t.withTime?r.slice(8,8+(t.showSeconds?6:4)):``,s=i.i(a,t.inputFormat,t.separator);if(!t.withTime)return{formatted:s,datePart:s,timePart:``};let c=w(o,t.showSeconds),l=t.timeFormat===`12h`?T(n):``,u=`${c}${l?`${c?` `:``}${l}`:``}`.trim();if(!s)return{formatted:u,datePart:``,timePart:u};let d=a.length===8,f=/\s/.test(n.slice(s.length));return{formatted:u||d&&f?`${s} ${u}`:s,datePart:s,timePart:u}}function O(e,t){return e?a.l(e.getHours(),e.getMinutes(),e.getSeconds(),t,`24h`):``}function k(e,t){let{datePart:n,timePart:i}=E(e,t.withTime);if(!n&&!i)return{status:`empty`};let o=r.a(n,{format:t.inputFormat,minDate:t.minDate??void 0,maxDate:t.maxDate??void 0});if(!o.valid)return o.error===`Incomplete date`?{status:`partial`,datePart:n,timePart:i}:{status:`invalid`,datePart:n,timePart:i,result:o};let s=r.i(n,t.inputFormat);return s?t.isDisabled(s)?{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:b}}:t.withTime?i?a.g(i,t.timeFormat)?{status:`valid`,datePart:n,timePart:i,value:a.r(s,i,{format:t.timeFormat,showSeconds:t.showSeconds})}:{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:oe}}:{status:`valid`,datePart:n,timePart:``,value:a.r(s,``,{format:t.timeFormat,showSeconds:t.showSeconds})}:{status:`valid`,datePart:n,timePart:``,value:a._(s)}:{status:`invalid`,datePart:n,timePart:i,result:{valid:!1,error:`Invalid date`}}}function A(e){let t=e.hours>=12?`PM`:`AM`;return{hours:e.hours%12||12,minutes:e.minutes,seconds:e.seconds,meridiem:t}}function j(e,t){return t===`AM`?e===12?0:e:e===12?12:e+12}function M({value:e,defaultValue:r,onChange:o,format:s=`dd.MM.yyyy`,locale:l,min:u,max:d,disabledDates:g,placeholder:ee,disabled:te=!1,readOnly:ne=!1,name:_,id:v,variant:ie=`outlined`,size:y=`md`,color:b,label:x,helperText:w,errorText:T,error:E=!1,required:M=!1,clearable:N=!1,withTime:P=!1,validateOnBlur:F=!0,validateOnChange:I=!1,onValidationChange:L,timeFormat:R=`24h`,showSeconds:z=!1,minuteStep:B=1,timePlaceholder:V,inline:H=!1,showTodayButton:ue=!0,firstDayOfWeek:de=1,fullWidth:U=!1,className:fe,style:W}){let G=p.t(l),pe=re(),{inputFormat:me,separator:K}=(0,m.useMemo)(()=>ce(s),[s]),[he,ge]=(0,m.useState)(!1),[_e,ve]=(0,m.useState)(()=>se(r)),[ye,be]=(0,m.useState)({valid:!0}),[xe,q]=(0,m.useState)(!1),J=e===void 0?_e:se(e),[Se,Ce]=(0,m.useState)(()=>C(J,{format:s,withTime:P,timeFormat:R,showSeconds:z})),[we,Te]=(0,m.useState)(()=>O(J,z)),[Y,Ee]=(0,m.useState)(()=>{let e=J?a._(J):new Date;return new Date(e.getFullYear(),e.getMonth(),1)}),[De,Oe]=(0,m.useState)(`days`),ke=(0,m.useRef)(null),Ae=J?.getTime()??null,je=se(u),Me=se(d),Ne=E||xe&&!ye.valid,Pe=T||(xe&&!ye.valid?ye.error:void 0),Fe=a.u(G,de),Ie=a.d(G);(0,m.useEffect)(()=>{if(Ce(C(J,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(J,z)),J){let e=a._(J);Ee(new Date(e.getFullYear(),e.getMonth(),1))}},[s,Ae,z,R,P]);let X=(0,m.useCallback)(e=>a.f(e,je,Me)?Array.isArray(g)?g.some(t=>a.p(t,e)):typeof g==`function`?g(e):!1:!0,[g,Me,je]),Z=(0,m.useCallback)(e=>{be(e),L?.(e)},[L]),Q=(0,m.useCallback)(t=>{e===void 0&&ve(t),o?.(t)},[o,e]),Le=(0,m.useMemo)(()=>k(Se,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X}),[me,Se,X,Me,je,z,R,P]),Re=(0,m.useMemo)(()=>Le.status===`valid`?a._(Le.value):J?a._(J):null,[Le,J]),$=(0,m.useMemo)(()=>P?a.g(Le.status!==`empty`&&Le.timePart?Le.timePart:we||O(J,z),R)??{hours:0,minutes:0,seconds:0}:null,[we,Le,J,z,R,P]),ze=(0,m.useCallback)(e=>{let t=D(e.target.value,{inputFormat:me,separator:K,withTime:P,timeFormat:R,showSeconds:z});Ce(t.formatted),Te(t.timePart);let n=k(t.formatted,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(n.status===`empty`){Z({valid:!0}),Q(null);return}if(n.status===`invalid`&&I)Z(n.result);else if(n.status===`valid`){Z({valid:!0}),Ee(new Date(n.value.getFullYear(),n.value.getMonth(),1));let t=z?6:4,r=P?i.u(e.target.value).slice(8).length:0;(!P||r>=t)&&Q(n.value)}},[Q,Z,me,X,Me,je,K,z,R,I,P]),Be=(0,m.useCallback)(()=>{q(!0);let e=k(Se,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(e.status===`empty`){Z({valid:!0});return}if(e.status===`partial`){F&&Z({valid:!1,error:`Incomplete date`});return}if(e.status===`invalid`){if(P&&e.result.error===oe&&e.datePart){let t=a.l(0,0,0,z,R),n=k(`${e.datePart} ${t}`,{inputFormat:me,minDate:je,maxDate:Me,withTime:P,timeFormat:R,showSeconds:z,isDisabled:X});if(n.status===`valid`){Z({valid:!0}),Ce(C(n.value,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(n.value,z)),Q(n.value);return}}F&&Z(e.result);return}Z({valid:!0}),Ce(C(e.value,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Te(O(e.value,z)),Q(e.value)},[Q,Z,s,me,Se,X,Me,je,z,R,F,P]),Ve=(0,m.useCallback)(e=>{[`Backspace`,`Delete`,`Tab`,`ArrowLeft`,`ArrowRight`,`Home`,`End`,`Enter`].includes(e.key)||e.ctrlKey||e.metaKey||(P?/^[0-9\s:./-APMapm]$/:/^[0-9./-]$/).test(e.key)||e.preventDefault()},[P]),He=(0,m.useCallback)(()=>{Ce(``),Te(``),q(!1),Z({valid:!0}),Q(null)},[Q,Z]),Ue=(0,m.useCallback)(e=>{e.preventDefault(),e.stopPropagation(),!(te||ne||H)&&ge(e=>!e)},[te,H,ne]),We=(0,m.useCallback)(e=>{if(X(e))return;let t=P?we||a.l(0,0,0,z,R):``,n=P?a.r(e,t,{format:R,showSeconds:z}):a._(e);q(!0),Z({valid:!0}),Te(t),Ce(C(n,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Ee(new Date(e.getFullYear(),e.getMonth(),1)),Q(n),!P&&!H&&ge(!1)},[Q,we,Z,s,H,X,z,R,P]),Ge=(0,m.useCallback)(()=>{let e=a._(new Date);X(e)||We(e)},[We,X]),Ke=(0,m.useMemo)(()=>{if(!P)return[];let e=[],t=R===`12h`?12:23,n=+(R===`12h`);for(let r=n;r<=t;r+=1)e.push(r);return e},[R,P]),qe=(0,m.useMemo)(()=>{if(!P)return[];let e=[];for(let t=0;t<60;t+=B)e.push(t);return e},[B,P]),Je=(0,m.useMemo)(()=>{if(!P||!z)return[];let e=[];for(let t=0;t<60;t+=1)e.push(t);return e},[z,P]),Ye=(0,m.useCallback)((e,t,n=0)=>{let r=a.l(e,t,n,z,R),i=Re;if(q(!0),Te(r),!i){Ce(r);return}let o=a.r(i,r,{format:R,showSeconds:z});Z({valid:!0}),Ce(C(o,{format:s,withTime:P,timeFormat:R,showSeconds:z})),Q(o)},[Q,Re,Z,s,z,R,P]),Xe=(0,m.useCallback)(e=>{Ye(j($?A($).hours:12,e),$?.minutes??0,$?.seconds??0)},[$,Ye]),Ze=(0,m.useMemo)(()=>{let e=Y.getFullYear(),t=Y.getMonth(),n=a.i(e,t),r=a.a(e,t);de===1&&(r=r===0?6:r-1);let i=[],o=t===0?11:t-1,s=t===0?e-1:e,c=a.i(s,o);for(let e=r-1;e>=0;--e)i.push({date:new Date(s,o,c-e),currentMonth:!1});for(let r=1;r<=n;r+=1)i.push({date:new Date(e,t,r),currentMonth:!0});let l=42-i.length,u=t===11?0:t+1,d=t===11?e+1:e;for(let e=1;e<=l;e+=1)i.push({date:new Date(d,u,e),currentMonth:!1});return i},[de,Y]),Qe=a._(new Date),$e=J?a._(J):Re,et=()=>(0,h.jsxs)(`div`,{className:`calendar`,children:[(0,h.jsxs)(`div`,{className:`calendar-header`,children:[(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>Ee(a.t(Y,-1)),"aria-label":pe.previousMonth,children:(0,h.jsx)(t.Wi,{})}),(0,h.jsxs)(`button`,{type:`button`,className:`header-title`,onClick:()=>Oe(e=>e===`days`?`months`:`days`),children:[Ie[Y.getMonth()],` `,Y.getFullYear()]}),(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>Ee(a.t(Y,1)),"aria-label":pe.nextMonth,children:(0,h.jsx)(t.Ui,{})})]}),De===`days`?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(`div`,{className:`day-names`,children:Fe.map(e=>(0,h.jsx)(`span`,{className:`day-name`,children:e},e))}),(0,h.jsx)(`div`,{className:`day-grid`,children:Ze.map(({date:e,currentMonth:t},r)=>{let i=$e?a.p(e,$e):!1,o=a.p(e,Qe),s=X(e);return(0,h.jsx)(`button`,{type:`button`,className:n.t(`day`,!t&&`other-month`,o&&`today`,i&&`selected`,s&&`disabled`),onClick:()=>We(e),disabled:s,tabIndex:-1,children:e.getDate()},`${e.toISOString()}-${r}`)})})]}):(0,h.jsx)(`div`,{className:`month-grid`,children:Ie.map((e,t)=>(0,h.jsx)(`button`,{type:`button`,className:n.t(`month-cell`,Y.getMonth()===t&&`selected`),onClick:()=>{Ee(new Date(Y.getFullYear(),t,1)),Oe(`days`)},children:e.slice(0,3)},e))}),ue&&(0,h.jsx)(`div`,{className:`footer`,children:(0,h.jsx)(`button`,{type:`button`,className:`today-btn`,onClick:Ge,children:pe.today})})]}),tt=()=>{if(!P)return null;let e=$?A($):null;return(0,h.jsxs)(`div`,{className:`date-picker-time-panel`,children:[(0,h.jsx)(`div`,{className:`date-picker-time-header`,children:`Time`}),(0,h.jsxs)(`div`,{className:`date-picker-time-columns`,children:[(0,h.jsx)(le,{items:Ke,selected:R===`12h`?e?.hours:$?.hours,onSelect:t=>Ye(R===`12h`?j(t,e?.meridiem??`AM`):t,$?.minutes??0,$?.seconds??0),label:`Hr`}),(0,h.jsx)(le,{items:qe,selected:$?.minutes,onSelect:e=>Ye($?.hours??0,e,$?.seconds??0),label:`Min`}),z&&(0,h.jsx)(le,{items:Je,selected:$?.seconds,onSelect:e=>Ye($?.hours??0,$?.minutes??0,e),label:`Sec`}),R===`12h`&&(0,h.jsx)(le,{items:[`AM`,`PM`],selected:e?.meridiem,onSelect:Xe,label:`AM/PM`})]})]})},nt=()=>(0,h.jsxs)(`div`,{className:n.t(`date-picker-popover-content`,P&&`with-time`),children:[et(),tt()]}),rt=P?R===`12h`?z?22:19:z?19:16:10,it=S(ee,s,P,R,z,V);return H?(0,h.jsxs)(`div`,{className:n.t(`date-picker`,b&&`color-${b}`,U&&`full-width`,fe),style:W,children:[(0,h.jsx)(f.t,{value:Se,onChange:ze,onBlur:Be,onKeyDown:Ve,onClear:He,type:`text`,inputMode:P?`text`:`numeric`,autoComplete:`off`,maxLength:rt,placeholder:it,disabled:te,readOnly:ne,id:v,variant:ie,size:y,color:b,label:x,helperText:w,error:Ne,errorText:Pe,required:M,clearable:N,fullWidth:U}),nt(),_&&J&&(0,h.jsx)(`input`,{type:`hidden`,name:_,value:a.s(J,P,z)})]}):(0,h.jsxs)(`div`,{className:n.t(`date-picker`,b&&`color-${b}`,U&&`full-width`,fe),style:W,children:[(0,h.jsx)(`div`,{ref:ke,className:`date-picker-input-anchor`,children:(0,h.jsx)(f.t,{value:Se,onChange:ze,onBlur:Be,onKeyDown:Ve,onClear:He,type:`text`,inputMode:P?`text`:`numeric`,autoComplete:`off`,maxLength:rt,placeholder:it,disabled:te,readOnly:ne,id:v,variant:ie,size:y,color:b,label:x,helperText:w,error:Ne,errorText:Pe,required:M,clearable:N,fullWidth:U,endIcon:(0,h.jsx)(`button`,{type:`button`,className:`date-picker-toggle`,onMouseDown:e=>e.preventDefault(),onClick:Ue,"aria-label":`Open calendar`,disabled:te||ne,children:(0,h.jsx)(t.Pi,{})})})}),_&&J&&(0,h.jsx)(`input`,{type:`hidden`,name:_,value:a.s(J,P,z)}),(0,h.jsx)(c.t,{className:`date-picker-popover`,style:{"--color-rgb":ae(b)},open:he,anchorRef:ke,onClose:()=>ge(!1),placement:`bottom-start`,children:nt()})]})}function le({items:e,selected:t,onSelect:r,label:i}){let a=(0,m.useRef)(null);(0,m.useEffect)(()=>{if(t===void 0||!a.current)return;let e=a.current.querySelector(`[data-value="${t}"]`);if(e){let t=a.current;t.scrollTop=e.offsetTop-t.clientHeight/2+e.offsetHeight/2}},[t]);let o=e=>typeof e==`number`?e.toString().padStart(2,`0`):e;return(0,h.jsxs)(`div`,{className:`date-picker-time-column`,children:[(0,h.jsx)(`div`,{className:`date-picker-time-column-label`,children:i}),(0,h.jsx)(`div`,{ref:a,className:`date-picker-time-column-list`,children:e.map(e=>(0,h.jsx)(`button`,{type:`button`,"data-value":e,className:n.t(`date-picker-time-column-item`,e===t&&`selected`),onClick:()=>r(e),children:o(e)},e))})]})}function N(e){let t=e.hours>=12?`PM`:`AM`;return{hours:e.hours%12||12,minutes:e.minutes,seconds:e.seconds,meridiem:t}}function P(e,t){return t===`AM`?e===12?0:e:e===12?12:e+12}function F(e,t,n,r,i){if(i===`24h`)return a.c(e,t,n,r);let o=N({hours:e,minutes:t,seconds:n}),s=`${o.hours.toString().padStart(2,`0`)}:${o.minutes.toString().padStart(2,`0`)}`;return`${r?`${s}:${o.seconds.toString().padStart(2,`0`)}`:s} ${o.meridiem}`}function I(e,t){if(t===`24h`)return a.h(e);let n=e.trim().toUpperCase().match(/^(\d{1,2}):(\d{2})(?::(\d{2}))?\s*(AM|PM)$/);if(n){let e=parseInt(n[1],10),t=parseInt(n[2],10),r=n[3]?parseInt(n[3],10):0,i=n[4];return e<1||e>12||t>59||r>59?null:{hours:P(e,i),minutes:t,seconds:r}}return a.h(e)}function L(e,t){return e.hours===t.hours?e.minutes===t.minutes?e.seconds-t.seconds:e.minutes-t.minutes:e.hours-t.hours}function R(e,t,n){return(!t||L(e,t)>=0)&&(!n||L(e,n)<=0)}function z({value:e,defaultValue:r,onChange:i,format:a=`24h`,showSeconds:o=!1,minuteStep:s=1,min:l,max:u,placeholder:d,disabled:f=!1,readOnly:p=!1,name:g,id:ee,variant:te=`outlined`,size:ne=`md`,color:_,label:v,helperText:re,errorText:ie,error:y=!1,required:ae=!1,clearable:b=!1,fullWidth:oe=!1,className:se,style:ce}){let[x,S]=(0,m.useState)(!1),[C,w]=(0,m.useState)(r??``),T=(0,m.useRef)(null),E=e===void 0?C:e,D=y||!!ie,O=I(E,a),k=I(l??``,a),A=I(u??``,a),j=O?N(O):null,M=O?F(O.hours,O.minutes,O.seconds,o,a):E,le=(0,m.useMemo)(()=>{let e=[],t=a===`12h`?12:23,n=+(a===`12h`);for(let r=n;r<=t;r++)e.push(r);return e},[a]),L=(0,m.useMemo)(()=>{let e=[];for(let t=0;t<60;t+=s)e.push(t);return e},[s]),z=(0,m.useMemo)(()=>{if(!o)return[];let e=[];for(let t=0;t<60;t++)e.push(t);return e},[o]),V=(0,m.useCallback)((e,t,n=0)=>R({hours:e,minutes:t,seconds:n},k,A),[A,k]),H=(0,m.useCallback)((t,n,r=0)=>{if(!V(t,n,r))return;let s=F(t,n,r,o,a);e===void 0&&w(s),i?.(s)},[a,V,i,o,e]),ue=(0,m.useCallback)(t=>{let n=t.target.value;e===void 0&&w(n)},[e]),de=(0,m.useCallback)(()=>{let t=I(E,a);if(t&&R(t,k,A)){let n=F(t.hours,t.minutes,t.seconds,o,a);e===void 0&&w(n),i?.(n)}},[E,a,A,k,i,o,e]),U=(0,m.useCallback)(e=>{let t=j?.hours??12,n=O?.minutes??0,r=O?.seconds??0;H(P(t,e),n,r)},[j?.hours,H,O?.minutes,O?.seconds]),fe=(0,m.useCallback)(t=>{t.stopPropagation(),e===void 0&&w(``),i?.(``)},[i,e]);return(0,h.jsxs)(`div`,{className:n.t(`time picker`,_&&`color-${_}`,oe&&`full-width`,se),style:ce,children:[v&&(0,h.jsx)(`label`,{htmlFor:ee,className:n.t(`field-label`,x&&`focused`,D&&`error`,ae&&`required`),children:v}),(0,h.jsxs)(`div`,{ref:T,className:n.t(`time trigger`,`field-${te}`,`field-${ne}`,x&&`focused`,D&&`error`,f&&`disabled`),onClick:()=>!f&&!p&&S(!0),children:[(0,h.jsx)(`span`,{className:`time icon`,children:(0,h.jsx)(t.Ni,{})}),(0,h.jsx)(`input`,{type:`text`,className:`time input`,value:M,onChange:ue,onBlur:de,placeholder:d??(a===`12h`?o?`hh:mm:ss AM`:`hh:mm AM`:o?`HH:MM:SS`:`HH:MM`),disabled:f,readOnly:p,id:ee,"aria-invalid":D||void 0}),b&&E&&!f&&(0,h.jsx)(`button`,{type:`button`,className:`time clear clear-btn-base`,onClick:fe,tabIndex:-1,"aria-label":`Clear time`,children:(0,h.jsx)(t.Ki,{})})]}),g&&(0,h.jsx)(`input`,{type:`hidden`,name:g,value:M}),(0,h.jsx)(c.t,{className:`time picker popover`,open:x,anchorRef:T,onClose:()=>S(!1),placement:`bottom-start`,children:(0,h.jsxs)(`div`,{className:`time columns`,children:[(0,h.jsx)(B,{items:le,selected:a===`12h`?j?.hours:O?.hours,onSelect:e=>H(a===`12h`?P(e,j?.meridiem??`AM`):e,O?.minutes??0,O?.seconds??0),isDisabled:e=>!V(a===`12h`?P(e,j?.meridiem??`AM`):e,O?.minutes??0,O?.seconds??0),label:`Hr`}),(0,h.jsx)(B,{items:L,selected:O?.minutes,onSelect:e=>H(O?.hours??0,e,O?.seconds??0),isDisabled:e=>!V(O?.hours??0,e,O?.seconds??0),label:`Min`}),o&&(0,h.jsx)(B,{items:z,selected:O?.seconds,onSelect:e=>H(O?.hours??0,O?.minutes??0,e),isDisabled:e=>!V(O?.hours??0,O?.minutes??0,e),label:`Sec`}),a===`12h`&&(0,h.jsx)(B,{items:[`AM`,`PM`],selected:j?.meridiem,onSelect:U,label:`AM/PM`})]})}),(ie||re)&&(0,h.jsx)(`div`,{className:`time bottom`,children:ie?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:ie}):(0,h.jsx)(`span`,{className:`time helper`,children:re})})]})}function B({items:e,selected:t,onSelect:r,isDisabled:i,label:a}){let o=(0,m.useRef)(null);(0,m.useEffect)(()=>{if(t===void 0||!o.current)return;let e=o.current.querySelector(`[data-value="${t}"]`);if(e){let t=o.current;t.scrollTop=e.offsetTop-t.clientHeight/2+e.offsetHeight/2}},[t]);let s=e=>typeof e==`number`?e.toString().padStart(2,`0`):e;return(0,h.jsxs)(`div`,{className:`time column`,children:[(0,h.jsx)(`div`,{className:`time column label`,children:a}),(0,h.jsx)(`div`,{ref:o,className:`time column list`,children:e.map(e=>{let a=i?.(e)??!1;return(0,h.jsx)(`button`,{type:`button`,"data-value":e,className:n.t(`time column item`,e===t&&`selected`,a&&`disabled`),onClick:()=>r(e),disabled:a,children:s(e)},e)})})]})}function V(e){if(!e)return null;if(e instanceof Date)return a._(e);let t=new Date(e);return isNaN(t.getTime())?null:a._(t)}function H(e,t){return e.getTime()<=t.getTime()?{start:e,end:t}:{start:t,end:e}}function ue(e,t,n){if(!t||!n)return!1;let r=e.getTime();return r>t.getTime()&&r<n.getTime()}function de(e,t,n){return e&&t?`${a.o(e,n)} - ${a.o(t,n)}`:e?`${a.o(e,n)} - ...`:``}function U(e){return new Date(e.getFullYear(),e.getMonth(),1)}function fe(e){return new Date(e.getFullYear(),e.getMonth()+1,0)}function W(e){let t=a._(new Date);return t.setDate(t.getDate()-(e-1)),t}function G(e){let t=a._(new Date);return new Date(t.getFullYear(),t.getMonth()-e,t.getDate())}function pe(e){let t=a._(new Date),n=new Date(t.getFullYear(),t.getMonth()-1,1);return[{label:e.presets.today,value:{start:t,end:t}},{label:e.presets.days2,value:{start:W(2),end:t}},{label:e.presets.days3,value:{start:W(3),end:t}},{label:e.presets.days7,value:{start:W(7),end:t}},{label:e.presets.days14,value:{start:W(14),end:t}},{label:e.presets.days31,value:{start:W(31),end:t}},{label:e.presets.thisMonth,value:{start:U(t),end:fe(t)}},{label:e.presets.previousMonth,value:{start:U(n),end:fe(n)}},{label:e.presets.months2,value:{start:G(2),end:t}},{label:e.presets.months3,value:{start:G(3),end:t}},{label:e.presets.months6,value:{start:G(6),end:t}},{label:e.presets.year1,value:{start:G(12),end:t}}]}function me(e,t){let n=e.getFullYear(),r=e.getMonth(),i=a.i(n,r),o=a.a(n,r);t===1&&(o=o===0?6:o-1);let s=[],c=r===0?11:r-1,l=r===0?n-1:n,u=a.i(l,c);for(let e=o-1;e>=0;--e)s.push({date:new Date(l,c,u-e),currentMonth:!1});for(let e=1;e<=i;e+=1)s.push({date:new Date(n,r,e),currentMonth:!0});let d=42-s.length,f=r===11?0:r+1,p=r===11?n+1:n;for(let e=1;e<=d;e+=1)s.push({date:new Date(p,f,e),currentMonth:!1});return s}function K({value:e,defaultValue:r,onChange:i,format:o=`dd.MM.yyyy`,locale:s,min:l,max:u,disabledDates:d,placeholder:f,disabled:g=!1,readOnly:ee=!1,name:te,id:ne,variant:_=`outlined`,size:v=`md`,color:re,label:y,helperText:b,errorText:oe,error:se=!1,required:ce=!1,clearable:x=!1,inline:S=!1,showTodayButton:C=!0,presets:w=!1,presetsSidebar:T=!1,firstDayOfWeek:E=1,fullWidth:D=!1,allowSameDay:O=!0,className:k,style:A}){let j=p.t(s),M=e?{start:V(e.start),end:V(e.end)}:null,[le,N]=(0,m.useState)(()=>({start:V(r?.start),end:V(r?.end)})),[P,F]=(0,m.useState)(null),[I,L]=(0,m.useState)(!1),R=(0,m.useRef)(null),z=M??le,B=z.start,U=z.end,fe=V(l),W=V(u),G=se||!!oe,K=ie(),he=a.u(j,E),ge=a.d(j),_e=(0,m.useMemo)(()=>w===!0||T&&!w?pe(K):Array.isArray(w)?w:[],[w,T,K]),[ve,ye]=(0,m.useState)(()=>{let e=B??new Date;return new Date(e.getFullYear(),e.getMonth(),1)}),be=B?.getTime()??null;(0,m.useEffect)(()=>{if(!be)return;let e=new Date(be);ye(new Date(e.getFullYear(),e.getMonth(),1))},[be]);let xe=(0,m.useCallback)(e=>a.f(e,fe,W)?Array.isArray(d)?d.some(t=>a.p(t,e)):typeof d==`function`?d(e):!1:!0,[d,W,fe]),q=(0,m.useCallback)(t=>{e===void 0&&N(t),i?.(t)},[i,e]),J=(0,m.useCallback)(e=>{if(!xe(e)){if(!B||B&&U){q({start:e,end:null}),F(null);return}!O&&a.p(e,B)||(q(H(B,e)),F(null),S||L(!1))}},[O,q,U,S,xe,B]),Se=(0,m.useCallback)(e=>{e.stopPropagation(),q({start:null,end:null}),F(null)},[q]),Ce=(0,m.useCallback)(()=>{let e=a._(new Date);xe(e)||(q({start:e,end:e}),ye(new Date(e.getFullYear(),e.getMonth(),1)),F(null),S||L(!1))},[q,S,xe]),we=(0,m.useCallback)(e=>{let t=V(e.value.start),n=V(e.value.end);if(!t||!n)return;let r=H(t,n);xe(r.start)||xe(r.end)||(q(r),ye(new Date(r.start.getFullYear(),r.start.getMonth(),1)),F(null),S||L(!1))},[q,S,xe]),Te=B&&!U?P:null,Y=ve,Ee=a.t(ve,1),De=a._(new Date),Oe=(0,m.useMemo)(()=>de(B,U,o),[U,o,B]),ke=(0,m.useMemo)(()=>[Y,Ee].map(e=>({monthDate:e,days:me(e,E)})),[E,Y,Ee]),Ae=B&&U?`${a.o(B,o)} - ${a.o(U,o)}`:B?`${a.o(B,o)} - ...`:f??K.defaultRangePlaceholder,je=T&&_e.length>0,Me=!T&&_e.length>0,Ne=()=>(0,h.jsx)(`div`,{className:`presets-sidebar`,children:_e.map(e=>(0,h.jsx)(`button`,{type:`button`,className:`preset-sidebar-btn`,onClick:()=>we(e),children:e.label},e.label))}),Pe=()=>(0,h.jsxs)(`div`,{className:`calendar-body`,children:[(0,h.jsxs)(`div`,{className:`calendar-top`,children:[(0,h.jsxs)(`div`,{className:`calendar-caption`,children:[(0,h.jsxs)(`span`,{className:`caption-title`,children:[ge[Y.getMonth()],` `,Y.getFullYear()]}),(0,h.jsx)(`span`,{className:`caption-subtitle`,children:K.rangeSubtitle})]}),(0,h.jsxs)(`div`,{className:`nav-actions`,children:[(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>ye(a.t(ve,-1)),"aria-label":K.previousMonth,children:(0,h.jsx)(t.Wi,{})}),(0,h.jsx)(`button`,{type:`button`,className:`nav-btn`,onClick:()=>ye(a.t(ve,1)),"aria-label":K.nextMonth,children:(0,h.jsx)(t.Ui,{})})]})]}),Me&&(0,h.jsx)(`div`,{className:`presets`,children:_e.map(e=>(0,h.jsx)(`button`,{type:`button`,className:`preset-btn`,onClick:()=>we(e),children:e.label},e.label))}),(0,h.jsx)(`div`,{className:`months`,children:ke.map(({monthDate:e,days:t})=>(0,h.jsxs)(`div`,{className:`month-panel`,children:[(0,h.jsxs)(`div`,{className:`month-title`,children:[ge[e.getMonth()],` `,e.getFullYear()]}),(0,h.jsx)(`div`,{className:`day-names`,children:he.map(t=>(0,h.jsx)(`span`,{className:`day-name`,children:t},`${e.toISOString()}-${t}`))}),(0,h.jsx)(`div`,{className:`day-grid`,children:t.map(({date:t,currentMonth:r},i)=>{let o=xe(t),s=B?a.p(t,B):!1,c=U?a.p(t,U):!1,l=ue(t,B,U),u=!U&&B&&Te?H(B,Te):null,d=u?ue(t,u.start,u.end):!1,f=u?a.p(t,u.start)||a.p(t,u.end):!1;return(0,h.jsx)(`button`,{type:`button`,className:n.t(`day`,!r&&`other-month`,a.p(t,De)&&`today`,s&&`range-start selected`,c&&`range-end selected`,l&&`in-range`,d&&!f&&`preview-range`,o&&`disabled`),onClick:()=>J(t),onMouseEnter:()=>B&&!U&&F(t),onFocus:()=>B&&!U&&F(t),disabled:o,tabIndex:-1,children:t.getDate()},`${e.toISOString()}-${i}`)})})]},e.toISOString()))}),(0,h.jsxs)(`div`,{className:`footer`,children:[(0,h.jsx)(`span`,{className:`summary`,children:Ae}),(0,h.jsxs)(`div`,{className:`footer-actions`,children:[x&&(B||U)&&(0,h.jsx)(`button`,{type:`button`,className:`footer-btn`,onClick:e=>{e.preventDefault(),q({start:null,end:null}),F(null)},children:K.clear}),C&&(0,h.jsx)(`button`,{type:`button`,className:`footer-btn`,onClick:Ce,children:K.today})]})]})]}),Fe=()=>(0,h.jsxs)(`div`,{className:n.t(`date-range-calendar`,je&&`with-sidebar`),children:[je&&Ne(),Pe()]});return S?(0,h.jsxs)(`div`,{className:n.t(`date-range-picker`,re&&`color-${re}`,D&&`full-width`,k),style:A,children:[y&&(0,h.jsx)(`label`,{className:n.t(`field-label`,G&&`error`,ce&&`required`),children:y}),Fe()]}):(0,h.jsxs)(`div`,{className:n.t(`date-range-picker`,re&&`color-${re}`,D&&`full-width`,k),style:A,children:[y&&(0,h.jsx)(`label`,{htmlFor:ne,className:n.t(`field-label`,I&&`focused`,G&&`error`,ce&&`required`),children:y}),(0,h.jsxs)(`div`,{ref:R,className:n.t(`trigger`,`field-${_}`,`field-${v}`,I&&`focused`,G&&`error`,g&&`disabled`),onClick:()=>!g&&!ee&&L(!0),children:[(0,h.jsx)(`span`,{className:`icon`,children:(0,h.jsx)(t.Pi,{})}),(0,h.jsx)(`input`,{type:`text`,className:`input`,value:Oe,placeholder:f??K.defaultRangePlaceholder,disabled:g,readOnly:!0,id:ne,"aria-invalid":G||void 0}),x&&(B||U)&&!g&&(0,h.jsx)(`button`,{type:`button`,className:`clear-btn clear-btn-base`,onClick:Se,tabIndex:-1,"aria-label":K.clear,children:(0,h.jsx)(t.Ki,{})})]}),te&&B&&U&&(0,h.jsx)(`input`,{type:`hidden`,name:te,value:`${B.toISOString().split(`T`)[0]}:${U.toISOString().split(`T`)[0]}`}),(0,h.jsx)(c.t,{className:`date-range-picker-popover`,style:{"--color-rgb":ae(re)},open:I,anchorRef:R,onClose:()=>{L(!1),F(null)},placement:`bottom-start`,children:Fe()}),(oe||b)&&(0,h.jsx)(`div`,{className:`bottom-row`,children:oe?(0,h.jsx)(`span`,{className:`field-error`,role:`alert`,children:oe}):(0,h.jsx)(`span`,{className:`helper-text`,children:b})})]})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return K}});
|
|
2
|
+
//# sourceMappingURL=dropdowns-D_nUdflh.cjs.map
|