@banzamel/mineralui 2.4.2 → 2.5.1
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-CvQuiGvT.cjs +2 -0
- package/dist/MAvatar-CvQuiGvT.cjs.map +1 -0
- package/dist/MAvatar-EkOBrEtS.js +73 -0
- package/dist/MAvatar-EkOBrEtS.js.map +1 -0
- package/dist/MButton-BxEky3xQ.cjs +2 -0
- package/dist/MButton-BxEky3xQ.cjs.map +1 -0
- package/dist/MButton-KELyyBw1.js +123 -0
- package/dist/MButton-KELyyBw1.js.map +1 -0
- package/dist/{MButtonGroup-BkNf7fzo.js → MButtonGroup-DDnn8Wfy.js} +3 -3
- package/dist/{MButtonGroup-BkNf7fzo.js.map → MButtonGroup-DDnn8Wfy.js.map} +1 -1
- package/dist/{MButtonGroup-iPv14c0V.cjs → MButtonGroup-Dz8Fm-oA.cjs} +2 -2
- package/dist/{MButtonGroup-iPv14c0V.cjs.map → MButtonGroup-Dz8Fm-oA.cjs.map} +1 -1
- package/dist/{MCard-DK-_FkpE.cjs → MCard-Bqm4BjK_.cjs} +2 -2
- package/dist/MCard-Bqm4BjK_.cjs.map +1 -0
- package/dist/{MCard-azpp4YVD.js → MCard-CqZYGaS2.js} +4 -4
- package/dist/MCard-CqZYGaS2.js.map +1 -0
- package/dist/MCheckbox-CaWgyUn5.js +72 -0
- package/dist/MCheckbox-CaWgyUn5.js.map +1 -0
- package/dist/MCheckbox-DpKJpnFF.cjs +2 -0
- package/dist/MCheckbox-DpKJpnFF.cjs.map +1 -0
- package/dist/{MConflictIllustration-znC7ijmP.js → MConflictIllustration-dwZS44ye.js} +1517 -1515
- package/dist/MConflictIllustration-dwZS44ye.js.map +1 -0
- package/dist/MConflictIllustration-vfHs-jad.cjs +2 -0
- package/dist/MConflictIllustration-vfHs-jad.cjs.map +1 -0
- package/dist/MDetailList-C3othNs3.js +127 -0
- package/dist/MDetailList-C3othNs3.js.map +1 -0
- package/dist/MDetailList-DkDHLdJ8.cjs +2 -0
- package/dist/MDetailList-DkDHLdJ8.cjs.map +1 -0
- package/dist/MDropdownMenu-C4-r7UZM.cjs +2 -0
- package/dist/MDropdownMenu-C4-r7UZM.cjs.map +1 -0
- package/dist/MDropdownMenu-Dvg9UsHB.js +219 -0
- package/dist/MDropdownMenu-Dvg9UsHB.js.map +1 -0
- package/dist/MGrid-CQqT8nHi.js +271 -0
- package/dist/MGrid-CQqT8nHi.js.map +1 -0
- package/dist/MGrid-tBsqShLG.cjs +2 -0
- package/dist/MGrid-tBsqShLG.cjs.map +1 -0
- package/dist/MHeading-DQSQ8c7L.js +21 -0
- package/dist/MHeading-DQSQ8c7L.js.map +1 -0
- package/dist/MHeading-DiGYs1FJ.cjs +2 -0
- package/dist/MHeading-DiGYs1FJ.cjs.map +1 -0
- package/dist/MInput-BeEGufZG.cjs +2 -0
- package/dist/MInput-BeEGufZG.cjs.map +1 -0
- package/dist/MInput-QnQV9L8U.js +190 -0
- package/dist/MInput-QnQV9L8U.js.map +1 -0
- package/dist/MInputCVC-CCNRAqHw.cjs +2 -0
- package/dist/MInputCVC-CCNRAqHw.cjs.map +1 -0
- package/dist/MInputCVC-IXIYZwex.js +410 -0
- package/dist/MInputCVC-IXIYZwex.js.map +1 -0
- package/dist/MInputSearch-BSIc6m2P.cjs +2 -0
- package/dist/MInputSearch-BSIc6m2P.cjs.map +1 -0
- package/dist/MInputSearch-CNuTAbYs.js +44 -0
- package/dist/MInputSearch-CNuTAbYs.js.map +1 -0
- package/dist/{MKbd-DqMnZ7Iv.cjs → MKbd-CnW3NUIu.cjs} +2 -2
- package/dist/{MKbd-DqMnZ7Iv.cjs.map → MKbd-CnW3NUIu.cjs.map} +1 -1
- package/dist/{MKbd-v6-tJ9sP.js → MKbd-DjfGyajR.js} +2 -2
- package/dist/{MKbd-v6-tJ9sP.js.map → MKbd-DjfGyajR.js.map} +1 -1
- package/dist/MLink-C6uwA6db.cjs +2 -0
- package/dist/MLink-C6uwA6db.cjs.map +1 -0
- package/dist/MLink-ixg0xFFI.js +31 -0
- package/dist/MLink-ixg0xFFI.js.map +1 -0
- package/dist/MLoader-CViA3zBo.js +44 -0
- package/dist/MLoader-CViA3zBo.js.map +1 -0
- package/dist/MLoader-DUOoOoNE.cjs +2 -0
- package/dist/MLoader-DUOoOoNE.cjs.map +1 -0
- package/dist/MPagination-BTGenxWW.js +122 -0
- package/dist/MPagination-BTGenxWW.js.map +1 -0
- package/dist/MPagination-DitmdtCc.cjs +2 -0
- package/dist/MPagination-DitmdtCc.cjs.map +1 -0
- package/dist/MPopover-CBDbUOW6.js +183 -0
- package/dist/MPopover-CBDbUOW6.js.map +1 -0
- package/dist/MPopover-ZeoU9hb5.cjs +2 -0
- package/dist/MPopover-ZeoU9hb5.cjs.map +1 -0
- package/dist/{MSimpleGrid-BWKurW6H.js → MSimpleGrid-C_QvLmck.js} +3 -3
- package/dist/MSimpleGrid-C_QvLmck.js.map +1 -0
- package/dist/MSimpleGrid-wgvjnxwM.cjs +2 -0
- package/dist/MSimpleGrid-wgvjnxwM.cjs.map +1 -0
- package/dist/{MSkeleton-C5uD4Axo.js → MSkeleton-BpcpBBJq.js} +12 -10
- package/dist/MSkeleton-BpcpBBJq.js.map +1 -0
- package/dist/MSkeleton-DuAN8Vcv.cjs +2 -0
- package/dist/MSkeleton-DuAN8Vcv.cjs.map +1 -0
- package/dist/MSlider-CLASUc2H.js +134 -0
- package/dist/MSlider-CLASUc2H.js.map +1 -0
- package/dist/MSlider-hONQBulE.cjs +2 -0
- package/dist/MSlider-hONQBulE.cjs.map +1 -0
- package/dist/MStack-BwAFeGGg.js +39 -0
- package/dist/MStack-BwAFeGGg.js.map +1 -0
- package/dist/MStack-CGII4A-q.cjs +2 -0
- package/dist/MStack-CGII4A-q.cjs.map +1 -0
- package/dist/MSubText-BeZk-fhz.js +17 -0
- package/dist/MSubText-BeZk-fhz.js.map +1 -0
- package/dist/MSubText-Dl1PfToZ.cjs +2 -0
- package/dist/MSubText-Dl1PfToZ.cjs.map +1 -0
- package/dist/MSurface-B_QnRLr5.js +74 -0
- package/dist/MSurface-B_QnRLr5.js.map +1 -0
- package/dist/MSurface-BrFo-JMJ.cjs +2 -0
- package/dist/MSurface-BrFo-JMJ.cjs.map +1 -0
- package/dist/MTag-BZrKN_DS.js +41 -0
- package/dist/MTag-BZrKN_DS.js.map +1 -0
- package/dist/MTag-DCE1vRJM.cjs +2 -0
- package/dist/MTag-DCE1vRJM.cjs.map +1 -0
- package/dist/MText-BUWQPoBM.js +45 -0
- package/dist/MText-BUWQPoBM.js.map +1 -0
- package/dist/MText-nsvLFsSv.cjs +2 -0
- package/dist/MText-nsvLFsSv.cjs.map +1 -0
- package/dist/MTooltip-BRSPJ3RY.js +100 -0
- package/dist/MTooltip-BRSPJ3RY.js.map +1 -0
- package/dist/MTooltip-Cj2Fxmzc.cjs +2 -0
- package/dist/MTooltip-Cj2Fxmzc.cjs.map +1 -0
- package/dist/MTreeView-BWCTlsU-.cjs +2 -0
- package/dist/MTreeView-BWCTlsU-.cjs.map +1 -0
- package/dist/MTreeView-CWcMwE-Z.js +554 -0
- package/dist/MTreeView-CWcMwE-Z.js.map +1 -0
- package/dist/{arduino-BdpdaLwK.cjs → arduino-C1gw-z1N.cjs} +1 -1
- package/dist/{arduino-BdpdaLwK.cjs.map → arduino-C1gw-z1N.cjs.map} +1 -1
- package/dist/{arduino-DDDlP9Yt.js → arduino-CcVvzDWF.js} +1 -1
- package/dist/{arduino-DDDlP9Yt.js.map → arduino-CcVvzDWF.js.map} +1 -1
- package/dist/{bash-D8WbAmuA.js → bash-DkMiO80l.js} +1 -1
- package/dist/{bash-D8WbAmuA.js.map → bash-DkMiO80l.js.map} +1 -1
- package/dist/{bash-eOUFh3S1.cjs → bash-wzZkpJC-.cjs} +1 -1
- package/dist/{bash-eOUFh3S1.cjs.map → bash-wzZkpJC-.cjs.map} +1 -1
- package/dist/{c-Bur7Mn-u.cjs → c-BSPjDa0P.cjs} +1 -1
- package/dist/{c-Bur7Mn-u.cjs.map → c-BSPjDa0P.cjs.map} +1 -1
- package/dist/{c-CTKNfUJI.js → c-DtlFV5Pa.js} +1 -1
- package/dist/{c-CTKNfUJI.js.map → c-DtlFV5Pa.js.map} +1 -1
- package/dist/calendar-2yhnCkGW.cjs +2 -0
- package/dist/calendar-2yhnCkGW.cjs.map +1 -0
- package/dist/calendar-DcNYDTVb.js +195 -0
- package/dist/calendar-DcNYDTVb.js.map +1 -0
- package/dist/calendar.cjs +1 -1
- package/dist/calendar.js +1 -1
- package/dist/{calendarDates-CYkJqcnp.js → calendarDates-Bpw_G_QR.js} +30 -19
- package/dist/calendarDates-Bpw_G_QR.js.map +1 -0
- package/dist/calendarDates-Cg0nm69Y.cjs +2 -0
- package/dist/calendarDates-Cg0nm69Y.cjs.map +1 -0
- package/dist/cards-Bp886TRb.cjs +2 -0
- package/dist/cards-Bp886TRb.cjs.map +1 -0
- package/dist/cards-BvER6Gx0.js +1277 -0
- package/dist/cards-BvER6Gx0.js.map +1 -0
- package/dist/cards.cjs +1 -1
- package/dist/cards.js +2 -2
- package/dist/{cn-YER3QsV1.js → cn-CUSXNnjF.js} +1 -1
- package/dist/{cn-YER3QsV1.js.map → cn-CUSXNnjF.js.map} +1 -1
- package/dist/{cn-CU5TNITO.cjs → cn-DYFxgzi2.cjs} +1 -1
- package/dist/{cn-CU5TNITO.cjs.map → cn-DYFxgzi2.cjs.map} +1 -1
- package/dist/components/cards/MCardDaySchedule/MCardDaySchedule.d.ts +1 -1
- package/dist/components/cards/MCardDocumentTree/MCardDocumentTree.d.ts +1 -1
- package/dist/components/cards/MCardGrid/MCardGrid.d.ts +1 -1
- package/dist/components/cards/MCardPayment/MCardPayment.d.ts +1 -1
- package/dist/components/cards/MCardPayment/MCardPayment.types.d.ts +4 -0
- package/dist/components/cards/MCardPaymentMethod/MCardPaymentMethod.d.ts +1 -1
- package/dist/components/cards/MStatCard/MStatCard.d.ts +1 -1
- package/dist/components/controls/MCheckbox/MCheckbox.types.d.ts +6 -0
- package/dist/components/controls/MLoadMore/MLoadMore.d.ts +1 -1
- package/dist/components/controls/MSlider/MSlider.d.ts +1 -1
- package/dist/components/controls/MSlider/MSlider.types.d.ts +5 -0
- package/dist/components/data/MTreeView/MTreeView.d.ts +1 -1
- package/dist/components/data/MTreeView/MTreeView.types.d.ts +6 -0
- package/dist/components/data/MWeekGrid/MWeekGrid.d.ts +1 -1
- package/dist/components/data/MWeekGrid/MWeekGrid.types.d.ts +9 -3
- package/dist/components/display/MCodeBlock/MCodeBlock.d.ts +1 -1
- package/dist/components/dropdowns/MAutocomplete/MAutocomplete.d.ts +1 -1
- package/dist/components/dropdowns/MAutocomplete/MAutocomplete.types.d.ts +8 -2
- package/dist/components/dropdowns/MSelect/MSelect.d.ts +1 -1
- package/dist/components/dropdowns/shared/TimeColumnListbox.d.ts +20 -0
- package/dist/components/feedback/MAlert/MAlert.d.ts +1 -1
- package/dist/components/feedback/MBadge/MBadge.d.ts +1 -1
- package/dist/components/feedback/MBanner/MBanner.d.ts +1 -1
- package/dist/components/feedback/MLoader/MLoader.d.ts +1 -1
- package/dist/components/feedback/MSpinner/MSpinner.d.ts +1 -1
- package/dist/components/feedback/MTag/MTag.d.ts +1 -1
- package/dist/components/inputs/MInput/MInput.types.d.ts +6 -1
- package/dist/components/inputs/MInput/useFormatCaret.d.ts +8 -0
- package/dist/components/layout/MCanvasGrid/MCanvasGrid.types.d.ts +5 -0
- package/dist/components/layout/MContainer/MContainer.d.ts +1 -1
- package/dist/components/layout/MDivider/MDivider.d.ts +1 -1
- package/dist/components/layout/MFooter/MFooter.d.ts +1 -1
- package/dist/components/layout/MHeader/MHeader.d.ts +1 -1
- package/dist/components/layout/MInline/MInline.d.ts +1 -1
- package/dist/components/layout/MNavbar/MNavbar.d.ts +1 -1
- package/dist/components/layout/MNavbar/MNavbar.types.d.ts +2 -0
- package/dist/components/layout/MSection/MSection.d.ts +1 -1
- package/dist/components/layout/MStack/MStack.d.ts +1 -1
- package/dist/components/layout/MStickyPanel/MStickyPanel.types.d.ts +4 -0
- package/dist/components/layout/MSurface/MSurface.d.ts +1 -1
- package/dist/components/media/MAvatar/MAvatar.d.ts +1 -1
- package/dist/components/media/MAvatar/MAvatar.types.d.ts +10 -0
- package/dist/components/media/MCarousel/MCarousel.d.ts +1 -1
- package/dist/components/media/MImage/MImage.d.ts +1 -1
- package/dist/components/media/carouselA11y.d.ts +9 -0
- package/dist/components/overlays/MCommandPalette/MCommandPalette.d.ts +1 -1
- package/dist/components/overlays/MDropdownMenu/MDropdownMenu.d.ts +4 -2
- package/dist/components/overlays/MDropdownMenu/MDropdownMenu.types.d.ts +3 -1
- package/dist/components/overlays/MPopconfirm/MPopconfirm.d.ts +1 -1
- package/dist/components/overlays/scrollLock.d.ts +14 -0
- package/dist/components/primitives/MPopover/MPopover.d.ts +1 -1
- package/dist/components/primitives/MPopover/MPopover.types.d.ts +32 -1
- package/dist/components/primitives/MPopover/popoverStack.d.ts +8 -0
- package/dist/components/typography/MHeading/MHeading.d.ts +2 -3
- package/dist/components/typography/MSubText/MSubText.d.ts +1 -1
- package/dist/components/typography/MText/MText.d.ts +1 -1
- package/dist/controls-B4Dxaab4.js +491 -0
- package/dist/controls-B4Dxaab4.js.map +1 -0
- package/dist/controls-CyXEIOXD.cjs +2 -0
- package/dist/controls-CyXEIOXD.cjs.map +1 -0
- package/dist/controls.cjs +1 -1
- package/dist/controls.js +5 -5
- package/dist/{core-D5-SQcs8.js → core-B8VC-Umz.js} +1 -1
- package/dist/{core-D5-SQcs8.js.map → core-B8VC-Umz.js.map} +1 -1
- package/dist/{core-D66c1_Wo.cjs → core-w629c4ND.cjs} +1 -1
- package/dist/{core-D66c1_Wo.cjs.map → core-w629c4ND.cjs.map} +1 -1
- package/dist/{cpp-DAzz2TpY.js → cpp-BraS2arf.js} +1 -1
- package/dist/{cpp-DAzz2TpY.js.map → cpp-BraS2arf.js.map} +1 -1
- package/dist/{cpp-BMULAf-B.cjs → cpp-LIcuHkFj.cjs} +1 -1
- package/dist/{cpp-BMULAf-B.cjs.map → cpp-LIcuHkFj.cjs.map} +1 -1
- package/dist/creditCards-Bo2mrc53.cjs +2 -0
- package/dist/creditCards-Bo2mrc53.cjs.map +1 -0
- package/dist/{creditCards-D_iWmtG6.js → creditCards-DmDOyvcw.js} +20 -31
- package/dist/creditCards-DmDOyvcw.js.map +1 -0
- package/dist/{css-9M03GzKO.cjs → css-D6fGBtGV.cjs} +1 -1
- package/dist/{css-9M03GzKO.cjs.map → css-D6fGBtGV.cjs.map} +1 -1
- package/dist/{css-EGOXTWIl.js → css-Dy8pFAWa.js} +1 -1
- package/dist/{css-EGOXTWIl.js.map → css-Dy8pFAWa.js.map} +1 -1
- package/dist/data-BM3KG8oN.cjs +2 -0
- package/dist/data-BM3KG8oN.cjs.map +1 -0
- package/dist/data-qnR8OBmj.js +808 -0
- package/dist/data-qnR8OBmj.js.map +1 -0
- package/dist/data.cjs +1 -1
- package/dist/data.js +2 -2
- package/dist/{dateUtils-CUY6CRCf.js → dateUtils-B-ToNZq_.js} +5 -6
- package/dist/dateUtils-B-ToNZq_.js.map +1 -0
- package/dist/dateUtils-z2L7ZaxA.cjs +2 -0
- package/dist/dateUtils-z2L7ZaxA.cjs.map +1 -0
- package/dist/display-BLMOBofj.cjs +3 -0
- package/dist/display-BLMOBofj.cjs.map +1 -0
- package/dist/display-Dlb79lkA.js +968 -0
- package/dist/display-Dlb79lkA.js.map +1 -0
- package/dist/display.cjs +1 -1
- package/dist/display.js +2 -2
- package/dist/dropdowns-2_7VMEDo.js +2009 -0
- package/dist/dropdowns-2_7VMEDo.js.map +1 -0
- package/dist/dropdowns-DN7j8J-V.cjs +2 -0
- package/dist/dropdowns-DN7j8J-V.cjs.map +1 -0
- package/dist/dropdowns.cjs +1 -1
- package/dist/dropdowns.js +1 -1
- package/dist/feedback-CECayytY.js +335 -0
- package/dist/feedback-CECayytY.js.map +1 -0
- package/dist/feedback-paV8Ls-h.cjs +2 -0
- package/dist/feedback-paV8Ls-h.cjs.map +1 -0
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +5 -5
- package/dist/form-Br56h5EF.cjs +2 -0
- package/dist/form-Br56h5EF.cjs.map +1 -0
- package/dist/form-CJmMZgsH.js +165 -0
- package/dist/form-CJmMZgsH.js.map +1 -0
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{formatters-CNjg_h7-.cjs → formatters-CauWlsnM.cjs} +1 -1
- package/dist/{formatters-CNjg_h7-.cjs.map → formatters-CauWlsnM.cjs.map} +1 -1
- package/dist/{formatters-T0vvjMtB.js → formatters-Doqdu_w1.js} +1 -1
- package/dist/{formatters-T0vvjMtB.js.map → formatters-Doqdu_w1.js.map} +1 -1
- package/dist/frameworkTexts-CaqdiKHW.cjs +2 -0
- package/dist/frameworkTexts-CaqdiKHW.cjs.map +1 -0
- package/dist/frameworkTexts-o43FqY1A.js +505 -0
- package/dist/frameworkTexts-o43FqY1A.js.map +1 -0
- package/dist/i18n/MI18nProvider.d.ts +6 -1
- package/dist/i18n/frameworkTexts.d.ts +572 -0
- package/dist/i18n/index.d.ts +1 -0
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.js +2 -2
- package/dist/icons-Bp8bB9TP.cjs +2 -0
- package/dist/icons-Bp8bB9TP.cjs.map +1 -0
- package/dist/{icons-CBMl-kOM.js → icons-IqEBmGh3.js} +1223 -1220
- package/dist/icons-IqEBmGh3.js.map +1 -0
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/illustrations.cjs +1 -1
- package/dist/illustrations.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.js +56 -56
- package/dist/inputs-C0BJzlA-.js +1923 -0
- package/dist/inputs-C0BJzlA-.js.map +1 -0
- package/dist/inputs-CvNBBLFA.cjs +2 -0
- package/dist/inputs-CvNBBLFA.cjs.map +1 -0
- package/dist/inputs.cjs +1 -1
- package/dist/inputs.js +4 -4
- package/dist/{javascript-CHSg4NGc.js → javascript-CqKLBRqa.js} +1 -1
- package/dist/{javascript-CHSg4NGc.js.map → javascript-CqKLBRqa.js.map} +1 -1
- package/dist/{javascript-CastOQF5.cjs → javascript-Oy5hkezl.cjs} +1 -1
- package/dist/{javascript-CastOQF5.cjs.map → javascript-Oy5hkezl.cjs.map} +1 -1
- package/dist/{json-DCkJ-m-p.cjs → json-BP8eqPWc.cjs} +1 -1
- package/dist/{json-DCkJ-m-p.cjs.map → json-BP8eqPWc.cjs.map} +1 -1
- package/dist/{json-Bejy9Rlg.js → json-DJkyYaPe.js} +1 -1
- package/dist/{json-Bejy9Rlg.js.map → json-DJkyYaPe.js.map} +1 -1
- package/dist/layout-BSFqGXLZ.js +1101 -0
- package/dist/layout-BSFqGXLZ.js.map +1 -0
- package/dist/layout-MKqvUkPv.cjs +2 -0
- package/dist/layout-MKqvUkPv.cjs.map +1 -0
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +6 -6
- package/dist/{licensing-f5KYVz7D.js → licensing-BKmoAdfr.js} +5 -4
- package/dist/licensing-BKmoAdfr.js.map +1 -0
- package/dist/licensing-DVgjkw-s.cjs +2 -0
- package/dist/licensing-DVgjkw-s.cjs.map +1 -0
- package/dist/{locale-DRRl_s5-.cjs → locale-C08q7FjE.cjs} +2 -2
- package/dist/{locale-DRRl_s5-.cjs.map → locale-C08q7FjE.cjs.map} +1 -1
- package/dist/{locale-CS1-IY_I.js → locale-CjJpk9GN.js} +1 -1
- package/dist/{locale-CS1-IY_I.js.map → locale-CjJpk9GN.js.map} +1 -1
- package/dist/media-fiasAbBv.js +485 -0
- package/dist/media-fiasAbBv.js.map +1 -0
- package/dist/media-tr1s386v.cjs +2 -0
- package/dist/media-tr1s386v.cjs.map +1 -0
- package/dist/media.cjs +1 -1
- package/dist/media.js +2 -2
- package/dist/overlays-Df-NpmkW.cjs +2 -0
- package/dist/overlays-Df-NpmkW.cjs.map +1 -0
- package/dist/overlays-W0WW3fn7.js +607 -0
- package/dist/overlays-W0WW3fn7.js.map +1 -0
- package/dist/overlays.cjs +1 -1
- package/dist/overlays.js +3 -3
- package/dist/{php-BdVXegqn.cjs → php-Cwjc-ZYq.cjs} +1 -1
- package/dist/{php-BdVXegqn.cjs.map → php-Cwjc-ZYq.cjs.map} +1 -1
- package/dist/{php-Cb_S1hXT.js → php-Db8PWzaX.js} +1 -1
- package/dist/{php-Cb_S1hXT.js.map → php-Db8PWzaX.js.map} +1 -1
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.js +2 -2
- package/dist/radioGroupKeys-Bm-Qeh8G.js +28 -0
- package/dist/radioGroupKeys-Bm-Qeh8G.js.map +1 -0
- package/dist/radioGroupKeys-COL8uXbH.cjs +2 -0
- package/dist/radioGroupKeys-COL8uXbH.cjs.map +1 -0
- package/dist/{relativeTime-Cr-NVzij.js → relativeTime-BqCuaBqb.js} +1 -1
- package/dist/{relativeTime-Cr-NVzij.js.map → relativeTime-BqCuaBqb.js.map} +1 -1
- package/dist/{relativeTime-DgYBUaVm.cjs → relativeTime-DUbW4O44.cjs} +1 -1
- package/dist/{relativeTime-DgYBUaVm.cjs.map → relativeTime-DUbW4O44.cjs.map} +1 -1
- package/dist/scrollLock-C9P9o6wH.cjs +2 -0
- package/dist/scrollLock-C9P9o6wH.cjs.map +1 -0
- package/dist/scrollLock-D27VmgPV.js +14 -0
- package/dist/scrollLock-D27VmgPV.js.map +1 -0
- package/dist/style-runtime.cjs +1 -1
- package/dist/style-runtime.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/theme/MThemeProvider.d.ts +18 -1
- package/dist/theme/index.d.ts +2 -2
- package/dist/{theme-DAOU1aPs.js → theme-B_juOenJ.js} +71 -61
- package/dist/theme-B_juOenJ.js.map +1 -0
- package/dist/theme-ByPZH0dh.cjs +2 -0
- package/dist/theme-ByPZH0dh.cjs.map +1 -0
- package/dist/theme.cjs +1 -1
- package/dist/theme.js +2 -2
- package/dist/{typescript-CcGBfzlS.cjs → typescript-QKlfKtex.cjs} +1 -1
- package/dist/{typescript-CcGBfzlS.cjs.map → typescript-QKlfKtex.cjs.map} +1 -1
- package/dist/{typescript-0VHxrxf2.js → typescript-chdf_txx.js} +1 -1
- package/dist/{typescript-0VHxrxf2.js.map → typescript-chdf_txx.js.map} +1 -1
- package/dist/{typography-CAW17MDj.js → typography-DNcB8dOy.js} +3 -3
- package/dist/{typography-CAW17MDj.js.map → typography-DNcB8dOy.js.map} +1 -1
- package/dist/{typography-C4_O8len.cjs → typography-I7aeG8pH.cjs} +2 -2
- package/dist/{typography-C4_O8len.cjs.map → typography-I7aeG8pH.cjs.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +6 -6
- package/dist/useGhostText-CKsb8Ufa.js +240 -0
- package/dist/useGhostText-CKsb8Ufa.js.map +1 -0
- package/dist/useGhostText-DO-tfxS0.cjs +2 -0
- package/dist/useGhostText-DO-tfxS0.cjs.map +1 -0
- package/dist/{useInteractionEffect-CFwDX5UF.cjs → useInteractionEffect-CtXlbjhC.cjs} +2 -2
- package/dist/{useInteractionEffect-CFwDX5UF.cjs.map → useInteractionEffect-CtXlbjhC.cjs.map} +1 -1
- package/dist/useModalLayer-CpOPSDbf.js +128 -0
- package/dist/useModalLayer-CpOPSDbf.js.map +1 -0
- package/dist/useModalLayer-Cyt93Prs.cjs +2 -0
- package/dist/useModalLayer-Cyt93Prs.cjs.map +1 -0
- package/dist/utils/calendarDates.d.ts +5 -0
- package/dist/utils/radioGroupKeys.d.ts +9 -0
- package/dist/utils/useDateGridNav.d.ts +39 -0
- package/dist/utils/useGhostText.d.ts +2 -1
- package/dist/utils/useKeyboardNav.d.ts +51 -5
- package/dist/utils/useModalLayer.d.ts +14 -0
- package/dist/utils/useRovingToolbar.d.ts +26 -0
- package/dist/utils/validationMessages.d.ts +15 -0
- package/dist/utils.cjs +1 -1
- package/dist/utils.entry.d.ts +3 -1
- package/dist/utils.js +11 -11
- package/dist/validationMessages-BFimXxlT.js +23 -0
- package/dist/validationMessages-BFimXxlT.js.map +1 -0
- package/dist/validationMessages-iHu7apWr.cjs +2 -0
- package/dist/validationMessages-iHu7apWr.cjs.map +1 -0
- package/dist/validators-SZmLxnir.cjs +2 -0
- package/dist/validators-SZmLxnir.cjs.map +1 -0
- package/dist/{validators-DVYOtFnw.js → validators-ULebNme2.js} +107 -106
- package/dist/validators-ULebNme2.js.map +1 -0
- package/dist/{xml-Dbm3mobK.cjs → xml-DEtyywwU.cjs} +1 -1
- package/dist/{xml-Dbm3mobK.cjs.map → xml-DEtyywwU.cjs.map} +1 -1
- package/dist/{xml-8GjNy8SM.js → xml-DnydRpfh.js} +1 -1
- package/dist/{xml-8GjNy8SM.js.map → xml-DnydRpfh.js.map} +1 -1
- package/package.json +1 -1
- package/dist/MAvatar-Capz5Gbc.cjs +0 -2
- package/dist/MAvatar-Capz5Gbc.cjs.map +0 -1
- package/dist/MAvatar-DtJCj3dD.js +0 -63
- package/dist/MAvatar-DtJCj3dD.js.map +0 -1
- package/dist/MButton-C1pnL4_j.js +0 -115
- package/dist/MButton-C1pnL4_j.js.map +0 -1
- package/dist/MButton-sTKnano6.cjs +0 -2
- package/dist/MButton-sTKnano6.cjs.map +0 -1
- package/dist/MCard-DK-_FkpE.cjs.map +0 -1
- package/dist/MCard-azpp4YVD.js.map +0 -1
- package/dist/MCheckbox-B7SpcD4H.js +0 -59
- package/dist/MCheckbox-B7SpcD4H.js.map +0 -1
- package/dist/MCheckbox-CIX7wp41.cjs +0 -2
- package/dist/MCheckbox-CIX7wp41.cjs.map +0 -1
- package/dist/MConflictIllustration-CZ3Md38Z.cjs +0 -2
- package/dist/MConflictIllustration-CZ3Md38Z.cjs.map +0 -1
- package/dist/MConflictIllustration-znC7ijmP.js.map +0 -1
- package/dist/MDetailList-Ce7KzUKC.cjs +0 -2
- package/dist/MDetailList-Ce7KzUKC.cjs.map +0 -1
- package/dist/MDetailList-fDhVyhm7.js +0 -98
- package/dist/MDetailList-fDhVyhm7.js.map +0 -1
- package/dist/MDropdownMenu-B_QWQhxy.cjs +0 -2
- package/dist/MDropdownMenu-B_QWQhxy.cjs.map +0 -1
- package/dist/MDropdownMenu-C4CuKMRZ.js +0 -172
- package/dist/MDropdownMenu-C4CuKMRZ.js.map +0 -1
- package/dist/MGrid-CYL3cbUI.js +0 -265
- package/dist/MGrid-CYL3cbUI.js.map +0 -1
- package/dist/MGrid-fTx6wFq_.cjs +0 -2
- package/dist/MGrid-fTx6wFq_.cjs.map +0 -1
- package/dist/MHeading-B7KgSP4T.js +0 -21
- package/dist/MHeading-B7KgSP4T.js.map +0 -1
- package/dist/MHeading-KDSpnCof.cjs +0 -2
- package/dist/MHeading-KDSpnCof.cjs.map +0 -1
- package/dist/MI18nProvider-DXRbB0VY.cjs +0 -2
- package/dist/MI18nProvider-DXRbB0VY.cjs.map +0 -1
- package/dist/MI18nProvider-VH14CI8u.js +0 -72
- package/dist/MI18nProvider-VH14CI8u.js.map +0 -1
- package/dist/MInput-C8ObGzQk.js +0 -187
- package/dist/MInput-C8ObGzQk.js.map +0 -1
- package/dist/MInput-CGl2Q-rM.cjs +0 -2
- package/dist/MInput-CGl2Q-rM.cjs.map +0 -1
- package/dist/MInputCVC-Blv5PeyS.js +0 -320
- package/dist/MInputCVC-Blv5PeyS.js.map +0 -1
- package/dist/MInputCVC-lAFKTV6y.cjs +0 -2
- package/dist/MInputCVC-lAFKTV6y.cjs.map +0 -1
- package/dist/MInputSearch-BM8gLlJ1.js +0 -43
- package/dist/MInputSearch-BM8gLlJ1.js.map +0 -1
- package/dist/MInputSearch-BZDnbFB4.cjs +0 -2
- package/dist/MInputSearch-BZDnbFB4.cjs.map +0 -1
- package/dist/MLink-Bd8fLH1N.js +0 -31
- package/dist/MLink-Bd8fLH1N.js.map +0 -1
- package/dist/MLink-U24G6KJj.cjs +0 -2
- package/dist/MLink-U24G6KJj.cjs.map +0 -1
- package/dist/MLoader-CnvWqFtA.js +0 -41
- package/dist/MLoader-CnvWqFtA.js.map +0 -1
- package/dist/MLoader-CvFIvytw.cjs +0 -2
- package/dist/MLoader-CvFIvytw.cjs.map +0 -1
- package/dist/MPagination-BkvOEZpp.js +0 -113
- package/dist/MPagination-BkvOEZpp.js.map +0 -1
- package/dist/MPagination-DgQta29Q.cjs +0 -2
- package/dist/MPagination-DgQta29Q.cjs.map +0 -1
- package/dist/MPopover-C-e1CoV0.cjs +0 -2
- package/dist/MPopover-C-e1CoV0.cjs.map +0 -1
- package/dist/MPopover-Dd-GIBU6.js +0 -155
- package/dist/MPopover-Dd-GIBU6.js.map +0 -1
- package/dist/MPortal-Ba2Sxset.js +0 -10
- package/dist/MPortal-Ba2Sxset.js.map +0 -1
- package/dist/MPortal-DUSIuINN.cjs +0 -2
- package/dist/MPortal-DUSIuINN.cjs.map +0 -1
- package/dist/MSimpleGrid-BWKurW6H.js.map +0 -1
- package/dist/MSimpleGrid-BzlIitcJ.cjs +0 -2
- package/dist/MSimpleGrid-BzlIitcJ.cjs.map +0 -1
- package/dist/MSkeleton-BoFpowFU.cjs +0 -2
- package/dist/MSkeleton-BoFpowFU.cjs.map +0 -1
- package/dist/MSkeleton-C5uD4Axo.js.map +0 -1
- package/dist/MSlider-BTDBqF8t.cjs +0 -2
- package/dist/MSlider-BTDBqF8t.cjs.map +0 -1
- package/dist/MSlider-CqrusKJQ.js +0 -75
- package/dist/MSlider-CqrusKJQ.js.map +0 -1
- package/dist/MStack-B3Ldqsc-.cjs +0 -2
- package/dist/MStack-B3Ldqsc-.cjs.map +0 -1
- package/dist/MStack-CSCw6to2.js +0 -39
- package/dist/MStack-CSCw6to2.js.map +0 -1
- package/dist/MSubText-47PsgE8T.cjs +0 -2
- package/dist/MSubText-47PsgE8T.cjs.map +0 -1
- package/dist/MSubText-C-N15d4Z.js +0 -17
- package/dist/MSubText-C-N15d4Z.js.map +0 -1
- package/dist/MSurface-B-sjyczH.js +0 -74
- package/dist/MSurface-B-sjyczH.js.map +0 -1
- package/dist/MSurface-QYEygc_0.cjs +0 -2
- package/dist/MSurface-QYEygc_0.cjs.map +0 -1
- package/dist/MTag-BjV-dXkk.cjs +0 -2
- package/dist/MTag-BjV-dXkk.cjs.map +0 -1
- package/dist/MTag-D9q6faIk.js +0 -39
- package/dist/MTag-D9q6faIk.js.map +0 -1
- package/dist/MText-CL-LPcXi.js +0 -45
- package/dist/MText-CL-LPcXi.js.map +0 -1
- package/dist/MText-Dni707tS.cjs +0 -2
- package/dist/MText-Dni707tS.cjs.map +0 -1
- package/dist/MTooltip-ChvuN4Ow.cjs +0 -2
- package/dist/MTooltip-ChvuN4Ow.cjs.map +0 -1
- package/dist/MTooltip-H3we0a7w.js +0 -57
- package/dist/MTooltip-H3we0a7w.js.map +0 -1
- package/dist/MTreeView-B1J7uqd1.js +0 -315
- package/dist/MTreeView-B1J7uqd1.js.map +0 -1
- package/dist/MTreeView-VYp0eErQ.cjs +0 -2
- package/dist/MTreeView-VYp0eErQ.cjs.map +0 -1
- package/dist/calendar-P7MwKfWS.cjs +0 -2
- package/dist/calendar-P7MwKfWS.cjs.map +0 -1
- package/dist/calendar-bzeZRst9.js +0 -193
- package/dist/calendar-bzeZRst9.js.map +0 -1
- package/dist/calendarDates-AnlGcvZM.cjs +0 -2
- package/dist/calendarDates-AnlGcvZM.cjs.map +0 -1
- package/dist/calendarDates-CYkJqcnp.js.map +0 -1
- package/dist/cards-CFDJsdxR.js +0 -1226
- package/dist/cards-CFDJsdxR.js.map +0 -1
- package/dist/cards-DeA7I2KC.cjs +0 -2
- package/dist/cards-DeA7I2KC.cjs.map +0 -1
- package/dist/controls-BKAhqjNM.js +0 -474
- package/dist/controls-BKAhqjNM.js.map +0 -1
- package/dist/controls-KK-TyUTT.cjs +0 -2
- package/dist/controls-KK-TyUTT.cjs.map +0 -1
- package/dist/creditCards-D_HwRUBz.cjs +0 -2
- package/dist/creditCards-D_HwRUBz.cjs.map +0 -1
- package/dist/creditCards-D_iWmtG6.js.map +0 -1
- package/dist/data-CgLutFxU.js +0 -689
- package/dist/data-CgLutFxU.js.map +0 -1
- package/dist/data-DFrkJTlF.cjs +0 -2
- package/dist/data-DFrkJTlF.cjs.map +0 -1
- package/dist/dateUtils-CUY6CRCf.js.map +0 -1
- package/dist/dateUtils-Dq1vaA-D.cjs +0 -2
- package/dist/dateUtils-Dq1vaA-D.cjs.map +0 -1
- package/dist/display--E7rI0tk.cjs +0 -3
- package/dist/display--E7rI0tk.cjs.map +0 -1
- package/dist/display-BnkHKW1n.js +0 -782
- package/dist/display-BnkHKW1n.js.map +0 -1
- package/dist/dropdowns-DGYg9zIh.cjs +0 -2
- package/dist/dropdowns-DGYg9zIh.cjs.map +0 -1
- package/dist/dropdowns-Dq-xAplH.js +0 -1698
- package/dist/dropdowns-Dq-xAplH.js.map +0 -1
- package/dist/feedback-CA77ShtB.cjs +0 -2
- package/dist/feedback-CA77ShtB.cjs.map +0 -1
- package/dist/feedback-CCwbdNZu.js +0 -255
- package/dist/feedback-CCwbdNZu.js.map +0 -1
- package/dist/form-CAFcvmUS.js +0 -167
- package/dist/form-CAFcvmUS.js.map +0 -1
- package/dist/form-DpfzLUOn.cjs +0 -2
- package/dist/form-DpfzLUOn.cjs.map +0 -1
- package/dist/frameworkTexts-DH0Xp-Vx.js +0 -78
- package/dist/frameworkTexts-DH0Xp-Vx.js.map +0 -1
- package/dist/frameworkTexts-iDXhcW6k.cjs +0 -2
- package/dist/frameworkTexts-iDXhcW6k.cjs.map +0 -1
- package/dist/icons-CBMl-kOM.js.map +0 -1
- package/dist/icons-D_NB67he.cjs +0 -2
- package/dist/icons-D_NB67he.cjs.map +0 -1
- package/dist/inputs-B1LCddA4.js +0 -1752
- package/dist/inputs-B1LCddA4.js.map +0 -1
- package/dist/inputs-Clenc4Rm.cjs +0 -2
- package/dist/inputs-Clenc4Rm.cjs.map +0 -1
- package/dist/layout-CNoZdeXw.cjs +0 -2
- package/dist/layout-CNoZdeXw.cjs.map +0 -1
- package/dist/layout-DsE4zfpg.js +0 -882
- package/dist/layout-DsE4zfpg.js.map +0 -1
- package/dist/licensing-DGIdtfNg.cjs +0 -2
- package/dist/licensing-DGIdtfNg.cjs.map +0 -1
- package/dist/licensing-f5KYVz7D.js.map +0 -1
- package/dist/media-DRTBXDnn.cjs +0 -2
- package/dist/media-DRTBXDnn.cjs.map +0 -1
- package/dist/media-vOQOIYFD.js +0 -402
- package/dist/media-vOQOIYFD.js.map +0 -1
- package/dist/overlays-BKk_ZXue.js +0 -568
- package/dist/overlays-BKk_ZXue.js.map +0 -1
- package/dist/overlays-Qbp4d596.cjs +0 -2
- package/dist/overlays-Qbp4d596.cjs.map +0 -1
- package/dist/theme-DAOU1aPs.js.map +0 -1
- package/dist/theme-DgaM4CjM.cjs +0 -2
- package/dist/theme-DgaM4CjM.cjs.map +0 -1
- package/dist/useGhostText-DG0bzcao.js +0 -68
- package/dist/useGhostText-DG0bzcao.js.map +0 -1
- package/dist/useGhostText-Dlemg1vw.cjs +0 -2
- package/dist/useGhostText-Dlemg1vw.cjs.map +0 -1
- package/dist/useKeyboardNav-Bm-dxVq-.cjs +0 -2
- package/dist/useKeyboardNav-Bm-dxVq-.cjs.map +0 -1
- package/dist/useKeyboardNav-iEXOdEMB.js +0 -43
- package/dist/useKeyboardNav-iEXOdEMB.js.map +0 -1
- package/dist/validators-B6yWdsu2.cjs +0 -2
- package/dist/validators-B6yWdsu2.cjs.map +0 -1
- package/dist/validators-DVYOtFnw.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require(`./icons-D_NB67he.cjs`),t=require(`./cn-CU5TNITO.cjs`),n=require(`./MSurface-QYEygc_0.cjs`),r=require(`./MText-Dni707tS.cjs`),i=require(`./MLink-U24G6KJj.cjs`),a=require(`./MStack-B3Ldqsc-.cjs`);require(`./core-D66c1_Wo.cjs`);let o=require(`react`),s=require(`react/jsx-runtime`);function c({value:n=0,max:r=5,color:i=`warning`,size:a=`md`,readOnly:c=!1,onChange:l,className:u,...d}){let[f,p]=(0,o.useState)(null),m=f??n,h=e=>{c||l?.(e)};return(0,s.jsx)(`div`,{className:t.t(`rating`,`color-${i}`,a,c&&`read-only`,u),role:`radiogroup`,"aria-label":`MRating`,onMouseLeave:()=>p(null),...d,children:Array.from({length:r},(t,n)=>{let r=n+1,i=m>=r;return(0,s.jsx)(`button`,{type:`button`,className:`rating-star`,onClick:()=>h(r),onMouseEnter:()=>!c&&p(r),"aria-label":`${r} star${r>1?`s`:``}`,tabIndex:c?-1:0,disabled:c,children:(0,s.jsx)(`span`,{className:`star-icon`,"aria-hidden":`true`,children:i?(0,s.jsx)(e.vi,{}):(0,s.jsx)(e.yi,{})})},n)})})}var l={xs:`xs`,sm:`xs`,md:`sm`,lg:`md`,xl:`md`};function u({items:e,size:o=`md`,bordered:c=!0,emptyState:u=null,className:d,...f}){if(!e.length)return u?(0,s.jsx)(`div`,{className:t.t(`detail-list`,d),children:u}):null;let p=l[o];return(0,s.jsx)(`div`,{className:t.t(`detail-list`,`size-${o}`,c&&`bordered`,d),...f,children:e.map(e=>{let t=e.key??e.label?.toString(),o=e.component||e.to||e.href?(0,s.jsx)(i.t,{component:e.component,to:e.to,href:e.href,target:e.target,rel:e.rel,children:e.value}):e.value;return(0,s.jsx)(`div`,{className:`detail-list-item`,children:(0,s.jsxs)(n.n,{justify:`between`,align:`start`,children:[(0,s.jsxs)(a.t,{children:[(0,s.jsx)(r.t,{size:p,tone:`muted`,children:e.label}),o&&(0,s.jsx)(`div`,{className:`detail-list-value`,children:o}),e.helperText&&(0,s.jsx)(r.t,{size:p,tone:`muted`,children:e.helperText})]}),e.status&&(0,s.jsx)(`div`,{className:`detail-list-status`,children:e.status})]})},t)})})}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return u}});
|
|
2
|
-
//# sourceMappingURL=MDetailList-Ce7KzUKC.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MDetailList-Ce7KzUKC.cjs","names":[],"sources":["../src/components/display/MRating/MRating.tsx","../src/components/display/MDetailList/MDetailList.tsx"],"sourcesContent":["import {useState} from 'react'\nimport type {MRatingProps} from './MRating.types'\nimport {MStarFillIcon, MStarIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MRating.css'\n\n// Render an interactive star-based rating control.\nexport function MRating({\n value = 0,\n max = 5,\n color = 'warning',\n size = 'md',\n readOnly = false,\n onChange,\n className,\n ...rest\n}: MRatingProps) {\n const [hovered, setHovered] = useState<number | null>(null)\n const displayValue = hovered ?? value\n\n const handleClick = (index: number) => {\n if (readOnly) return\n onChange?.(index)\n }\n\n return (\n <div\n className={cn('rating', `color-${color}`, size, readOnly && 'read-only', className)}\n role=\"radiogroup\"\n aria-label=\"MRating\"\n onMouseLeave={() => setHovered(null)}\n {...rest}\n >\n {Array.from({length: max}, (_, i) => {\n const starIndex = i + 1\n const filled = displayValue >= starIndex\n return (\n <button\n key={i}\n type=\"button\"\n className=\"rating-star\"\n onClick={() => handleClick(starIndex)}\n onMouseEnter={() => !readOnly && setHovered(starIndex)}\n aria-label={`${starIndex} star${starIndex > 1 ? 's' : ''}`}\n tabIndex={readOnly ? -1 : 0}\n disabled={readOnly}\n >\n <span className=\"star-icon\" aria-hidden=\"true\">\n {filled ? <MStarFillIcon /> : <MStarIcon />}\n </span>\n </button>\n )\n })}\n </div>\n )\n}\n","import type {MSize} from '../../../theme'\nimport type {MDetailListProps} from './MDetailList.types'\nimport {cn} from '../../../utils/cn'\nimport {MInline, MStack} from '../../layout'\nimport {MLink, MText} from '../../typography'\nimport type {MTextSize} from '../../typography'\nimport './MDetailList.css'\n\n// Maps the list's outer size to the secondary-text size used for labels and helper text.\n// Labels sit one notch below the value so they read as metadata, not headline copy.\nconst LABEL_SIZE_MAP: Record<MSize, MTextSize> = {\n xs: 'xs',\n sm: 'xs',\n md: 'sm',\n lg: 'md',\n xl: 'md',\n}\n\nexport function MDetailList({\n items,\n size = 'md',\n bordered = true,\n emptyState = null,\n className,\n ...rest\n}: MDetailListProps) {\n if (!items.length) {\n return emptyState ? <div className={cn('detail-list', className)}>{emptyState}</div> : null\n }\n\n const labelSize = LABEL_SIZE_MAP[size]\n\n return (\n <div className={cn('detail-list', `size-${size}`, bordered && 'bordered', className)} {...rest}>\n {items.map((item) => {\n const key = item.key ?? item.label?.toString()\n const value =\n item.component || item.to || item.href ? (\n <MLink\n component={item.component}\n to={item.to}\n href={item.href}\n target={item.target}\n rel={item.rel}\n >\n {item.value}\n </MLink>\n ) : (\n item.value\n )\n\n return (\n <div key={key} className=\"detail-list-item\">\n <MInline justify={'between'} align={'start'}>\n <MStack>\n <MText size={labelSize} tone={'muted'}>\n {item.label}\n </MText>\n {value && <div className=\"detail-list-value\">{value}</div>}\n {item.helperText && (\n <MText size={labelSize} tone={'muted'}>\n {item.helperText}\n </MText>\n )}\n </MStack>\n {item.status && <div className=\"detail-list-status\">{item.status}</div>}\n </MInline>\n </div>\n )\n })}\n </div>\n )\n}\n"],"mappings":"wSAOA,SAAgB,EAAQ,CACpB,QAAQ,EACR,MAAM,EACN,QAAQ,UACR,OAAO,KACP,WAAW,GACX,WACA,YACA,GAAG,GACU,CACb,GAAM,CAAC,EAAS,IAAA,EAAA,EAAA,UAAsC,KAAK,CACrD,EAAe,GAAW,EAE1B,EAAe,GAAkB,CAC/B,GACJ,IAAW,EAAM,EAGrB,OACI,EAAA,EAAA,KAAC,MAAD,CACI,UAAW,EAAA,EAAG,SAAU,SAAS,IAAS,EAAM,GAAY,YAAa,EAAU,CACnF,KAAK,aACL,aAAW,UACX,iBAAoB,EAAW,KAAK,CACpC,GAAI,WAEH,MAAM,KAAK,CAAC,OAAQ,EAAI,EAAG,EAAG,IAAM,CACjC,IAAM,EAAY,EAAI,EAChB,EAAS,GAAgB,EAC/B,OACI,EAAA,EAAA,KAAC,SAAD,CAEI,KAAK,SACL,UAAU,cACV,YAAe,EAAY,EAAU,CACrC,iBAAoB,CAAC,GAAY,EAAW,EAAU,CACtD,aAAY,GAAG,EAAU,OAAO,EAAY,EAAI,IAAM,KACtD,SAAU,EAAW,GAAK,EAC1B,SAAU,YAEV,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,YAAY,cAAY,gBACnC,GAAS,EAAA,EAAA,KAAC,EAAA,GAAD,EAAiB,CAAA,EAAG,EAAA,EAAA,KAAC,EAAA,GAAD,EAAa,CAAA,CACxC,CAAA,CACF,CAZA,EAYA,EAEf,CACA,CAAA,CC3Cd,IAAM,EAA2C,CAC7C,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACP,CAED,SAAgB,EAAY,CACxB,QACA,OAAO,KACP,WAAW,GACX,aAAa,KACb,YACA,GAAG,GACc,CACjB,GAAI,CAAC,EAAM,OACP,OAAO,GAAa,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,EAAG,cAAe,EAAU,UAAG,EAAiB,CAAA,CAAG,KAG3F,IAAM,EAAY,EAAe,GAEjC,OACI,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,EAAG,cAAe,QAAQ,IAAQ,GAAY,WAAY,EAAU,CAAE,GAAI,WACrF,EAAM,IAAK,GAAS,CACjB,IAAM,EAAM,EAAK,KAAO,EAAK,OAAO,UAAU,CACxC,EACF,EAAK,WAAa,EAAK,IAAM,EAAK,MAC9B,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,UAAW,EAAK,UAChB,GAAI,EAAK,GACT,KAAM,EAAK,KACX,OAAQ,EAAK,OACb,IAAK,EAAK,aAET,EAAK,MACF,CAAA,CAER,EAAK,MAGb,OACI,EAAA,EAAA,KAAC,MAAD,CAAe,UAAU,6BACrB,EAAA,EAAA,MAAC,EAAA,EAAD,CAAS,QAAS,UAAW,MAAO,iBAApC,EACI,EAAA,EAAA,MAAC,EAAA,EAAD,CAAA,SAAA,EACI,EAAA,EAAA,KAAC,EAAA,EAAD,CAAO,KAAM,EAAW,KAAM,iBACzB,EAAK,MACF,CAAA,CACP,IAAS,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,6BAAqB,EAAY,CAAA,CACzD,EAAK,aACF,EAAA,EAAA,KAAC,EAAA,EAAD,CAAO,KAAM,EAAW,KAAM,iBACzB,EAAK,WACF,CAAA,CAEP,CAAA,CAAA,CACR,EAAK,SAAU,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,8BAAsB,EAAK,OAAa,CAAA,CACjE,GACR,CAfI,EAeJ,EAEZ,CACA,CAAA"}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { vi as e, yi as t } from "./icons-CBMl-kOM.js";
|
|
2
|
-
import { t as n } from "./cn-YER3QsV1.js";
|
|
3
|
-
import { n as r } from "./MSurface-B-sjyczH.js";
|
|
4
|
-
import { t as i } from "./MText-CL-LPcXi.js";
|
|
5
|
-
import { t as a } from "./MLink-Bd8fLH1N.js";
|
|
6
|
-
import { t as o } from "./MStack-CSCw6to2.js";
|
|
7
|
-
import { useState as s } from "react";
|
|
8
|
-
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
9
|
-
//#region src/components/display/MRating/MRating.tsx
|
|
10
|
-
function u({ value: r = 0, max: i = 5, color: a = "warning", size: o = "md", readOnly: l = !1, onChange: u, className: d, ...f }) {
|
|
11
|
-
let [p, m] = s(null), h = p ?? r, g = (e) => {
|
|
12
|
-
l || u?.(e);
|
|
13
|
-
};
|
|
14
|
-
return /* @__PURE__ */ c("div", {
|
|
15
|
-
className: n("rating", `color-${a}`, o, l && "read-only", d),
|
|
16
|
-
role: "radiogroup",
|
|
17
|
-
"aria-label": "MRating",
|
|
18
|
-
onMouseLeave: () => m(null),
|
|
19
|
-
...f,
|
|
20
|
-
children: Array.from({ length: i }, (n, r) => {
|
|
21
|
-
let i = r + 1, a = h >= i;
|
|
22
|
-
return /* @__PURE__ */ c("button", {
|
|
23
|
-
type: "button",
|
|
24
|
-
className: "rating-star",
|
|
25
|
-
onClick: () => g(i),
|
|
26
|
-
onMouseEnter: () => !l && m(i),
|
|
27
|
-
"aria-label": `${i} star${i > 1 ? "s" : ""}`,
|
|
28
|
-
tabIndex: l ? -1 : 0,
|
|
29
|
-
disabled: l,
|
|
30
|
-
children: /* @__PURE__ */ c("span", {
|
|
31
|
-
className: "star-icon",
|
|
32
|
-
"aria-hidden": "true",
|
|
33
|
-
children: c(a ? e : t, {})
|
|
34
|
-
})
|
|
35
|
-
}, r);
|
|
36
|
-
})
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
//#endregion
|
|
40
|
-
//#region src/components/display/MDetailList/MDetailList.tsx
|
|
41
|
-
var d = {
|
|
42
|
-
xs: "xs",
|
|
43
|
-
sm: "xs",
|
|
44
|
-
md: "sm",
|
|
45
|
-
lg: "md",
|
|
46
|
-
xl: "md"
|
|
47
|
-
};
|
|
48
|
-
function f({ items: e, size: t = "md", bordered: s = !0, emptyState: u = null, className: f, ...p }) {
|
|
49
|
-
if (!e.length) return u ? /* @__PURE__ */ c("div", {
|
|
50
|
-
className: n("detail-list", f),
|
|
51
|
-
children: u
|
|
52
|
-
}) : null;
|
|
53
|
-
let m = d[t];
|
|
54
|
-
return /* @__PURE__ */ c("div", {
|
|
55
|
-
className: n("detail-list", `size-${t}`, s && "bordered", f),
|
|
56
|
-
...p,
|
|
57
|
-
children: e.map((e) => {
|
|
58
|
-
let t = e.key ?? e.label?.toString(), n = e.component || e.to || e.href ? /* @__PURE__ */ c(a, {
|
|
59
|
-
component: e.component,
|
|
60
|
-
to: e.to,
|
|
61
|
-
href: e.href,
|
|
62
|
-
target: e.target,
|
|
63
|
-
rel: e.rel,
|
|
64
|
-
children: e.value
|
|
65
|
-
}) : e.value;
|
|
66
|
-
return /* @__PURE__ */ c("div", {
|
|
67
|
-
className: "detail-list-item",
|
|
68
|
-
children: /* @__PURE__ */ l(r, {
|
|
69
|
-
justify: "between",
|
|
70
|
-
align: "start",
|
|
71
|
-
children: [/* @__PURE__ */ l(o, { children: [
|
|
72
|
-
/* @__PURE__ */ c(i, {
|
|
73
|
-
size: m,
|
|
74
|
-
tone: "muted",
|
|
75
|
-
children: e.label
|
|
76
|
-
}),
|
|
77
|
-
n && /* @__PURE__ */ c("div", {
|
|
78
|
-
className: "detail-list-value",
|
|
79
|
-
children: n
|
|
80
|
-
}),
|
|
81
|
-
e.helperText && /* @__PURE__ */ c(i, {
|
|
82
|
-
size: m,
|
|
83
|
-
tone: "muted",
|
|
84
|
-
children: e.helperText
|
|
85
|
-
})
|
|
86
|
-
] }), e.status && /* @__PURE__ */ c("div", {
|
|
87
|
-
className: "detail-list-status",
|
|
88
|
-
children: e.status
|
|
89
|
-
})]
|
|
90
|
-
})
|
|
91
|
-
}, t);
|
|
92
|
-
})
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
//#endregion
|
|
96
|
-
export { u as n, f as t };
|
|
97
|
-
|
|
98
|
-
//# sourceMappingURL=MDetailList-fDhVyhm7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MDetailList-fDhVyhm7.js","names":[],"sources":["../src/components/display/MRating/MRating.tsx","../src/components/display/MDetailList/MDetailList.tsx"],"sourcesContent":["import {useState} from 'react'\nimport type {MRatingProps} from './MRating.types'\nimport {MStarFillIcon, MStarIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MRating.css'\n\n// Render an interactive star-based rating control.\nexport function MRating({\n value = 0,\n max = 5,\n color = 'warning',\n size = 'md',\n readOnly = false,\n onChange,\n className,\n ...rest\n}: MRatingProps) {\n const [hovered, setHovered] = useState<number | null>(null)\n const displayValue = hovered ?? value\n\n const handleClick = (index: number) => {\n if (readOnly) return\n onChange?.(index)\n }\n\n return (\n <div\n className={cn('rating', `color-${color}`, size, readOnly && 'read-only', className)}\n role=\"radiogroup\"\n aria-label=\"MRating\"\n onMouseLeave={() => setHovered(null)}\n {...rest}\n >\n {Array.from({length: max}, (_, i) => {\n const starIndex = i + 1\n const filled = displayValue >= starIndex\n return (\n <button\n key={i}\n type=\"button\"\n className=\"rating-star\"\n onClick={() => handleClick(starIndex)}\n onMouseEnter={() => !readOnly && setHovered(starIndex)}\n aria-label={`${starIndex} star${starIndex > 1 ? 's' : ''}`}\n tabIndex={readOnly ? -1 : 0}\n disabled={readOnly}\n >\n <span className=\"star-icon\" aria-hidden=\"true\">\n {filled ? <MStarFillIcon /> : <MStarIcon />}\n </span>\n </button>\n )\n })}\n </div>\n )\n}\n","import type {MSize} from '../../../theme'\nimport type {MDetailListProps} from './MDetailList.types'\nimport {cn} from '../../../utils/cn'\nimport {MInline, MStack} from '../../layout'\nimport {MLink, MText} from '../../typography'\nimport type {MTextSize} from '../../typography'\nimport './MDetailList.css'\n\n// Maps the list's outer size to the secondary-text size used for labels and helper text.\n// Labels sit one notch below the value so they read as metadata, not headline copy.\nconst LABEL_SIZE_MAP: Record<MSize, MTextSize> = {\n xs: 'xs',\n sm: 'xs',\n md: 'sm',\n lg: 'md',\n xl: 'md',\n}\n\nexport function MDetailList({\n items,\n size = 'md',\n bordered = true,\n emptyState = null,\n className,\n ...rest\n}: MDetailListProps) {\n if (!items.length) {\n return emptyState ? <div className={cn('detail-list', className)}>{emptyState}</div> : null\n }\n\n const labelSize = LABEL_SIZE_MAP[size]\n\n return (\n <div className={cn('detail-list', `size-${size}`, bordered && 'bordered', className)} {...rest}>\n {items.map((item) => {\n const key = item.key ?? item.label?.toString()\n const value =\n item.component || item.to || item.href ? (\n <MLink\n component={item.component}\n to={item.to}\n href={item.href}\n target={item.target}\n rel={item.rel}\n >\n {item.value}\n </MLink>\n ) : (\n item.value\n )\n\n return (\n <div key={key} className=\"detail-list-item\">\n <MInline justify={'between'} align={'start'}>\n <MStack>\n <MText size={labelSize} tone={'muted'}>\n {item.label}\n </MText>\n {value && <div className=\"detail-list-value\">{value}</div>}\n {item.helperText && (\n <MText size={labelSize} tone={'muted'}>\n {item.helperText}\n </MText>\n )}\n </MStack>\n {item.status && <div className=\"detail-list-status\">{item.status}</div>}\n </MInline>\n </div>\n )\n })}\n </div>\n )\n}\n"],"mappings":";;;;;;;;;AAOA,SAAgB,EAAQ,EACpB,WAAQ,GACR,SAAM,GACN,WAAQ,WACR,UAAO,MACP,cAAW,IACX,aACA,cACA,GAAG,KACU;CACb,IAAM,CAAC,GAAS,KAAc,EAAwB,KAAK,EACrD,IAAe,KAAW,GAE1B,KAAe,MAAkB;AAC/B,OACJ,IAAW,EAAM;;AAGrB,QACI,kBAAC,OAAD;EACI,WAAW,EAAG,UAAU,SAAS,KAAS,GAAM,KAAY,aAAa,EAAU;EACnF,MAAK;EACL,cAAW;EACX,oBAAoB,EAAW,KAAK;EACpC,GAAI;YAEH,MAAM,KAAK,EAAC,QAAQ,GAAI,GAAG,GAAG,MAAM;GACjC,IAAM,IAAY,IAAI,GAChB,IAAS,KAAgB;AAC/B,UACI,kBAAC,UAAD;IAEI,MAAK;IACL,WAAU;IACV,eAAe,EAAY,EAAU;IACrC,oBAAoB,CAAC,KAAY,EAAW,EAAU;IACtD,cAAY,GAAG,EAAU,OAAO,IAAY,IAAI,MAAM;IACtD,UAAU,IAAW,KAAK;IAC1B,UAAU;cAEV,kBAAC,QAAD;KAAM,WAAU;KAAY,eAAY;eAC1B,EAAT,IAAU,IAAoB,GAArB,EAAiB,CAAgB;KACxC,CAAA;IACF,EAZA,EAYA;IAEf;EACA,CAAA;;;;AC3Cd,IAAM,IAA2C;CAC7C,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACP;AAED,SAAgB,EAAY,EACxB,UACA,UAAO,MACP,cAAW,IACX,gBAAa,MACb,cACA,GAAG,KACc;AACjB,KAAI,CAAC,EAAM,OACP,QAAO,IAAa,kBAAC,OAAD;EAAK,WAAW,EAAG,eAAe,EAAU;YAAG;EAAiB,CAAA,GAAG;CAG3F,IAAM,IAAY,EAAe;AAEjC,QACI,kBAAC,OAAD;EAAK,WAAW,EAAG,eAAe,QAAQ,KAAQ,KAAY,YAAY,EAAU;EAAE,GAAI;YACrF,EAAM,KAAK,MAAS;GACjB,IAAM,IAAM,EAAK,OAAO,EAAK,OAAO,UAAU,EACxC,IACF,EAAK,aAAa,EAAK,MAAM,EAAK,OAC9B,kBAAC,GAAD;IACI,WAAW,EAAK;IAChB,IAAI,EAAK;IACT,MAAM,EAAK;IACX,QAAQ,EAAK;IACb,KAAK,EAAK;cAET,EAAK;IACF,CAAA,GAER,EAAK;AAGb,UACI,kBAAC,OAAD;IAAe,WAAU;cACrB,kBAAC,GAAD;KAAS,SAAS;KAAW,OAAO;eAApC,CACI,kBAAC,GAAD,EAAA,UAAA;MACI,kBAAC,GAAD;OAAO,MAAM;OAAW,MAAM;iBACzB,EAAK;OACF,CAAA;MACP,KAAS,kBAAC,OAAD;OAAK,WAAU;iBAAqB;OAAY,CAAA;MACzD,EAAK,cACF,kBAAC,GAAD;OAAO,MAAM;OAAW,MAAM;iBACzB,EAAK;OACF,CAAA;MAEP,EAAA,CAAA,EACR,EAAK,UAAU,kBAAC,OAAD;MAAK,WAAU;gBAAsB,EAAK;MAAa,CAAA,CACjE;;IACR,EAfI,EAeJ;IAEZ;EACA,CAAA"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require(`./icons-D_NB67he.cjs`),t=require(`./cn-CU5TNITO.cjs`),n=require(`./useKeyboardNav-Bm-dxVq-.cjs`),r=require(`./MPopover-C-e1CoV0.cjs`);require(`./core-D66c1_Wo.cjs`);let i=require(`react`),a=require(`react/jsx-runtime`);function o(e){return e.props}function s(e){return!!e.type.__dropdownItem}function c(e){return!!e.type.__dropdownGroup}function l(e){let t=[];return i.Children.forEach(e,e=>{(0,i.isValidElement)(e)&&(s(e)?t.push(e):c(e)&&i.Children.forEach(o(e).children,e=>{(0,i.isValidElement)(e)&&s(e)&&t.push(e)}))}),t}function u({trigger:e,placement:u=`bottom-start`,closeOnSelect:d=!0,openOn:f=`click`,onOpenChange:p,isolateClick:m=!1,className:h,style:g,popoverClassName:_,popoverStyle:v,children:y}){let[b,x]=(0,i.useState)(!1),S=(0,i.useRef)(null),C=(0,i.useRef)(null),w=l(y),T=w.filter(e=>!o(e).disabled).length,E=(0,i.useCallback)(e=>{x(t=>{let n=typeof e==`function`?e(t):e;return p?.(n),n})},[p]),{activeIndex:D,setActiveIndex:O,onKeyDown:k}=n.t({itemCount:T,onSelect:(0,i.useCallback)(e=>{let t=0;for(let n of w){let r=o(n);if(!r.disabled){if(t===e){r.onClick?.();break}t++}}d&&E(!1)},[w,d,E]),onClose:()=>x(!1),isOpen:b}),A=e=>{m&&(e.stopPropagation(),e.preventDefault()),E(e=>!e)},j=e=>{(e.key===`ArrowDown`||e.key===`Enter`||e.key===` `)&&(e.preventDefault(),m&&e.stopPropagation(),E(!0)),b&&k(e)},M=0,N=e=>{if(!(0,i.isValidElement)(e))return e;if(s(e)){let t=o(e).disabled,n=t?-1:M++;return(0,i.cloneElement)(e,{_active:n===D,_onHover:t?void 0:()=>O(n),_onClick:()=>{t||d&&E(!1)}})}return c(e)?(0,i.cloneElement)(e,{children:i.Children.map(o(e).children,N)}):e},P=f===`hover`?{onMouseEnter:()=>{C.current&&clearTimeout(C.current),E(!0)},onMouseLeave:()=>{C.current=setTimeout(()=>E(!1),150)}}:{},F=m?e=>{e.stopPropagation(),e.preventDefault()}:void 0;return(0,a.jsxs)(`div`,{className:t.t(`dropdown menu anchor`,h),style:g,onClick:F,...P,children:[(0,a.jsx)(`div`,{ref:S,onClick:f===`click`?A:void 0,onKeyDown:j,role:`button`,tabIndex:0,className:`dropdown menu trigger`,children:e}),(0,a.jsx)(r.t,{open:b,anchorRef:S,onClose:()=>E(!1),placement:u,className:t.t(`dropdown menu popover`,_),style:v,children:(0,a.jsx)(`div`,{className:`dropdown menu list`,role:`menu`,...P,children:i.Children.map(y,N)})})]})}function d({icon:n,label:r,description:i,role:o=`menuitem`,checked:s,href:c,to:l,onClick:u,color:d,disabled:f=!1,active:p=!1,component:m,className:h,_active:g,_onHover:_,_onClick:v}){let y=g??p,b=o===`menuitemradio`||o===`menuitemcheckbox`,x=n??(o===`menuitemcheckbox`?(0,a.jsx)(`span`,{className:`dropdown menu check`,"aria-hidden":`true`,children:s?(0,a.jsx)(e.Yi,{size:14}):null}):null),S=(0,a.jsxs)(a.Fragment,{children:[x&&(0,a.jsx)(`span`,{className:`dropdown menu icon`,children:x}),i?(0,a.jsxs)(`span`,{className:`dropdown menu label with-description`,children:[(0,a.jsx)(`span`,{className:`dropdown menu label-text`,children:r}),(0,a.jsx)(`span`,{className:`dropdown menu description`,children:i})]}):(0,a.jsx)(`span`,{className:`dropdown menu label`,children:r})]}),C=t.t(`dropdown menu item`,y&&`active`,f&&`disabled`,b&&s&&`checked`,d,h),w=e=>{if(f){e.preventDefault();return}u?.(),v?.()},T=m??(c||l?`a`:`button`),E=m?{...c?{href:c}:{},...l?{to:l}:{}}:c?{href:c}:l?{href:l}:{};return(0,a.jsx)(T,{className:C,role:o,"aria-checked":b?!!s:void 0,tabIndex:-1,onClick:w,onMouseEnter:_,"aria-disabled":f||void 0,...E,children:S})}d.__dropdownItem=!0;function f({label:e,children:t}){return(0,a.jsxs)(`div`,{className:`dropdown menu group`,role:`group`,children:[(0,a.jsx)(`div`,{className:`dropdown menu group-label`,children:e}),t]})}f.__dropdownGroup=!0;function p({className:e}){return(0,a.jsx)(`div`,{className:t.t(`dropdown menu divider`,e),role:`separator`})}Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return p}});
|
|
2
|
-
//# sourceMappingURL=MDropdownMenu-B_QWQhxy.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MDropdownMenu-B_QWQhxy.cjs","names":[],"sources":["../src/components/overlays/MDropdownMenu/MDropdownMenu.tsx"],"sourcesContent":["import {useState, useRef, useCallback, Children, isValidElement, cloneElement} from 'react'\nimport type * as React from 'react'\nimport {MPopover} from '../../primitives'\nimport {useKeyboardNav} from '../../../utils/useKeyboardNav'\nimport {cn} from '../../../utils/cn'\nimport {MCheckIcon} from '../../../icons'\nimport type {\n MDropdownMenuProps,\n MDropdownItemProps,\n MDropdownGroupProps,\n MDropdownDividerProps,\n} from './MDropdownMenu.types'\nimport './MDropdownMenu.css'\n\ntype AnyProps = Record<string, any>\n\nfunction getProps(el: React.ReactElement): AnyProps {\n return el.props as AnyProps\n}\n\nfunction isItem(child: React.ReactElement): boolean {\n return !!(child.type as any).__dropdownItem\n}\n\nfunction isGroup(child: React.ReactElement): boolean {\n return !!(child.type as any).__dropdownGroup\n}\n\n// Collect all MDropdownItem elements from children (including inside groups).\nfunction collectItems(children: React.ReactNode): React.ReactElement[] {\n const items: React.ReactElement[] = []\n Children.forEach(children, (child) => {\n if (!isValidElement(child)) return\n if (isItem(child)) {\n items.push(child)\n } else if (isGroup(child)) {\n Children.forEach(getProps(child).children, (gc: React.ReactNode) => {\n if (isValidElement(gc) && isItem(gc)) {\n items.push(gc)\n }\n })\n }\n })\n return items\n}\n\nexport function MDropdownMenu({\n trigger,\n placement = 'bottom-start',\n closeOnSelect = true,\n openOn = 'click',\n onOpenChange,\n isolateClick = false,\n className,\n style,\n popoverClassName,\n popoverStyle,\n children,\n}: MDropdownMenuProps) {\n const [open, setOpen] = useState(false)\n const anchorRef = useRef<HTMLDivElement>(null)\n const hoverTimeout = useRef<ReturnType<typeof setTimeout>>(null)\n\n const items = collectItems(children)\n const enabledCount = items.filter((i) => !getProps(i).disabled).length\n\n const setMenuOpen = useCallback(\n (next: boolean | ((prev: boolean) => boolean)) => {\n setOpen((prev) => {\n const resolved = typeof next === 'function' ? next(prev) : next\n onOpenChange?.(resolved)\n return resolved\n })\n },\n [onOpenChange]\n )\n\n const handleSelect = useCallback(\n (index: number) => {\n let enabledIdx = 0\n for (const item of items) {\n const p = getProps(item)\n if (p.disabled) continue\n if (enabledIdx === index) {\n p.onClick?.()\n break\n }\n enabledIdx++\n }\n if (closeOnSelect) setMenuOpen(false)\n },\n [items, closeOnSelect, setMenuOpen]\n )\n\n const {activeIndex, setActiveIndex, onKeyDown} = useKeyboardNav({\n itemCount: enabledCount,\n onSelect: handleSelect,\n onClose: () => setOpen(false),\n isOpen: open,\n })\n\n const handleTriggerClick = (e: React.MouseEvent) => {\n if (isolateClick) {\n e.stopPropagation()\n e.preventDefault()\n }\n setMenuOpen((o) => !o)\n }\n\n const handleTriggerKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'ArrowDown' || e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n if (isolateClick) e.stopPropagation()\n setMenuOpen(true)\n }\n if (open) onKeyDown(e as any)\n }\n\n // Map active index back to flat child rendering with enabled-only tracking.\n let enabledIdx = 0\n const renderChild = (child: React.ReactNode): React.ReactNode => {\n if (!isValidElement(child)) return child\n\n if (isItem(child)) {\n const p = getProps(child)\n const isDisabled = p.disabled\n const idx = isDisabled ? -1 : enabledIdx++\n return cloneElement(child, {\n _active: idx === activeIndex,\n _onHover: isDisabled ? undefined : () => setActiveIndex(idx),\n _onClick: () => {\n if (isDisabled) return\n if (closeOnSelect) setMenuOpen(false)\n },\n } as AnyProps)\n }\n\n if (isGroup(child)) {\n return cloneElement(child, {\n children: Children.map(getProps(child).children, renderChild),\n } as AnyProps)\n }\n\n return child\n }\n\n const hoverHandlers =\n openOn === 'hover'\n ? {\n onMouseEnter: () => {\n if (hoverTimeout.current) clearTimeout(hoverTimeout.current)\n setMenuOpen(true)\n },\n onMouseLeave: () => {\n hoverTimeout.current = setTimeout(() => setMenuOpen(false), 150)\n },\n }\n : {}\n\n /**\n * When `isolateClick` is set, every click bubbling out of the menu\n * (trigger AND items) must be stopped — otherwise selecting an action\n * also fires the click handler on a clickable parent (Link, MCard with\n * onClick, MDataTable row link). Trigger click itself is handled by\n * `handleTriggerClick`; this wrapper catches the bubbled item clicks\n * before they leave the anchor. `preventDefault` is needed too — when the\n * dropdown is rendered inside an `<a href>` (MCard component={Link}),\n * stopping propagation alone does not block native link navigation.\n *\n * Caveat: MDropdownItem with `href` will not navigate while inside an\n * `isolateClick` menu — use programmatic navigation (onClick + navigate)\n * in those contexts instead.\n */\n const isolateAnchorClick = isolateClick\n ? (e: React.MouseEvent) => {\n e.stopPropagation()\n e.preventDefault()\n }\n : undefined\n\n return (\n <div\n className={cn('dropdown menu anchor', className)}\n style={style}\n onClick={isolateAnchorClick}\n {...hoverHandlers}\n >\n <div\n ref={anchorRef}\n onClick={openOn === 'click' ? handleTriggerClick : undefined}\n onKeyDown={handleTriggerKeyDown}\n role=\"button\"\n tabIndex={0}\n className=\"dropdown menu trigger\"\n >\n {trigger}\n </div>\n <MPopover\n open={open}\n anchorRef={anchorRef}\n onClose={() => setMenuOpen(false)}\n placement={placement}\n className={cn('dropdown menu popover', popoverClassName)}\n style={popoverStyle}\n >\n <div className=\"dropdown menu list\" role=\"menu\" {...hoverHandlers}>\n {Children.map(children, renderChild)}\n </div>\n </MPopover>\n </div>\n )\n}\n\nexport function MDropdownItem({\n icon,\n label,\n description,\n role = 'menuitem',\n checked,\n href,\n to,\n onClick,\n color,\n disabled = false,\n active = false,\n component,\n className,\n _active,\n _onHover,\n _onClick,\n}: MDropdownItemProps & {_active?: boolean; _onHover?: () => void; _onClick?: () => void}) {\n const isHighlighted = _active ?? active\n\n const checkable = role === 'menuitemradio' || role === 'menuitemcheckbox'\n const leading =\n icon ??\n (role === 'menuitemcheckbox' ? (\n <span className=\"dropdown menu check\" aria-hidden=\"true\">\n {checked ? <MCheckIcon size={14} /> : null}\n </span>\n ) : null)\n\n const content = (\n <>\n {leading && <span className=\"dropdown menu icon\">{leading}</span>}\n {description ? (\n <span className=\"dropdown menu label with-description\">\n <span className=\"dropdown menu label-text\">{label}</span>\n <span className=\"dropdown menu description\">{description}</span>\n </span>\n ) : (\n <span className=\"dropdown menu label\">{label}</span>\n )}\n </>\n )\n\n const cls = cn(\n 'dropdown menu item',\n isHighlighted && 'active',\n disabled && 'disabled',\n checkable && checked && 'checked',\n color,\n className\n )\n\n const handleClick = (e: React.MouseEvent) => {\n if (disabled) {\n e.preventDefault()\n return\n }\n onClick?.()\n _onClick?.()\n }\n\n const Tag = component ?? (href || to ? 'a' : 'button')\n const linkProps = component ? {...(href ? {href} : {}), ...(to ? {to} : {})} : href ? {href} : to ? {href: to} : {}\n\n return (\n <Tag\n className={cls}\n role={role}\n aria-checked={checkable ? Boolean(checked) : undefined}\n tabIndex={-1}\n onClick={handleClick}\n onMouseEnter={_onHover}\n aria-disabled={disabled || undefined}\n {...linkProps}\n >\n {content}\n </Tag>\n )\n}\n;(MDropdownItem as any).__dropdownItem = true\n\nexport function MDropdownGroup({label, children}: MDropdownGroupProps) {\n return (\n <div className=\"dropdown menu group\" role=\"group\">\n <div className=\"dropdown menu group-label\">{label}</div>\n {children}\n </div>\n )\n}\n;(MDropdownGroup as any).__dropdownGroup = true\n\nexport function MDropdownDivider({className}: MDropdownDividerProps) {\n return <div className={cn('dropdown menu divider', className)} role=\"separator\" />\n}\n"],"mappings":"4OAgBA,SAAS,EAAS,EAAkC,CAChD,OAAO,EAAG,MAGd,SAAS,EAAO,EAAoC,CAChD,MAAO,CAAC,CAAE,EAAM,KAAa,eAGjC,SAAS,EAAQ,EAAoC,CACjD,MAAO,CAAC,CAAE,EAAM,KAAa,gBAIjC,SAAS,EAAa,EAAiD,CACnE,IAAM,EAA8B,EAAE,CAatC,OAZA,EAAA,SAAS,QAAQ,EAAW,GAAU,EAC9B,EAAA,EAAA,gBAAgB,EAAM,GACtB,EAAO,EAAM,CACb,EAAM,KAAK,EAAM,CACV,EAAQ,EAAM,EACrB,EAAA,SAAS,QAAQ,EAAS,EAAM,CAAC,SAAW,GAAwB,EAChE,EAAA,EAAA,gBAAmB,EAAG,EAAI,EAAO,EAAG,EAChC,EAAM,KAAK,EAAG,EAEpB,GAER,CACK,EAGX,SAAgB,EAAc,CAC1B,UACA,YAAY,eACZ,gBAAgB,GAChB,SAAS,QACT,eACA,eAAe,GACf,YACA,QACA,mBACA,eACA,YACmB,CACnB,GAAM,CAAC,EAAM,IAAA,EAAA,EAAA,UAAoB,GAAM,CACjC,GAAA,EAAA,EAAA,QAAmC,KAAK,CACxC,GAAA,EAAA,EAAA,QAAqD,KAAK,CAE1D,EAAQ,EAAa,EAAS,CAC9B,EAAe,EAAM,OAAQ,GAAM,CAAC,EAAS,EAAE,CAAC,SAAS,CAAC,OAE1D,GAAA,EAAA,EAAA,aACD,GAAiD,CAC9C,EAAS,GAAS,CACd,IAAM,EAAW,OAAO,GAAS,WAAa,EAAK,EAAK,CAAG,EAE3D,OADA,IAAe,EAAS,CACjB,GACT,EAEN,CAAC,EAAa,CACjB,CAmBK,CAAC,cAAa,iBAAgB,aAAa,EAAA,EAAe,CAC5D,UAAW,EACX,UAAA,EAAA,EAAA,aAlBC,GAAkB,CACf,IAAI,EAAa,EACjB,IAAK,IAAM,KAAQ,EAAO,CACtB,IAAM,EAAI,EAAS,EAAK,CACpB,MAAE,SACN,IAAI,IAAe,EAAO,CACtB,EAAE,WAAW,CACb,MAEJ,KAEA,GAAe,EAAY,GAAM,EAEzC,CAAC,EAAO,EAAe,EAAY,CACtC,CAKG,YAAe,EAAQ,GAAM,CAC7B,OAAQ,EACX,CAAC,CAEI,EAAsB,GAAwB,CAC5C,IACA,EAAE,iBAAiB,CACnB,EAAE,gBAAgB,EAEtB,EAAa,GAAM,CAAC,EAAE,EAGpB,EAAwB,GAA2B,EACjD,EAAE,MAAQ,aAAe,EAAE,MAAQ,SAAW,EAAE,MAAQ,OACxD,EAAE,gBAAgB,CACd,GAAc,EAAE,iBAAiB,CACrC,EAAY,GAAK,EAEjB,GAAM,EAAU,EAAS,EAI7B,EAAa,EACX,EAAe,GAA4C,CAC7D,GAAI,EAAA,EAAA,EAAA,gBAAgB,EAAM,CAAE,OAAO,EAEnC,GAAI,EAAO,EAAM,CAAE,CAEf,IAAM,EADI,EAAS,EAAM,CACJ,SACf,EAAM,EAAa,GAAK,IAC9B,OAAA,EAAA,EAAA,cAAoB,EAAO,CACvB,QAAS,IAAQ,EACjB,SAAU,EAAa,IAAA,OAAkB,EAAe,EAAI,CAC5D,aAAgB,CACR,GACA,GAAe,EAAY,GAAM,EAE5C,CAAa,CASlB,OANI,EAAQ,EAAM,EACd,EAAA,EAAA,cAAoB,EAAO,CACvB,SAAU,EAAA,SAAS,IAAI,EAAS,EAAM,CAAC,SAAU,EAAY,CAChE,CAAa,CAGX,GAGL,EACF,IAAW,QACL,CACI,iBAAoB,CACZ,EAAa,SAAS,aAAa,EAAa,QAAQ,CAC5D,EAAY,GAAK,EAErB,iBAAoB,CAChB,EAAa,QAAU,eAAiB,EAAY,GAAM,CAAE,IAAI,EAEvE,CACD,EAAE,CAgBN,EAAqB,EACpB,GAAwB,CACrB,EAAE,iBAAiB,CACnB,EAAE,gBAAgB,EAEtB,IAAA,GAEN,OACI,EAAA,EAAA,MAAC,MAAD,CACI,UAAW,EAAA,EAAG,uBAAwB,EAAU,CACzC,QACP,QAAS,EACT,GAAI,WAJR,EAMI,EAAA,EAAA,KAAC,MAAD,CACI,IAAK,EACL,QAAS,IAAW,QAAU,EAAqB,IAAA,GACnD,UAAW,EACX,KAAK,SACL,SAAU,EACV,UAAU,iCAET,EACC,CAAA,EACN,EAAA,EAAA,KAAC,EAAA,EAAD,CACU,OACK,YACX,YAAe,EAAY,GAAM,CACtB,YACX,UAAW,EAAA,EAAG,wBAAyB,EAAiB,CACxD,MAAO,YAEP,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,qBAAqB,KAAK,OAAO,GAAI,WAC/C,EAAA,SAAS,IAAI,EAAU,EAAY,CAClC,CAAA,CACC,CAAA,CACT,GAId,SAAgB,EAAc,CAC1B,OACA,QACA,cACA,OAAO,WACP,UACA,OACA,KACA,UACA,QACA,WAAW,GACX,SAAS,GACT,YACA,YACA,UACA,WACA,YACuF,CACvF,IAAM,EAAgB,GAAW,EAE3B,EAAY,IAAS,iBAAmB,IAAS,mBACjD,EACF,IACC,IAAS,oBACN,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,sBAAsB,cAAY,gBAC7C,GAAU,EAAA,EAAA,KAAC,EAAA,GAAD,CAAY,KAAM,GAAM,CAAA,CAAG,KACnC,CAAA,CACP,MAEF,GACF,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,CACK,IAAW,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,8BAAsB,EAAe,CAAA,CAChE,GACG,EAAA,EAAA,MAAC,OAAD,CAAM,UAAU,gDAAhB,EACI,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,oCAA4B,EAAa,CAAA,EACzD,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,qCAA6B,EAAmB,CAAA,CAC7D,IAEP,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,+BAAuB,EAAa,CAAA,CAEzD,CAAA,CAAA,CAGD,EAAM,EAAA,EACR,qBACA,GAAiB,SACjB,GAAY,WACZ,GAAa,GAAW,UACxB,EACA,EACH,CAEK,EAAe,GAAwB,CACzC,GAAI,EAAU,CACV,EAAE,gBAAgB,CAClB,OAEJ,KAAW,CACX,KAAY,EAGV,EAAM,IAAc,GAAQ,EAAK,IAAM,UACvC,EAAY,EAAY,CAAC,GAAI,EAAO,CAAC,OAAK,CAAG,EAAE,CAAG,GAAI,EAAK,CAAC,KAAG,CAAG,EAAE,CAAE,CAAG,EAAO,CAAC,OAAK,CAAG,EAAK,CAAC,KAAM,EAAG,CAAG,EAAE,CAEnH,OACI,EAAA,EAAA,KAAC,EAAD,CACI,UAAW,EACL,OACN,eAAc,EAAY,EAAQ,EAAW,IAAA,GAC7C,SAAU,GACV,QAAS,EACT,aAAc,EACd,gBAAe,GAAY,IAAA,GAC3B,GAAI,WAEH,EACC,CAAA,CAGb,EAAuB,eAAiB,GAEzC,SAAgB,EAAe,CAAC,QAAO,YAAgC,CACnE,OACI,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,sBAAsB,KAAK,iBAA1C,EACI,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,qCAA6B,EAAY,CAAA,CACvD,EACC,GAGb,EAAwB,gBAAkB,GAE3C,SAAgB,EAAiB,CAAC,aAAmC,CACjE,OAAO,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,EAAG,wBAAyB,EAAU,CAAE,KAAK,YAAc,CAAA"}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { Yi as e } from "./icons-CBMl-kOM.js";
|
|
2
|
-
import { t } from "./cn-YER3QsV1.js";
|
|
3
|
-
import { t as n } from "./useKeyboardNav-iEXOdEMB.js";
|
|
4
|
-
import { t as r } from "./MPopover-Dd-GIBU6.js";
|
|
5
|
-
import { Children as i, cloneElement as a, isValidElement as o, useCallback as s, useRef as c, useState as l } from "react";
|
|
6
|
-
import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
|
|
7
|
-
//#region src/components/overlays/MDropdownMenu/MDropdownMenu.tsx
|
|
8
|
-
function p(e) {
|
|
9
|
-
return e.props;
|
|
10
|
-
}
|
|
11
|
-
function m(e) {
|
|
12
|
-
return !!e.type.__dropdownItem;
|
|
13
|
-
}
|
|
14
|
-
function h(e) {
|
|
15
|
-
return !!e.type.__dropdownGroup;
|
|
16
|
-
}
|
|
17
|
-
function g(e) {
|
|
18
|
-
let t = [];
|
|
19
|
-
return i.forEach(e, (e) => {
|
|
20
|
-
o(e) && (m(e) ? t.push(e) : h(e) && i.forEach(p(e).children, (e) => {
|
|
21
|
-
o(e) && m(e) && t.push(e);
|
|
22
|
-
}));
|
|
23
|
-
}), t;
|
|
24
|
-
}
|
|
25
|
-
function _({ trigger: e, placement: u = "bottom-start", closeOnSelect: _ = !0, openOn: v = "click", onOpenChange: y, isolateClick: b = !1, className: x, style: S, popoverClassName: C, popoverStyle: w, children: T }) {
|
|
26
|
-
let [E, D] = l(!1), O = c(null), k = c(null), A = g(T), j = A.filter((e) => !p(e).disabled).length, M = s((e) => {
|
|
27
|
-
D((t) => {
|
|
28
|
-
let n = typeof e == "function" ? e(t) : e;
|
|
29
|
-
return y?.(n), n;
|
|
30
|
-
});
|
|
31
|
-
}, [y]), { activeIndex: N, setActiveIndex: P, onKeyDown: F } = n({
|
|
32
|
-
itemCount: j,
|
|
33
|
-
onSelect: s((e) => {
|
|
34
|
-
let t = 0;
|
|
35
|
-
for (let n of A) {
|
|
36
|
-
let r = p(n);
|
|
37
|
-
if (!r.disabled) {
|
|
38
|
-
if (t === e) {
|
|
39
|
-
r.onClick?.();
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
t++;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
_ && M(!1);
|
|
46
|
-
}, [
|
|
47
|
-
A,
|
|
48
|
-
_,
|
|
49
|
-
M
|
|
50
|
-
]),
|
|
51
|
-
onClose: () => D(!1),
|
|
52
|
-
isOpen: E
|
|
53
|
-
}), I = (e) => {
|
|
54
|
-
b && (e.stopPropagation(), e.preventDefault()), M((e) => !e);
|
|
55
|
-
}, L = (e) => {
|
|
56
|
-
(e.key === "ArrowDown" || e.key === "Enter" || e.key === " ") && (e.preventDefault(), b && e.stopPropagation(), M(!0)), E && F(e);
|
|
57
|
-
}, R = 0, z = (e) => {
|
|
58
|
-
if (!o(e)) return e;
|
|
59
|
-
if (m(e)) {
|
|
60
|
-
let t = p(e).disabled, n = t ? -1 : R++;
|
|
61
|
-
return a(e, {
|
|
62
|
-
_active: n === N,
|
|
63
|
-
_onHover: t ? void 0 : () => P(n),
|
|
64
|
-
_onClick: () => {
|
|
65
|
-
t || _ && M(!1);
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
return h(e) ? a(e, { children: i.map(p(e).children, z) }) : e;
|
|
70
|
-
}, B = v === "hover" ? {
|
|
71
|
-
onMouseEnter: () => {
|
|
72
|
-
k.current && clearTimeout(k.current), M(!0);
|
|
73
|
-
},
|
|
74
|
-
onMouseLeave: () => {
|
|
75
|
-
k.current = setTimeout(() => M(!1), 150);
|
|
76
|
-
}
|
|
77
|
-
} : {}, V = b ? (e) => {
|
|
78
|
-
e.stopPropagation(), e.preventDefault();
|
|
79
|
-
} : void 0;
|
|
80
|
-
return /* @__PURE__ */ f("div", {
|
|
81
|
-
className: t("dropdown menu anchor", x),
|
|
82
|
-
style: S,
|
|
83
|
-
onClick: V,
|
|
84
|
-
...B,
|
|
85
|
-
children: [/* @__PURE__ */ d("div", {
|
|
86
|
-
ref: O,
|
|
87
|
-
onClick: v === "click" ? I : void 0,
|
|
88
|
-
onKeyDown: L,
|
|
89
|
-
role: "button",
|
|
90
|
-
tabIndex: 0,
|
|
91
|
-
className: "dropdown menu trigger",
|
|
92
|
-
children: e
|
|
93
|
-
}), /* @__PURE__ */ d(r, {
|
|
94
|
-
open: E,
|
|
95
|
-
anchorRef: O,
|
|
96
|
-
onClose: () => M(!1),
|
|
97
|
-
placement: u,
|
|
98
|
-
className: t("dropdown menu popover", C),
|
|
99
|
-
style: w,
|
|
100
|
-
children: /* @__PURE__ */ d("div", {
|
|
101
|
-
className: "dropdown menu list",
|
|
102
|
-
role: "menu",
|
|
103
|
-
...B,
|
|
104
|
-
children: i.map(T, z)
|
|
105
|
-
})
|
|
106
|
-
})]
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
function v({ icon: n, label: r, description: i, role: a = "menuitem", checked: o, href: s, to: c, onClick: l, color: p, disabled: m = !1, active: h = !1, component: g, className: _, _active: v, _onHover: y, _onClick: b }) {
|
|
110
|
-
let x = v ?? h, S = a === "menuitemradio" || a === "menuitemcheckbox", C = n ?? (a === "menuitemcheckbox" ? /* @__PURE__ */ d("span", {
|
|
111
|
-
className: "dropdown menu check",
|
|
112
|
-
"aria-hidden": "true",
|
|
113
|
-
children: o ? /* @__PURE__ */ d(e, { size: 14 }) : null
|
|
114
|
-
}) : null), w = /* @__PURE__ */ f(u, { children: [C && /* @__PURE__ */ d("span", {
|
|
115
|
-
className: "dropdown menu icon",
|
|
116
|
-
children: C
|
|
117
|
-
}), i ? /* @__PURE__ */ f("span", {
|
|
118
|
-
className: "dropdown menu label with-description",
|
|
119
|
-
children: [/* @__PURE__ */ d("span", {
|
|
120
|
-
className: "dropdown menu label-text",
|
|
121
|
-
children: r
|
|
122
|
-
}), /* @__PURE__ */ d("span", {
|
|
123
|
-
className: "dropdown menu description",
|
|
124
|
-
children: i
|
|
125
|
-
})]
|
|
126
|
-
}) : /* @__PURE__ */ d("span", {
|
|
127
|
-
className: "dropdown menu label",
|
|
128
|
-
children: r
|
|
129
|
-
})] }), T = t("dropdown menu item", x && "active", m && "disabled", S && o && "checked", p, _), E = (e) => {
|
|
130
|
-
if (m) {
|
|
131
|
-
e.preventDefault();
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
l?.(), b?.();
|
|
135
|
-
}, D = g ?? (s || c ? "a" : "button"), O = g ? {
|
|
136
|
-
...s ? { href: s } : {},
|
|
137
|
-
...c ? { to: c } : {}
|
|
138
|
-
} : s ? { href: s } : c ? { href: c } : {};
|
|
139
|
-
return /* @__PURE__ */ d(D, {
|
|
140
|
-
className: T,
|
|
141
|
-
role: a,
|
|
142
|
-
"aria-checked": S ? !!o : void 0,
|
|
143
|
-
tabIndex: -1,
|
|
144
|
-
onClick: E,
|
|
145
|
-
onMouseEnter: y,
|
|
146
|
-
"aria-disabled": m || void 0,
|
|
147
|
-
...O,
|
|
148
|
-
children: w
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
v.__dropdownItem = !0;
|
|
152
|
-
function y({ label: e, children: t }) {
|
|
153
|
-
return /* @__PURE__ */ f("div", {
|
|
154
|
-
className: "dropdown menu group",
|
|
155
|
-
role: "group",
|
|
156
|
-
children: [/* @__PURE__ */ d("div", {
|
|
157
|
-
className: "dropdown menu group-label",
|
|
158
|
-
children: e
|
|
159
|
-
}), t]
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
y.__dropdownGroup = !0;
|
|
163
|
-
function b({ className: e }) {
|
|
164
|
-
return /* @__PURE__ */ d("div", {
|
|
165
|
-
className: t("dropdown menu divider", e),
|
|
166
|
-
role: "separator"
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
//#endregion
|
|
170
|
-
export { _ as i, y as n, v as r, b as t };
|
|
171
|
-
|
|
172
|
-
//# sourceMappingURL=MDropdownMenu-C4CuKMRZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MDropdownMenu-C4CuKMRZ.js","names":[],"sources":["../src/components/overlays/MDropdownMenu/MDropdownMenu.tsx"],"sourcesContent":["import {useState, useRef, useCallback, Children, isValidElement, cloneElement} from 'react'\nimport type * as React from 'react'\nimport {MPopover} from '../../primitives'\nimport {useKeyboardNav} from '../../../utils/useKeyboardNav'\nimport {cn} from '../../../utils/cn'\nimport {MCheckIcon} from '../../../icons'\nimport type {\n MDropdownMenuProps,\n MDropdownItemProps,\n MDropdownGroupProps,\n MDropdownDividerProps,\n} from './MDropdownMenu.types'\nimport './MDropdownMenu.css'\n\ntype AnyProps = Record<string, any>\n\nfunction getProps(el: React.ReactElement): AnyProps {\n return el.props as AnyProps\n}\n\nfunction isItem(child: React.ReactElement): boolean {\n return !!(child.type as any).__dropdownItem\n}\n\nfunction isGroup(child: React.ReactElement): boolean {\n return !!(child.type as any).__dropdownGroup\n}\n\n// Collect all MDropdownItem elements from children (including inside groups).\nfunction collectItems(children: React.ReactNode): React.ReactElement[] {\n const items: React.ReactElement[] = []\n Children.forEach(children, (child) => {\n if (!isValidElement(child)) return\n if (isItem(child)) {\n items.push(child)\n } else if (isGroup(child)) {\n Children.forEach(getProps(child).children, (gc: React.ReactNode) => {\n if (isValidElement(gc) && isItem(gc)) {\n items.push(gc)\n }\n })\n }\n })\n return items\n}\n\nexport function MDropdownMenu({\n trigger,\n placement = 'bottom-start',\n closeOnSelect = true,\n openOn = 'click',\n onOpenChange,\n isolateClick = false,\n className,\n style,\n popoverClassName,\n popoverStyle,\n children,\n}: MDropdownMenuProps) {\n const [open, setOpen] = useState(false)\n const anchorRef = useRef<HTMLDivElement>(null)\n const hoverTimeout = useRef<ReturnType<typeof setTimeout>>(null)\n\n const items = collectItems(children)\n const enabledCount = items.filter((i) => !getProps(i).disabled).length\n\n const setMenuOpen = useCallback(\n (next: boolean | ((prev: boolean) => boolean)) => {\n setOpen((prev) => {\n const resolved = typeof next === 'function' ? next(prev) : next\n onOpenChange?.(resolved)\n return resolved\n })\n },\n [onOpenChange]\n )\n\n const handleSelect = useCallback(\n (index: number) => {\n let enabledIdx = 0\n for (const item of items) {\n const p = getProps(item)\n if (p.disabled) continue\n if (enabledIdx === index) {\n p.onClick?.()\n break\n }\n enabledIdx++\n }\n if (closeOnSelect) setMenuOpen(false)\n },\n [items, closeOnSelect, setMenuOpen]\n )\n\n const {activeIndex, setActiveIndex, onKeyDown} = useKeyboardNav({\n itemCount: enabledCount,\n onSelect: handleSelect,\n onClose: () => setOpen(false),\n isOpen: open,\n })\n\n const handleTriggerClick = (e: React.MouseEvent) => {\n if (isolateClick) {\n e.stopPropagation()\n e.preventDefault()\n }\n setMenuOpen((o) => !o)\n }\n\n const handleTriggerKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'ArrowDown' || e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n if (isolateClick) e.stopPropagation()\n setMenuOpen(true)\n }\n if (open) onKeyDown(e as any)\n }\n\n // Map active index back to flat child rendering with enabled-only tracking.\n let enabledIdx = 0\n const renderChild = (child: React.ReactNode): React.ReactNode => {\n if (!isValidElement(child)) return child\n\n if (isItem(child)) {\n const p = getProps(child)\n const isDisabled = p.disabled\n const idx = isDisabled ? -1 : enabledIdx++\n return cloneElement(child, {\n _active: idx === activeIndex,\n _onHover: isDisabled ? undefined : () => setActiveIndex(idx),\n _onClick: () => {\n if (isDisabled) return\n if (closeOnSelect) setMenuOpen(false)\n },\n } as AnyProps)\n }\n\n if (isGroup(child)) {\n return cloneElement(child, {\n children: Children.map(getProps(child).children, renderChild),\n } as AnyProps)\n }\n\n return child\n }\n\n const hoverHandlers =\n openOn === 'hover'\n ? {\n onMouseEnter: () => {\n if (hoverTimeout.current) clearTimeout(hoverTimeout.current)\n setMenuOpen(true)\n },\n onMouseLeave: () => {\n hoverTimeout.current = setTimeout(() => setMenuOpen(false), 150)\n },\n }\n : {}\n\n /**\n * When `isolateClick` is set, every click bubbling out of the menu\n * (trigger AND items) must be stopped — otherwise selecting an action\n * also fires the click handler on a clickable parent (Link, MCard with\n * onClick, MDataTable row link). Trigger click itself is handled by\n * `handleTriggerClick`; this wrapper catches the bubbled item clicks\n * before they leave the anchor. `preventDefault` is needed too — when the\n * dropdown is rendered inside an `<a href>` (MCard component={Link}),\n * stopping propagation alone does not block native link navigation.\n *\n * Caveat: MDropdownItem with `href` will not navigate while inside an\n * `isolateClick` menu — use programmatic navigation (onClick + navigate)\n * in those contexts instead.\n */\n const isolateAnchorClick = isolateClick\n ? (e: React.MouseEvent) => {\n e.stopPropagation()\n e.preventDefault()\n }\n : undefined\n\n return (\n <div\n className={cn('dropdown menu anchor', className)}\n style={style}\n onClick={isolateAnchorClick}\n {...hoverHandlers}\n >\n <div\n ref={anchorRef}\n onClick={openOn === 'click' ? handleTriggerClick : undefined}\n onKeyDown={handleTriggerKeyDown}\n role=\"button\"\n tabIndex={0}\n className=\"dropdown menu trigger\"\n >\n {trigger}\n </div>\n <MPopover\n open={open}\n anchorRef={anchorRef}\n onClose={() => setMenuOpen(false)}\n placement={placement}\n className={cn('dropdown menu popover', popoverClassName)}\n style={popoverStyle}\n >\n <div className=\"dropdown menu list\" role=\"menu\" {...hoverHandlers}>\n {Children.map(children, renderChild)}\n </div>\n </MPopover>\n </div>\n )\n}\n\nexport function MDropdownItem({\n icon,\n label,\n description,\n role = 'menuitem',\n checked,\n href,\n to,\n onClick,\n color,\n disabled = false,\n active = false,\n component,\n className,\n _active,\n _onHover,\n _onClick,\n}: MDropdownItemProps & {_active?: boolean; _onHover?: () => void; _onClick?: () => void}) {\n const isHighlighted = _active ?? active\n\n const checkable = role === 'menuitemradio' || role === 'menuitemcheckbox'\n const leading =\n icon ??\n (role === 'menuitemcheckbox' ? (\n <span className=\"dropdown menu check\" aria-hidden=\"true\">\n {checked ? <MCheckIcon size={14} /> : null}\n </span>\n ) : null)\n\n const content = (\n <>\n {leading && <span className=\"dropdown menu icon\">{leading}</span>}\n {description ? (\n <span className=\"dropdown menu label with-description\">\n <span className=\"dropdown menu label-text\">{label}</span>\n <span className=\"dropdown menu description\">{description}</span>\n </span>\n ) : (\n <span className=\"dropdown menu label\">{label}</span>\n )}\n </>\n )\n\n const cls = cn(\n 'dropdown menu item',\n isHighlighted && 'active',\n disabled && 'disabled',\n checkable && checked && 'checked',\n color,\n className\n )\n\n const handleClick = (e: React.MouseEvent) => {\n if (disabled) {\n e.preventDefault()\n return\n }\n onClick?.()\n _onClick?.()\n }\n\n const Tag = component ?? (href || to ? 'a' : 'button')\n const linkProps = component ? {...(href ? {href} : {}), ...(to ? {to} : {})} : href ? {href} : to ? {href: to} : {}\n\n return (\n <Tag\n className={cls}\n role={role}\n aria-checked={checkable ? Boolean(checked) : undefined}\n tabIndex={-1}\n onClick={handleClick}\n onMouseEnter={_onHover}\n aria-disabled={disabled || undefined}\n {...linkProps}\n >\n {content}\n </Tag>\n )\n}\n;(MDropdownItem as any).__dropdownItem = true\n\nexport function MDropdownGroup({label, children}: MDropdownGroupProps) {\n return (\n <div className=\"dropdown menu group\" role=\"group\">\n <div className=\"dropdown menu group-label\">{label}</div>\n {children}\n </div>\n )\n}\n;(MDropdownGroup as any).__dropdownGroup = true\n\nexport function MDropdownDivider({className}: MDropdownDividerProps) {\n return <div className={cn('dropdown menu divider', className)} role=\"separator\" />\n}\n"],"mappings":";;;;;;;AAgBA,SAAS,EAAS,GAAkC;AAChD,QAAO,EAAG;;AAGd,SAAS,EAAO,GAAoC;AAChD,QAAO,CAAC,CAAE,EAAM,KAAa;;AAGjC,SAAS,EAAQ,GAAoC;AACjD,QAAO,CAAC,CAAE,EAAM,KAAa;;AAIjC,SAAS,EAAa,GAAiD;CACnE,IAAM,IAA8B,EAAE;AAatC,QAZA,EAAS,QAAQ,IAAW,MAAU;AAC7B,IAAe,EAAM,KACtB,EAAO,EAAM,GACb,EAAM,KAAK,EAAM,GACV,EAAQ,EAAM,IACrB,EAAS,QAAQ,EAAS,EAAM,CAAC,WAAW,MAAwB;AAChE,GAAI,EAAe,EAAG,IAAI,EAAO,EAAG,IAChC,EAAM,KAAK,EAAG;IAEpB;GAER,EACK;;AAGX,SAAgB,EAAc,EAC1B,YACA,eAAY,gBACZ,mBAAgB,IAChB,YAAS,SACT,iBACA,kBAAe,IACf,cACA,UACA,qBACA,iBACA,eACmB;CACnB,IAAM,CAAC,GAAM,KAAW,EAAS,GAAM,EACjC,IAAY,EAAuB,KAAK,EACxC,IAAe,EAAsC,KAAK,EAE1D,IAAQ,EAAa,EAAS,EAC9B,IAAe,EAAM,QAAQ,MAAM,CAAC,EAAS,EAAE,CAAC,SAAS,CAAC,QAE1D,IAAc,GACf,MAAiD;AAC9C,KAAS,MAAS;GACd,IAAM,IAAW,OAAO,KAAS,aAAa,EAAK,EAAK,GAAG;AAE3D,UADA,IAAe,EAAS,EACjB;IACT;IAEN,CAAC,EAAa,CACjB,EAmBK,EAAC,gBAAa,mBAAgB,iBAAa,EAAe;EAC5D,WAAW;EACX,UAnBiB,GAChB,MAAkB;GACf,IAAI,IAAa;AACjB,QAAK,IAAM,KAAQ,GAAO;IACtB,IAAM,IAAI,EAAS,EAAK;AACpB,WAAE,UACN;SAAI,MAAe,GAAO;AACtB,QAAE,WAAW;AACb;;AAEJ;;;AAEJ,GAAI,KAAe,EAAY,GAAM;KAEzC;GAAC;GAAO;GAAe;GAAY,CACtC;EAKG,eAAe,EAAQ,GAAM;EAC7B,QAAQ;EACX,CAAC,EAEI,KAAsB,MAAwB;AAKhD,EAJI,MACA,EAAE,iBAAiB,EACnB,EAAE,gBAAgB,GAEtB,GAAa,MAAM,CAAC,EAAE;IAGpB,KAAwB,MAA2B;AAMrD,GALI,EAAE,QAAQ,eAAe,EAAE,QAAQ,WAAW,EAAE,QAAQ,SACxD,EAAE,gBAAgB,EACd,KAAc,EAAE,iBAAiB,EACrC,EAAY,GAAK,GAEjB,KAAM,EAAU,EAAS;IAI7B,IAAa,GACX,KAAe,MAA4C;AAC7D,MAAI,CAAC,EAAe,EAAM,CAAE,QAAO;AAEnC,MAAI,EAAO,EAAM,EAAE;GAEf,IAAM,IADI,EAAS,EAAM,CACJ,UACf,IAAM,IAAa,KAAK;AAC9B,UAAO,EAAa,GAAO;IACvB,SAAS,MAAQ;IACjB,UAAU,IAAa,KAAA,UAAkB,EAAe,EAAI;IAC5D,gBAAgB;AACR,UACA,KAAe,EAAY,GAAM;;IAE5C,CAAa;;AASlB,SANI,EAAQ,EAAM,GACP,EAAa,GAAO,EACvB,UAAU,EAAS,IAAI,EAAS,EAAM,CAAC,UAAU,EAAY,EAChE,CAAa,GAGX;IAGL,IACF,MAAW,UACL;EACI,oBAAoB;AAEhB,GADI,EAAa,WAAS,aAAa,EAAa,QAAQ,EAC5D,EAAY,GAAK;;EAErB,oBAAoB;AAChB,KAAa,UAAU,iBAAiB,EAAY,GAAM,EAAE,IAAI;;EAEvE,GACD,EAAE,EAgBN,IAAqB,KACpB,MAAwB;AAErB,EADA,EAAE,iBAAiB,EACnB,EAAE,gBAAgB;KAEtB,KAAA;AAEN,QACI,kBAAC,OAAD;EACI,WAAW,EAAG,wBAAwB,EAAU;EACzC;EACP,SAAS;EACT,GAAI;YAJR,CAMI,kBAAC,OAAD;GACI,KAAK;GACL,SAAS,MAAW,UAAU,IAAqB,KAAA;GACnD,WAAW;GACX,MAAK;GACL,UAAU;GACV,WAAU;aAET;GACC,CAAA,EACN,kBAAC,GAAD;GACU;GACK;GACX,eAAe,EAAY,GAAM;GACtB;GACX,WAAW,EAAG,yBAAyB,EAAiB;GACxD,OAAO;aAEP,kBAAC,OAAD;IAAK,WAAU;IAAqB,MAAK;IAAO,GAAI;cAC/C,EAAS,IAAI,GAAU,EAAY;IAClC,CAAA;GACC,CAAA,CACT;;;AAId,SAAgB,EAAc,EAC1B,SACA,UACA,gBACA,UAAO,YACP,YACA,SACA,OACA,YACA,UACA,cAAW,IACX,YAAS,IACT,cACA,cACA,YACA,aACA,eACuF;CACvF,IAAM,IAAgB,KAAW,GAE3B,IAAY,MAAS,mBAAmB,MAAS,oBACjD,IACF,MACC,MAAS,qBACN,kBAAC,QAAD;EAAM,WAAU;EAAsB,eAAY;YAC7C,IAAU,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA,GAAG;EACnC,CAAA,GACP,OAEF,IACF,kBAAA,GAAA,EAAA,UAAA,CACK,KAAW,kBAAC,QAAD;EAAM,WAAU;YAAsB;EAAe,CAAA,EAChE,IACG,kBAAC,QAAD;EAAM,WAAU;YAAhB,CACI,kBAAC,QAAD;GAAM,WAAU;aAA4B;GAAa,CAAA,EACzD,kBAAC,QAAD;GAAM,WAAU;aAA6B;GAAmB,CAAA,CAC7D;MAEP,kBAAC,QAAD;EAAM,WAAU;YAAuB;EAAa,CAAA,CAEzD,EAAA,CAAA,EAGD,IAAM,EACR,sBACA,KAAiB,UACjB,KAAY,YACZ,KAAa,KAAW,WACxB,GACA,EACH,EAEK,KAAe,MAAwB;AACzC,MAAI,GAAU;AACV,KAAE,gBAAgB;AAClB;;AAGJ,EADA,KAAW,EACX,KAAY;IAGV,IAAM,MAAc,KAAQ,IAAK,MAAM,WACvC,IAAY,IAAY;EAAC,GAAI,IAAO,EAAC,SAAK,GAAG,EAAE;EAAG,GAAI,IAAK,EAAC,OAAG,GAAG,EAAE;EAAE,GAAG,IAAO,EAAC,SAAK,GAAG,IAAK,EAAC,MAAM,GAAG,GAAG,EAAE;AAEnH,QACI,kBAAC,GAAD;EACI,WAAW;EACL;EACN,gBAAc,IAAY,EAAQ,IAAW,KAAA;EAC7C,UAAU;EACV,SAAS;EACT,cAAc;EACd,iBAAe,KAAY,KAAA;EAC3B,GAAI;YAEH;EACC,CAAA;;AAGb,EAAuB,iBAAiB;AAEzC,SAAgB,EAAe,EAAC,UAAO,eAAgC;AACnE,QACI,kBAAC,OAAD;EAAK,WAAU;EAAsB,MAAK;YAA1C,CACI,kBAAC,OAAD;GAAK,WAAU;aAA6B;GAAY,CAAA,EACvD,EACC;;;AAGb,EAAwB,kBAAkB;AAE3C,SAAgB,EAAiB,EAAC,gBAAmC;AACjE,QAAO,kBAAC,OAAD;EAAK,WAAW,EAAG,yBAAyB,EAAU;EAAE,MAAK;EAAc,CAAA"}
|
package/dist/MGrid-CYL3cbUI.js
DELETED
|
@@ -1,265 +0,0 @@
|
|
|
1
|
-
import { r as e } from "./theme-DAOU1aPs.js";
|
|
2
|
-
import { t } from "./cn-YER3QsV1.js";
|
|
3
|
-
import { t as n } from "./useInteractionEffect-DtpbVd77.js";
|
|
4
|
-
import { n as r, t as i } from "./layoutProps-CE5-ghKw.js";
|
|
5
|
-
import { Children as a, cloneElement as o, isValidElement as s, useId as c, useMemo as l, useState as u } from "react";
|
|
6
|
-
import { jsx as d, jsxs as f } from "react/jsx-runtime";
|
|
7
|
-
//#region src/components/layout/MTabs/MTabs.tsx
|
|
8
|
-
function p({ item: e, isActive: r, tabId: i, panelId: a, clickEffect: o, rippleColor: s, onSelect: c }) {
|
|
9
|
-
let { effectClassName: l, effectLayer: u, handlePointerDown: p, triggerEffect: m } = n({
|
|
10
|
-
effect: o,
|
|
11
|
-
disabled: e.disabled,
|
|
12
|
-
centered: !0,
|
|
13
|
-
color: s
|
|
14
|
-
});
|
|
15
|
-
return /* @__PURE__ */ f("button", {
|
|
16
|
-
type: "button",
|
|
17
|
-
id: i,
|
|
18
|
-
role: "tab",
|
|
19
|
-
"aria-selected": r,
|
|
20
|
-
"aria-controls": a,
|
|
21
|
-
tabIndex: r ? 0 : -1,
|
|
22
|
-
disabled: e.disabled,
|
|
23
|
-
className: t("tabs-trigger", r && "active", e.disabled && "disabled", l),
|
|
24
|
-
onPointerDown: p,
|
|
25
|
-
onKeyDown: (e) => {
|
|
26
|
-
(e.key === " " || e.key === "Enter") && m(e.currentTarget);
|
|
27
|
-
},
|
|
28
|
-
onClick: () => c(e.value),
|
|
29
|
-
children: [
|
|
30
|
-
u,
|
|
31
|
-
e.icon && /* @__PURE__ */ d("span", {
|
|
32
|
-
className: "tabs-icon",
|
|
33
|
-
children: e.icon
|
|
34
|
-
}),
|
|
35
|
-
/* @__PURE__ */ d("span", {
|
|
36
|
-
className: "tabs-label",
|
|
37
|
-
children: e.label
|
|
38
|
-
})
|
|
39
|
-
]
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
function m({ items: e, value: n, defaultValue: r, onValueChange: i, variant: a = "underline", orientation: o = "horizontal", size: s = "md", fullWidth: m = !1, showPanels: h = !0, panelClassName: g, clickEffect: _ = "ripple", rippleColor: v, className: y, ...b }) {
|
|
43
|
-
let [x, S] = u(l(() => r ?? e.find((e) => !e.disabled)?.value ?? "", [r, e])), C = n ?? x, w = e.find((e) => e.value === C) ?? e[0], T = c();
|
|
44
|
-
function E(e) {
|
|
45
|
-
n === void 0 && S(e), i?.(e);
|
|
46
|
-
}
|
|
47
|
-
function D(t) {
|
|
48
|
-
let n = e.filter((e) => !e.disabled), r = n.findIndex((e) => e.value === w?.value);
|
|
49
|
-
if (r === -1) return;
|
|
50
|
-
let i = o === "vertical" ? ["ArrowDown"] : ["ArrowRight", "ArrowDown"], a = o === "vertical" ? ["ArrowUp"] : ["ArrowLeft", "ArrowUp"];
|
|
51
|
-
if (i.includes(t.key)) {
|
|
52
|
-
t.preventDefault();
|
|
53
|
-
let e = n[(r + 1) % n.length];
|
|
54
|
-
E(e.value);
|
|
55
|
-
}
|
|
56
|
-
if (a.includes(t.key)) {
|
|
57
|
-
t.preventDefault();
|
|
58
|
-
let e = n[(r - 1 + n.length) % n.length];
|
|
59
|
-
E(e.value);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return /* @__PURE__ */ f("div", {
|
|
63
|
-
className: t("tabs", a, o, s, m && "full-width", y),
|
|
64
|
-
...b,
|
|
65
|
-
children: [/* @__PURE__ */ d("div", {
|
|
66
|
-
className: "tabs-list",
|
|
67
|
-
role: "tablist",
|
|
68
|
-
"aria-orientation": o,
|
|
69
|
-
onKeyDown: D,
|
|
70
|
-
children: e.map((e) => /* @__PURE__ */ d(p, {
|
|
71
|
-
item: e,
|
|
72
|
-
isActive: e.value === w?.value,
|
|
73
|
-
tabId: `${T}-${e.value}-tab`,
|
|
74
|
-
panelId: `${T}-${e.value}-panel`,
|
|
75
|
-
clickEffect: _,
|
|
76
|
-
rippleColor: v,
|
|
77
|
-
onSelect: E
|
|
78
|
-
}, e.value))
|
|
79
|
-
}), h && w?.content !== void 0 && /* @__PURE__ */ d("div", {
|
|
80
|
-
id: `${T}-${w.value}-panel`,
|
|
81
|
-
role: "tabpanel",
|
|
82
|
-
"aria-labelledby": `${T}-${w.value}-tab`,
|
|
83
|
-
className: t("tabs-panel", g),
|
|
84
|
-
children: w.content
|
|
85
|
-
}, w.value)]
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
//#endregion
|
|
89
|
-
//#region src/components/layout/MGrid/MGrid.tsx
|
|
90
|
-
var h = [
|
|
91
|
-
"base",
|
|
92
|
-
"xxl",
|
|
93
|
-
"xl",
|
|
94
|
-
"lg",
|
|
95
|
-
"md",
|
|
96
|
-
"sm"
|
|
97
|
-
], g = {
|
|
98
|
-
sm: ["sm"],
|
|
99
|
-
md: ["md", "sm"],
|
|
100
|
-
lg: [
|
|
101
|
-
"lg",
|
|
102
|
-
"md",
|
|
103
|
-
"sm"
|
|
104
|
-
],
|
|
105
|
-
xl: [
|
|
106
|
-
"xl",
|
|
107
|
-
"lg",
|
|
108
|
-
"md",
|
|
109
|
-
"sm"
|
|
110
|
-
],
|
|
111
|
-
"2xl": [
|
|
112
|
-
"xxl",
|
|
113
|
-
"xl",
|
|
114
|
-
"lg",
|
|
115
|
-
"md",
|
|
116
|
-
"sm"
|
|
117
|
-
]
|
|
118
|
-
};
|
|
119
|
-
function _(e) {
|
|
120
|
-
return s(e) ? e.type === C ? !0 : e.type === S && e.props.type === "col" : !1;
|
|
121
|
-
}
|
|
122
|
-
function v(e) {
|
|
123
|
-
let t = e.sm, n = e.md ?? t, r = e.lg ?? n, i = e.xl ?? r, a = e.xxl ?? i;
|
|
124
|
-
return {
|
|
125
|
-
base: a,
|
|
126
|
-
xxl: a,
|
|
127
|
-
xl: i,
|
|
128
|
-
lg: r,
|
|
129
|
-
md: n,
|
|
130
|
-
sm: t
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
function y(e, t) {
|
|
134
|
-
return e === !0 ? !0 : e === void 0 || e === !1 || t === "base" ? !1 : g[e]?.includes(t) ?? !1;
|
|
135
|
-
}
|
|
136
|
-
function b(e, t) {
|
|
137
|
-
if (t <= 0) return [];
|
|
138
|
-
if (e <= 0) return Array.from({ length: t }, () => 12);
|
|
139
|
-
let n = Math.floor(e / t), r = e % t;
|
|
140
|
-
return Array.from({ length: t }, (e, t) => {
|
|
141
|
-
let i = n + +(t < r);
|
|
142
|
-
return i >= 1 ? i : 12;
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
function x(e) {
|
|
146
|
-
let t = e.map((e) => v(e)), n = t.map((e) => ({ ...e }));
|
|
147
|
-
for (let r of h) {
|
|
148
|
-
let i = [], a = 0;
|
|
149
|
-
t.forEach((t, o) => {
|
|
150
|
-
if (y(e[o].hidden, r)) {
|
|
151
|
-
n[o][r] = void 0;
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
let s = t[r];
|
|
155
|
-
if (s) {
|
|
156
|
-
a += s;
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
i.push(o);
|
|
160
|
-
});
|
|
161
|
-
let o = b(Math.max(12 - a, 0), i.length);
|
|
162
|
-
i.forEach((e, t) => {
|
|
163
|
-
n[e][r] = o[t];
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
return n;
|
|
167
|
-
}
|
|
168
|
-
function S({ type: n = "row", sm: s, md: c, lg: l, xl: u, xxl: f, resolvedBase: p, hidden: m, hiddenAbove: h, align: g, spacing: y, padding: b, fsize: S, mt: C, mb: w, ml: T, mr: E, mx: D, my: O, pt: k, pb: A, pl: j, pr: M, px: N, py: P, fullWidth: F, className: I, style: L, children: R, ...z }) {
|
|
169
|
-
let B = r({ fsize: S }), V = v({
|
|
170
|
-
sm: s,
|
|
171
|
-
md: c,
|
|
172
|
-
lg: l,
|
|
173
|
-
xl: u,
|
|
174
|
-
xxl: f
|
|
175
|
-
}), H = p ?? V.base;
|
|
176
|
-
if (n === "col") return /* @__PURE__ */ d("div", {
|
|
177
|
-
className: t("grid", "col", H ? `span-${H}` : "span-auto", f && `xxl-${f}`, u && `xl-${u}`, l && `lg-${l}`, c && `md-${c}`, s && `sm-${s}`, g && `self-${g}`, ...i({
|
|
178
|
-
spacing: y,
|
|
179
|
-
padding: b,
|
|
180
|
-
fsize: S,
|
|
181
|
-
mt: C,
|
|
182
|
-
mb: w,
|
|
183
|
-
ml: T,
|
|
184
|
-
mr: E,
|
|
185
|
-
mx: D,
|
|
186
|
-
my: O,
|
|
187
|
-
pt: k,
|
|
188
|
-
pb: A,
|
|
189
|
-
pl: j,
|
|
190
|
-
pr: M,
|
|
191
|
-
px: N,
|
|
192
|
-
py: P,
|
|
193
|
-
fullWidth: F
|
|
194
|
-
}), I),
|
|
195
|
-
style: {
|
|
196
|
-
...B,
|
|
197
|
-
...L
|
|
198
|
-
},
|
|
199
|
-
...e(m, h),
|
|
200
|
-
...z,
|
|
201
|
-
children: R
|
|
202
|
-
});
|
|
203
|
-
let U = a.toArray(R), W = U.flatMap((e, t) => _(e) ? [{
|
|
204
|
-
child: e,
|
|
205
|
-
index: t
|
|
206
|
-
}] : []), G = Math.min(Math.max(W.length || U.length, 1), 12), K = W.some(({ child: e }) => {
|
|
207
|
-
let t = e.props;
|
|
208
|
-
return !!(t.hidden || t.xxl || t.xl || t.lg || t.md || t.sm);
|
|
209
|
-
}), q = K ? x(W.map(({ child: e }) => e.props)) : null, J = K && q ? U.map((e, t) => {
|
|
210
|
-
let n = W.findIndex((e) => e.index === t);
|
|
211
|
-
if (n === -1 || !_(e)) return e;
|
|
212
|
-
let r = q[n];
|
|
213
|
-
return o(e, {
|
|
214
|
-
resolvedBase: r.base,
|
|
215
|
-
xxl: r.xxl,
|
|
216
|
-
xl: r.xl,
|
|
217
|
-
lg: r.lg,
|
|
218
|
-
md: r.md,
|
|
219
|
-
sm: r.sm
|
|
220
|
-
});
|
|
221
|
-
}) : U;
|
|
222
|
-
return /* @__PURE__ */ d("div", {
|
|
223
|
-
className: t("grid", "row", K ? "tracked" : `auto-cols-${G}`, g && `align-${g}`, ...i({
|
|
224
|
-
spacing: y,
|
|
225
|
-
padding: b,
|
|
226
|
-
fsize: S,
|
|
227
|
-
mt: C,
|
|
228
|
-
mb: w,
|
|
229
|
-
ml: T,
|
|
230
|
-
mr: E,
|
|
231
|
-
mx: D,
|
|
232
|
-
my: O,
|
|
233
|
-
pt: k,
|
|
234
|
-
pb: A,
|
|
235
|
-
pl: j,
|
|
236
|
-
pr: M,
|
|
237
|
-
px: N,
|
|
238
|
-
py: P,
|
|
239
|
-
fullWidth: F ?? !0
|
|
240
|
-
}), I),
|
|
241
|
-
style: {
|
|
242
|
-
...B,
|
|
243
|
-
...L
|
|
244
|
-
},
|
|
245
|
-
...e(m),
|
|
246
|
-
...z,
|
|
247
|
-
children: J
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
function C({ sm: e, md: t, lg: n, xl: r, xxl: i, align: a, ...o }) {
|
|
251
|
-
return /* @__PURE__ */ d(S, {
|
|
252
|
-
type: "col",
|
|
253
|
-
sm: e,
|
|
254
|
-
md: t,
|
|
255
|
-
lg: n,
|
|
256
|
-
xl: r,
|
|
257
|
-
xxl: i,
|
|
258
|
-
align: a,
|
|
259
|
-
...o
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
//#endregion
|
|
263
|
-
export { C as n, m as r, S as t };
|
|
264
|
-
|
|
265
|
-
//# sourceMappingURL=MGrid-CYL3cbUI.js.map
|