@banzamel/mineralui 1.9.1 → 1.10.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 +22 -55
- package/dist/MAvatar-BElYyQXH.cjs +2 -0
- package/dist/MAvatar-BElYyQXH.cjs.map +1 -0
- package/dist/MAvatar-CIvYzQV4.js +63 -0
- package/dist/MAvatar-CIvYzQV4.js.map +1 -0
- package/dist/{MButton-C1pnL4_j.js → MButton-C94fZ3l9.js} +1 -1
- package/dist/{MButton-C1pnL4_j.js.map → MButton-C94fZ3l9.js.map} +1 -1
- package/dist/{MButton-DFRHWHzh.cjs → MButton-ouB6903s.cjs} +2 -2
- package/dist/{MButton-DFRHWHzh.cjs.map → MButton-ouB6903s.cjs.map} +1 -1
- package/dist/MButtonGroup-BhGt-Yy1.js +30 -0
- package/dist/MButtonGroup-BhGt-Yy1.js.map +1 -0
- package/dist/MButtonGroup-yumQneDa.cjs +2 -0
- package/dist/MButtonGroup-yumQneDa.cjs.map +1 -0
- package/dist/MCard-9ucghJJs.js +89 -0
- package/dist/MCard-9ucghJJs.js.map +1 -0
- package/dist/MCard-Bg_R86Gr.cjs +2 -0
- package/dist/MCard-Bg_R86Gr.cjs.map +1 -0
- package/dist/{MCheckbox-B7SpcD4H.js → MCheckbox-B-nT2OBE.js} +1 -1
- package/dist/{MCheckbox-B7SpcD4H.js.map → MCheckbox-B-nT2OBE.js.map} +1 -1
- package/dist/{MCheckbox-Dn3p_9-1.cjs → MCheckbox-Cbk5hwzJ.cjs} +2 -2
- package/dist/{MCheckbox-Dn3p_9-1.cjs.map → MCheckbox-Cbk5hwzJ.cjs.map} +1 -1
- package/dist/MDetailList-CpwrF22b.cjs +2 -0
- package/dist/MDetailList-CpwrF22b.cjs.map +1 -0
- package/dist/MDetailList-Gh5Y0UOx.js +89 -0
- package/dist/MDetailList-Gh5Y0UOx.js.map +1 -0
- package/dist/{MDropdownMenu-c9U3sEcl.cjs → MDropdownMenu-BT3u-ZJj.cjs} +2 -2
- package/dist/{MDropdownMenu-c9U3sEcl.cjs.map → MDropdownMenu-BT3u-ZJj.cjs.map} +1 -1
- package/dist/{MDropdownMenu-CeiC1tz3.js → MDropdownMenu-CAwSTZ1h.js} +2 -2
- package/dist/{MDropdownMenu-CeiC1tz3.js.map → MDropdownMenu-CAwSTZ1h.js.map} +1 -1
- package/dist/{MGalleryIllustration-Dglx_Ckc.cjs → MGalleryIllustration-D1givjFR.cjs} +2 -2
- package/dist/{MGalleryIllustration-Dglx_Ckc.cjs.map → MGalleryIllustration-D1givjFR.cjs.map} +1 -1
- package/dist/MGrid-Di7laCq4.cjs +2 -0
- package/dist/MGrid-Di7laCq4.cjs.map +1 -0
- package/dist/MGrid-yLmEteNw.js +265 -0
- package/dist/MGrid-yLmEteNw.js.map +1 -0
- package/dist/{MHeading-f3hwkW3r.cjs → MHeading-TJ5yvklz.cjs} +2 -2
- package/dist/{MHeading-f3hwkW3r.cjs.map → MHeading-TJ5yvklz.cjs.map} +1 -1
- package/dist/{MI18nProvider-DOh5xexz.cjs → MI18nProvider-bf1G7lTP.cjs} +2 -2
- package/dist/{MI18nProvider-DOh5xexz.cjs.map → MI18nProvider-bf1G7lTP.cjs.map} +1 -1
- package/dist/{MInput-IsUELgN2.js → MInput-CkbgK8eU.js} +3 -3
- package/dist/{MInput-IsUELgN2.js.map → MInput-CkbgK8eU.js.map} +1 -1
- package/dist/{MInput-BLGduKL_.cjs → MInput-ClHpIrDG.cjs} +2 -2
- package/dist/{MInput-BLGduKL_.cjs.map → MInput-ClHpIrDG.cjs.map} +1 -1
- package/dist/MInputCVC-B353PyVi.cjs +2 -0
- package/dist/MInputCVC-B353PyVi.cjs.map +1 -0
- package/dist/{MInputExpDate-CeCmw6fj.js → MInputCVC-BSHrWcEh.js} +101 -101
- package/dist/MInputCVC-BSHrWcEh.js.map +1 -0
- package/dist/{MInputSearch-_7jfFGr1.cjs → MInputSearch-D2Fr_34s.cjs} +2 -2
- package/dist/{MInputSearch-_7jfFGr1.cjs.map → MInputSearch-D2Fr_34s.cjs.map} +1 -1
- package/dist/{MInputSearch-BBxUF5pw.js → MInputSearch-Dj55a3oO.js} +3 -3
- package/dist/{MInputSearch-BBxUF5pw.js.map → MInputSearch-Dj55a3oO.js.map} +1 -1
- package/dist/{MKbd-DWTS3iS5.cjs → MKbd-CGkzxJhi.cjs} +2 -2
- package/dist/{MKbd-DWTS3iS5.cjs.map → MKbd-CGkzxJhi.cjs.map} +1 -1
- package/dist/{MKbd-v6-tJ9sP.js → MKbd-I4xDtsqc.js} +1 -1
- package/dist/{MKbd-v6-tJ9sP.js.map → MKbd-I4xDtsqc.js.map} +1 -1
- package/dist/{MLink-CRK8YvR4.cjs → MLink-CZ2FfQ0N.cjs} +2 -2
- package/dist/{MLink-CRK8YvR4.cjs.map → MLink-CZ2FfQ0N.cjs.map} +1 -1
- package/dist/{MPagination-D1hYqLDb.cjs → MPagination-CAzIIP2o.cjs} +2 -2
- package/dist/{MPagination-D1hYqLDb.cjs.map → MPagination-CAzIIP2o.cjs.map} +1 -1
- package/dist/{MPagination-DvToi2cs.js → MPagination-CnFI794t.js} +7 -7
- package/dist/{MPagination-DvToi2cs.js.map → MPagination-CnFI794t.js.map} +1 -1
- package/dist/{MPopover-Cqz5TsHg.js → MPopover-BRuwva-c.js} +2 -2
- package/dist/MPopover-BRuwva-c.js.map +1 -0
- package/dist/MPopover-BbgAAM5Z.cjs +2 -0
- package/dist/MPopover-BbgAAM5Z.cjs.map +1 -0
- package/dist/{MPortal-BIxPtFYd.cjs → MPortal-DokH9TfY.cjs} +2 -2
- package/dist/{MPortal-BIxPtFYd.cjs.map → MPortal-DokH9TfY.cjs.map} +1 -1
- package/dist/{MSimpleGrid-CyLf-9R2.cjs → MSimpleGrid-B6Uh1XJY.cjs} +2 -2
- package/dist/{MSimpleGrid-CyLf-9R2.cjs.map → MSimpleGrid-B6Uh1XJY.cjs.map} +1 -1
- package/dist/{MSimpleGrid-Bojj4xKH.js → MSimpleGrid-Ds14eBrD.js} +1 -1
- package/dist/{MSimpleGrid-Bojj4xKH.js.map → MSimpleGrid-Ds14eBrD.js.map} +1 -1
- package/dist/MSkeleton-BpylRABV.js +53 -0
- package/dist/MSkeleton-BpylRABV.js.map +1 -0
- package/dist/MSkeleton-JMkJFzu9.cjs +2 -0
- package/dist/MSkeleton-JMkJFzu9.cjs.map +1 -0
- package/dist/{MSlider-CqrusKJQ.js → MSlider-5141rKeH.js} +1 -1
- package/dist/{MSlider-CqrusKJQ.js.map → MSlider-5141rKeH.js.map} +1 -1
- package/dist/{MSlider-qCGmD4UA.cjs → MSlider-PyXLKckL.cjs} +2 -2
- package/dist/{MSlider-qCGmD4UA.cjs.map → MSlider-PyXLKckL.cjs.map} +1 -1
- package/dist/MStack-B8JtyM10.js +39 -0
- package/dist/MStack-B8JtyM10.js.map +1 -0
- package/dist/MStack-DDn2bYBQ.cjs +2 -0
- package/dist/MStack-DDn2bYBQ.cjs.map +1 -0
- package/dist/{MSurface-odrvQXkb.js → MSurface-B-sjyczH.js} +34 -3
- package/dist/MSurface-B-sjyczH.js.map +1 -0
- package/dist/MSurface-WsYGNGX5.cjs +2 -0
- package/dist/MSurface-WsYGNGX5.cjs.map +1 -0
- package/dist/{MTag-DgB6ukFJ.js → MTag-CKM8lXD6.js} +3 -3
- package/dist/{MTag-DgB6ukFJ.js.map → MTag-CKM8lXD6.js.map} +1 -1
- package/dist/{MTag-DZqV4S13.cjs → MTag-Dez1GOX0.cjs} +2 -2
- package/dist/{MTag-DZqV4S13.cjs.map → MTag-Dez1GOX0.cjs.map} +1 -1
- package/dist/{MText-BHbI7KJO.cjs → MText-CAbqC2qZ.cjs} +2 -2
- package/dist/{MText-BHbI7KJO.cjs.map → MText-CAbqC2qZ.cjs.map} +1 -1
- package/dist/{MTooltip-Dq2vYf3G.cjs → MTooltip-C-x_SqMx.cjs} +2 -2
- package/dist/{MTooltip-Dq2vYf3G.cjs.map → MTooltip-C-x_SqMx.cjs.map} +1 -1
- package/dist/{MTooltip-jSf4VBtB.js → MTooltip-Cbj80F3o.js} +1 -1
- package/dist/{MTooltip-jSf4VBtB.js.map → MTooltip-Cbj80F3o.js.map} +1 -1
- package/dist/MTreeView-B7IWHmGc.cjs +2 -0
- package/dist/MTreeView-B7IWHmGc.cjs.map +1 -0
- package/dist/MTreeView-DMTzRk6c.js +315 -0
- package/dist/MTreeView-DMTzRk6c.js.map +1 -0
- package/dist/{arduino-Bm509TuR.cjs → arduino-CFZS94LP.cjs} +1 -1
- package/dist/arduino-CFZS94LP.cjs.map +1 -0
- package/dist/{arduino-C5s1z3P1.js → arduino-DWEBiENP.js} +2 -2
- package/dist/arduino-DWEBiENP.js.map +1 -0
- package/dist/{bash-RIFbRcCe.js → bash-DQsQM8so.js} +2 -2
- package/dist/bash-DQsQM8so.js.map +1 -0
- package/dist/{bash-CyBbinAU.cjs → bash-Dl1TvWHd.cjs} +1 -1
- package/dist/bash-Dl1TvWHd.cjs.map +1 -0
- package/dist/{c-DAywn1DE.js → c-BgkSGJWN.js} +2 -2
- package/dist/c-BgkSGJWN.js.map +1 -0
- package/dist/{c-DGOxo0dj.cjs → c-PUMyVGnz.cjs} +1 -1
- package/dist/c-PUMyVGnz.cjs.map +1 -0
- package/dist/cards-23tpYjxc.js +1207 -0
- package/dist/cards-23tpYjxc.js.map +1 -0
- package/dist/cards-CK6RnNZi.cjs +2 -0
- package/dist/cards-CK6RnNZi.cjs.map +1 -0
- package/dist/cards.cjs +1 -1
- package/dist/cards.js +3 -3
- package/dist/components/cards/MCardGrid/index.d.ts +1 -1
- package/dist/components/cards/index.d.ts +1 -9
- package/dist/components/data/index.d.ts +4 -24
- package/dist/components/data/useMCardGrid.d.ts +36 -0
- package/dist/components/data/useMTable.d.ts +69 -0
- package/dist/components/display/index.d.ts +0 -8
- package/dist/components/feedback/MProgressRing/MProgressRing.d.ts +8 -0
- package/dist/components/feedback/MProgressRing/MProgressRing.types.d.ts +21 -0
- package/dist/components/feedback/MProgressRing/index.d.ts +2 -0
- package/dist/components/feedback/index.d.ts +2 -1
- package/dist/components/layout/MCanvasGrid/MCanvasGrid.d.ts +5 -0
- package/dist/components/layout/MCanvasGrid/MCanvasGrid.types.d.ts +43 -0
- package/dist/components/layout/MCanvasGrid/ScaleToFit.d.ts +19 -0
- package/dist/components/layout/MCanvasGrid/index.d.ts +2 -0
- package/dist/components/layout/index.d.ts +2 -4
- package/dist/components/media/MAvatar/MAvatar.d.ts +1 -1
- package/dist/components/media/MAvatar/MAvatar.types.d.ts +9 -0
- package/dist/components/media/MAvatar/index.d.ts +1 -1
- package/dist/components/media/index.d.ts +1 -17
- package/dist/components/typography/MHeading/MHeading.d.ts +1 -1
- package/dist/{controls-CcbEqqWo.js → controls-B3P4zKoA.js} +85 -63
- package/dist/controls-B3P4zKoA.js.map +1 -0
- package/dist/controls-DwWfqfDX.cjs +2 -0
- package/dist/controls-DwWfqfDX.cjs.map +1 -0
- package/dist/controls.cjs +1 -1
- package/dist/controls.js +6 -6
- package/dist/{core-DAox0BHy.cjs → core-B2klLGki.cjs} +1 -1
- package/dist/core-B2klLGki.cjs.map +1 -0
- package/dist/{core-BUYr52VU.js → core-BdOw9NlN.js} +1 -1
- package/dist/core-BdOw9NlN.js.map +1 -0
- package/dist/{cpp-D-FtdQo9.cjs → cpp-C_DS-imi.cjs} +1 -1
- package/dist/cpp-C_DS-imi.cjs.map +1 -0
- package/dist/{cpp-Y9cHXDal.js → cpp-ChrqJwqu.js} +2 -2
- package/dist/cpp-ChrqJwqu.js.map +1 -0
- package/dist/{css-DCYZ-Rs6.cjs → css-Brdthutg.cjs} +1 -1
- package/dist/css-Brdthutg.cjs.map +1 -0
- package/dist/{css-C__ffGj6.js → css-DL_ID0lZ.js} +2 -2
- package/dist/css-DL_ID0lZ.js.map +1 -0
- package/dist/data-B5KYb0SW.js +463 -0
- package/dist/data-B5KYb0SW.js.map +1 -0
- package/dist/data-CDZvakQ8.cjs +2 -0
- package/dist/data-CDZvakQ8.cjs.map +1 -0
- package/dist/data.cjs +1 -1
- package/dist/data.js +3 -4
- package/dist/display-2Vak-RyH.cjs +3 -0
- package/dist/display-2Vak-RyH.cjs.map +1 -0
- package/dist/{display-C7YRf4Ze.js → display-ChhvaSPc.js} +288 -241
- package/dist/display-ChhvaSPc.js.map +1 -0
- package/dist/display.cjs +1 -1
- package/dist/display.js +3 -4
- package/dist/dropdowns-BP2HBR-x.cjs +2 -0
- package/dist/dropdowns-BP2HBR-x.cjs.map +1 -0
- package/dist/dropdowns-C9jREjLg.js +1752 -0
- package/dist/dropdowns-C9jREjLg.js.map +1 -0
- package/dist/dropdowns.cjs +1 -1
- package/dist/dropdowns.js +1 -1
- package/dist/feedback-DnuJtYUI.cjs +2 -0
- package/dist/feedback-DnuJtYUI.cjs.map +1 -0
- package/dist/feedback-urwS5wps.js +290 -0
- package/dist/feedback-urwS5wps.js.map +1 -0
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +5 -6
- package/dist/{form-BiPQ8SRK.js → form-CWoOQ_qo.js} +1 -1
- package/dist/{form-BiPQ8SRK.js.map → form-CWoOQ_qo.js.map} +1 -1
- package/dist/{form-DlXWN2ul.cjs → form-D5F1kTIA.cjs} +2 -2
- package/dist/{form-DlXWN2ul.cjs.map → form-D5F1kTIA.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/i18n.cjs +1 -1
- package/dist/icons/MIcon.types.d.ts +6 -0
- package/dist/icons/glyphs/MAirplaneFillIcon.d.ts +2 -0
- package/dist/icons/glyphs/{MBrandIconsV2.d.ts → MAirplaneIcon.d.ts} +1 -1
- package/dist/icons/glyphs/MApartmentIcon.d.ts +2 -0
- package/dist/icons/glyphs/{MChartIconV2.d.ts → MArchiveIcon.d.ts} +1 -1
- package/dist/icons/glyphs/MBookIcon.d.ts +2 -0
- package/dist/icons/glyphs/MBookOpenFillIcon.d.ts +2 -0
- package/dist/icons/glyphs/{MSearchIconV2.d.ts → MBookOpenIcon.d.ts} +1 -1
- package/dist/icons/glyphs/MBookmarkFillIcon.d.ts +2 -0
- package/dist/icons/glyphs/MBookmarkIcon.d.ts +2 -0
- package/dist/icons/glyphs/MBooksIcon.d.ts +2 -0
- package/dist/icons/glyphs/MCarFillIcon.d.ts +2 -0
- package/dist/icons/glyphs/MCarIcon.d.ts +2 -0
- package/dist/icons/glyphs/MClassroomIcon.d.ts +2 -0
- package/dist/icons/glyphs/MColumnsIcon.d.ts +2 -0
- package/dist/icons/glyphs/{MUserIconV2.d.ts → MFlagAtIcon.d.ts} +1 -1
- package/dist/icons/glyphs/{MHomeIconV2.d.ts → MFlagAuIcon.d.ts} +1 -1
- package/dist/icons/glyphs/MFlagChIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagIeIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagKrIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagNlIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagNoIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagPtIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagSeIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlagTrIcon.d.ts +2 -0
- package/dist/icons/glyphs/MFlatIcon.d.ts +2 -0
- package/dist/icons/glyphs/MHistoryIcon.d.ts +2 -0
- package/dist/icons/glyphs/MHouseIcon.d.ts +2 -0
- package/dist/icons/glyphs/MKeyIcon.d.ts +2 -0
- package/dist/icons/glyphs/MLessonIcon.d.ts +2 -0
- package/dist/icons/glyphs/MListIcon.d.ts +2 -0
- package/dist/icons/glyphs/MMakeupIcon.d.ts +2 -0
- package/dist/icons/glyphs/MMoveIcon.d.ts +2 -0
- package/dist/icons/glyphs/MPlayIcon.d.ts +2 -0
- package/dist/icons/glyphs/MPrinterIcon.d.ts +2 -0
- package/dist/icons/glyphs/MRedoIcon.d.ts +2 -0
- package/dist/icons/glyphs/MResizeIcon.d.ts +2 -0
- package/dist/icons/glyphs/MRoomIcon.d.ts +2 -0
- package/dist/icons/glyphs/MShareIcon.d.ts +2 -0
- package/dist/icons/glyphs/MShipIcon.d.ts +2 -0
- package/dist/icons/glyphs/MShopIcon.d.ts +2 -0
- package/dist/icons/glyphs/MStopIcon.d.ts +2 -0
- package/dist/icons/glyphs/MTaskIcon.d.ts +2 -0
- package/dist/icons/glyphs/MUndoIcon.d.ts +2 -0
- package/dist/icons/glyphs/MUrgentIcon.d.ts +2 -0
- package/dist/icons/glyphs/MUserCheckIcon.d.ts +2 -0
- package/dist/icons/glyphs/MUserMinusIcon.d.ts +2 -0
- package/dist/icons/glyphs/MUserPlusIcon.d.ts +2 -0
- package/dist/icons/index.d.ts +48 -13
- package/dist/icons-BHFwX7ri.cjs +2 -0
- package/dist/icons-BHFwX7ri.cjs.map +1 -0
- package/dist/{icons-CfpYxnfg.js → icons-DLP-Rs6z.js} +1325 -1925
- package/dist/icons-DLP-Rs6z.js.map +1 -0
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +2 -2
- package/dist/illustrations.cjs +1 -1
- package/dist/index.cjs +1 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +53 -93
- package/dist/{inputs-BJMmyEdL.cjs → inputs-D38ib0gM.cjs} +2 -2
- package/dist/{inputs-BJMmyEdL.cjs.map → inputs-D38ib0gM.cjs.map} +1 -1
- package/dist/{inputs-CNPeF6gb.js → inputs-bbwdb6m3.js} +181 -181
- package/dist/{inputs-CNPeF6gb.js.map → inputs-bbwdb6m3.js.map} +1 -1
- package/dist/inputs.cjs +1 -1
- package/dist/inputs.js +5 -5
- package/dist/{javascript-ClV78Svx.js → javascript-B5hepBcv.js} +2 -2
- package/dist/javascript-B5hepBcv.js.map +1 -0
- package/dist/{javascript-_Sr9cnsG.cjs → javascript-DFYAIwfO.cjs} +1 -1
- package/dist/javascript-DFYAIwfO.cjs.map +1 -0
- package/dist/{json-BFetU4Pi.cjs → json-BTHMevf2.cjs} +1 -1
- package/dist/json-BTHMevf2.cjs.map +1 -0
- package/dist/{json-Dz6EkGZR.js → json-DTBnkegk.js} +2 -2
- package/dist/json-DTBnkegk.js.map +1 -0
- package/dist/layout-BgfQpVOU.js +823 -0
- package/dist/layout-BgfQpVOU.js.map +1 -0
- package/dist/layout-D9LAqtZp.cjs +2 -0
- package/dist/layout-D9LAqtZp.cjs.map +1 -0
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +7 -8
- package/dist/licensing-f5KYVz7D.js +28 -0
- package/dist/licensing-f5KYVz7D.js.map +1 -0
- package/dist/licensing-sRHTvX0B.cjs +2 -0
- package/dist/licensing-sRHTvX0B.cjs.map +1 -0
- package/dist/{locale-Bz2JXxDZ.cjs → locale-CJWWjFm-.cjs} +2 -2
- package/dist/{locale-Bz2JXxDZ.cjs.map → locale-CJWWjFm-.cjs.map} +1 -1
- package/dist/{locale-CS1-IY_I.js → locale-JX_gX03k.js} +1 -1
- package/dist/{locale-CS1-IY_I.js.map → locale-JX_gX03k.js.map} +1 -1
- package/dist/media-CM-uEUrV.js +402 -0
- package/dist/media-CM-uEUrV.js.map +1 -0
- package/dist/media-CnjA4Ruo.cjs +2 -0
- package/dist/media-CnjA4Ruo.cjs.map +1 -0
- package/dist/media.cjs +1 -1
- package/dist/media.js +3 -4
- package/dist/overlays-BpDz9ddf.cjs +2 -0
- package/dist/overlays-BpDz9ddf.cjs.map +1 -0
- package/dist/overlays-NwVsvmlb.js +568 -0
- package/dist/overlays-NwVsvmlb.js.map +1 -0
- package/dist/overlays.cjs +1 -1
- package/dist/overlays.js +4 -6
- package/dist/{php-jOdR0XS8.cjs → php-ClxZCTCr.cjs} +1 -1
- package/dist/php-ClxZCTCr.cjs.map +1 -0
- package/dist/{php-5Erp5xxI.js → php-DwgDg57J.js} +2 -2
- package/dist/php-DwgDg57J.js.map +1 -0
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.js +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-DsTDooyX.cjs → theme-yQQAPTkp.cjs} +2 -2
- package/dist/{theme-DsTDooyX.cjs.map → theme-yQQAPTkp.cjs.map} +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/{typescript-C65sNL5w.cjs → typescript-C8NJZXwD.cjs} +1 -1
- package/dist/typescript-C8NJZXwD.cjs.map +1 -0
- package/dist/{typescript-wdQKWfxO.js → typescript-MSi2XC0t.js} +2 -2
- package/dist/typescript-MSi2XC0t.js.map +1 -0
- package/dist/typography-BHhyTO1V.js +42 -0
- package/dist/typography-BHhyTO1V.js.map +1 -0
- package/dist/typography-Qb1U4eiY.cjs +2 -0
- package/dist/typography-Qb1U4eiY.cjs.map +1 -0
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +3 -4
- package/dist/{useGhostText-Dg4P606B.cjs → useGhostText-BFaUUKid.cjs} +2 -2
- package/dist/{useGhostText-Dg4P606B.cjs.map → useGhostText-BFaUUKid.cjs.map} +1 -1
- package/dist/{useInteractionEffect-Bo8285cg.cjs → useInteractionEffect-BH2dgQla.cjs} +2 -2
- package/dist/{useInteractionEffect-Bo8285cg.cjs.map → useInteractionEffect-BH2dgQla.cjs.map} +1 -1
- package/dist/{useKeyboardNav-CyeQtqF8.cjs → useKeyboardNav-CtGPfQX7.cjs} +2 -2
- package/dist/{useKeyboardNav-CyeQtqF8.cjs.map → useKeyboardNav-CtGPfQX7.cjs.map} +1 -1
- package/dist/utils/licensing.d.ts +1 -82
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +1 -1
- package/dist/{xml-a3b-XevT.js → xml-CnKYdLjT.js} +2 -2
- package/dist/xml-CnKYdLjT.js.map +1 -0
- package/dist/{xml-B2okahIr.cjs → xml-jypnnWFn.cjs} +1 -1
- package/dist/xml-jypnnWFn.cjs.map +1 -0
- package/package.json +6 -29
- package/dist/MAvatar-D_dVAPaR.js +0 -57
- package/dist/MAvatar-D_dVAPaR.js.map +0 -1
- package/dist/MAvatar-DzZPRbot.cjs +0 -2
- package/dist/MAvatar-DzZPRbot.cjs.map +0 -1
- package/dist/MAvatarStack-CrhkO_SO.js +0 -330
- package/dist/MAvatarStack-CrhkO_SO.js.map +0 -1
- package/dist/MAvatarStack-DN79aJo1.cjs +0 -2
- package/dist/MAvatarStack-DN79aJo1.cjs.map +0 -1
- package/dist/MCookieBootstrap-BUqtJO3m.cjs +0 -2
- package/dist/MCookieBootstrap-BUqtJO3m.cjs.map +0 -1
- package/dist/MCookieBootstrap-Btt49Iuq.js +0 -436
- package/dist/MCookieBootstrap-Btt49Iuq.js.map +0 -1
- package/dist/MDataTable-7nJuwzJR.cjs +0 -2
- package/dist/MDataTable-7nJuwzJR.cjs.map +0 -1
- package/dist/MDataTable-CQt_pINO.js +0 -297
- package/dist/MDataTable-CQt_pINO.js.map +0 -1
- package/dist/MDrawer-B83--EVv.js +0 -122
- package/dist/MDrawer-B83--EVv.js.map +0 -1
- package/dist/MDrawer-D6cy9K7J.cjs +0 -2
- package/dist/MDrawer-D6cy9K7J.cjs.map +0 -1
- package/dist/MGrid-B-fP4GME.cjs +0 -2
- package/dist/MGrid-B-fP4GME.cjs.map +0 -1
- package/dist/MGrid-DVluuula.js +0 -182
- package/dist/MGrid-DVluuula.js.map +0 -1
- package/dist/MInputExpDate-CeCmw6fj.js.map +0 -1
- package/dist/MInputExpDate-DZ8JtSjs.cjs +0 -2
- package/dist/MInputExpDate-DZ8JtSjs.cjs.map +0 -1
- package/dist/MModal-DiTjBO8B.js +0 -69
- package/dist/MModal-DiTjBO8B.js.map +0 -1
- package/dist/MModal-eJDG6riB.cjs +0 -2
- package/dist/MModal-eJDG6riB.cjs.map +0 -1
- package/dist/MPopover-Cqz5TsHg.js.map +0 -1
- package/dist/MPopover-CxxaY9kr.cjs +0 -2
- package/dist/MPopover-CxxaY9kr.cjs.map +0 -1
- package/dist/MQrCode-HO2YIC7e.cjs +0 -2
- package/dist/MQrCode-HO2YIC7e.cjs.map +0 -1
- package/dist/MQrCode-Kb997gaE.js +0 -465
- package/dist/MQrCode-Kb997gaE.js.map +0 -1
- package/dist/MSkeleton-CVofhuDp.js +0 -136
- package/dist/MSkeleton-CVofhuDp.js.map +0 -1
- package/dist/MSkeleton-CuYA8eN3.cjs +0 -2
- package/dist/MSkeleton-CuYA8eN3.cjs.map +0 -1
- package/dist/MStack-C4Eocfb5.js +0 -70
- package/dist/MStack-C4Eocfb5.js.map +0 -1
- package/dist/MStack-w8XcuIJK.cjs +0 -2
- package/dist/MStack-w8XcuIJK.cjs.map +0 -1
- package/dist/MSubText-C-N15d4Z.js +0 -17
- package/dist/MSubText-C-N15d4Z.js.map +0 -1
- package/dist/MSubText-CIMKPb8o.cjs +0 -2
- package/dist/MSubText-CIMKPb8o.cjs.map +0 -1
- package/dist/MSurface-KvAS2hkl.cjs +0 -2
- package/dist/MSurface-KvAS2hkl.cjs.map +0 -1
- package/dist/MSurface-odrvQXkb.js.map +0 -1
- package/dist/MTabs-BQZ--mMq.js +0 -89
- package/dist/MTabs-BQZ--mMq.js.map +0 -1
- package/dist/MTabs-DeUn6bIp.cjs +0 -2
- package/dist/MTabs-DeUn6bIp.cjs.map +0 -1
- package/dist/MTimeAgo-DI3DF7bD.cjs +0 -2
- package/dist/MTimeAgo-DI3DF7bD.cjs.map +0 -1
- package/dist/MTimeAgo-Db8gOade.js +0 -51
- package/dist/MTimeAgo-Db8gOade.js.map +0 -1
- package/dist/MToggle-B6emKoKq.js +0 -48
- package/dist/MToggle-B6emKoKq.js.map +0 -1
- package/dist/MToggle-BVJm5Bdk.cjs +0 -2
- package/dist/MToggle-BVJm5Bdk.cjs.map +0 -1
- package/dist/MTreeView-AqH8XMPz.js +0 -516
- package/dist/MTreeView-AqH8XMPz.js.map +0 -1
- package/dist/MTreeView-Dp9qbqQh.cjs +0 -2
- package/dist/MTreeView-Dp9qbqQh.cjs.map +0 -1
- package/dist/arduino-Bm509TuR.cjs.map +0 -1
- package/dist/arduino-C5s1z3P1.js.map +0 -1
- package/dist/bash-CyBbinAU.cjs.map +0 -1
- package/dist/bash-RIFbRcCe.js.map +0 -1
- package/dist/c-DAywn1DE.js.map +0 -1
- package/dist/c-DGOxo0dj.cjs.map +0 -1
- package/dist/cards-C50fpYud.js +0 -1539
- package/dist/cards-C50fpYud.js.map +0 -1
- package/dist/cards-Ci1FoV9C.cjs +0 -2
- package/dist/cards-Ci1FoV9C.cjs.map +0 -1
- package/dist/components/cards/MCardBusiness/MCardBusiness.d.ts +0 -2
- package/dist/components/cards/MCardBusiness/MCardBusiness.types.d.ts +0 -37
- package/dist/components/cards/MCardBusiness/index.d.ts +0 -4
- package/dist/components/cards/MCardFinance/MCardFinance.d.ts +0 -2
- package/dist/components/cards/MCardFinance/MCardFinance.types.d.ts +0 -17
- package/dist/components/cards/MCardFinance/index.d.ts +0 -4
- package/dist/components/data/MCalendarBoard/MCalendarBoard.d.ts +0 -8
- package/dist/components/data/MCalendarBoard/MCalendarBoard.types.d.ts +0 -186
- package/dist/components/data/MCalendarBoard/index.d.ts +0 -4
- package/dist/components/data/MChart/MAreaChart.d.ts +0 -2
- package/dist/components/data/MChart/MBarChart.d.ts +0 -2
- package/dist/components/data/MChart/MChart.d.ts +0 -2
- package/dist/components/data/MChart/MChart.types.d.ts +0 -95
- package/dist/components/data/MChart/MLineChart.d.ts +0 -2
- package/dist/components/data/MChart/MPieChart.d.ts +0 -2
- package/dist/components/data/MChart/charts/MAreaChart.d.ts +0 -27
- package/dist/components/data/MChart/charts/MBarChart.d.ts +0 -26
- package/dist/components/data/MChart/charts/MLineChart.d.ts +0 -26
- package/dist/components/data/MChart/charts/MPieChart.d.ts +0 -19
- package/dist/components/data/MChart/index.d.ts +0 -5
- package/dist/components/data/MChart/parts/ChartAxis.d.ts +0 -13
- package/dist/components/data/MChart/parts/ChartDefs.d.ts +0 -1
- package/dist/components/data/MChart/parts/ChartGrid.d.ts +0 -10
- package/dist/components/data/MChart/parts/ChartLegend.d.ts +0 -9
- package/dist/components/data/MChart/parts/ChartTooltip.d.ts +0 -7
- package/dist/components/data/MChart/utils/formats.d.ts +0 -3
- package/dist/components/data/MChart/utils/paths.d.ts +0 -10
- package/dist/components/data/MChart/utils/scales.d.ts +0 -7
- package/dist/components/data/MChat/MChat.d.ts +0 -2
- package/dist/components/data/MChat/MChat.types.d.ts +0 -77
- package/dist/components/data/MChat/MChatBody.d.ts +0 -2
- package/dist/components/data/MChat/MChatContext.d.ts +0 -6
- package/dist/components/data/MChat/MChatConversationItem.d.ts +0 -2
- package/dist/components/data/MChat/MChatConversationList.d.ts +0 -2
- package/dist/components/data/MChat/MChatHeader.d.ts +0 -2
- package/dist/components/data/MChat/MChatInput.d.ts +0 -2
- package/dist/components/data/MChat/MChatMessage.d.ts +0 -2
- package/dist/components/data/MChat/MChatTypingIndicator.d.ts +0 -2
- package/dist/components/data/MChat/emojis.d.ts +0 -2
- package/dist/components/data/MChat/index.d.ts +0 -9
- package/dist/components/data/MFileManager/MFileManager.d.ts +0 -2
- package/dist/components/data/MFileManager/MFileManager.types.d.ts +0 -70
- package/dist/components/data/MFileManager/index.d.ts +0 -4
- package/dist/components/data/MSparkline/MSparkline.d.ts +0 -2
- package/dist/components/data/MSparkline/MSparkline.types.d.ts +0 -15
- package/dist/components/data/MSparkline/index.d.ts +0 -2
- package/dist/components/data/MTimelineCalendar/DayStrip.d.ts +0 -11
- package/dist/components/data/MTimelineCalendar/EventPopover.d.ts +0 -18
- package/dist/components/data/MTimelineCalendar/MTimelineCalendar.d.ts +0 -2
- package/dist/components/data/MTimelineCalendar/MTimelineCalendar.helpers.d.ts +0 -55
- package/dist/components/data/MTimelineCalendar/MTimelineCalendar.types.d.ts +0 -89
- package/dist/components/data/MTimelineCalendar/index.d.ts +0 -2
- package/dist/components/display/MQrCode/MQrCode.d.ts +0 -2
- package/dist/components/display/MQrCode/MQrCode.types.d.ts +0 -11
- package/dist/components/display/MQrCode/index.d.ts +0 -4
- package/dist/components/feedback/MCookie/MCookieBanner/MCookieBanner.d.ts +0 -3
- package/dist/components/feedback/MCookie/MCookieBanner/MCookieBanner.types.d.ts +0 -27
- package/dist/components/feedback/MCookie/MCookieBanner/index.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.d.ts +0 -6
- package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script.d.ts +0 -4
- package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.types.d.ts +0 -90
- package/dist/components/feedback/MCookie/MCookieBootstrap/index.d.ts +0 -3
- package/dist/components/feedback/MCookie/MCookieConsent/MCookieConsent.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieConsent/MCookieConsent.types.d.ts +0 -11
- package/dist/components/feedback/MCookie/MCookieConsent/index.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.defaults.d.ts +0 -9
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.inventory.d.ts +0 -6
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.storage.d.ts +0 -11
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.types.d.ts +0 -95
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsentContext.d.ts +0 -4
- package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsentProvider.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieConsentProvider/index.d.ts +0 -3
- package/dist/components/feedback/MCookie/MCookieDeclaration/MCookieDeclaration.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieDeclaration/MCookieDeclaration.types.d.ts +0 -18
- package/dist/components/feedback/MCookie/MCookieDeclaration/index.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookiePreferences/MCookiePreferences.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookiePreferences/MCookiePreferences.types.d.ts +0 -25
- package/dist/components/feedback/MCookie/MCookiePreferences/index.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieTrigger/MCookieTrigger.d.ts +0 -2
- package/dist/components/feedback/MCookie/MCookieTrigger/MCookieTrigger.types.d.ts +0 -7
- package/dist/components/feedback/MCookie/MCookieTrigger/index.d.ts +0 -2
- package/dist/components/feedback/MCookie/index.d.ts +0 -16
- package/dist/components/layout/MTopbar/MTopbar.d.ts +0 -2
- package/dist/components/layout/MTopbar/MTopbar.types.d.ts +0 -37
- package/dist/components/layout/MTopbar/index.d.ts +0 -2
- package/dist/components/media/MAvatarStack/MAvatarStack.d.ts +0 -2
- package/dist/components/media/MAvatarStack/MAvatarStack.types.d.ts +0 -27
- package/dist/components/media/MAvatarStack/index.d.ts +0 -2
- package/dist/components/media/MMasonry/MMasonry.d.ts +0 -2
- package/dist/components/media/MMasonry/MMasonry.types.d.ts +0 -7
- package/dist/components/media/MMasonry/index.d.ts +0 -2
- package/dist/components/media/MMasonryItem/MMasonryItem.d.ts +0 -2
- package/dist/components/media/MMasonryItem/MMasonryItem.types.d.ts +0 -14
- package/dist/components/media/MMasonryItem/index.d.ts +0 -2
- package/dist/components/media/MShowcaseCarousel/MShowcaseCarousel.d.ts +0 -2
- package/dist/components/media/MShowcaseCarousel/MShowcaseCarousel.types.d.ts +0 -19
- package/dist/components/media/MShowcaseCarousel/index.d.ts +0 -2
- package/dist/components/media/MShowcaseCarouselItem/MShowcaseCarouselItem.d.ts +0 -2
- package/dist/components/media/MShowcaseCarouselItem/MShowcaseCarouselItem.types.d.ts +0 -18
- package/dist/components/media/MShowcaseCarouselItem/index.d.ts +0 -2
- package/dist/controls-CYQxPd4U.cjs +0 -2
- package/dist/controls-CYQxPd4U.cjs.map +0 -1
- package/dist/controls-CcbEqqWo.js.map +0 -1
- package/dist/cookie-consent-bootstrap.cjs +0 -2
- package/dist/cookie-consent-bootstrap.cjs.map +0 -1
- package/dist/cookie-consent-bootstrap.d.ts +0 -1
- package/dist/cookie-consent-bootstrap.js +0 -106
- package/dist/cookie-consent-bootstrap.js.map +0 -1
- package/dist/core-BUYr52VU.js.map +0 -1
- package/dist/core-DAox0BHy.cjs.map +0 -1
- package/dist/cpp-D-FtdQo9.cjs.map +0 -1
- package/dist/cpp-Y9cHXDal.js.map +0 -1
- package/dist/css-C__ffGj6.js.map +0 -1
- package/dist/css-DCYZ-Rs6.cjs.map +0 -1
- package/dist/data-DtShJEic.cjs +0 -2
- package/dist/data-DtShJEic.cjs.map +0 -1
- package/dist/data-RXuvb9VI.js +0 -3454
- package/dist/data-RXuvb9VI.js.map +0 -1
- package/dist/display-96-TEGmZ.cjs +0 -3
- package/dist/display-96-TEGmZ.cjs.map +0 -1
- package/dist/display-C7YRf4Ze.js.map +0 -1
- package/dist/dropdowns-Ce3Pb2JM.cjs +0 -2
- package/dist/dropdowns-Ce3Pb2JM.cjs.map +0 -1
- package/dist/dropdowns-DfXhVlWQ.js +0 -1712
- package/dist/dropdowns-DfXhVlWQ.js.map +0 -1
- package/dist/feedback-DGT28-Zx.js +0 -1058
- package/dist/feedback-DGT28-Zx.js.map +0 -1
- package/dist/feedback-Dr7G3K_R.cjs +0 -2
- package/dist/feedback-Dr7G3K_R.cjs.map +0 -1
- package/dist/frameworkTexts-BLJcGUXz.cjs +0 -2
- package/dist/frameworkTexts-BLJcGUXz.cjs.map +0 -1
- package/dist/frameworkTexts-BTFyhWFD.js +0 -117
- package/dist/frameworkTexts-BTFyhWFD.js.map +0 -1
- package/dist/icons/MIconV2.d.ts +0 -7
- package/dist/icons/MIconV2Glyph.d.ts +0 -11
- package/dist/icons/MIconV2Scenes.d.ts +0 -41
- package/dist/icons/glyphs/MCalendarIconV2.d.ts +0 -2
- package/dist/icons/glyphs/MFlagIconsV2.d.ts +0 -19
- package/dist/icons/glyphs/MNavigationIconsV2.d.ts +0 -14
- package/dist/icons/glyphs/MSettingsIconV2.d.ts +0 -2
- package/dist/icons-CfpYxnfg.js.map +0 -1
- package/dist/icons-qCoE70hn.cjs +0 -2
- package/dist/icons-qCoE70hn.cjs.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/javascript-ClV78Svx.js.map +0 -1
- package/dist/javascript-_Sr9cnsG.cjs.map +0 -1
- package/dist/json-BFetU4Pi.cjs.map +0 -1
- package/dist/json-Dz6EkGZR.js.map +0 -1
- package/dist/layout-dUrQeGc2.cjs +0 -2
- package/dist/layout-dUrQeGc2.cjs.map +0 -1
- package/dist/layout-tIq6BGQK.js +0 -711
- package/dist/layout-tIq6BGQK.js.map +0 -1
- package/dist/licensing-9sZ43Cif.cjs +0 -2
- package/dist/licensing-9sZ43Cif.cjs.map +0 -1
- package/dist/licensing-Bq78CLC_.js +0 -109
- package/dist/licensing-Bq78CLC_.js.map +0 -1
- package/dist/media-BySr5LGc.cjs +0 -2
- package/dist/media-BySr5LGc.cjs.map +0 -1
- package/dist/media-IQ4iYTs-.js +0 -391
- package/dist/media-IQ4iYTs-.js.map +0 -1
- package/dist/overlays-BabXGLEM.js +0 -392
- package/dist/overlays-BabXGLEM.js.map +0 -1
- package/dist/overlays-CTR3n21O.cjs +0 -2
- package/dist/overlays-CTR3n21O.cjs.map +0 -1
- package/dist/php-5Erp5xxI.js.map +0 -1
- package/dist/php-jOdR0XS8.cjs.map +0 -1
- package/dist/typescript-C65sNL5w.cjs.map +0 -1
- package/dist/typescript-wdQKWfxO.js.map +0 -1
- package/dist/typography-CAW17MDj.js +0 -31
- package/dist/typography-CAW17MDj.js.map +0 -1
- package/dist/typography-sbLuXqFn.cjs +0 -2
- package/dist/typography-sbLuXqFn.cjs.map +0 -1
- package/dist/utils/commandPaletteFromNavGroups.d.ts +0 -74
- package/dist/xml-B2okahIr.cjs.map +0 -1
- package/dist/xml-a3b-XevT.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MToggle-B6emKoKq.js","names":[],"sources":["../src/components/controls/MToggle/MToggle.tsx"],"sourcesContent":["import {forwardRef} from 'react'\nimport type {MToggleProps} from './MToggle.types'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MToggle.css'\n\n// Render a switch-style boolean control with the same API shape as MCheckbox.\nexport const MToggle = forwardRef<HTMLInputElement, MToggleProps>(function MToggle(\n {\n checked,\n defaultChecked,\n name,\n id,\n disabled = false,\n size = 'md',\n color = 'primary',\n label,\n labelPosition = 'right',\n onChange,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n },\n ref\n) {\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLSpanElement>({\n effect: clickEffect,\n disabled,\n centered: true,\n color: rippleColor,\n })\n\n return (\n <label\n className={cn('toggle', size, labelPosition === 'left' && 'label-left', disabled && 'disabled', className)}\n style={style}\n >\n <span className={cn('track', `color-${color}`, effectClassName)} onPointerDown={handlePointerDown}>\n {effectLayer}\n <input\n ref={ref}\n type=\"checkbox\"\n checked={checked}\n defaultChecked={defaultChecked}\n name={name}\n id={id}\n disabled={disabled}\n onChange={onChange}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget.parentElement as HTMLSpanElement | null)\n }\n }}\n className=\"input\"\n role=\"switch\"\n aria-checked={checked}\n />\n <span className=\"knob\" />\n </span>\n {label && <span className=\"label-text\">{label}</span>}\n </label>\n )\n})\n"],"mappings":";;;;;AAOA,IAAa,IAAU,EAA2C,SAC9D,EACI,YACA,mBACA,SACA,OACA,cAAW,IACX,UAAO,MACP,WAAQ,WACR,UACA,mBAAgB,SAChB,aACA,iBAAc,UACd,gBACA,cACA,YAEJ,GACF;CACE,IAAM,EAAC,oBAAiB,gBAAa,sBAAmB,qBAAiB,EAAsC;EAC3G,QAAQ;EACR;EACA,UAAU;EACV,OAAO;EACV,CAAC;AAEF,QACI,kBAAC,SAAD;EACI,WAAW,EAAG,UAAU,GAAM,MAAkB,UAAU,cAAc,KAAY,YAAY,EAAU;EACnG;YAFX,CAII,kBAAC,QAAD;GAAM,WAAW,EAAG,SAAS,SAAS,KAAS,EAAgB;GAAE,eAAe;aAAhF;IACK;IACD,kBAAC,SAAD;KACS;KACL,MAAK;KACI;KACO;KACV;KACF;KACM;KACA;KACV,YAAY,MAAU;AAClB,OAAI,EAAM,QAAQ,OAAO,EAAM,QAAQ,YACnC,EAAc,EAAM,cAAc,cAAwC;;KAGlF,WAAU;KACV,MAAK;KACL,gBAAc;KAChB,CAAA;IACF,kBAAC,QAAD,EAAM,WAAU,QAAS,CAAA;IACtB;MACN,KAAS,kBAAC,QAAD;GAAM,WAAU;aAAc;GAAa,CAAA,CACjD;;EAEd"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require(`./cn-CU5TNITO.cjs`),t=require(`./useInteractionEffect-Bo8285cg.cjs`);require(`./core-DAox0BHy.cjs`);let n=require(`react`),r=require(`react/jsx-runtime`);var i=(0,n.forwardRef)(function({checked:n,defaultChecked:i,name:a,id:o,disabled:s=!1,size:c=`md`,color:l=`primary`,label:u,labelPosition:d=`right`,onChange:f,clickEffect:p=`ripple`,rippleColor:m,className:h,style:g},_){let{effectClassName:v,effectLayer:y,handlePointerDown:b,triggerEffect:x}=t.t({effect:p,disabled:s,centered:!0,color:m});return(0,r.jsxs)(`label`,{className:e.t(`toggle`,c,d===`left`&&`label-left`,s&&`disabled`,h),style:g,children:[(0,r.jsxs)(`span`,{className:e.t(`track`,`color-${l}`,v),onPointerDown:b,children:[y,(0,r.jsx)(`input`,{ref:_,type:`checkbox`,checked:n,defaultChecked:i,name:a,id:o,disabled:s,onChange:f,onKeyDown:e=>{(e.key===` `||e.key===`Enter`)&&x(e.currentTarget.parentElement)},className:`input`,role:`switch`,"aria-checked":n}),(0,r.jsx)(`span`,{className:`knob`})]}),u&&(0,r.jsx)(`span`,{className:`label-text`,children:u})]})});Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
|
|
2
|
-
//# sourceMappingURL=MToggle-BVJm5Bdk.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MToggle-BVJm5Bdk.cjs","names":[],"sources":["../src/components/controls/MToggle/MToggle.tsx"],"sourcesContent":["import {forwardRef} from 'react'\nimport type {MToggleProps} from './MToggle.types'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MToggle.css'\n\n// Render a switch-style boolean control with the same API shape as MCheckbox.\nexport const MToggle = forwardRef<HTMLInputElement, MToggleProps>(function MToggle(\n {\n checked,\n defaultChecked,\n name,\n id,\n disabled = false,\n size = 'md',\n color = 'primary',\n label,\n labelPosition = 'right',\n onChange,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n },\n ref\n) {\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLSpanElement>({\n effect: clickEffect,\n disabled,\n centered: true,\n color: rippleColor,\n })\n\n return (\n <label\n className={cn('toggle', size, labelPosition === 'left' && 'label-left', disabled && 'disabled', className)}\n style={style}\n >\n <span className={cn('track', `color-${color}`, effectClassName)} onPointerDown={handlePointerDown}>\n {effectLayer}\n <input\n ref={ref}\n type=\"checkbox\"\n checked={checked}\n defaultChecked={defaultChecked}\n name={name}\n id={id}\n disabled={disabled}\n onChange={onChange}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget.parentElement as HTMLSpanElement | null)\n }\n }}\n className=\"input\"\n role=\"switch\"\n aria-checked={checked}\n />\n <span className=\"knob\" />\n </span>\n {label && <span className=\"label-text\">{label}</span>}\n </label>\n )\n})\n"],"mappings":"2KAOA,IAAa,GAAA,EAAA,EAAA,YAAqD,SAC9D,CACI,UACA,iBACA,OACA,KACA,WAAW,GACX,OAAO,KACP,QAAQ,UACR,QACA,gBAAgB,QAChB,WACA,cAAc,SACd,cACA,YACA,SAEJ,EACF,CACE,GAAM,CAAC,kBAAiB,cAAa,oBAAmB,iBAAiB,EAAA,EAAsC,CAC3G,OAAQ,EACR,WACA,SAAU,GACV,MAAO,EACV,CAAC,CAEF,OACI,EAAA,EAAA,MAAC,QAAD,CACI,UAAW,EAAA,EAAG,SAAU,EAAM,IAAkB,QAAU,aAAc,GAAY,WAAY,EAAU,CACnG,iBAFX,EAII,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,EAAG,QAAS,SAAS,IAAS,EAAgB,CAAE,cAAe,WAAhF,CACK,GACD,EAAA,EAAA,KAAC,QAAD,CACS,MACL,KAAK,WACI,UACO,iBACV,OACF,KACM,WACA,WACV,UAAY,GAAU,EACd,EAAM,MAAQ,KAAO,EAAM,MAAQ,UACnC,EAAc,EAAM,cAAc,cAAwC,EAGlF,UAAU,QACV,KAAK,SACL,eAAc,EAChB,CAAA,EACF,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,OAAS,CAAA,CACtB,GACN,IAAS,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,sBAAc,EAAa,CAAA,CACjD,IAEd"}
|
|
@@ -1,516 +0,0 @@
|
|
|
1
|
-
import { $r as e, Ar as t, Br as n, Cr as r, Dr as i, Fr as a, Gr as o, Hr as s, Ir as c, Jr as l, Kr as u, Lr as d, Mr as f, Or as p, Pi as m, Pr as h, Qr as g, Rr as _, Sr as v, Tr as y, Ur as b, Vr as x, Wr as S, Yr as C, ei as w, ii as T, jr as E, kr as D, qr as O, ti as k, wr as A, zr as j } from "./icons-CfpYxnfg.js";
|
|
2
|
-
import { t as M } from "./cn-YER3QsV1.js";
|
|
3
|
-
import { t as N } from "./MPortal-Ba2Sxset.js";
|
|
4
|
-
import { t as P } from "./MCheckbox-B7SpcD4H.js";
|
|
5
|
-
import { useEffect as F, useMemo as I, useRef as ee, useState as L } from "react";
|
|
6
|
-
import { Fragment as R, jsx as z, jsxs as B } from "react/jsx-runtime";
|
|
7
|
-
//#region src/components/data/MChart/utils/scales.ts
|
|
8
|
-
function V(e, t) {
|
|
9
|
-
let [n, r] = e, [i, a] = t, o = r - n || 1;
|
|
10
|
-
return (e) => i + (e - n) / o * (a - i);
|
|
11
|
-
}
|
|
12
|
-
function H(e) {
|
|
13
|
-
if (e >= 0) return 0;
|
|
14
|
-
let t = W(e, 0);
|
|
15
|
-
return Math.floor(e / t) * t;
|
|
16
|
-
}
|
|
17
|
-
function U(e, t = 0) {
|
|
18
|
-
let n = W(t, e);
|
|
19
|
-
return Math.ceil(e / n) * n;
|
|
20
|
-
}
|
|
21
|
-
function W(e, t, n = 5) {
|
|
22
|
-
let r = (t - e || 1) / n, i = 10 ** Math.floor(Math.log10(r)), a = r / i, o;
|
|
23
|
-
return o = a <= 1 ? 1 : a <= 2 ? 2 : a <= 5 ? 5 : 10, o * i;
|
|
24
|
-
}
|
|
25
|
-
function G(e, t, n = 5) {
|
|
26
|
-
let r = W(e, t, n), i = Math.floor(e / r) * r, a = Math.ceil(t / r) * r, o = [];
|
|
27
|
-
for (let e = i; e <= a + r * .01; e += r) o.push(Math.round(e * 1e10) / 1e10);
|
|
28
|
-
return o;
|
|
29
|
-
}
|
|
30
|
-
function te(e) {
|
|
31
|
-
let t = Infinity, n = -Infinity;
|
|
32
|
-
for (let r of e) for (let e of r) e < t && (t = e), e > n && (n = e);
|
|
33
|
-
return t === Infinity ? [0, 1] : t === n ? [t - 1, n + 1] : [t, n];
|
|
34
|
-
}
|
|
35
|
-
function K(e) {
|
|
36
|
-
if (e.length === 0) return [0, 1];
|
|
37
|
-
let t = Math.max(...e.map((e) => e.length)), n = -Infinity;
|
|
38
|
-
for (let r = 0; r < t; r++) {
|
|
39
|
-
let t = 0;
|
|
40
|
-
for (let n of e) t += n[r] ?? 0;
|
|
41
|
-
t > n && (n = t);
|
|
42
|
-
}
|
|
43
|
-
return [0, n === 0 ? 1 : n];
|
|
44
|
-
}
|
|
45
|
-
//#endregion
|
|
46
|
-
//#region src/components/data/MChart/utils/paths.ts
|
|
47
|
-
function q(e) {
|
|
48
|
-
return e.length === 0 ? "" : e.map((e, t) => `${t === 0 ? "M" : "L"}${e.x},${e.y}`).join(" ");
|
|
49
|
-
}
|
|
50
|
-
function J(e) {
|
|
51
|
-
if (e.length === 0) return "";
|
|
52
|
-
if (e.length === 1) return `M${e[0].x},${e[0].y}`;
|
|
53
|
-
if (e.length === 2) return q(e);
|
|
54
|
-
let t = `M${e[0].x},${e[0].y}`;
|
|
55
|
-
for (let n = 0; n < e.length - 1; n++) {
|
|
56
|
-
let r = e[Math.max(n - 1, 0)], i = e[n], a = e[n + 1], o = e[Math.min(n + 2, e.length - 1)], s = i.x + (a.x - r.x) / 6, c = i.y + (a.y - r.y) / 6, l = a.x - (o.x - i.x) / 6, u = a.y - (o.y - i.y) / 6;
|
|
57
|
-
t += ` C${s},${c} ${l},${u} ${a.x},${a.y}`;
|
|
58
|
-
}
|
|
59
|
-
return t;
|
|
60
|
-
}
|
|
61
|
-
function Y(e, t, n) {
|
|
62
|
-
if (e.length === 0) return "";
|
|
63
|
-
let r = n ? J(e) : q(e), i = e[e.length - 1], a = e[0];
|
|
64
|
-
return `${r} L${i.x},${t} L${a.x},${t} Z`;
|
|
65
|
-
}
|
|
66
|
-
function X(e, t, n) {
|
|
67
|
-
if (e.length === 0) return "";
|
|
68
|
-
let r = n ? J(e) : q(e), i = [...t].reverse();
|
|
69
|
-
return `${r} ${n ? J(i).replace(/^M/, "L") : i.map((e) => `L${e.x},${e.y}`).join(" ")} Z`;
|
|
70
|
-
}
|
|
71
|
-
function Z(e, t, n, r, i) {
|
|
72
|
-
let a = i - r;
|
|
73
|
-
if (a >= Math.PI * 2 - .001) {
|
|
74
|
-
let i = r + Math.PI;
|
|
75
|
-
return [
|
|
76
|
-
`M${e + n * Math.cos(r)},${t + n * Math.sin(r)}`,
|
|
77
|
-
`A${n},${n} 0 1 1 ${e + n * Math.cos(i)},${t + n * Math.sin(i)}`,
|
|
78
|
-
`A${n},${n} 0 1 1 ${e + n * Math.cos(r)},${t + n * Math.sin(r)}`
|
|
79
|
-
].join(" ");
|
|
80
|
-
}
|
|
81
|
-
let o = +(a > Math.PI);
|
|
82
|
-
return `M${e + n * Math.cos(r)},${t + n * Math.sin(r)} A${n},${n} 0 ${o} 1 ${e + n * Math.cos(i)},${t + n * Math.sin(i)}`;
|
|
83
|
-
}
|
|
84
|
-
function ne(e, t, n, r, i, a) {
|
|
85
|
-
let o = a - i;
|
|
86
|
-
if (r <= 0) {
|
|
87
|
-
if (o >= Math.PI * 2 - .001) return Z(e, t, n, i, a) + " Z";
|
|
88
|
-
let r = e + n * Math.cos(i), s = t + n * Math.sin(i), c = e + n * Math.cos(a), l = t + n * Math.sin(a);
|
|
89
|
-
return `M${e},${t} L${r},${s} A${n},${n} 0 ${+(o > Math.PI)} 1 ${c},${l} Z`;
|
|
90
|
-
}
|
|
91
|
-
let s = e + n * Math.cos(i), c = t + n * Math.sin(i), l = e + n * Math.cos(a), u = t + n * Math.sin(a), d = e + r * Math.cos(a), f = t + r * Math.sin(a), p = e + r * Math.cos(i), m = t + r * Math.sin(i);
|
|
92
|
-
if (o >= Math.PI * 2 - .001) {
|
|
93
|
-
let a = i + Math.PI, o = e + n * Math.cos(a), l = t + n * Math.sin(a), u = e + r * Math.cos(a), d = t + r * Math.sin(a);
|
|
94
|
-
return [
|
|
95
|
-
`M${s},${c}`,
|
|
96
|
-
`A${n},${n} 0 1 1 ${o},${l}`,
|
|
97
|
-
`A${n},${n} 0 1 1 ${s},${c}`,
|
|
98
|
-
`M${p},${m}`,
|
|
99
|
-
`A${r},${r} 0 1 0 ${u},${d}`,
|
|
100
|
-
`A${r},${r} 0 1 0 ${p},${m}`,
|
|
101
|
-
"Z"
|
|
102
|
-
].join(" ");
|
|
103
|
-
}
|
|
104
|
-
let h = +(o > Math.PI);
|
|
105
|
-
return [
|
|
106
|
-
`M${s},${c}`,
|
|
107
|
-
`A${n},${n} 0 ${h} 1 ${l},${u}`,
|
|
108
|
-
`L${d},${f}`,
|
|
109
|
-
`A${r},${r} 0 ${h} 0 ${p},${m}`,
|
|
110
|
-
"Z"
|
|
111
|
-
].join(" ");
|
|
112
|
-
}
|
|
113
|
-
//#endregion
|
|
114
|
-
//#region src/components/data/MSparkline/MSparkline.tsx
|
|
115
|
-
var Q = 2;
|
|
116
|
-
function $({ data: e, type: t = "line", color: n = "primary", width: r = "100%", height: i = 40, padding: a = Q, curved: o = !0, animated: s = !0, showMinMax: c = !1, fillOpacity: l = .15, className: u, style: d, ...f }) {
|
|
117
|
-
let p = ee(null), [m, h] = L(!s), g = Math.max(0, a);
|
|
118
|
-
F(() => {
|
|
119
|
-
if (s) {
|
|
120
|
-
let e = requestAnimationFrame(() => h(!0));
|
|
121
|
-
return () => cancelAnimationFrame(e);
|
|
122
|
-
}
|
|
123
|
-
}, [s]);
|
|
124
|
-
let { points: _, minIdx: v, maxIdx: y, svgWidth: b, svgHeight: x, barWidth: S } = I(() => {
|
|
125
|
-
let t = e.length;
|
|
126
|
-
if (t === 0) return {
|
|
127
|
-
points: [],
|
|
128
|
-
minIdx: 0,
|
|
129
|
-
maxIdx: 0,
|
|
130
|
-
svgWidth: 100,
|
|
131
|
-
svgHeight: i,
|
|
132
|
-
barWidth: 0
|
|
133
|
-
};
|
|
134
|
-
let n = i, r = Infinity, a = -Infinity, o = 0, s = 0;
|
|
135
|
-
for (let n = 0; n < t; n++) e[n] < r && (r = e[n], o = n), e[n] > a && (a = e[n], s = n);
|
|
136
|
-
r === a && (--r, a += 1);
|
|
137
|
-
let c = V([0, Math.max(t - 1, 1)], [g, 98 - g]), l = V([r, a], [n - g, g]), u = e.map((e, t) => ({
|
|
138
|
-
x: c(t),
|
|
139
|
-
y: l(e)
|
|
140
|
-
})), d = t > 1 ? (98 - g * 2) / t : 98 - g * 2;
|
|
141
|
-
return {
|
|
142
|
-
points: u,
|
|
143
|
-
minIdx: o,
|
|
144
|
-
maxIdx: s,
|
|
145
|
-
svgWidth: 98,
|
|
146
|
-
svgHeight: n,
|
|
147
|
-
barWidth: d
|
|
148
|
-
};
|
|
149
|
-
}, [
|
|
150
|
-
e,
|
|
151
|
-
i,
|
|
152
|
-
g
|
|
153
|
-
]);
|
|
154
|
-
if (e.length === 0) return null;
|
|
155
|
-
let C = t === "bar" ? "" : o ? J(_) : q(_), w = t === "area" ? Y(_, x - g, o) : "";
|
|
156
|
-
return /* @__PURE__ */ z("div", {
|
|
157
|
-
className: M("sparkline", n, u),
|
|
158
|
-
style: {
|
|
159
|
-
width: r,
|
|
160
|
-
height: i,
|
|
161
|
-
...d
|
|
162
|
-
},
|
|
163
|
-
...f,
|
|
164
|
-
children: /* @__PURE__ */ B("svg", {
|
|
165
|
-
ref: p,
|
|
166
|
-
viewBox: `0 0 ${b} ${x}`,
|
|
167
|
-
preserveAspectRatio: "none",
|
|
168
|
-
className: M("sparkline-svg", m && "mounted"),
|
|
169
|
-
children: [
|
|
170
|
-
t === "area" && /* @__PURE__ */ z("path", {
|
|
171
|
-
className: "sparkline-area",
|
|
172
|
-
d: w,
|
|
173
|
-
style: { opacity: l }
|
|
174
|
-
}),
|
|
175
|
-
t === "bar" ? /* @__PURE__ */ z("g", {
|
|
176
|
-
className: "sparkline-bars",
|
|
177
|
-
children: _.map((e, t) => {
|
|
178
|
-
let n = x - g - e.y;
|
|
179
|
-
return /* @__PURE__ */ z("rect", {
|
|
180
|
-
className: "sparkline-bar",
|
|
181
|
-
x: e.x - S * .4,
|
|
182
|
-
y: e.y,
|
|
183
|
-
width: S * .8,
|
|
184
|
-
height: Math.max(n, .5),
|
|
185
|
-
rx: 1
|
|
186
|
-
}, t);
|
|
187
|
-
})
|
|
188
|
-
}) : /* @__PURE__ */ z("path", {
|
|
189
|
-
className: "sparkline-line",
|
|
190
|
-
d: C
|
|
191
|
-
}),
|
|
192
|
-
c && t !== "bar" && /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ z("circle", {
|
|
193
|
-
className: "sparkline-dot sparkline-dot-min",
|
|
194
|
-
cx: _[v].x,
|
|
195
|
-
cy: _[v].y,
|
|
196
|
-
r: 2.5
|
|
197
|
-
}), /* @__PURE__ */ z("circle", {
|
|
198
|
-
className: "sparkline-dot sparkline-dot-max",
|
|
199
|
-
cx: _[y].x,
|
|
200
|
-
cy: _[y].y,
|
|
201
|
-
r: 2.5
|
|
202
|
-
})] })
|
|
203
|
-
]
|
|
204
|
-
})
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
//#endregion
|
|
208
|
-
//#region src/components/data/MTreeView/MTreeView.tsx
|
|
209
|
-
var re = {
|
|
210
|
-
pdf: /* @__PURE__ */ z(w, {}),
|
|
211
|
-
ts: /* @__PURE__ */ z(b, {}),
|
|
212
|
-
tsx: /* @__PURE__ */ z(S, {}),
|
|
213
|
-
js: /* @__PURE__ */ z(E, {}),
|
|
214
|
-
jsx: /* @__PURE__ */ z(g, {}),
|
|
215
|
-
css: /* @__PURE__ */ z(A, {}),
|
|
216
|
-
scss: /* @__PURE__ */ z(A, {}),
|
|
217
|
-
html: /* @__PURE__ */ z(D, {}),
|
|
218
|
-
json: /* @__PURE__ */ z(f, {}),
|
|
219
|
-
md: /* @__PURE__ */ z(h, {}),
|
|
220
|
-
txt: /* @__PURE__ */ z(o, {}),
|
|
221
|
-
csv: /* @__PURE__ */ z(y, {}),
|
|
222
|
-
zip: /* @__PURE__ */ z(C, {}),
|
|
223
|
-
rar: /* @__PURE__ */ z(x, {}),
|
|
224
|
-
svg: /* @__PURE__ */ z(s, {}),
|
|
225
|
-
png: /* @__PURE__ */ z(j, {}),
|
|
226
|
-
jpg: /* @__PURE__ */ z(t, {}),
|
|
227
|
-
jpeg: /* @__PURE__ */ z(e, {}),
|
|
228
|
-
gif: /* @__PURE__ */ z(p, {}),
|
|
229
|
-
webp: /* @__PURE__ */ z(u, {}),
|
|
230
|
-
php: /* @__PURE__ */ z(_, {}),
|
|
231
|
-
xml: /* @__PURE__ */ z(l, {}),
|
|
232
|
-
xls: /* @__PURE__ */ z(O, {}),
|
|
233
|
-
ppt: /* @__PURE__ */ z(n, {}),
|
|
234
|
-
odt: /* @__PURE__ */ z(d, {}),
|
|
235
|
-
exe: /* @__PURE__ */ z(i, {}),
|
|
236
|
-
mp3: /* @__PURE__ */ z(a, {}),
|
|
237
|
-
mp4: /* @__PURE__ */ z(c, {})
|
|
238
|
-
};
|
|
239
|
-
function ie(e) {
|
|
240
|
-
let t = e.lastIndexOf(".");
|
|
241
|
-
return t < 1 ? null : e.slice(t + 1).toLowerCase();
|
|
242
|
-
}
|
|
243
|
-
function ae(e) {
|
|
244
|
-
return e.kind === "folder" || !!e.children?.length;
|
|
245
|
-
}
|
|
246
|
-
function oe(e) {
|
|
247
|
-
let t = ie(e);
|
|
248
|
-
return t ? re[t] ?? /* @__PURE__ */ z(k, {}) : /* @__PURE__ */ z(T, {});
|
|
249
|
-
}
|
|
250
|
-
function se(e, t, n) {
|
|
251
|
-
return e.icon ? e.icon : n ? ae(e) ? z(t ? v : r, {}) : oe(e.label) : null;
|
|
252
|
-
}
|
|
253
|
-
function ce(e) {
|
|
254
|
-
let t = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Map();
|
|
255
|
-
function i(e) {
|
|
256
|
-
t.set(e.id, e);
|
|
257
|
-
let a = /* @__PURE__ */ new Set();
|
|
258
|
-
for (let t of e.children ?? []) r.set(t.id, e.id), a.add(t.id), i(t).forEach((e) => a.add(e));
|
|
259
|
-
return n.set(e.id, a), a;
|
|
260
|
-
}
|
|
261
|
-
return e.forEach(i), {
|
|
262
|
-
nodeMap: t,
|
|
263
|
-
descendants: n,
|
|
264
|
-
parentMap: r
|
|
265
|
-
};
|
|
266
|
-
}
|
|
267
|
-
function le(e, t) {
|
|
268
|
-
let n = /* @__PURE__ */ new Set();
|
|
269
|
-
function r(e) {
|
|
270
|
-
if (!e.children?.length) return t.has(e.id) ? {
|
|
271
|
-
checked: 1,
|
|
272
|
-
total: 1
|
|
273
|
-
} : {
|
|
274
|
-
checked: 0,
|
|
275
|
-
total: 1
|
|
276
|
-
};
|
|
277
|
-
let i = 0, a = 0;
|
|
278
|
-
for (let t of e.children) {
|
|
279
|
-
let e = r(t);
|
|
280
|
-
i += e.checked, a += e.total;
|
|
281
|
-
}
|
|
282
|
-
return i > 0 && i < a && n.add(e.id), {
|
|
283
|
-
checked: i,
|
|
284
|
-
total: a
|
|
285
|
-
};
|
|
286
|
-
}
|
|
287
|
-
return e.forEach(r), n;
|
|
288
|
-
}
|
|
289
|
-
function ue(e, t) {
|
|
290
|
-
return typeof window > "u" ? {
|
|
291
|
-
x: e,
|
|
292
|
-
y: t
|
|
293
|
-
} : {
|
|
294
|
-
x: Math.max(8, Math.min(e, window.innerWidth - 220)),
|
|
295
|
-
y: Math.max(8, Math.min(t, window.innerHeight - 16))
|
|
296
|
-
};
|
|
297
|
-
}
|
|
298
|
-
function de({ node: e, color: t, level: n, expandable: r, selectable: i, expandedIds: a, selectedId: o, draggedId: s, dropTargetId: c, onToggle: l, onSelect: u, checkable: d, checkedIds: f, indeterminateIds: p, onCheck: h, indent: g, showLines: _, fileIcons: v, draggable: y, canDropOnNode: b, onContextMenu: x, onDragStart: S, onDragOver: C, onDrop: w, onDragEnd: T }) {
|
|
299
|
-
let E = ae(e), D = a.has(e.id), O = o === e.id, k = s === e.id, A = c === e.id, j = b?.(e), N = se(e, D, !!v), F = f?.has(e.id) ?? !1, I = p?.has(e.id) ?? !1;
|
|
300
|
-
return /* @__PURE__ */ B("li", {
|
|
301
|
-
role: "treeitem",
|
|
302
|
-
"aria-expanded": E ? D : void 0,
|
|
303
|
-
children: [/* @__PURE__ */ B("div", {
|
|
304
|
-
className: M("item", O && "selected", e.disabled && "disabled", i && !e.disabled && "selectable", y && !e.disabled && "draggable", k && "dragging", j && "can-drop", A && "drop-target"),
|
|
305
|
-
"data-color": t,
|
|
306
|
-
style: { paddingLeft: n * g },
|
|
307
|
-
draggable: y && !e.disabled,
|
|
308
|
-
onClick: () => {
|
|
309
|
-
e.disabled || (E && r && l(e.id), i && u?.(e.id, e));
|
|
310
|
-
},
|
|
311
|
-
onContextMenu: (t) => x?.(t, e),
|
|
312
|
-
onDragStart: (t) => S?.(t, e),
|
|
313
|
-
onDragOver: (t) => C?.(t, e),
|
|
314
|
-
onDrop: (t) => w?.(t, e),
|
|
315
|
-
onDragEnd: T,
|
|
316
|
-
children: [
|
|
317
|
-
/* @__PURE__ */ z("span", {
|
|
318
|
-
className: "toggle",
|
|
319
|
-
children: E && r ? /* @__PURE__ */ z("span", {
|
|
320
|
-
className: M("arrow", D && "expanded"),
|
|
321
|
-
children: /* @__PURE__ */ z(m, {})
|
|
322
|
-
}) : /* @__PURE__ */ z("span", { className: "spacer" })
|
|
323
|
-
}),
|
|
324
|
-
d && /* @__PURE__ */ z("span", {
|
|
325
|
-
className: "check",
|
|
326
|
-
onClick: (e) => e.stopPropagation(),
|
|
327
|
-
children: /* @__PURE__ */ z(P, {
|
|
328
|
-
size: "sm",
|
|
329
|
-
clickEffect: "none",
|
|
330
|
-
disabled: e.disabled,
|
|
331
|
-
checked: F,
|
|
332
|
-
indeterminate: I,
|
|
333
|
-
onChange: () => h?.(e.id)
|
|
334
|
-
})
|
|
335
|
-
}),
|
|
336
|
-
N && /* @__PURE__ */ z("span", {
|
|
337
|
-
className: "icon",
|
|
338
|
-
children: N
|
|
339
|
-
}),
|
|
340
|
-
/* @__PURE__ */ z("span", {
|
|
341
|
-
className: "label",
|
|
342
|
-
children: e.label
|
|
343
|
-
})
|
|
344
|
-
]
|
|
345
|
-
}), E && D && /* @__PURE__ */ z("ul", {
|
|
346
|
-
className: "list",
|
|
347
|
-
role: "group",
|
|
348
|
-
style: _ ? { "--line-left": `${n * g + 17}px` } : void 0,
|
|
349
|
-
children: (e.children ?? []).map((e) => /* @__PURE__ */ z(de, {
|
|
350
|
-
node: e,
|
|
351
|
-
color: t,
|
|
352
|
-
level: n + 1,
|
|
353
|
-
expandable: r,
|
|
354
|
-
selectable: i,
|
|
355
|
-
expandedIds: a,
|
|
356
|
-
selectedId: o,
|
|
357
|
-
draggedId: s,
|
|
358
|
-
dropTargetId: c,
|
|
359
|
-
onToggle: l,
|
|
360
|
-
onSelect: u,
|
|
361
|
-
checkable: d,
|
|
362
|
-
checkedIds: f,
|
|
363
|
-
indeterminateIds: p,
|
|
364
|
-
onCheck: h,
|
|
365
|
-
indent: g,
|
|
366
|
-
showLines: _,
|
|
367
|
-
fileIcons: v,
|
|
368
|
-
draggable: y,
|
|
369
|
-
canDropOnNode: b,
|
|
370
|
-
onContextMenu: x,
|
|
371
|
-
onDragStart: S,
|
|
372
|
-
onDragOver: C,
|
|
373
|
-
onDrop: w,
|
|
374
|
-
onDragEnd: T
|
|
375
|
-
}, e.id))
|
|
376
|
-
})]
|
|
377
|
-
});
|
|
378
|
-
}
|
|
379
|
-
function fe({ items: e, color: t = "primary", expandable: n = !0, selectable: r = !1, defaultExpanded: i = [], expanded: a, onExpandChange: o, selected: s, onSelect: c, checkable: l = !1, defaultChecked: u = [], checked: d, onCheckedChange: f, indent: p = 20, showLines: m = !0, fileIcons: h = !0, draggable: g = !1, canDrop: _, onMove: v, contextMenuItems: y, onContextMenuAction: b, className: x, ...S }) {
|
|
380
|
-
let [C, w] = L(i), [T, E] = L(null), [D, O] = L(u), [k, A] = L(null), [j, P] = L(null), [I, R] = L(null), V = ee(null), H = a ?? C, U = new Set(H), W = s === void 0 ? T : s, G = new Set(d ?? D), te = l ? le(e, G) : /* @__PURE__ */ new Set(), { nodeMap: K, descendants: q, parentMap: J } = ce(e), Y = k ? K.get(k) ?? null : null;
|
|
381
|
-
F(() => {
|
|
382
|
-
if (!I) return;
|
|
383
|
-
function e(e) {
|
|
384
|
-
e && V.current && V.current.contains(e.target) || R(null);
|
|
385
|
-
}
|
|
386
|
-
function t(e) {
|
|
387
|
-
e.key === "Escape" && R(null);
|
|
388
|
-
}
|
|
389
|
-
return document.addEventListener("mousedown", e), document.addEventListener("scroll", e, !0), window.addEventListener("resize", e), document.addEventListener("keydown", t), () => {
|
|
390
|
-
document.removeEventListener("mousedown", e), document.removeEventListener("scroll", e, !0), window.removeEventListener("resize", e), document.removeEventListener("keydown", t);
|
|
391
|
-
};
|
|
392
|
-
}, [I]);
|
|
393
|
-
function X(e) {
|
|
394
|
-
let t = U.has(e) ? H.filter((t) => t !== e) : [...H, e];
|
|
395
|
-
o ? o(t) : w(t);
|
|
396
|
-
}
|
|
397
|
-
function Z(e, t) {
|
|
398
|
-
c ? c(e, t) : E(e);
|
|
399
|
-
}
|
|
400
|
-
function ne(e) {
|
|
401
|
-
let t = K.get(e);
|
|
402
|
-
if (!t || t.disabled) return;
|
|
403
|
-
let n = new Set(G), r = n.has(e), i = [e, ...Array.from(q.get(e) ?? [])];
|
|
404
|
-
if (r) for (let e of i) n.delete(e);
|
|
405
|
-
else for (let e of i) {
|
|
406
|
-
let t = K.get(e);
|
|
407
|
-
t && !t.disabled && n.add(e);
|
|
408
|
-
}
|
|
409
|
-
let a = J.get(e);
|
|
410
|
-
for (; a;) {
|
|
411
|
-
let e = K.get(a);
|
|
412
|
-
if (!e) break;
|
|
413
|
-
let t = (e.children ?? []).every((e) => e.disabled || n.has(e.id)), r = (e.children ?? []).some((e) => !e.disabled);
|
|
414
|
-
t && r ? n.add(a) : n.delete(a), a = J.get(a);
|
|
415
|
-
}
|
|
416
|
-
let o = Array.from(n);
|
|
417
|
-
d === void 0 && O(o), f?.(o);
|
|
418
|
-
}
|
|
419
|
-
function Q() {
|
|
420
|
-
A(null), P(null);
|
|
421
|
-
}
|
|
422
|
-
function $(e) {
|
|
423
|
-
return !Y || !g || !v || e.disabled || !ae(e) || e.id === Y.id || q.get(Y.id)?.has(e.id) ? !1 : _ ? _(Y, e) : !0;
|
|
424
|
-
}
|
|
425
|
-
function re(e, t) {
|
|
426
|
-
if (!y || t.disabled) return;
|
|
427
|
-
let n = y(t).filter(Boolean);
|
|
428
|
-
if (!n.length) return;
|
|
429
|
-
e.preventDefault(), Z(t.id, t);
|
|
430
|
-
let r = ue(e.clientX, e.clientY);
|
|
431
|
-
R({
|
|
432
|
-
node: t,
|
|
433
|
-
items: n,
|
|
434
|
-
x: r.x,
|
|
435
|
-
y: r.y
|
|
436
|
-
});
|
|
437
|
-
}
|
|
438
|
-
function ie(e, t) {
|
|
439
|
-
!g || t.disabled || (e.dataTransfer.effectAllowed = "move", e.dataTransfer.setData("text/plain", t.id), R(null), A(t.id));
|
|
440
|
-
}
|
|
441
|
-
function oe(e, t) {
|
|
442
|
-
$(t) && (e.preventDefault(), e.dataTransfer.dropEffect = "move", P(t.id));
|
|
443
|
-
}
|
|
444
|
-
function se(e, t) {
|
|
445
|
-
if (e.preventDefault(), !Y || !$(t)) {
|
|
446
|
-
Q();
|
|
447
|
-
return;
|
|
448
|
-
}
|
|
449
|
-
v?.({
|
|
450
|
-
draggedId: Y.id,
|
|
451
|
-
draggedNode: Y,
|
|
452
|
-
targetId: t.id,
|
|
453
|
-
targetNode: t
|
|
454
|
-
}), n && !U.has(t.id) && X(t.id), Q();
|
|
455
|
-
}
|
|
456
|
-
return /* @__PURE__ */ B("div", {
|
|
457
|
-
className: M("tree", `color-${t}`, m && "lines", x),
|
|
458
|
-
...S,
|
|
459
|
-
children: [/* @__PURE__ */ z("ul", {
|
|
460
|
-
className: "list",
|
|
461
|
-
role: "tree",
|
|
462
|
-
children: e.map((e) => /* @__PURE__ */ z(de, {
|
|
463
|
-
node: e,
|
|
464
|
-
color: t,
|
|
465
|
-
level: 0,
|
|
466
|
-
expandable: n,
|
|
467
|
-
selectable: r,
|
|
468
|
-
expandedIds: U,
|
|
469
|
-
selectedId: W,
|
|
470
|
-
draggedId: k,
|
|
471
|
-
dropTargetId: j,
|
|
472
|
-
onToggle: X,
|
|
473
|
-
onSelect: Z,
|
|
474
|
-
checkable: l,
|
|
475
|
-
checkedIds: G,
|
|
476
|
-
indeterminateIds: te,
|
|
477
|
-
onCheck: ne,
|
|
478
|
-
indent: p,
|
|
479
|
-
showLines: m,
|
|
480
|
-
fileIcons: h,
|
|
481
|
-
draggable: g,
|
|
482
|
-
canDropOnNode: $,
|
|
483
|
-
onContextMenu: re,
|
|
484
|
-
onDragStart: ie,
|
|
485
|
-
onDragOver: oe,
|
|
486
|
-
onDrop: se,
|
|
487
|
-
onDragEnd: Q
|
|
488
|
-
}, e.id))
|
|
489
|
-
}), I && /* @__PURE__ */ z(N, { children: /* @__PURE__ */ z("div", {
|
|
490
|
-
ref: V,
|
|
491
|
-
className: "tree menu",
|
|
492
|
-
style: {
|
|
493
|
-
top: I.y,
|
|
494
|
-
left: I.x
|
|
495
|
-
},
|
|
496
|
-
role: "menu",
|
|
497
|
-
children: I.items.map((e) => /* @__PURE__ */ B("button", {
|
|
498
|
-
type: "button",
|
|
499
|
-
className: M("action", e.color, e.disabled && "disabled"),
|
|
500
|
-
role: "menuitem",
|
|
501
|
-
disabled: e.disabled,
|
|
502
|
-
onClick: () => {
|
|
503
|
-
e.disabled || (b?.(e.id, I.node), R(null));
|
|
504
|
-
},
|
|
505
|
-
children: [e.icon && /* @__PURE__ */ z("span", {
|
|
506
|
-
className: "icon",
|
|
507
|
-
children: e.icon
|
|
508
|
-
}), /* @__PURE__ */ z("span", { children: e.label })]
|
|
509
|
-
}, e.id))
|
|
510
|
-
}) })]
|
|
511
|
-
});
|
|
512
|
-
}
|
|
513
|
-
//#endregion
|
|
514
|
-
export { q as a, V as c, K as d, U as f, J as i, G as l, $ as n, ne as o, H as p, Y as r, X as s, fe as t, te as u };
|
|
515
|
-
|
|
516
|
-
//# sourceMappingURL=MTreeView-AqH8XMPz.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MTreeView-AqH8XMPz.js","names":[],"sources":["../src/components/data/MChart/utils/scales.ts","../src/components/data/MChart/utils/paths.ts","../src/components/data/MSparkline/MSparkline.tsx","../src/components/data/MTreeView/MTreeView.tsx"],"sourcesContent":["export function createLinearScale(domain: [number, number], range: [number, number]): (value: number) => number {\n const [d0, d1] = domain\n const [r0, r1] = range\n const span = d1 - d0 || 1\n\n return (value: number) => r0 + ((value - d0) / span) * (r1 - r0)\n}\n\nexport function niceMin(min: number): number {\n if (min >= 0) return 0\n const step = niceStep(min, 0)\n return Math.floor(min / step) * step\n}\n\nexport function niceMax(max: number, min: number = 0): number {\n const step = niceStep(min, max)\n return Math.ceil(max / step) * step\n}\n\nexport function niceStep(min: number, max: number, ticks = 5): number {\n const range = max - min || 1\n const rough = range / ticks\n const pow = Math.pow(10, Math.floor(Math.log10(rough)))\n const normalized = rough / pow\n\n let nice: number\n if (normalized <= 1) nice = 1\n else if (normalized <= 2) nice = 2\n else if (normalized <= 5) nice = 5\n else nice = 10\n\n return nice * pow\n}\n\nexport function generateTicks(min: number, max: number, count = 5): number[] {\n const step = niceStep(min, max, count)\n const start = Math.floor(min / step) * step\n const end = Math.ceil(max / step) * step\n const ticks: number[] = []\n\n for (let v = start; v <= end + step * 0.01; v += step) {\n ticks.push(Math.round(v * 1e10) / 1e10)\n }\n\n return ticks\n}\n\nexport function getDataExtent(datasets: number[][]): [number, number] {\n let min = Infinity\n let max = -Infinity\n\n for (const data of datasets) {\n for (const v of data) {\n if (v < min) min = v\n if (v > max) max = v\n }\n }\n\n if (min === Infinity) return [0, 1]\n if (min === max) return [min - 1, max + 1]\n\n return [min, max]\n}\n\nexport function getStackedExtent(datasets: number[][]): [number, number] {\n if (datasets.length === 0) return [0, 1]\n\n const len = Math.max(...datasets.map((d) => d.length))\n let max = -Infinity\n\n for (let i = 0; i < len; i++) {\n let sum = 0\n for (const data of datasets) {\n sum += data[i] ?? 0\n }\n if (sum > max) max = sum\n }\n\n return [0, max === 0 ? 1 : max]\n}\n","export interface Point {\n x: number\n y: number\n}\n\nexport function linePath(points: Point[]): string {\n if (points.length === 0) return ''\n return points.map((p, i) => `${i === 0 ? 'M' : 'L'}${p.x},${p.y}`).join(' ')\n}\n\nexport function curvedPath(points: Point[]): string {\n if (points.length === 0) return ''\n if (points.length === 1) return `M${points[0].x},${points[0].y}`\n if (points.length === 2) return linePath(points)\n\n let d = `M${points[0].x},${points[0].y}`\n\n for (let i = 0; i < points.length - 1; i++) {\n const p0 = points[Math.max(i - 1, 0)]\n const p1 = points[i]\n const p2 = points[i + 1]\n const p3 = points[Math.min(i + 2, points.length - 1)]\n\n const cp1x = p1.x + (p2.x - p0.x) / 6\n const cp1y = p1.y + (p2.y - p0.y) / 6\n const cp2x = p2.x - (p3.x - p1.x) / 6\n const cp2y = p2.y - (p3.y - p1.y) / 6\n\n d += ` C${cp1x},${cp1y} ${cp2x},${cp2y} ${p2.x},${p2.y}`\n }\n\n return d\n}\n\nexport function areaPath(points: Point[], baseline: number, curved: boolean): string {\n if (points.length === 0) return ''\n\n const topPath = curved ? curvedPath(points) : linePath(points)\n const last = points[points.length - 1]\n const first = points[0]\n\n return `${topPath} L${last.x},${baseline} L${first.x},${baseline} Z`\n}\n\nexport function stackedAreaPath(topPoints: Point[], bottomPoints: Point[], curved: boolean): string {\n if (topPoints.length === 0) return ''\n\n const topPath = curved ? curvedPath(topPoints) : linePath(topPoints)\n const reversed = [...bottomPoints].reverse()\n const bottomPath = curved\n ? curvedPath(reversed).replace(/^M/, 'L')\n : reversed.map((p) => `L${p.x},${p.y}`).join(' ')\n\n return `${topPath} ${bottomPath} Z`\n}\n\nexport function pieArc(cx: number, cy: number, r: number, startAngle: number, endAngle: number): string {\n const sweep = endAngle - startAngle\n if (sweep >= Math.PI * 2 - 0.001) {\n const mid = startAngle + Math.PI\n return [\n `M${cx + r * Math.cos(startAngle)},${cy + r * Math.sin(startAngle)}`,\n `A${r},${r} 0 1 1 ${cx + r * Math.cos(mid)},${cy + r * Math.sin(mid)}`,\n `A${r},${r} 0 1 1 ${cx + r * Math.cos(startAngle)},${cy + r * Math.sin(startAngle)}`,\n ].join(' ')\n }\n\n const largeArc = sweep > Math.PI ? 1 : 0\n const x1 = cx + r * Math.cos(startAngle)\n const y1 = cy + r * Math.sin(startAngle)\n const x2 = cx + r * Math.cos(endAngle)\n const y2 = cy + r * Math.sin(endAngle)\n\n return `M${x1},${y1} A${r},${r} 0 ${largeArc} 1 ${x2},${y2}`\n}\n\nexport function pieSector(\n cx: number,\n cy: number,\n outerR: number,\n innerR: number,\n startAngle: number,\n endAngle: number\n): string {\n const sweep = endAngle - startAngle\n\n if (innerR <= 0) {\n if (sweep >= Math.PI * 2 - 0.001) {\n return pieArc(cx, cy, outerR, startAngle, endAngle) + ' Z'\n }\n const x1 = cx + outerR * Math.cos(startAngle)\n const y1 = cy + outerR * Math.sin(startAngle)\n const x2 = cx + outerR * Math.cos(endAngle)\n const y2 = cy + outerR * Math.sin(endAngle)\n const largeArc = sweep > Math.PI ? 1 : 0\n return `M${cx},${cy} L${x1},${y1} A${outerR},${outerR} 0 ${largeArc} 1 ${x2},${y2} Z`\n }\n\n const ox1 = cx + outerR * Math.cos(startAngle)\n const oy1 = cy + outerR * Math.sin(startAngle)\n const ox2 = cx + outerR * Math.cos(endAngle)\n const oy2 = cy + outerR * Math.sin(endAngle)\n const ix1 = cx + innerR * Math.cos(endAngle)\n const iy1 = cy + innerR * Math.sin(endAngle)\n const ix2 = cx + innerR * Math.cos(startAngle)\n const iy2 = cy + innerR * Math.sin(startAngle)\n\n if (sweep >= Math.PI * 2 - 0.001) {\n const mid = startAngle + Math.PI\n const omx = cx + outerR * Math.cos(mid)\n const omy = cy + outerR * Math.sin(mid)\n const imx = cx + innerR * Math.cos(mid)\n const imy = cy + innerR * Math.sin(mid)\n return [\n `M${ox1},${oy1}`,\n `A${outerR},${outerR} 0 1 1 ${omx},${omy}`,\n `A${outerR},${outerR} 0 1 1 ${ox1},${oy1}`,\n `M${ix2},${iy2}`,\n `A${innerR},${innerR} 0 1 0 ${imx},${imy}`,\n `A${innerR},${innerR} 0 1 0 ${ix2},${iy2}`,\n 'Z',\n ].join(' ')\n }\n\n const largeArc = sweep > Math.PI ? 1 : 0\n return [\n `M${ox1},${oy1}`,\n `A${outerR},${outerR} 0 ${largeArc} 1 ${ox2},${oy2}`,\n `L${ix1},${iy1}`,\n `A${innerR},${innerR} 0 ${largeArc} 0 ${ix2},${iy2}`,\n 'Z',\n ].join(' ')\n}\n","import {useMemo, useRef, useEffect, useState} from 'react'\nimport type {MSparklineProps} from './MSparkline.types'\nimport {cn} from '../../../utils/cn'\nimport {createLinearScale} from '../MChart/utils/scales'\nimport {linePath, curvedPath, areaPath} from '../MChart/utils/paths'\nimport type {Point} from '../MChart/utils/paths'\nimport './MSparkline.css'\n\nconst DEFAULT_PADDING = 2\n\nexport function MSparkline({\n data,\n type = 'line',\n color = 'primary',\n width = '100%',\n height = 40,\n padding = DEFAULT_PADDING,\n curved = true,\n animated = true,\n showMinMax = false,\n fillOpacity = 0.15,\n className,\n style,\n ...rest\n}: MSparklineProps) {\n const svgRef = useRef<SVGSVGElement>(null)\n const [mounted, setMounted] = useState(!animated)\n const resolvedPadding = Math.max(0, padding)\n\n useEffect(() => {\n if (animated) {\n const id = requestAnimationFrame(() => setMounted(true))\n return () => cancelAnimationFrame(id)\n }\n }, [animated])\n\n const {points, minIdx, maxIdx, svgWidth, svgHeight, barWidth} = useMemo(() => {\n const len = data.length\n if (len === 0) {\n return {\n points: [] as Point[],\n minIdx: 0,\n maxIdx: 0,\n svgWidth: 100,\n svgHeight: height,\n barWidth: 0,\n }\n }\n\n const svgW = 98\n const svgH = height\n\n let min = Infinity\n let max = -Infinity\n let mnI = 0\n let mxI = 0\n\n for (let i = 0; i < len; i++) {\n if (data[i] < min) {\n min = data[i]\n mnI = i\n }\n if (data[i] > max) {\n max = data[i]\n mxI = i\n }\n }\n\n if (min === max) {\n min -= 1\n max += 1\n }\n\n const xScale = createLinearScale([0, Math.max(len - 1, 1)], [resolvedPadding, svgW - resolvedPadding])\n const yScale = createLinearScale([min, max], [svgH - resolvedPadding, resolvedPadding])\n\n const pts: Point[] = data.map((v, i) => ({x: xScale(i), y: yScale(v)}))\n const bw = len > 1 ? (svgW - resolvedPadding * 2) / len : svgW - resolvedPadding * 2\n\n return {points: pts, minIdx: mnI, maxIdx: mxI, svgWidth: svgW, svgHeight: svgH, barWidth: bw}\n }, [data, height, resolvedPadding])\n\n if (data.length === 0) return null\n\n const pathStr = type === 'bar' ? '' : curved ? curvedPath(points) : linePath(points)\n const areaStr = type === 'area' ? areaPath(points, svgHeight - resolvedPadding, curved) : ''\n\n return (\n <div className={cn('sparkline', color, className)} style={{width, height, ...style}} {...rest}>\n <svg\n ref={svgRef}\n viewBox={`0 0 ${svgWidth} ${svgHeight}`}\n preserveAspectRatio=\"none\"\n className={cn('sparkline-svg', mounted && 'mounted')}\n >\n {type === 'area' && <path className=\"sparkline-area\" d={areaStr} style={{opacity: fillOpacity}} />}\n {type === 'bar' ? (\n <g className=\"sparkline-bars\">\n {points.map((p, i) => {\n const barH = svgHeight - resolvedPadding - p.y\n return (\n <rect\n key={i}\n className=\"sparkline-bar\"\n x={p.x - barWidth * 0.4}\n y={p.y}\n width={barWidth * 0.8}\n height={Math.max(barH, 0.5)}\n rx={1}\n />\n )\n })}\n </g>\n ) : (\n <path className=\"sparkline-line\" d={pathStr} />\n )}\n {showMinMax && type !== 'bar' && (\n <>\n <circle\n className=\"sparkline-dot sparkline-dot-min\"\n cx={points[minIdx].x}\n cy={points[minIdx].y}\n r={2.5}\n />\n <circle\n className=\"sparkline-dot sparkline-dot-max\"\n cx={points[maxIdx].x}\n cy={points[maxIdx].y}\n r={2.5}\n />\n </>\n )}\n </svg>\n </div>\n )\n}\n","import {useEffect, useRef, useState} from 'react'\nimport type {CSSProperties, DragEvent, MouseEvent, ReactNode} from 'react'\nimport type {\n MTreeViewProps,\n MTreeItemProps,\n MTreeNode,\n MTreeViewContextMenuItem,\n MTreeViewMoveEvent,\n} from './MTreeView.types'\nimport {cn} from '../../../utils/cn'\nimport {MCheckbox} from '../../controls'\nimport {MPortal} from '../../primitives'\nimport {\n MChevronRightIcon,\n MFileCodeIcon,\n MFileCsvIcon,\n MFileCssIcon,\n MFileExeIcon,\n MFileGifIcon,\n MFileHtmlIcon,\n MFileIcon,\n MFileImageIcon,\n MFileJpgIcon,\n MFileJsIcon,\n MFileJsonIcon,\n MFileMdIcon,\n MFileMp3Icon,\n MFileMp4Icon,\n MFileOdtIcon,\n MFilePdfIcon,\n MFilePhpIcon,\n MFilePngIcon,\n MFilePptIcon,\n MFileRarIcon,\n MFileSvgIcon,\n MFileTextIcon,\n MFileTsIcon,\n MFileTsxIcon,\n MFileTxtIcon,\n MFileWebpIcon,\n MFileXlsIcon,\n MFileXmlIcon,\n MFileZipIcon,\n MFolderIcon,\n MFolderOpenIcon,\n} from '../../../icons'\nimport './MTreeView.css'\nconst fileTypeMap: Record<string, ReactNode> = {\n pdf: <MFilePdfIcon />,\n ts: <MFileTsIcon />,\n tsx: <MFileTsxIcon />,\n js: <MFileJsIcon />,\n jsx: <MFileCodeIcon />,\n css: <MFileCssIcon />,\n scss: <MFileCssIcon />,\n html: <MFileHtmlIcon />,\n json: <MFileJsonIcon />,\n md: <MFileMdIcon />,\n txt: <MFileTxtIcon />,\n csv: <MFileCsvIcon />,\n zip: <MFileZipIcon />,\n rar: <MFileRarIcon />,\n svg: <MFileSvgIcon />,\n png: <MFilePngIcon />,\n jpg: <MFileJpgIcon />,\n jpeg: <MFileImageIcon />,\n gif: <MFileGifIcon />,\n webp: <MFileWebpIcon />,\n php: <MFilePhpIcon />,\n xml: <MFileXmlIcon />,\n xls: <MFileXlsIcon />,\n ppt: <MFilePptIcon />,\n odt: <MFileOdtIcon />,\n exe: <MFileExeIcon />,\n mp3: <MFileMp3Icon />,\n mp4: <MFileMp4Icon />,\n}\n\n// Read the file extension once so icon logic stays predictable.\nfunction getFileExtension(label: string): string | null {\n const dot = label.lastIndexOf('.')\n if (dot < 1) return null\n return label.slice(dot + 1).toLowerCase()\n}\n\n// Treat explicit folders and nodes with children as directory-like.\nfunction isFolderNode(node: MTreeNode) {\n return node.kind === 'folder' || Boolean(node.children?.length)\n}\n\n// Resolve the proper file icon by extension.\nfunction getFileIcon(label: string): ReactNode {\n const ext = getFileExtension(label)\n if (!ext) return <MFileIcon />\n\n return fileTypeMap[ext] ?? <MFileTextIcon />\n}\n\n// Prefer custom icons first, then fall back to folder or file visuals.\nfunction getDefaultIcon(node: MTreeNode, isExpanded: boolean, fileIcons: boolean) {\n if (node.icon) return node.icon\n if (!fileIcons) return null\n\n if (isFolderNode(node)) return isExpanded ? <MFolderOpenIcon /> : <MFolderIcon />\n\n return getFileIcon(node.label)\n}\n\n// Cache nodes and descendants so drag-drop validation stays fast.\nfunction buildTreeLookup(items: MTreeNode[]) {\n const nodeMap = new Map<string, MTreeNode>()\n const descendants = new Map<string, Set<string>>()\n const parentMap = new Map<string, string>()\n\n function walk(node: MTreeNode) {\n nodeMap.set(node.id, node)\n\n const childIds = new Set<string>()\n\n for (const child of node.children ?? []) {\n parentMap.set(child.id, node.id)\n childIds.add(child.id)\n\n const nestedIds = walk(child)\n nestedIds.forEach((id) => childIds.add(id))\n }\n\n descendants.set(node.id, childIds)\n return childIds\n }\n\n items.forEach(walk)\n\n return {nodeMap, descendants, parentMap}\n}\n\n// Compute indeterminate ids: a node where some but not all leaf descendants are checked.\nfunction computeIndeterminate(items: MTreeNode[], checked: Set<string>): Set<string> {\n const indeterminate = new Set<string>()\n\n function walk(node: MTreeNode): {checked: number; total: number} {\n if (!node.children?.length) {\n return checked.has(node.id) ? {checked: 1, total: 1} : {checked: 0, total: 1}\n }\n\n let c = 0\n let t = 0\n\n for (const child of node.children) {\n const r = walk(child)\n c += r.checked\n t += r.total\n }\n\n if (c > 0 && c < t) indeterminate.add(node.id)\n return {checked: c, total: t}\n }\n\n items.forEach(walk)\n return indeterminate\n}\n\n// Keep the context menu inside the viewport.\nfunction clampMenuPosition(x: number, y: number) {\n if (typeof window === 'undefined') {\n return {x, y}\n }\n\n return {\n x: Math.max(8, Math.min(x, window.innerWidth - 220)),\n y: Math.max(8, Math.min(y, window.innerHeight - 16)),\n }\n}\n\n// Render one visible row and recurse into children when expanded.\nfunction TreeItem({\n node,\n color,\n level,\n expandable,\n selectable,\n expandedIds,\n selectedId,\n draggedId,\n dropTargetId,\n onToggle,\n onSelect,\n checkable,\n checkedIds,\n indeterminateIds,\n onCheck,\n indent,\n showLines,\n fileIcons,\n draggable,\n canDropOnNode,\n onContextMenu,\n onDragStart,\n onDragOver,\n onDrop,\n onDragEnd,\n}: MTreeItemProps) {\n const hasChildren = isFolderNode(node)\n const isExpanded = expandedIds.has(node.id)\n const isSelected = selectedId === node.id\n const isDragging = draggedId === node.id\n const isDropTarget = dropTargetId === node.id\n const canDrop = canDropOnNode?.(node)\n const icon = getDefaultIcon(node, isExpanded, !!fileIcons)\n const isChecked = checkedIds?.has(node.id) ?? false\n const isIndeterminate = indeterminateIds?.has(node.id) ?? false\n\n return (\n <li role=\"treeitem\" aria-expanded={hasChildren ? isExpanded : undefined}>\n <div\n className={cn(\n 'item',\n isSelected && 'selected',\n node.disabled && 'disabled',\n selectable && !node.disabled && 'selectable',\n draggable && !node.disabled && 'draggable',\n isDragging && 'dragging',\n canDrop && 'can-drop',\n isDropTarget && 'drop-target'\n )}\n data-color={color}\n style={{paddingLeft: level * indent}}\n draggable={draggable && !node.disabled}\n onClick={() => {\n if (node.disabled) return\n if (hasChildren && expandable) onToggle(node.id)\n if (selectable) onSelect?.(node.id, node)\n }}\n onContextMenu={(event) => onContextMenu?.(event, node)}\n onDragStart={(event) => onDragStart?.(event, node)}\n onDragOver={(event) => onDragOver?.(event, node)}\n onDrop={(event) => onDrop?.(event, node)}\n onDragEnd={onDragEnd}\n >\n <span className=\"toggle\">\n {hasChildren && expandable ? (\n <span className={cn('arrow', isExpanded && 'expanded')}>\n <MChevronRightIcon />\n </span>\n ) : (\n <span className=\"spacer\" />\n )}\n </span>\n {checkable && (\n <span className=\"check\" onClick={(event) => event.stopPropagation()}>\n <MCheckbox\n size=\"sm\"\n clickEffect=\"none\"\n disabled={node.disabled}\n checked={isChecked}\n indeterminate={isIndeterminate}\n onChange={() => onCheck?.(node.id)}\n />\n </span>\n )}\n {icon && <span className=\"icon\">{icon}</span>}\n <span className=\"label\">{node.label}</span>\n </div>\n {hasChildren && isExpanded && (\n <ul\n className=\"list\"\n role=\"group\"\n style={showLines ? ({'--line-left': `${level * indent + 17}px`} as CSSProperties) : undefined}\n >\n {(node.children ?? []).map((child) => (\n <TreeItem\n key={child.id}\n node={child}\n color={color}\n level={level + 1}\n expandable={expandable}\n selectable={selectable}\n expandedIds={expandedIds}\n selectedId={selectedId}\n draggedId={draggedId}\n dropTargetId={dropTargetId}\n onToggle={onToggle}\n onSelect={onSelect}\n checkable={checkable}\n checkedIds={checkedIds}\n indeterminateIds={indeterminateIds}\n onCheck={onCheck}\n indent={indent}\n showLines={showLines}\n fileIcons={fileIcons}\n draggable={draggable}\n canDropOnNode={canDropOnNode}\n onContextMenu={onContextMenu}\n onDragStart={onDragStart}\n onDragOver={onDragOver}\n onDrop={onDrop}\n onDragEnd={onDragEnd}\n />\n ))}\n </ul>\n )}\n </li>\n )\n}\n\n// Render a file tree with selection, context actions and folder moves.\nexport function MTreeView({\n items,\n color = 'primary',\n expandable = true,\n selectable = false,\n defaultExpanded = [],\n expanded: controlledExpanded,\n onExpandChange,\n selected: controlledSelected,\n onSelect,\n checkable = false,\n defaultChecked = [],\n checked: controlledChecked,\n onCheckedChange,\n indent = 20,\n showLines = true,\n fileIcons = true,\n draggable = false,\n canDrop,\n onMove,\n contextMenuItems,\n onContextMenuAction,\n className,\n ...rest\n}: MTreeViewProps) {\n const [internalExpanded, setInternalExpanded] = useState<string[]>(defaultExpanded)\n const [internalSelected, setInternalSelected] = useState<string | null>(null)\n const [internalChecked, setInternalChecked] = useState<string[]>(defaultChecked)\n const [draggedId, setDraggedId] = useState<string | null>(null)\n const [dropTargetId, setDropTargetId] = useState<string | null>(null)\n const [menu, setMenu] = useState<{\n node: MTreeNode\n items: MTreeViewContextMenuItem[]\n x: number\n y: number\n } | null>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n\n const expandedArr = controlledExpanded ?? internalExpanded\n const expandedIds = new Set(expandedArr)\n const selectedId = controlledSelected !== undefined ? controlledSelected : internalSelected\n const checkedArr = controlledChecked ?? internalChecked\n const checkedIds = new Set(checkedArr)\n const indeterminateIds = checkable ? computeIndeterminate(items, checkedIds) : new Set<string>()\n const {nodeMap, descendants, parentMap} = buildTreeLookup(items)\n const draggedNode = draggedId ? (nodeMap.get(draggedId) ?? null) : null\n\n useEffect(() => {\n if (!menu) return\n\n function closeMenu(event?: Event) {\n if (event && menuRef.current && menuRef.current.contains(event.target as Node)) {\n return\n }\n\n setMenu(null)\n }\n\n function handleKey(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n setMenu(null)\n }\n }\n\n document.addEventListener('mousedown', closeMenu)\n document.addEventListener('scroll', closeMenu, true)\n window.addEventListener('resize', closeMenu)\n document.addEventListener('keydown', handleKey)\n\n return () => {\n document.removeEventListener('mousedown', closeMenu)\n document.removeEventListener('scroll', closeMenu, true)\n window.removeEventListener('resize', closeMenu)\n document.removeEventListener('keydown', handleKey)\n }\n }, [menu])\n\n function handleToggle(id: string) {\n const next = expandedIds.has(id) ? expandedArr.filter((e) => e !== id) : [...expandedArr, id]\n if (onExpandChange) onExpandChange(next)\n else setInternalExpanded(next)\n }\n\n function handleSelect(id: string, node: MTreeNode) {\n if (onSelect) onSelect(id, node)\n else setInternalSelected(id)\n }\n\n function handleCheck(id: string) {\n const node = nodeMap.get(id)\n if (!node || node.disabled) return\n\n const next = new Set(checkedIds)\n const isCurrentlyChecked = next.has(id)\n const subtree = [id, ...Array.from(descendants.get(id) ?? [])]\n\n if (isCurrentlyChecked) {\n for (const sid of subtree) next.delete(sid)\n } else {\n for (const sid of subtree) {\n const sNode = nodeMap.get(sid)\n if (sNode && !sNode.disabled) next.add(sid)\n }\n }\n\n let parentId = parentMap.get(id)\n\n while (parentId) {\n const parent = nodeMap.get(parentId)\n if (!parent) break\n\n const allChildrenChecked = (parent.children ?? []).every((child) => child.disabled || next.has(child.id))\n const hasEnabledChild = (parent.children ?? []).some((child) => !child.disabled)\n\n if (allChildrenChecked && hasEnabledChild) next.add(parentId)\n else next.delete(parentId)\n\n parentId = parentMap.get(parentId)\n }\n\n const nextArr = Array.from(next)\n\n if (controlledChecked === undefined) setInternalChecked(nextArr)\n onCheckedChange?.(nextArr)\n }\n\n function closeDrag() {\n setDraggedId(null)\n setDropTargetId(null)\n }\n\n function isValidDropTarget(targetNode: MTreeNode) {\n if (!draggedNode || !draggable || !onMove) return false\n if (targetNode.disabled || !isFolderNode(targetNode)) return false\n if (targetNode.id === draggedNode.id) return false\n if (descendants.get(draggedNode.id)?.has(targetNode.id)) return false\n\n return canDrop ? canDrop(draggedNode, targetNode) : true\n }\n\n function handleContextMenu(event: MouseEvent<HTMLDivElement>, node: MTreeNode) {\n if (!contextMenuItems || node.disabled) return\n\n const items = contextMenuItems(node).filter(Boolean)\n if (!items.length) return\n\n event.preventDefault()\n handleSelect(node.id, node)\n\n const pos = clampMenuPosition(event.clientX, event.clientY)\n setMenu({\n node,\n items,\n x: pos.x,\n y: pos.y,\n })\n }\n\n function handleDragStart(event: DragEvent<HTMLDivElement>, node: MTreeNode) {\n if (!draggable || node.disabled) return\n\n event.dataTransfer.effectAllowed = 'move'\n event.dataTransfer.setData('text/plain', node.id)\n setMenu(null)\n setDraggedId(node.id)\n }\n\n function handleDragOver(event: DragEvent<HTMLDivElement>, targetNode: MTreeNode) {\n if (!isValidDropTarget(targetNode)) return\n\n event.preventDefault()\n event.dataTransfer.dropEffect = 'move'\n setDropTargetId(targetNode.id)\n }\n\n function handleDrop(event: DragEvent<HTMLDivElement>, targetNode: MTreeNode) {\n event.preventDefault()\n\n if (!draggedNode || !isValidDropTarget(targetNode)) {\n closeDrag()\n return\n }\n\n onMove?.({\n draggedId: draggedNode.id,\n draggedNode,\n targetId: targetNode.id,\n targetNode,\n } satisfies MTreeViewMoveEvent)\n\n if (expandable && !expandedIds.has(targetNode.id)) {\n handleToggle(targetNode.id)\n }\n\n closeDrag()\n }\n\n return (\n <div className={cn('tree', `color-${color}`, showLines && 'lines', className)} {...rest}>\n <ul className=\"list\" role=\"tree\">\n {items.map((item) => (\n <TreeItem\n key={item.id}\n node={item}\n color={color}\n level={0}\n expandable={expandable}\n selectable={selectable}\n expandedIds={expandedIds}\n selectedId={selectedId}\n draggedId={draggedId}\n dropTargetId={dropTargetId}\n onToggle={handleToggle}\n onSelect={handleSelect}\n checkable={checkable}\n checkedIds={checkedIds}\n indeterminateIds={indeterminateIds}\n onCheck={handleCheck}\n indent={indent}\n showLines={showLines}\n fileIcons={fileIcons}\n draggable={draggable}\n canDropOnNode={isValidDropTarget}\n onContextMenu={handleContextMenu}\n onDragStart={handleDragStart}\n onDragOver={handleDragOver}\n onDrop={handleDrop}\n onDragEnd={closeDrag}\n />\n ))}\n </ul>\n {menu && (\n <MPortal>\n <div ref={menuRef} className=\"tree menu\" style={{top: menu.y, left: menu.x}} role=\"menu\">\n {menu.items.map((item) => (\n <button\n key={item.id}\n type=\"button\"\n className={cn('action', item.color, item.disabled && 'disabled')}\n role=\"menuitem\"\n disabled={item.disabled}\n onClick={() => {\n if (item.disabled) return\n onContextMenuAction?.(item.id, menu.node)\n setMenu(null)\n }}\n >\n {item.icon && <span className=\"icon\">{item.icon}</span>}\n <span>{item.label}</span>\n </button>\n ))}\n </div>\n </MPortal>\n )}\n </div>\n )\n}\n"],"mappings":"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"}
|