@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.
Files changed (578) hide show
  1. package/README.md +22 -55
  2. package/dist/MAvatar-BElYyQXH.cjs +2 -0
  3. package/dist/MAvatar-BElYyQXH.cjs.map +1 -0
  4. package/dist/MAvatar-CIvYzQV4.js +63 -0
  5. package/dist/MAvatar-CIvYzQV4.js.map +1 -0
  6. package/dist/{MButton-C1pnL4_j.js → MButton-C94fZ3l9.js} +1 -1
  7. package/dist/{MButton-C1pnL4_j.js.map → MButton-C94fZ3l9.js.map} +1 -1
  8. package/dist/{MButton-DFRHWHzh.cjs → MButton-ouB6903s.cjs} +2 -2
  9. package/dist/{MButton-DFRHWHzh.cjs.map → MButton-ouB6903s.cjs.map} +1 -1
  10. package/dist/MButtonGroup-BhGt-Yy1.js +30 -0
  11. package/dist/MButtonGroup-BhGt-Yy1.js.map +1 -0
  12. package/dist/MButtonGroup-yumQneDa.cjs +2 -0
  13. package/dist/MButtonGroup-yumQneDa.cjs.map +1 -0
  14. package/dist/MCard-9ucghJJs.js +89 -0
  15. package/dist/MCard-9ucghJJs.js.map +1 -0
  16. package/dist/MCard-Bg_R86Gr.cjs +2 -0
  17. package/dist/MCard-Bg_R86Gr.cjs.map +1 -0
  18. package/dist/{MCheckbox-B7SpcD4H.js → MCheckbox-B-nT2OBE.js} +1 -1
  19. package/dist/{MCheckbox-B7SpcD4H.js.map → MCheckbox-B-nT2OBE.js.map} +1 -1
  20. package/dist/{MCheckbox-Dn3p_9-1.cjs → MCheckbox-Cbk5hwzJ.cjs} +2 -2
  21. package/dist/{MCheckbox-Dn3p_9-1.cjs.map → MCheckbox-Cbk5hwzJ.cjs.map} +1 -1
  22. package/dist/MDetailList-CpwrF22b.cjs +2 -0
  23. package/dist/MDetailList-CpwrF22b.cjs.map +1 -0
  24. package/dist/MDetailList-Gh5Y0UOx.js +89 -0
  25. package/dist/MDetailList-Gh5Y0UOx.js.map +1 -0
  26. package/dist/{MDropdownMenu-c9U3sEcl.cjs → MDropdownMenu-BT3u-ZJj.cjs} +2 -2
  27. package/dist/{MDropdownMenu-c9U3sEcl.cjs.map → MDropdownMenu-BT3u-ZJj.cjs.map} +1 -1
  28. package/dist/{MDropdownMenu-CeiC1tz3.js → MDropdownMenu-CAwSTZ1h.js} +2 -2
  29. package/dist/{MDropdownMenu-CeiC1tz3.js.map → MDropdownMenu-CAwSTZ1h.js.map} +1 -1
  30. package/dist/{MGalleryIllustration-Dglx_Ckc.cjs → MGalleryIllustration-D1givjFR.cjs} +2 -2
  31. package/dist/{MGalleryIllustration-Dglx_Ckc.cjs.map → MGalleryIllustration-D1givjFR.cjs.map} +1 -1
  32. package/dist/MGrid-Di7laCq4.cjs +2 -0
  33. package/dist/MGrid-Di7laCq4.cjs.map +1 -0
  34. package/dist/MGrid-yLmEteNw.js +265 -0
  35. package/dist/MGrid-yLmEteNw.js.map +1 -0
  36. package/dist/{MHeading-f3hwkW3r.cjs → MHeading-TJ5yvklz.cjs} +2 -2
  37. package/dist/{MHeading-f3hwkW3r.cjs.map → MHeading-TJ5yvklz.cjs.map} +1 -1
  38. package/dist/{MI18nProvider-DOh5xexz.cjs → MI18nProvider-bf1G7lTP.cjs} +2 -2
  39. package/dist/{MI18nProvider-DOh5xexz.cjs.map → MI18nProvider-bf1G7lTP.cjs.map} +1 -1
  40. package/dist/{MInput-IsUELgN2.js → MInput-CkbgK8eU.js} +3 -3
  41. package/dist/{MInput-IsUELgN2.js.map → MInput-CkbgK8eU.js.map} +1 -1
  42. package/dist/{MInput-BLGduKL_.cjs → MInput-ClHpIrDG.cjs} +2 -2
  43. package/dist/{MInput-BLGduKL_.cjs.map → MInput-ClHpIrDG.cjs.map} +1 -1
  44. package/dist/MInputCVC-B353PyVi.cjs +2 -0
  45. package/dist/MInputCVC-B353PyVi.cjs.map +1 -0
  46. package/dist/{MInputExpDate-CeCmw6fj.js → MInputCVC-BSHrWcEh.js} +101 -101
  47. package/dist/MInputCVC-BSHrWcEh.js.map +1 -0
  48. package/dist/{MInputSearch-_7jfFGr1.cjs → MInputSearch-D2Fr_34s.cjs} +2 -2
  49. package/dist/{MInputSearch-_7jfFGr1.cjs.map → MInputSearch-D2Fr_34s.cjs.map} +1 -1
  50. package/dist/{MInputSearch-BBxUF5pw.js → MInputSearch-Dj55a3oO.js} +3 -3
  51. package/dist/{MInputSearch-BBxUF5pw.js.map → MInputSearch-Dj55a3oO.js.map} +1 -1
  52. package/dist/{MKbd-DWTS3iS5.cjs → MKbd-CGkzxJhi.cjs} +2 -2
  53. package/dist/{MKbd-DWTS3iS5.cjs.map → MKbd-CGkzxJhi.cjs.map} +1 -1
  54. package/dist/{MKbd-v6-tJ9sP.js → MKbd-I4xDtsqc.js} +1 -1
  55. package/dist/{MKbd-v6-tJ9sP.js.map → MKbd-I4xDtsqc.js.map} +1 -1
  56. package/dist/{MLink-CRK8YvR4.cjs → MLink-CZ2FfQ0N.cjs} +2 -2
  57. package/dist/{MLink-CRK8YvR4.cjs.map → MLink-CZ2FfQ0N.cjs.map} +1 -1
  58. package/dist/{MPagination-D1hYqLDb.cjs → MPagination-CAzIIP2o.cjs} +2 -2
  59. package/dist/{MPagination-D1hYqLDb.cjs.map → MPagination-CAzIIP2o.cjs.map} +1 -1
  60. package/dist/{MPagination-DvToi2cs.js → MPagination-CnFI794t.js} +7 -7
  61. package/dist/{MPagination-DvToi2cs.js.map → MPagination-CnFI794t.js.map} +1 -1
  62. package/dist/{MPopover-Cqz5TsHg.js → MPopover-BRuwva-c.js} +2 -2
  63. package/dist/MPopover-BRuwva-c.js.map +1 -0
  64. package/dist/MPopover-BbgAAM5Z.cjs +2 -0
  65. package/dist/MPopover-BbgAAM5Z.cjs.map +1 -0
  66. package/dist/{MPortal-BIxPtFYd.cjs → MPortal-DokH9TfY.cjs} +2 -2
  67. package/dist/{MPortal-BIxPtFYd.cjs.map → MPortal-DokH9TfY.cjs.map} +1 -1
  68. package/dist/{MSimpleGrid-CyLf-9R2.cjs → MSimpleGrid-B6Uh1XJY.cjs} +2 -2
  69. package/dist/{MSimpleGrid-CyLf-9R2.cjs.map → MSimpleGrid-B6Uh1XJY.cjs.map} +1 -1
  70. package/dist/{MSimpleGrid-Bojj4xKH.js → MSimpleGrid-Ds14eBrD.js} +1 -1
  71. package/dist/{MSimpleGrid-Bojj4xKH.js.map → MSimpleGrid-Ds14eBrD.js.map} +1 -1
  72. package/dist/MSkeleton-BpylRABV.js +53 -0
  73. package/dist/MSkeleton-BpylRABV.js.map +1 -0
  74. package/dist/MSkeleton-JMkJFzu9.cjs +2 -0
  75. package/dist/MSkeleton-JMkJFzu9.cjs.map +1 -0
  76. package/dist/{MSlider-CqrusKJQ.js → MSlider-5141rKeH.js} +1 -1
  77. package/dist/{MSlider-CqrusKJQ.js.map → MSlider-5141rKeH.js.map} +1 -1
  78. package/dist/{MSlider-qCGmD4UA.cjs → MSlider-PyXLKckL.cjs} +2 -2
  79. package/dist/{MSlider-qCGmD4UA.cjs.map → MSlider-PyXLKckL.cjs.map} +1 -1
  80. package/dist/MStack-B8JtyM10.js +39 -0
  81. package/dist/MStack-B8JtyM10.js.map +1 -0
  82. package/dist/MStack-DDn2bYBQ.cjs +2 -0
  83. package/dist/MStack-DDn2bYBQ.cjs.map +1 -0
  84. package/dist/{MSurface-odrvQXkb.js → MSurface-B-sjyczH.js} +34 -3
  85. package/dist/MSurface-B-sjyczH.js.map +1 -0
  86. package/dist/MSurface-WsYGNGX5.cjs +2 -0
  87. package/dist/MSurface-WsYGNGX5.cjs.map +1 -0
  88. package/dist/{MTag-DgB6ukFJ.js → MTag-CKM8lXD6.js} +3 -3
  89. package/dist/{MTag-DgB6ukFJ.js.map → MTag-CKM8lXD6.js.map} +1 -1
  90. package/dist/{MTag-DZqV4S13.cjs → MTag-Dez1GOX0.cjs} +2 -2
  91. package/dist/{MTag-DZqV4S13.cjs.map → MTag-Dez1GOX0.cjs.map} +1 -1
  92. package/dist/{MText-BHbI7KJO.cjs → MText-CAbqC2qZ.cjs} +2 -2
  93. package/dist/{MText-BHbI7KJO.cjs.map → MText-CAbqC2qZ.cjs.map} +1 -1
  94. package/dist/{MTooltip-Dq2vYf3G.cjs → MTooltip-C-x_SqMx.cjs} +2 -2
  95. package/dist/{MTooltip-Dq2vYf3G.cjs.map → MTooltip-C-x_SqMx.cjs.map} +1 -1
  96. package/dist/{MTooltip-jSf4VBtB.js → MTooltip-Cbj80F3o.js} +1 -1
  97. package/dist/{MTooltip-jSf4VBtB.js.map → MTooltip-Cbj80F3o.js.map} +1 -1
  98. package/dist/MTreeView-B7IWHmGc.cjs +2 -0
  99. package/dist/MTreeView-B7IWHmGc.cjs.map +1 -0
  100. package/dist/MTreeView-DMTzRk6c.js +315 -0
  101. package/dist/MTreeView-DMTzRk6c.js.map +1 -0
  102. package/dist/{arduino-Bm509TuR.cjs → arduino-CFZS94LP.cjs} +1 -1
  103. package/dist/arduino-CFZS94LP.cjs.map +1 -0
  104. package/dist/{arduino-C5s1z3P1.js → arduino-DWEBiENP.js} +2 -2
  105. package/dist/arduino-DWEBiENP.js.map +1 -0
  106. package/dist/{bash-RIFbRcCe.js → bash-DQsQM8so.js} +2 -2
  107. package/dist/bash-DQsQM8so.js.map +1 -0
  108. package/dist/{bash-CyBbinAU.cjs → bash-Dl1TvWHd.cjs} +1 -1
  109. package/dist/bash-Dl1TvWHd.cjs.map +1 -0
  110. package/dist/{c-DAywn1DE.js → c-BgkSGJWN.js} +2 -2
  111. package/dist/c-BgkSGJWN.js.map +1 -0
  112. package/dist/{c-DGOxo0dj.cjs → c-PUMyVGnz.cjs} +1 -1
  113. package/dist/c-PUMyVGnz.cjs.map +1 -0
  114. package/dist/cards-23tpYjxc.js +1207 -0
  115. package/dist/cards-23tpYjxc.js.map +1 -0
  116. package/dist/cards-CK6RnNZi.cjs +2 -0
  117. package/dist/cards-CK6RnNZi.cjs.map +1 -0
  118. package/dist/cards.cjs +1 -1
  119. package/dist/cards.js +3 -3
  120. package/dist/components/cards/MCardGrid/index.d.ts +1 -1
  121. package/dist/components/cards/index.d.ts +1 -9
  122. package/dist/components/data/index.d.ts +4 -24
  123. package/dist/components/data/useMCardGrid.d.ts +36 -0
  124. package/dist/components/data/useMTable.d.ts +69 -0
  125. package/dist/components/display/index.d.ts +0 -8
  126. package/dist/components/feedback/MProgressRing/MProgressRing.d.ts +8 -0
  127. package/dist/components/feedback/MProgressRing/MProgressRing.types.d.ts +21 -0
  128. package/dist/components/feedback/MProgressRing/index.d.ts +2 -0
  129. package/dist/components/feedback/index.d.ts +2 -1
  130. package/dist/components/layout/MCanvasGrid/MCanvasGrid.d.ts +5 -0
  131. package/dist/components/layout/MCanvasGrid/MCanvasGrid.types.d.ts +43 -0
  132. package/dist/components/layout/MCanvasGrid/ScaleToFit.d.ts +19 -0
  133. package/dist/components/layout/MCanvasGrid/index.d.ts +2 -0
  134. package/dist/components/layout/index.d.ts +2 -4
  135. package/dist/components/media/MAvatar/MAvatar.d.ts +1 -1
  136. package/dist/components/media/MAvatar/MAvatar.types.d.ts +9 -0
  137. package/dist/components/media/MAvatar/index.d.ts +1 -1
  138. package/dist/components/media/index.d.ts +1 -17
  139. package/dist/components/typography/MHeading/MHeading.d.ts +1 -1
  140. package/dist/{controls-CcbEqqWo.js → controls-B3P4zKoA.js} +85 -63
  141. package/dist/controls-B3P4zKoA.js.map +1 -0
  142. package/dist/controls-DwWfqfDX.cjs +2 -0
  143. package/dist/controls-DwWfqfDX.cjs.map +1 -0
  144. package/dist/controls.cjs +1 -1
  145. package/dist/controls.js +6 -6
  146. package/dist/{core-DAox0BHy.cjs → core-B2klLGki.cjs} +1 -1
  147. package/dist/core-B2klLGki.cjs.map +1 -0
  148. package/dist/{core-BUYr52VU.js → core-BdOw9NlN.js} +1 -1
  149. package/dist/core-BdOw9NlN.js.map +1 -0
  150. package/dist/{cpp-D-FtdQo9.cjs → cpp-C_DS-imi.cjs} +1 -1
  151. package/dist/cpp-C_DS-imi.cjs.map +1 -0
  152. package/dist/{cpp-Y9cHXDal.js → cpp-ChrqJwqu.js} +2 -2
  153. package/dist/cpp-ChrqJwqu.js.map +1 -0
  154. package/dist/{css-DCYZ-Rs6.cjs → css-Brdthutg.cjs} +1 -1
  155. package/dist/css-Brdthutg.cjs.map +1 -0
  156. package/dist/{css-C__ffGj6.js → css-DL_ID0lZ.js} +2 -2
  157. package/dist/css-DL_ID0lZ.js.map +1 -0
  158. package/dist/data-B5KYb0SW.js +463 -0
  159. package/dist/data-B5KYb0SW.js.map +1 -0
  160. package/dist/data-CDZvakQ8.cjs +2 -0
  161. package/dist/data-CDZvakQ8.cjs.map +1 -0
  162. package/dist/data.cjs +1 -1
  163. package/dist/data.js +3 -4
  164. package/dist/display-2Vak-RyH.cjs +3 -0
  165. package/dist/display-2Vak-RyH.cjs.map +1 -0
  166. package/dist/{display-C7YRf4Ze.js → display-ChhvaSPc.js} +288 -241
  167. package/dist/display-ChhvaSPc.js.map +1 -0
  168. package/dist/display.cjs +1 -1
  169. package/dist/display.js +3 -4
  170. package/dist/dropdowns-BP2HBR-x.cjs +2 -0
  171. package/dist/dropdowns-BP2HBR-x.cjs.map +1 -0
  172. package/dist/dropdowns-C9jREjLg.js +1752 -0
  173. package/dist/dropdowns-C9jREjLg.js.map +1 -0
  174. package/dist/dropdowns.cjs +1 -1
  175. package/dist/dropdowns.js +1 -1
  176. package/dist/feedback-DnuJtYUI.cjs +2 -0
  177. package/dist/feedback-DnuJtYUI.cjs.map +1 -0
  178. package/dist/feedback-urwS5wps.js +290 -0
  179. package/dist/feedback-urwS5wps.js.map +1 -0
  180. package/dist/feedback.cjs +1 -1
  181. package/dist/feedback.js +5 -6
  182. package/dist/{form-BiPQ8SRK.js → form-CWoOQ_qo.js} +1 -1
  183. package/dist/{form-BiPQ8SRK.js.map → form-CWoOQ_qo.js.map} +1 -1
  184. package/dist/{form-DlXWN2ul.cjs → form-D5F1kTIA.cjs} +2 -2
  185. package/dist/{form-DlXWN2ul.cjs.map → form-D5F1kTIA.cjs.map} +1 -1
  186. package/dist/form.cjs +1 -1
  187. package/dist/form.js +1 -1
  188. package/dist/i18n.cjs +1 -1
  189. package/dist/icons/MIcon.types.d.ts +6 -0
  190. package/dist/icons/glyphs/MAirplaneFillIcon.d.ts +2 -0
  191. package/dist/icons/glyphs/{MBrandIconsV2.d.ts → MAirplaneIcon.d.ts} +1 -1
  192. package/dist/icons/glyphs/MApartmentIcon.d.ts +2 -0
  193. package/dist/icons/glyphs/{MChartIconV2.d.ts → MArchiveIcon.d.ts} +1 -1
  194. package/dist/icons/glyphs/MBookIcon.d.ts +2 -0
  195. package/dist/icons/glyphs/MBookOpenFillIcon.d.ts +2 -0
  196. package/dist/icons/glyphs/{MSearchIconV2.d.ts → MBookOpenIcon.d.ts} +1 -1
  197. package/dist/icons/glyphs/MBookmarkFillIcon.d.ts +2 -0
  198. package/dist/icons/glyphs/MBookmarkIcon.d.ts +2 -0
  199. package/dist/icons/glyphs/MBooksIcon.d.ts +2 -0
  200. package/dist/icons/glyphs/MCarFillIcon.d.ts +2 -0
  201. package/dist/icons/glyphs/MCarIcon.d.ts +2 -0
  202. package/dist/icons/glyphs/MClassroomIcon.d.ts +2 -0
  203. package/dist/icons/glyphs/MColumnsIcon.d.ts +2 -0
  204. package/dist/icons/glyphs/{MUserIconV2.d.ts → MFlagAtIcon.d.ts} +1 -1
  205. package/dist/icons/glyphs/{MHomeIconV2.d.ts → MFlagAuIcon.d.ts} +1 -1
  206. package/dist/icons/glyphs/MFlagChIcon.d.ts +2 -0
  207. package/dist/icons/glyphs/MFlagIeIcon.d.ts +2 -0
  208. package/dist/icons/glyphs/MFlagKrIcon.d.ts +2 -0
  209. package/dist/icons/glyphs/MFlagNlIcon.d.ts +2 -0
  210. package/dist/icons/glyphs/MFlagNoIcon.d.ts +2 -0
  211. package/dist/icons/glyphs/MFlagPtIcon.d.ts +2 -0
  212. package/dist/icons/glyphs/MFlagSeIcon.d.ts +2 -0
  213. package/dist/icons/glyphs/MFlagTrIcon.d.ts +2 -0
  214. package/dist/icons/glyphs/MFlatIcon.d.ts +2 -0
  215. package/dist/icons/glyphs/MHistoryIcon.d.ts +2 -0
  216. package/dist/icons/glyphs/MHouseIcon.d.ts +2 -0
  217. package/dist/icons/glyphs/MKeyIcon.d.ts +2 -0
  218. package/dist/icons/glyphs/MLessonIcon.d.ts +2 -0
  219. package/dist/icons/glyphs/MListIcon.d.ts +2 -0
  220. package/dist/icons/glyphs/MMakeupIcon.d.ts +2 -0
  221. package/dist/icons/glyphs/MMoveIcon.d.ts +2 -0
  222. package/dist/icons/glyphs/MPlayIcon.d.ts +2 -0
  223. package/dist/icons/glyphs/MPrinterIcon.d.ts +2 -0
  224. package/dist/icons/glyphs/MRedoIcon.d.ts +2 -0
  225. package/dist/icons/glyphs/MResizeIcon.d.ts +2 -0
  226. package/dist/icons/glyphs/MRoomIcon.d.ts +2 -0
  227. package/dist/icons/glyphs/MShareIcon.d.ts +2 -0
  228. package/dist/icons/glyphs/MShipIcon.d.ts +2 -0
  229. package/dist/icons/glyphs/MShopIcon.d.ts +2 -0
  230. package/dist/icons/glyphs/MStopIcon.d.ts +2 -0
  231. package/dist/icons/glyphs/MTaskIcon.d.ts +2 -0
  232. package/dist/icons/glyphs/MUndoIcon.d.ts +2 -0
  233. package/dist/icons/glyphs/MUrgentIcon.d.ts +2 -0
  234. package/dist/icons/glyphs/MUserCheckIcon.d.ts +2 -0
  235. package/dist/icons/glyphs/MUserMinusIcon.d.ts +2 -0
  236. package/dist/icons/glyphs/MUserPlusIcon.d.ts +2 -0
  237. package/dist/icons/index.d.ts +48 -13
  238. package/dist/icons-BHFwX7ri.cjs +2 -0
  239. package/dist/icons-BHFwX7ri.cjs.map +1 -0
  240. package/dist/{icons-CfpYxnfg.js → icons-DLP-Rs6z.js} +1325 -1925
  241. package/dist/icons-DLP-Rs6z.js.map +1 -0
  242. package/dist/icons.cjs +1 -1
  243. package/dist/icons.js +2 -2
  244. package/dist/illustrations.cjs +1 -1
  245. package/dist/index.cjs +1 -2
  246. package/dist/index.d.ts +0 -2
  247. package/dist/index.js +53 -93
  248. package/dist/{inputs-BJMmyEdL.cjs → inputs-D38ib0gM.cjs} +2 -2
  249. package/dist/{inputs-BJMmyEdL.cjs.map → inputs-D38ib0gM.cjs.map} +1 -1
  250. package/dist/{inputs-CNPeF6gb.js → inputs-bbwdb6m3.js} +181 -181
  251. package/dist/{inputs-CNPeF6gb.js.map → inputs-bbwdb6m3.js.map} +1 -1
  252. package/dist/inputs.cjs +1 -1
  253. package/dist/inputs.js +5 -5
  254. package/dist/{javascript-ClV78Svx.js → javascript-B5hepBcv.js} +2 -2
  255. package/dist/javascript-B5hepBcv.js.map +1 -0
  256. package/dist/{javascript-_Sr9cnsG.cjs → javascript-DFYAIwfO.cjs} +1 -1
  257. package/dist/javascript-DFYAIwfO.cjs.map +1 -0
  258. package/dist/{json-BFetU4Pi.cjs → json-BTHMevf2.cjs} +1 -1
  259. package/dist/json-BTHMevf2.cjs.map +1 -0
  260. package/dist/{json-Dz6EkGZR.js → json-DTBnkegk.js} +2 -2
  261. package/dist/json-DTBnkegk.js.map +1 -0
  262. package/dist/layout-BgfQpVOU.js +823 -0
  263. package/dist/layout-BgfQpVOU.js.map +1 -0
  264. package/dist/layout-D9LAqtZp.cjs +2 -0
  265. package/dist/layout-D9LAqtZp.cjs.map +1 -0
  266. package/dist/layout.cjs +1 -1
  267. package/dist/layout.js +7 -8
  268. package/dist/licensing-f5KYVz7D.js +28 -0
  269. package/dist/licensing-f5KYVz7D.js.map +1 -0
  270. package/dist/licensing-sRHTvX0B.cjs +2 -0
  271. package/dist/licensing-sRHTvX0B.cjs.map +1 -0
  272. package/dist/{locale-Bz2JXxDZ.cjs → locale-CJWWjFm-.cjs} +2 -2
  273. package/dist/{locale-Bz2JXxDZ.cjs.map → locale-CJWWjFm-.cjs.map} +1 -1
  274. package/dist/{locale-CS1-IY_I.js → locale-JX_gX03k.js} +1 -1
  275. package/dist/{locale-CS1-IY_I.js.map → locale-JX_gX03k.js.map} +1 -1
  276. package/dist/media-CM-uEUrV.js +402 -0
  277. package/dist/media-CM-uEUrV.js.map +1 -0
  278. package/dist/media-CnjA4Ruo.cjs +2 -0
  279. package/dist/media-CnjA4Ruo.cjs.map +1 -0
  280. package/dist/media.cjs +1 -1
  281. package/dist/media.js +3 -4
  282. package/dist/overlays-BpDz9ddf.cjs +2 -0
  283. package/dist/overlays-BpDz9ddf.cjs.map +1 -0
  284. package/dist/overlays-NwVsvmlb.js +568 -0
  285. package/dist/overlays-NwVsvmlb.js.map +1 -0
  286. package/dist/overlays.cjs +1 -1
  287. package/dist/overlays.js +4 -6
  288. package/dist/{php-jOdR0XS8.cjs → php-ClxZCTCr.cjs} +1 -1
  289. package/dist/php-ClxZCTCr.cjs.map +1 -0
  290. package/dist/{php-5Erp5xxI.js → php-DwgDg57J.js} +2 -2
  291. package/dist/php-DwgDg57J.js.map +1 -0
  292. package/dist/primitives.cjs +1 -1
  293. package/dist/primitives.js +1 -1
  294. package/dist/style-runtime.cjs +1 -1
  295. package/dist/style-runtime.js +1 -1
  296. package/dist/styles.css +1 -1
  297. package/dist/{theme-DsTDooyX.cjs → theme-yQQAPTkp.cjs} +2 -2
  298. package/dist/{theme-DsTDooyX.cjs.map → theme-yQQAPTkp.cjs.map} +1 -1
  299. package/dist/theme.cjs +1 -1
  300. package/dist/{typescript-C65sNL5w.cjs → typescript-C8NJZXwD.cjs} +1 -1
  301. package/dist/typescript-C8NJZXwD.cjs.map +1 -0
  302. package/dist/{typescript-wdQKWfxO.js → typescript-MSi2XC0t.js} +2 -2
  303. package/dist/typescript-MSi2XC0t.js.map +1 -0
  304. package/dist/typography-BHhyTO1V.js +42 -0
  305. package/dist/typography-BHhyTO1V.js.map +1 -0
  306. package/dist/typography-Qb1U4eiY.cjs +2 -0
  307. package/dist/typography-Qb1U4eiY.cjs.map +1 -0
  308. package/dist/typography.cjs +1 -1
  309. package/dist/typography.js +3 -4
  310. package/dist/{useGhostText-Dg4P606B.cjs → useGhostText-BFaUUKid.cjs} +2 -2
  311. package/dist/{useGhostText-Dg4P606B.cjs.map → useGhostText-BFaUUKid.cjs.map} +1 -1
  312. package/dist/{useInteractionEffect-Bo8285cg.cjs → useInteractionEffect-BH2dgQla.cjs} +2 -2
  313. package/dist/{useInteractionEffect-Bo8285cg.cjs.map → useInteractionEffect-BH2dgQla.cjs.map} +1 -1
  314. package/dist/{useKeyboardNav-CyeQtqF8.cjs → useKeyboardNav-CtGPfQX7.cjs} +2 -2
  315. package/dist/{useKeyboardNav-CyeQtqF8.cjs.map → useKeyboardNav-CtGPfQX7.cjs.map} +1 -1
  316. package/dist/utils/licensing.d.ts +1 -82
  317. package/dist/utils.cjs +1 -1
  318. package/dist/utils.js +1 -1
  319. package/dist/{xml-a3b-XevT.js → xml-CnKYdLjT.js} +2 -2
  320. package/dist/xml-CnKYdLjT.js.map +1 -0
  321. package/dist/{xml-B2okahIr.cjs → xml-jypnnWFn.cjs} +1 -1
  322. package/dist/xml-jypnnWFn.cjs.map +1 -0
  323. package/package.json +6 -29
  324. package/dist/MAvatar-D_dVAPaR.js +0 -57
  325. package/dist/MAvatar-D_dVAPaR.js.map +0 -1
  326. package/dist/MAvatar-DzZPRbot.cjs +0 -2
  327. package/dist/MAvatar-DzZPRbot.cjs.map +0 -1
  328. package/dist/MAvatarStack-CrhkO_SO.js +0 -330
  329. package/dist/MAvatarStack-CrhkO_SO.js.map +0 -1
  330. package/dist/MAvatarStack-DN79aJo1.cjs +0 -2
  331. package/dist/MAvatarStack-DN79aJo1.cjs.map +0 -1
  332. package/dist/MCookieBootstrap-BUqtJO3m.cjs +0 -2
  333. package/dist/MCookieBootstrap-BUqtJO3m.cjs.map +0 -1
  334. package/dist/MCookieBootstrap-Btt49Iuq.js +0 -436
  335. package/dist/MCookieBootstrap-Btt49Iuq.js.map +0 -1
  336. package/dist/MDataTable-7nJuwzJR.cjs +0 -2
  337. package/dist/MDataTable-7nJuwzJR.cjs.map +0 -1
  338. package/dist/MDataTable-CQt_pINO.js +0 -297
  339. package/dist/MDataTable-CQt_pINO.js.map +0 -1
  340. package/dist/MDrawer-B83--EVv.js +0 -122
  341. package/dist/MDrawer-B83--EVv.js.map +0 -1
  342. package/dist/MDrawer-D6cy9K7J.cjs +0 -2
  343. package/dist/MDrawer-D6cy9K7J.cjs.map +0 -1
  344. package/dist/MGrid-B-fP4GME.cjs +0 -2
  345. package/dist/MGrid-B-fP4GME.cjs.map +0 -1
  346. package/dist/MGrid-DVluuula.js +0 -182
  347. package/dist/MGrid-DVluuula.js.map +0 -1
  348. package/dist/MInputExpDate-CeCmw6fj.js.map +0 -1
  349. package/dist/MInputExpDate-DZ8JtSjs.cjs +0 -2
  350. package/dist/MInputExpDate-DZ8JtSjs.cjs.map +0 -1
  351. package/dist/MModal-DiTjBO8B.js +0 -69
  352. package/dist/MModal-DiTjBO8B.js.map +0 -1
  353. package/dist/MModal-eJDG6riB.cjs +0 -2
  354. package/dist/MModal-eJDG6riB.cjs.map +0 -1
  355. package/dist/MPopover-Cqz5TsHg.js.map +0 -1
  356. package/dist/MPopover-CxxaY9kr.cjs +0 -2
  357. package/dist/MPopover-CxxaY9kr.cjs.map +0 -1
  358. package/dist/MQrCode-HO2YIC7e.cjs +0 -2
  359. package/dist/MQrCode-HO2YIC7e.cjs.map +0 -1
  360. package/dist/MQrCode-Kb997gaE.js +0 -465
  361. package/dist/MQrCode-Kb997gaE.js.map +0 -1
  362. package/dist/MSkeleton-CVofhuDp.js +0 -136
  363. package/dist/MSkeleton-CVofhuDp.js.map +0 -1
  364. package/dist/MSkeleton-CuYA8eN3.cjs +0 -2
  365. package/dist/MSkeleton-CuYA8eN3.cjs.map +0 -1
  366. package/dist/MStack-C4Eocfb5.js +0 -70
  367. package/dist/MStack-C4Eocfb5.js.map +0 -1
  368. package/dist/MStack-w8XcuIJK.cjs +0 -2
  369. package/dist/MStack-w8XcuIJK.cjs.map +0 -1
  370. package/dist/MSubText-C-N15d4Z.js +0 -17
  371. package/dist/MSubText-C-N15d4Z.js.map +0 -1
  372. package/dist/MSubText-CIMKPb8o.cjs +0 -2
  373. package/dist/MSubText-CIMKPb8o.cjs.map +0 -1
  374. package/dist/MSurface-KvAS2hkl.cjs +0 -2
  375. package/dist/MSurface-KvAS2hkl.cjs.map +0 -1
  376. package/dist/MSurface-odrvQXkb.js.map +0 -1
  377. package/dist/MTabs-BQZ--mMq.js +0 -89
  378. package/dist/MTabs-BQZ--mMq.js.map +0 -1
  379. package/dist/MTabs-DeUn6bIp.cjs +0 -2
  380. package/dist/MTabs-DeUn6bIp.cjs.map +0 -1
  381. package/dist/MTimeAgo-DI3DF7bD.cjs +0 -2
  382. package/dist/MTimeAgo-DI3DF7bD.cjs.map +0 -1
  383. package/dist/MTimeAgo-Db8gOade.js +0 -51
  384. package/dist/MTimeAgo-Db8gOade.js.map +0 -1
  385. package/dist/MToggle-B6emKoKq.js +0 -48
  386. package/dist/MToggle-B6emKoKq.js.map +0 -1
  387. package/dist/MToggle-BVJm5Bdk.cjs +0 -2
  388. package/dist/MToggle-BVJm5Bdk.cjs.map +0 -1
  389. package/dist/MTreeView-AqH8XMPz.js +0 -516
  390. package/dist/MTreeView-AqH8XMPz.js.map +0 -1
  391. package/dist/MTreeView-Dp9qbqQh.cjs +0 -2
  392. package/dist/MTreeView-Dp9qbqQh.cjs.map +0 -1
  393. package/dist/arduino-Bm509TuR.cjs.map +0 -1
  394. package/dist/arduino-C5s1z3P1.js.map +0 -1
  395. package/dist/bash-CyBbinAU.cjs.map +0 -1
  396. package/dist/bash-RIFbRcCe.js.map +0 -1
  397. package/dist/c-DAywn1DE.js.map +0 -1
  398. package/dist/c-DGOxo0dj.cjs.map +0 -1
  399. package/dist/cards-C50fpYud.js +0 -1539
  400. package/dist/cards-C50fpYud.js.map +0 -1
  401. package/dist/cards-Ci1FoV9C.cjs +0 -2
  402. package/dist/cards-Ci1FoV9C.cjs.map +0 -1
  403. package/dist/components/cards/MCardBusiness/MCardBusiness.d.ts +0 -2
  404. package/dist/components/cards/MCardBusiness/MCardBusiness.types.d.ts +0 -37
  405. package/dist/components/cards/MCardBusiness/index.d.ts +0 -4
  406. package/dist/components/cards/MCardFinance/MCardFinance.d.ts +0 -2
  407. package/dist/components/cards/MCardFinance/MCardFinance.types.d.ts +0 -17
  408. package/dist/components/cards/MCardFinance/index.d.ts +0 -4
  409. package/dist/components/data/MCalendarBoard/MCalendarBoard.d.ts +0 -8
  410. package/dist/components/data/MCalendarBoard/MCalendarBoard.types.d.ts +0 -186
  411. package/dist/components/data/MCalendarBoard/index.d.ts +0 -4
  412. package/dist/components/data/MChart/MAreaChart.d.ts +0 -2
  413. package/dist/components/data/MChart/MBarChart.d.ts +0 -2
  414. package/dist/components/data/MChart/MChart.d.ts +0 -2
  415. package/dist/components/data/MChart/MChart.types.d.ts +0 -95
  416. package/dist/components/data/MChart/MLineChart.d.ts +0 -2
  417. package/dist/components/data/MChart/MPieChart.d.ts +0 -2
  418. package/dist/components/data/MChart/charts/MAreaChart.d.ts +0 -27
  419. package/dist/components/data/MChart/charts/MBarChart.d.ts +0 -26
  420. package/dist/components/data/MChart/charts/MLineChart.d.ts +0 -26
  421. package/dist/components/data/MChart/charts/MPieChart.d.ts +0 -19
  422. package/dist/components/data/MChart/index.d.ts +0 -5
  423. package/dist/components/data/MChart/parts/ChartAxis.d.ts +0 -13
  424. package/dist/components/data/MChart/parts/ChartDefs.d.ts +0 -1
  425. package/dist/components/data/MChart/parts/ChartGrid.d.ts +0 -10
  426. package/dist/components/data/MChart/parts/ChartLegend.d.ts +0 -9
  427. package/dist/components/data/MChart/parts/ChartTooltip.d.ts +0 -7
  428. package/dist/components/data/MChart/utils/formats.d.ts +0 -3
  429. package/dist/components/data/MChart/utils/paths.d.ts +0 -10
  430. package/dist/components/data/MChart/utils/scales.d.ts +0 -7
  431. package/dist/components/data/MChat/MChat.d.ts +0 -2
  432. package/dist/components/data/MChat/MChat.types.d.ts +0 -77
  433. package/dist/components/data/MChat/MChatBody.d.ts +0 -2
  434. package/dist/components/data/MChat/MChatContext.d.ts +0 -6
  435. package/dist/components/data/MChat/MChatConversationItem.d.ts +0 -2
  436. package/dist/components/data/MChat/MChatConversationList.d.ts +0 -2
  437. package/dist/components/data/MChat/MChatHeader.d.ts +0 -2
  438. package/dist/components/data/MChat/MChatInput.d.ts +0 -2
  439. package/dist/components/data/MChat/MChatMessage.d.ts +0 -2
  440. package/dist/components/data/MChat/MChatTypingIndicator.d.ts +0 -2
  441. package/dist/components/data/MChat/emojis.d.ts +0 -2
  442. package/dist/components/data/MChat/index.d.ts +0 -9
  443. package/dist/components/data/MFileManager/MFileManager.d.ts +0 -2
  444. package/dist/components/data/MFileManager/MFileManager.types.d.ts +0 -70
  445. package/dist/components/data/MFileManager/index.d.ts +0 -4
  446. package/dist/components/data/MSparkline/MSparkline.d.ts +0 -2
  447. package/dist/components/data/MSparkline/MSparkline.types.d.ts +0 -15
  448. package/dist/components/data/MSparkline/index.d.ts +0 -2
  449. package/dist/components/data/MTimelineCalendar/DayStrip.d.ts +0 -11
  450. package/dist/components/data/MTimelineCalendar/EventPopover.d.ts +0 -18
  451. package/dist/components/data/MTimelineCalendar/MTimelineCalendar.d.ts +0 -2
  452. package/dist/components/data/MTimelineCalendar/MTimelineCalendar.helpers.d.ts +0 -55
  453. package/dist/components/data/MTimelineCalendar/MTimelineCalendar.types.d.ts +0 -89
  454. package/dist/components/data/MTimelineCalendar/index.d.ts +0 -2
  455. package/dist/components/display/MQrCode/MQrCode.d.ts +0 -2
  456. package/dist/components/display/MQrCode/MQrCode.types.d.ts +0 -11
  457. package/dist/components/display/MQrCode/index.d.ts +0 -4
  458. package/dist/components/feedback/MCookie/MCookieBanner/MCookieBanner.d.ts +0 -3
  459. package/dist/components/feedback/MCookie/MCookieBanner/MCookieBanner.types.d.ts +0 -27
  460. package/dist/components/feedback/MCookie/MCookieBanner/index.d.ts +0 -2
  461. package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.d.ts +0 -6
  462. package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script.d.ts +0 -4
  463. package/dist/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.types.d.ts +0 -90
  464. package/dist/components/feedback/MCookie/MCookieBootstrap/index.d.ts +0 -3
  465. package/dist/components/feedback/MCookie/MCookieConsent/MCookieConsent.d.ts +0 -2
  466. package/dist/components/feedback/MCookie/MCookieConsent/MCookieConsent.types.d.ts +0 -11
  467. package/dist/components/feedback/MCookie/MCookieConsent/index.d.ts +0 -2
  468. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.defaults.d.ts +0 -9
  469. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.inventory.d.ts +0 -6
  470. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.storage.d.ts +0 -11
  471. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsent.types.d.ts +0 -95
  472. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsentContext.d.ts +0 -4
  473. package/dist/components/feedback/MCookie/MCookieConsentProvider/MCookieConsentProvider.d.ts +0 -2
  474. package/dist/components/feedback/MCookie/MCookieConsentProvider/index.d.ts +0 -3
  475. package/dist/components/feedback/MCookie/MCookieDeclaration/MCookieDeclaration.d.ts +0 -2
  476. package/dist/components/feedback/MCookie/MCookieDeclaration/MCookieDeclaration.types.d.ts +0 -18
  477. package/dist/components/feedback/MCookie/MCookieDeclaration/index.d.ts +0 -2
  478. package/dist/components/feedback/MCookie/MCookiePreferences/MCookiePreferences.d.ts +0 -2
  479. package/dist/components/feedback/MCookie/MCookiePreferences/MCookiePreferences.types.d.ts +0 -25
  480. package/dist/components/feedback/MCookie/MCookiePreferences/index.d.ts +0 -2
  481. package/dist/components/feedback/MCookie/MCookieTrigger/MCookieTrigger.d.ts +0 -2
  482. package/dist/components/feedback/MCookie/MCookieTrigger/MCookieTrigger.types.d.ts +0 -7
  483. package/dist/components/feedback/MCookie/MCookieTrigger/index.d.ts +0 -2
  484. package/dist/components/feedback/MCookie/index.d.ts +0 -16
  485. package/dist/components/layout/MTopbar/MTopbar.d.ts +0 -2
  486. package/dist/components/layout/MTopbar/MTopbar.types.d.ts +0 -37
  487. package/dist/components/layout/MTopbar/index.d.ts +0 -2
  488. package/dist/components/media/MAvatarStack/MAvatarStack.d.ts +0 -2
  489. package/dist/components/media/MAvatarStack/MAvatarStack.types.d.ts +0 -27
  490. package/dist/components/media/MAvatarStack/index.d.ts +0 -2
  491. package/dist/components/media/MMasonry/MMasonry.d.ts +0 -2
  492. package/dist/components/media/MMasonry/MMasonry.types.d.ts +0 -7
  493. package/dist/components/media/MMasonry/index.d.ts +0 -2
  494. package/dist/components/media/MMasonryItem/MMasonryItem.d.ts +0 -2
  495. package/dist/components/media/MMasonryItem/MMasonryItem.types.d.ts +0 -14
  496. package/dist/components/media/MMasonryItem/index.d.ts +0 -2
  497. package/dist/components/media/MShowcaseCarousel/MShowcaseCarousel.d.ts +0 -2
  498. package/dist/components/media/MShowcaseCarousel/MShowcaseCarousel.types.d.ts +0 -19
  499. package/dist/components/media/MShowcaseCarousel/index.d.ts +0 -2
  500. package/dist/components/media/MShowcaseCarouselItem/MShowcaseCarouselItem.d.ts +0 -2
  501. package/dist/components/media/MShowcaseCarouselItem/MShowcaseCarouselItem.types.d.ts +0 -18
  502. package/dist/components/media/MShowcaseCarouselItem/index.d.ts +0 -2
  503. package/dist/controls-CYQxPd4U.cjs +0 -2
  504. package/dist/controls-CYQxPd4U.cjs.map +0 -1
  505. package/dist/controls-CcbEqqWo.js.map +0 -1
  506. package/dist/cookie-consent-bootstrap.cjs +0 -2
  507. package/dist/cookie-consent-bootstrap.cjs.map +0 -1
  508. package/dist/cookie-consent-bootstrap.d.ts +0 -1
  509. package/dist/cookie-consent-bootstrap.js +0 -106
  510. package/dist/cookie-consent-bootstrap.js.map +0 -1
  511. package/dist/core-BUYr52VU.js.map +0 -1
  512. package/dist/core-DAox0BHy.cjs.map +0 -1
  513. package/dist/cpp-D-FtdQo9.cjs.map +0 -1
  514. package/dist/cpp-Y9cHXDal.js.map +0 -1
  515. package/dist/css-C__ffGj6.js.map +0 -1
  516. package/dist/css-DCYZ-Rs6.cjs.map +0 -1
  517. package/dist/data-DtShJEic.cjs +0 -2
  518. package/dist/data-DtShJEic.cjs.map +0 -1
  519. package/dist/data-RXuvb9VI.js +0 -3454
  520. package/dist/data-RXuvb9VI.js.map +0 -1
  521. package/dist/display-96-TEGmZ.cjs +0 -3
  522. package/dist/display-96-TEGmZ.cjs.map +0 -1
  523. package/dist/display-C7YRf4Ze.js.map +0 -1
  524. package/dist/dropdowns-Ce3Pb2JM.cjs +0 -2
  525. package/dist/dropdowns-Ce3Pb2JM.cjs.map +0 -1
  526. package/dist/dropdowns-DfXhVlWQ.js +0 -1712
  527. package/dist/dropdowns-DfXhVlWQ.js.map +0 -1
  528. package/dist/feedback-DGT28-Zx.js +0 -1058
  529. package/dist/feedback-DGT28-Zx.js.map +0 -1
  530. package/dist/feedback-Dr7G3K_R.cjs +0 -2
  531. package/dist/feedback-Dr7G3K_R.cjs.map +0 -1
  532. package/dist/frameworkTexts-BLJcGUXz.cjs +0 -2
  533. package/dist/frameworkTexts-BLJcGUXz.cjs.map +0 -1
  534. package/dist/frameworkTexts-BTFyhWFD.js +0 -117
  535. package/dist/frameworkTexts-BTFyhWFD.js.map +0 -1
  536. package/dist/icons/MIconV2.d.ts +0 -7
  537. package/dist/icons/MIconV2Glyph.d.ts +0 -11
  538. package/dist/icons/MIconV2Scenes.d.ts +0 -41
  539. package/dist/icons/glyphs/MCalendarIconV2.d.ts +0 -2
  540. package/dist/icons/glyphs/MFlagIconsV2.d.ts +0 -19
  541. package/dist/icons/glyphs/MNavigationIconsV2.d.ts +0 -14
  542. package/dist/icons/glyphs/MSettingsIconV2.d.ts +0 -2
  543. package/dist/icons-CfpYxnfg.js.map +0 -1
  544. package/dist/icons-qCoE70hn.cjs +0 -2
  545. package/dist/icons-qCoE70hn.cjs.map +0 -1
  546. package/dist/index.cjs.map +0 -1
  547. package/dist/index.js.map +0 -1
  548. package/dist/javascript-ClV78Svx.js.map +0 -1
  549. package/dist/javascript-_Sr9cnsG.cjs.map +0 -1
  550. package/dist/json-BFetU4Pi.cjs.map +0 -1
  551. package/dist/json-Dz6EkGZR.js.map +0 -1
  552. package/dist/layout-dUrQeGc2.cjs +0 -2
  553. package/dist/layout-dUrQeGc2.cjs.map +0 -1
  554. package/dist/layout-tIq6BGQK.js +0 -711
  555. package/dist/layout-tIq6BGQK.js.map +0 -1
  556. package/dist/licensing-9sZ43Cif.cjs +0 -2
  557. package/dist/licensing-9sZ43Cif.cjs.map +0 -1
  558. package/dist/licensing-Bq78CLC_.js +0 -109
  559. package/dist/licensing-Bq78CLC_.js.map +0 -1
  560. package/dist/media-BySr5LGc.cjs +0 -2
  561. package/dist/media-BySr5LGc.cjs.map +0 -1
  562. package/dist/media-IQ4iYTs-.js +0 -391
  563. package/dist/media-IQ4iYTs-.js.map +0 -1
  564. package/dist/overlays-BabXGLEM.js +0 -392
  565. package/dist/overlays-BabXGLEM.js.map +0 -1
  566. package/dist/overlays-CTR3n21O.cjs +0 -2
  567. package/dist/overlays-CTR3n21O.cjs.map +0 -1
  568. package/dist/php-5Erp5xxI.js.map +0 -1
  569. package/dist/php-jOdR0XS8.cjs.map +0 -1
  570. package/dist/typescript-C65sNL5w.cjs.map +0 -1
  571. package/dist/typescript-wdQKWfxO.js.map +0 -1
  572. package/dist/typography-CAW17MDj.js +0 -31
  573. package/dist/typography-CAW17MDj.js.map +0 -1
  574. package/dist/typography-sbLuXqFn.cjs +0 -2
  575. package/dist/typography-sbLuXqFn.cjs.map +0 -1
  576. package/dist/utils/commandPaletteFromNavGroups.d.ts +0 -74
  577. package/dist/xml-B2okahIr.cjs.map +0 -1
  578. package/dist/xml-a3b-XevT.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"cards-Ci1FoV9C.cjs","names":[],"sources":["../src/components/cards/shared/MCardColor.utils.tsx","../src/components/cards/MCardActionArea/MCardActionArea.tsx","../src/components/cards/MCardPayment/MCardPayment.tsx","../src/components/cards/MCardPaymentMethod/MCardPaymentMethod.tsx","../src/utils/socialPlatforms.tsx","../src/components/cards/MCardBusiness/MCardBusiness.tsx","../src/components/cards/ServiceCardsShared/ServiceCardsShared.tsx","../src/components/cards/MCardOffer/MCardOffer.tsx","../src/components/cards/MCardCourse/MCardCourse.tsx","../src/components/cards/MCardTile/MCardTile.tsx","../src/components/cards/MCardProduct/MCardProduct.tsx","../src/components/cards/MCardEvent/MCardEvent.tsx","../src/components/cards/MCardWidget/MCardWidget.tsx","../src/components/cards/MStatCard/MStatCard.tsx","../src/components/cards/MCardGrid/MCardGrid.tsx","../src/components/cards/MCardFinance/MCardFinance.tsx","../src/components/cards/MCardDaySchedule/MCardDaySchedule.tsx","../src/components/cards/MCardDocumentTree/MCardDocumentTree.tsx"],"sourcesContent":["import {Children, cloneElement, isValidElement} from 'react'\nimport type {ReactElement, ReactNode} from 'react'\nimport type {MColor} from '../../../theme'\nimport {MButton} from '../../controls'\n\nfunction getElementTypeName(type: unknown) {\n if (typeof type === 'string') {\n return type\n }\n\n if (typeof type === 'function') {\n const component = type as {displayName?: string; name?: string}\n\n return component.displayName ?? component.name ?? ''\n }\n\n if (typeof type === 'object' && type !== null) {\n const maybeType = type as {\n displayName?: string\n render?: {displayName?: string; name?: string}\n }\n\n return maybeType.displayName ?? maybeType.render?.displayName ?? maybeType.render?.name ?? ''\n }\n\n return ''\n}\n\nfunction shouldInheritColor(element: ReactElement) {\n const props = element.props as {color?: unknown}\n\n if (props.color !== undefined) {\n return false\n }\n\n if (element.type === MButton) {\n return true\n }\n\n const typeName = getElementTypeName(element.type)\n\n return typeName.startsWith('M') && typeName.endsWith('Icon')\n}\n\nexport function tintCardChildren(children: ReactNode, color?: MColor): ReactNode {\n if (!color) {\n return children\n }\n\n return Children.map(children, (child) => {\n if (!isValidElement(child)) {\n return child\n }\n\n const element = child as ReactElement<{children?: ReactNode}>\n const props = element.props\n const tintedChildren = props.children ? tintCardChildren(props.children, color) : props.children\n const nextProps: Record<string, unknown> = {}\n\n if (tintedChildren !== props.children) {\n nextProps.children = tintedChildren\n }\n\n if (shouldInheritColor(element)) {\n nextProps.color = color\n }\n\n if (!Object.keys(nextProps).length) {\n return element\n }\n\n return cloneElement(element, nextProps)\n })\n}\n","import type {PointerEvent} from 'react'\nimport type {MCardActionAreaProps} from './MCardActionArea.types'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport {resolveMCardAction, tintCardChildren} from '../shared'\nimport './MCardActionArea.css'\n\nexport function MCardActionArea({\n component,\n to,\n href,\n target,\n rel,\n color,\n interactive = true,\n clickEffect,\n rippleColor,\n className,\n children,\n onPointerDown,\n type,\n ...rest\n}: MCardActionAreaProps) {\n const {\n component: Component,\n href: resolvedHref,\n to: resolvedTo,\n isInteractive,\n } = resolveMCardAction({\n component,\n href,\n to,\n interactive,\n hasClickHandler: Boolean(rest.onClick),\n hasPointerHandler: Boolean(onPointerDown),\n fallbackComponent: 'button',\n })\n const {effectClassName, effectLayer, handlePointerDown} = useInteractionEffect<HTMLElement>({\n effect: clickEffect ?? (isInteractive ? 'ripple' : 'none'),\n disabled: !isInteractive,\n color: rippleColor,\n })\n\n return (\n <Component\n href={Component === 'a' || component ? resolvedHref : undefined}\n to={resolvedTo}\n target={target}\n rel={rel}\n type={Component === 'button' ? (type ?? 'button') : undefined}\n className={cn(\n 'card-action-area',\n color && `color-${color}`,\n isInteractive && 'interactive',\n effectClassName,\n className\n )}\n onPointerDown={(event: PointerEvent<HTMLElement>) => {\n handlePointerDown(event)\n onPointerDown?.(event as PointerEvent<HTMLButtonElement>)\n }}\n {...rest}\n >\n {effectLayer}\n <span className=\"card-action-area-content\">{tintCardChildren(children, color)}</span>\n </Component>\n )\n}\n","import type {PointerEvent} from 'react'\nimport type {MCardPaymentProps} from './MCardPayment.types'\nimport {cn} from '../../../utils/cn'\nimport {creditCardBrands, detectCardBrand} from '../../../utils/creditCards'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport {resolveMCardAction} from '../shared'\nimport './MCardPayment.css'\n\nfunction maskNumber(raw: string): string {\n const digits = raw.replace(/\\D/g, '')\n if (digits.length <= 4) return digits\n const last4 = digits.slice(-4)\n return `\\u2022\\u2022\\u2022\\u2022 \\u2022\\u2022\\u2022\\u2022 \\u2022\\u2022\\u2022\\u2022 ${last4}`\n}\n\n// Display-only payment card with balance, masked number, holder name and brand badge.\nexport function MCardPayment({\n component,\n to,\n href,\n target,\n rel,\n holder,\n number,\n expiry,\n brand,\n brandIcon,\n balance,\n balanceLabel = 'Current balance',\n color,\n interactive = false,\n clickEffect,\n rippleColor,\n className,\n onPointerDown,\n ...rest\n}: MCardPaymentProps) {\n const detectedDetails = detectCardBrand(number)\n const detected = brand ?? detectedDetails.brand\n const brandDetails = creditCardBrands.find((rule) => rule.brand === detected) ?? detectedDetails\n const masked = maskNumber(number)\n const brandLabel = brandDetails.iconLabel\n const {\n component: Component,\n href: resolvedHref,\n to: resolvedTo,\n isInteractive,\n } = resolveMCardAction({\n component,\n href,\n to,\n interactive,\n hasClickHandler: Boolean(rest.onClick),\n hasPointerHandler: Boolean(onPointerDown),\n })\n const {effectClassName, effectLayer, handlePointerDown} = useInteractionEffect<HTMLDivElement>({\n effect: clickEffect ?? (isInteractive ? 'ripple' : 'none'),\n disabled: !isInteractive,\n color: rippleColor,\n })\n\n return (\n <Component\n href={Component === 'a' || component ? resolvedHref : undefined}\n to={resolvedTo}\n target={target}\n rel={rel}\n className={cn(\n 'card-payment',\n color || 'primary',\n isInteractive && 'interactive',\n effectClassName,\n className\n )}\n onPointerDown={(event: PointerEvent<HTMLDivElement>) => {\n handlePointerDown(event)\n onPointerDown?.(event)\n }}\n {...rest}\n >\n {effectLayer}\n {balance !== undefined && (\n <div>\n <p className=\"cp-balance-label\">{balanceLabel}</p>\n <p className=\"cp-balance\">{balance}</p>\n </div>\n )}\n\n <div className=\"cp-row\">\n <span className={cn('cp-brand', !brandIcon && detected)}>{brandIcon ?? brandLabel}</span>\n <span className=\"cp-number\">{masked}</span>\n </div>\n\n <div className=\"cp-details\">\n <div>\n <p className=\"cp-field-label\">MCard holder</p>\n <p className=\"cp-field-value\">{holder}</p>\n </div>\n <div>\n <p className=\"cp-field-label\">Expiration date</p>\n <p className=\"cp-field-value\">{expiry}</p>\n </div>\n </div>\n </Component>\n )\n}\n","import type {MCardPaymentMethodProps} from './MCardPaymentMethod.types'\nimport {cn} from '../../../utils/cn'\nimport {creditCardBrands} from '../../../utils/creditCards'\nimport {MArrowRightIcon} from '../../../icons'\nimport {MBadge} from '../../feedback'\nimport {MInline} from '../../layout'\nimport {MLink, MText} from '../../typography'\nimport {MInputExpDate} from '../../inputs/MInputExpDate'\nimport {MInputCVC} from '../../inputs/MInputCVC'\nimport './MCardPaymentMethod.css'\n\nfunction resolveBrandLabel(brand: NonNullable<MCardPaymentMethodProps['brand']>) {\n return creditCardBrands.find((item) => item.brand === brand)?.iconLabel ?? 'CARD'\n}\n\nexport function MCardPaymentMethod({\n title = 'Your payment methods',\n actionLabel = 'Change',\n actionHref = '#',\n onAction,\n brand = 'visa',\n brandIcon,\n last4,\n badgeLabel,\n summary,\n helperText = 'All fields are required, unless stated otherwise.',\n expiryLabel = 'Expiration date',\n cvcLabel = 'Security code',\n expiryProps,\n cvcProps,\n color,\n className,\n ...rest\n}: MCardPaymentMethodProps) {\n const expirySummary = expiryProps?.value ?? expiryProps?.defaultValue\n const resolvedBadgeLabel = badgeLabel === undefined ? 'Default' : badgeLabel\n const derivedSummary = expirySummary\n ? `Credit card - Expiration date ${String(expirySummary).replace('/', '.')}`\n : 'Credit card'\n const resolvedSummary = summary === undefined ? derivedSummary : summary\n const brandLabel = resolveBrandLabel(brand)\n const resolvedExpiryProps = {\n clearable: true,\n ...expiryProps,\n }\n\n return (\n <div className={cn('card-payment-method', color || 'primary', className)} {...rest}>\n <div className={'cpm-header'}>\n <h3 className={'cpm-title'}>{title}</h3>\n <MLink\n href={actionHref}\n tone={'accent'}\n underline={'none'}\n className={'cpm-action'}\n onClick={(event) => {\n if (onAction) {\n event.preventDefault()\n onAction()\n }\n }}\n >\n {actionLabel}\n <MArrowRightIcon />\n </MLink>\n </div>\n\n <div className={'cpm-surface'}>\n <div className={'cpm-method'}>\n <MInline align={'center'} className={'cpm-method-row'}>\n <span className={cn('cpm-brand', !brandIcon && brand)}>{brandIcon ?? brandLabel}</span>\n <span className={'cpm-last4'}>{`\\u2022\\u2022\\u2022\\u2022 ${last4}`}</span>\n {resolvedBadgeLabel && <MBadge color={'info'}>{resolvedBadgeLabel}</MBadge>}\n </MInline>\n {resolvedSummary && (\n <MText tone={'muted'} className={'cpm-summary'}>\n {resolvedSummary}\n </MText>\n )}\n </div>\n\n {helperText && (\n <MText tone={'muted'} size={'sm'} className={'cpm-helper'}>\n {helperText}\n </MText>\n )}\n\n <div className={'cpm-fields'}>\n <MInputExpDate label={expiryLabel} placeholder={'MM/YYYY'} fullWidth {...resolvedExpiryProps} />\n <MInputCVC label={cvcLabel} placeholder={'123'} fullWidth {...cvcProps} />\n </div>\n </div>\n </div>\n )\n}\n","import type {ComponentType} from 'react'\nimport type {MIconProps} from '../icons'\nimport {\n MAppleColorIcon,\n MAppleIcon,\n MDiscordColorIcon,\n MDiscordIcon,\n MFacebookColorIcon,\n MFacebookIcon,\n MFigmaColorIcon,\n MFigmaIcon,\n MGitHubColorIcon,\n MGitHubIcon,\n MGoogleColorIcon,\n MGoogleIcon,\n MInstagramColorIcon,\n MInstagramIcon,\n MLinkedInColorIcon,\n MLinkedInIcon,\n MPinterestColorIcon,\n MPinterestIcon,\n MSlackColorIcon,\n MSlackIcon,\n MSpotifyColorIcon,\n MSpotifyIcon,\n MTumblrColorIcon,\n MTumblrIcon,\n MVimeoColorIcon,\n MVimeoIcon,\n MVkColorIcon,\n MVkIcon,\n MXColorIcon,\n MXIcon,\n MYouTubeColorIcon,\n MYouTubeIcon,\n} from '../icons'\n\nexport type MSocialPlatform =\n | 'apple'\n | 'discord'\n | 'facebook'\n | 'figma'\n | 'github'\n | 'google'\n | 'instagram'\n | 'linkedin'\n | 'pinterest'\n | 'slack'\n | 'spotify'\n | 'tumblr'\n | 'vimeo'\n | 'vk'\n | 'twitter'\n | 'x'\n | 'youtube'\n | (string & {})\n\ntype SocialEntry = {\n label: string\n icon: ComponentType<MIconProps>\n colorIcon: ComponentType<MIconProps>\n rgb: string\n}\n\nconst socialMap: Record<string, SocialEntry> = {\n apple: {label: 'Apple', icon: MAppleIcon, colorIcon: MAppleColorIcon, rgb: '24, 24, 27'},\n discord: {label: 'Discord', icon: MDiscordIcon, colorIcon: MDiscordColorIcon, rgb: '88, 101, 242'},\n facebook: {label: 'Facebook', icon: MFacebookIcon, colorIcon: MFacebookColorIcon, rgb: '24, 119, 242'},\n figma: {label: 'Figma', icon: MFigmaIcon, colorIcon: MFigmaColorIcon, rgb: '162, 89, 255'},\n github: {label: 'GitHub', icon: MGitHubIcon, colorIcon: MGitHubColorIcon, rgb: '24, 23, 23'},\n google: {label: 'Google', icon: MGoogleIcon, colorIcon: MGoogleColorIcon, rgb: '66, 133, 244'},\n instagram: {label: 'Instagram', icon: MInstagramIcon, colorIcon: MInstagramColorIcon, rgb: '225, 48, 108'},\n linkedin: {label: 'LinkedIn', icon: MLinkedInIcon, colorIcon: MLinkedInColorIcon, rgb: '10, 102, 194'},\n pinterest: {label: 'Pinterest', icon: MPinterestIcon, colorIcon: MPinterestColorIcon, rgb: '230, 0, 35'},\n slack: {label: 'Slack', icon: MSlackIcon, colorIcon: MSlackColorIcon, rgb: '74, 21, 75'},\n spotify: {label: 'Spotify', icon: MSpotifyIcon, colorIcon: MSpotifyColorIcon, rgb: '30, 215, 96'},\n tumblr: {label: 'Tumblr', icon: MTumblrIcon, colorIcon: MTumblrColorIcon, rgb: '0, 25, 53'},\n vimeo: {label: 'Vimeo', icon: MVimeoIcon, colorIcon: MVimeoColorIcon, rgb: '26, 183, 234'},\n vk: {label: 'VK', icon: MVkIcon, colorIcon: MVkColorIcon, rgb: '0, 119, 255'},\n x: {label: 'X', icon: MXIcon, colorIcon: MXColorIcon, rgb: '17, 17, 17'},\n youtube: {label: 'YouTube', icon: MYouTubeIcon, colorIcon: MYouTubeColorIcon, rgb: '255, 0, 0'},\n}\n\nexport function normalizeSocialPlatform(platform: string) {\n const normalized = platform\n .trim()\n .toLowerCase()\n .replace(/[\\s._-]+/g, '')\n\n if (normalized === 'twitter') {\n return 'x'\n }\n\n if (normalized === 'vkontakte') {\n return 'vk'\n }\n\n return normalized\n}\n\nexport function getSocialLabel(platform: MSocialPlatform) {\n const normalized = normalizeSocialPlatform(platform)\n return socialMap[normalized]?.label ?? platform\n}\n\nexport function getSocialIconComponent(platform: MSocialPlatform, brand = false) {\n const normalized = normalizeSocialPlatform(platform)\n const entry = socialMap[normalized]\n\n if (!entry) {\n return null\n }\n\n return brand ? entry.colorIcon : entry.icon\n}\n\nexport function getSocialBrandRgb(platform: MSocialPlatform) {\n const normalized = normalizeSocialPlatform(platform)\n return socialMap[normalized]?.rgb ?? '37, 99, 235'\n}\n","import type {MCardBusinessProps} from './MCardBusiness.types'\nimport {cn} from '../../../utils/cn'\nimport {MQrCode} from '../../display'\nimport {MAvatar} from '../../media'\nimport {MGlobeIcon, MMailIcon, MPhoneIcon, MPinIcon} from '../../../icons'\nimport {getSocialIconComponent, getSocialLabel} from '../../../utils/socialPlatforms'\nimport './MCardBusiness.css'\n\n// Join available address fields into one readable line.\nfunction formatAddress(address: MCardBusinessProps['address']): string | null {\n if (!address) return null\n\n return [address.street, [address.zip, address.city].filter(Boolean).join(' '), address.country]\n .filter(Boolean)\n .join(', ')\n}\n\n// Render a compact business card for a person or a company profile.\nexport function MCardBusiness({\n variant = 'user',\n name,\n title,\n avatar,\n address,\n contact,\n socials,\n online,\n lastActive,\n qrCode,\n qrValue,\n qrStatus,\n qrStatusLabel,\n color = 'primary',\n className,\n ...rest\n}: MCardBusinessProps) {\n const addr = formatAddress(address)\n\n return (\n <div className={cn('card-business', variant, `color-${color}`, className)} {...rest}>\n <div className=\"cb-header\">\n <div className=\"cb-avatar-wrap\">\n <MAvatar\n src={avatar}\n alt={name}\n name={name}\n size={56}\n shape={variant === 'company' ? 'rounded' : 'circle'}\n color={color}\n badge={online !== undefined ? true : undefined}\n badgeColor={online === undefined ? undefined : online ? 'success' : 'error'}\n badgePulsing={Boolean(online)}\n className={cn('cb-avatar', variant)}\n />\n </div>\n\n <div className=\"cb-info\">\n <h3 className=\"cb-name\">{name}</h3>\n {title && <p className=\"cb-title\">{title}</p>}\n {lastActive && <p className=\"cb-last-active\">{lastActive}</p>}\n </div>\n\n {(qrValue || qrCode) && (\n <div className=\"cb-qr\">\n {qrValue ? (\n <MQrCode\n value={qrValue}\n size={56}\n padding={3}\n status={qrStatus}\n statusLabel={qrStatusLabel}\n className=\"cb-qr-code\"\n />\n ) : (\n <img src={qrCode} alt=\"QR\" className=\"cb-qr-img\" />\n )}\n </div>\n )}\n </div>\n\n {(contact || addr) && (\n <div className=\"cb-details\">\n {contact?.email && (\n <div className=\"cb-detail\">\n <span className=\"cb-detail-icon\">\n <MMailIcon />\n </span>\n <a href={`mailto:${contact.email}`} className=\"cb-detail-value\">\n {contact.email}\n </a>\n </div>\n )}\n {contact?.phone && (\n <div className=\"cb-detail\">\n <span className=\"cb-detail-icon\">\n <MPhoneIcon />\n </span>\n <a href={`tel:${contact.phone}`} className=\"cb-detail-value\">\n {contact.phone}\n </a>\n </div>\n )}\n {contact?.website && (\n <div className=\"cb-detail\">\n <span className=\"cb-detail-icon\">\n <MGlobeIcon />\n </span>\n <a\n href={contact.website}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"cb-detail-value\"\n >\n {contact.website.replace(/^https?:\\/\\//, '')}\n </a>\n </div>\n )}\n {addr && (\n <div className=\"cb-detail\">\n <span className=\"cb-detail-icon\">\n <MPinIcon />\n </span>\n <span className=\"cb-detail-value\">{addr}</span>\n </div>\n )}\n </div>\n )}\n\n {socials && socials.length > 0 && (\n <div className=\"cb-socials\">\n {socials.map((item) =>\n (() => {\n const Icon = getSocialIconComponent(item.platform, true)\n\n return (\n <a\n key={item.platform}\n href={item.url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"cb-social\"\n title={getSocialLabel(item.platform)}\n aria-label={getSocialLabel(item.platform)}\n >\n {item.icon ??\n (Icon ? <Icon /> : <span className=\"cb-social-text\">{item.platform}</span>)}\n </a>\n )\n })()\n )}\n </div>\n )}\n </div>\n )\n}\n","import {useEffect, useState} from 'react'\nimport type {SharedServiceCardProps} from './ServiceCardsShared.types'\nimport {cn} from '../../../utils/cn'\nimport {MClockIcon, MEllipsisVerticalIcon, MHeartFillIcon, MHeartIcon, MMinusIcon, MPlusIcon} from '../../../icons'\nimport {MButton} from '../../controls'\nimport {MBadge} from '../../feedback'\nimport {MAvatar} from '../../media'\nimport {MRating} from '../../display'\nimport {MDropdownItem, MDropdownMenu} from '../../overlays'\nimport './ServiceCardsShared.css'\n\nexport function SharedServiceCard({\n variant,\n title,\n description,\n price,\n currency = 'PLN',\n duration,\n available,\n image,\n gallery,\n galleryAutoPlay = false,\n rating,\n reviewCount,\n favorite,\n onFavorite,\n menuItems,\n onAddToCart,\n actionLabel,\n icon,\n color = 'primary',\n leader,\n participants,\n maxParticipants,\n quantity: controlledQty,\n onQuantityChange,\n date,\n location,\n status,\n className,\n ...rest\n}: SharedServiceCardProps) {\n const [galleryIdx, setGalleryIdx] = useState(0)\n const [isGalleryTransitioning, setIsGalleryTransitioning] = useState(false)\n const [internalQty, setInternalQty] = useState(1)\n\n const qty = controlledQty ?? internalQty\n const images = gallery && gallery.length > 0 ? gallery : image ? [image] : []\n\n useEffect(() => {\n if (galleryIdx >= images.length) {\n setGalleryIdx(0)\n }\n }, [galleryIdx, images.length])\n\n useEffect(() => {\n if (!isGalleryTransitioning) {\n return\n }\n\n const transitionId = window.setTimeout(() => {\n setIsGalleryTransitioning(false)\n }, 220)\n\n return () => window.clearTimeout(transitionId)\n }, [galleryIdx, isGalleryTransitioning])\n\n function changeGallery(nextIdx: number) {\n if (nextIdx === galleryIdx || nextIdx < 0 || nextIdx >= images.length) {\n return\n }\n\n if (images.length > 1) {\n setIsGalleryTransitioning(true)\n }\n\n setGalleryIdx(nextIdx)\n }\n\n useEffect(() => {\n if (!galleryAutoPlay || images.length <= 1) {\n return\n }\n\n const intervalId = window.setInterval(() => {\n setIsGalleryTransitioning(true)\n setGalleryIdx((current) => (current + 1) % images.length)\n }, 3500)\n\n return () => window.clearInterval(intervalId)\n }, [galleryAutoPlay, images.length])\n\n function changeQty(next: number) {\n const val = Math.max(1, next)\n if (onQuantityChange) onQuantityChange(val)\n else setInternalQty(val)\n }\n\n const availLabel =\n available === true\n ? 'Available'\n : available === false\n ? 'Unavailable'\n : typeof available === 'number'\n ? `${available} spots`\n : null\n\n const parsedDate = date ? (date instanceof Date ? date : new Date(date)) : null\n const dateDay = parsedDate ? parsedDate.getDate() : null\n const dateMonth = parsedDate ? parsedDate.toLocaleString('en', {month: 'short'}).toUpperCase() : null\n\n return (\n <div className={cn('card-service', variant, `color-${color}`, className)} {...rest}>\n {images.length > 0 && (\n <div className=\"cs-gallery\">\n <img\n src={images[galleryIdx]}\n alt={title}\n className={cn('cs-image', isGalleryTransitioning && 'is-transitioning')}\n />\n {images.length > 1 && (\n <div className=\"cs-gallery-dots\">\n {images.map((_, i) => (\n <button\n key={i}\n type=\"button\"\n className={cn('cs-dot', i === galleryIdx && 'active')}\n onClick={() => changeGallery(i)}\n aria-label={`Image ${i + 1}`}\n />\n ))}\n </div>\n )}\n\n {(onFavorite || (menuItems && menuItems.length > 0)) && (\n <div className=\"cs-gallery-actions\">\n {menuItems && menuItems.length > 0 && (\n <MDropdownMenu\n className=\"cs-menu-wrap\"\n trigger={\n <MButton\n variant=\"ghost\"\n iconOnly\n shape=\"circle\"\n aria-label=\"More options\"\n className=\"cs-overlay-btn\"\n >\n <MEllipsisVerticalIcon />\n </MButton>\n }\n placement=\"bottom-end\"\n >\n {menuItems.map((item, i) => (\n <MDropdownItem\n key={i}\n icon={item.icon}\n color={item.danger ? 'error' : undefined}\n label={item.label}\n onClick={item.onClick}\n />\n ))}\n </MDropdownMenu>\n )}\n {onFavorite && (\n <MButton\n variant=\"ghost\"\n iconOnly\n shape=\"circle\"\n onClick={onFavorite}\n aria-label={favorite ? 'Remove from favorites' : 'Add to favorites'}\n className={cn('cs-overlay-btn', favorite && 'cs-fav-active')}\n >\n {favorite ? <MHeartFillIcon /> : <MHeartIcon />}\n </MButton>\n )}\n </div>\n )}\n </div>\n )}\n\n <div className=\"cs-body\">\n {variant === 'event' && parsedDate && (\n <div className=\"cs-event-header\">\n <div className=\"cs-date-block\">\n <span className=\"cs-date-day\">{dateDay}</span>\n <span className=\"cs-date-month\">{dateMonth}</span>\n </div>\n <div className=\"cs-event-info\">\n <h3 className=\"cs-title\">{title}</h3>\n {description && <p className=\"cs-desc\">{description}</p>}\n </div>\n </div>\n )}\n\n {variant !== 'event' && (\n <>\n <div className=\"cs-top\">\n {icon && <span className=\"cs-icon\">{icon}</span>}\n <h3 className=\"cs-title\">{title}</h3>\n </div>\n {description && <p className=\"cs-desc\">{description}</p>}\n </>\n )}\n\n {variant === 'event' && !parsedDate && (\n <>\n <div className=\"cs-top\">\n {icon && <span className=\"cs-icon\">{icon}</span>}\n <h3 className=\"cs-title\">{title}</h3>\n </div>\n {description && <p className=\"cs-desc\">{description}</p>}\n </>\n )}\n\n {rating !== undefined && (\n <div className=\"cs-rating\">\n <MRating value={Math.round(rating)} size=\"sm\" color=\"warning\" readOnly className=\"cs-stars\" />\n <span className=\"cs-rating-value\">{rating.toFixed(1)}</span>\n {reviewCount !== undefined && <span className=\"cs-review-count\">({reviewCount})</span>}\n </div>\n )}\n\n {leader && (\n <div className=\"cs-leader\">\n <MAvatar src={leader.avatar} name={leader.name} size={28} color={color} />\n <span className=\"cs-leader-name\">{leader.name}</span>\n </div>\n )}\n\n {variant === 'course' && participants && (\n <div className=\"cs-participants\">\n <div className=\"cs-participants-avatars\">\n {participants.slice(0, 4).map((participant, index) => (\n <MAvatar\n key={`${participant.name}-${index}`}\n src={participant.avatar}\n name={participant.name}\n size={28}\n color={color}\n className=\"cs-participant-avatar\"\n />\n ))}\n </div>\n {maxParticipants && (\n <span className=\"cs-spots\">\n {participants.length}/{maxParticipants}\n </span>\n )}\n </div>\n )}\n\n <div className=\"cs-meta\">\n {variant === 'event' && location && (\n <MBadge size=\"xs\" color={color}>\n {location}\n </MBadge>\n )}\n {duration && (\n <MBadge size=\"xs\" color={color} icon={<MClockIcon />}>\n {duration}\n </MBadge>\n )}\n {variant === 'event' && status && (\n <MBadge size=\"xs\" color={status.toLowerCase() === 'sold out' ? 'error' : color}>\n {status}\n </MBadge>\n )}\n {availLabel && variant !== 'event' && (\n <MBadge size=\"xs\" color={available === false ? 'error' : color}>\n {availLabel}\n </MBadge>\n )}\n </div>\n </div>\n\n <div className=\"cs-footer\">\n {price !== undefined && (\n <span className=\"cs-price\">\n {typeof price === 'number' ? price.toFixed(2) : price}{' '}\n <span className=\"cs-currency\">{currency}</span>\n </span>\n )}\n\n <div className=\"cs-actions\">\n {variant === 'product' && onAddToCart && (\n <div className=\"cs-qty\">\n <MButton\n variant=\"ghost\"\n iconOnly\n size=\"sm\"\n onClick={() => changeQty(qty - 1)}\n aria-label=\"Decrease\"\n className=\"cs-qty-btn\"\n >\n <MMinusIcon />\n </MButton>\n <span className=\"cs-qty-value\">{qty}</span>\n <MButton\n variant=\"ghost\"\n iconOnly\n size=\"sm\"\n onClick={() => changeQty(qty + 1)}\n aria-label=\"Increase\"\n className=\"cs-qty-btn\"\n >\n <MPlusIcon />\n </MButton>\n </div>\n )}\n {onAddToCart && (\n <MButton\n variant=\"filled\"\n size=\"sm\"\n color={color}\n onClick={() => onAddToCart(qty)}\n disabled={available === false}\n className=\"cs-cart-btn\"\n >\n {actionLabel ?? (variant === 'event' ? 'Register' : 'Add to cart')}\n </MButton>\n )}\n </div>\n </div>\n </div>\n )\n}\n","import type {MCardOfferProps} from './MCardOffer.types'\nimport {SharedServiceCard} from '../ServiceCardsShared/ServiceCardsShared'\n\nexport function MCardOffer(props: MCardOfferProps) {\n const {onAction, actionLabel = 'Book now', ...rest} = props\n\n return (\n <SharedServiceCard\n variant=\"service\"\n onAddToCart={onAction ? () => onAction() : undefined}\n actionLabel={actionLabel}\n {...rest}\n />\n )\n}\n","import type {MCardCourseProps} from './MCardCourse.types'\nimport {SharedServiceCard} from '../ServiceCardsShared/ServiceCardsShared'\n\nexport function MCardCourse(props: MCardCourseProps) {\n const {onAction, actionLabel = 'Join course', ...rest} = props\n\n return (\n <SharedServiceCard\n variant=\"course\"\n onAddToCart={onAction ? () => onAction() : undefined}\n actionLabel={actionLabel}\n {...rest}\n />\n )\n}\n","import {useEffect, useRef} from 'react'\nimport type {MouseEvent} from 'react'\nimport type {MCardTileProps} from './MCardTile.types'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport {MEllipsisVerticalIcon, MHeartFillIcon, MHeartIcon} from '../../../icons'\nimport {MButton} from '../../controls'\nimport {MDropdownItem, MDropdownMenu} from '../../overlays'\nimport {resolveMCardAction} from '../shared'\nimport './MCardTile.css'\n\n// Tile card: whole surface acts as a link/button, media can fill the card with text overlay.\n// Media can be an image URL, a video URL, an MIllustration element, or a live camera stream.\nexport function MCardTile({\n component,\n title,\n description,\n icon,\n color = 'primary',\n to,\n href,\n target,\n rel,\n onClick,\n interactive = false,\n clickEffect,\n rippleColor,\n image,\n video,\n illustration,\n camera,\n mediaFill = false,\n overlayPosition = 'bottom',\n favorite,\n onFavorite,\n menuItems,\n className,\n ...rest\n}: MCardTileProps) {\n const videoRef = useRef<HTMLVideoElement>(null)\n\n useEffect(() => {\n if (!camera) {\n return\n }\n\n const node = videoRef.current\n if (!node || typeof navigator === 'undefined' || !navigator.mediaDevices?.getUserMedia) {\n return\n }\n\n let activeStream: MediaStream | null = null\n let cancelled = false\n const constraints: MediaStreamConstraints = camera === true ? {video: true} : camera\n\n navigator.mediaDevices\n .getUserMedia(constraints)\n .then((stream) => {\n if (cancelled) {\n stream.getTracks().forEach((track) => track.stop())\n return\n }\n activeStream = stream\n node.srcObject = stream\n void node.play().catch(() => undefined)\n })\n .catch(() => undefined)\n\n return () => {\n cancelled = true\n if (activeStream) {\n activeStream.getTracks().forEach((track) => track.stop())\n }\n node.srcObject = null\n }\n }, [camera])\n\n const hasMedia = Boolean(image || video || illustration || camera)\n const {\n component: OverlayComponent,\n href: resolvedHref,\n to: resolvedTo,\n isInteractive,\n isLink,\n } = resolveMCardAction({\n component,\n href,\n to,\n interactive,\n hasClickHandler: Boolean(onClick),\n fallbackComponent: 'button',\n })\n const fillMedia = mediaFill && hasMedia\n const {effectClassName, effectLayer, handlePointerDown} = useInteractionEffect<HTMLDivElement>({\n effect: clickEffect ?? (isInteractive ? 'ripple' : 'none'),\n disabled: !isInteractive,\n color: rippleColor,\n })\n\n function stopBubble(event: MouseEvent) {\n event.stopPropagation()\n }\n\n function handleOverlayClick(event: MouseEvent<HTMLElement>) {\n if (onClick) {\n event.preventDefault()\n onClick()\n }\n }\n\n function renderMedia() {\n if (!hasMedia) {\n return null\n }\n\n return (\n <div className={cn('tile-media', fillMedia && 'fill')}>\n {image && <img src={image} alt={title} className=\"tile-image\" />}\n {video && (\n <video src={video} className=\"tile-video\" autoPlay muted loop playsInline aria-label={title} />\n )}\n {camera && (\n <video ref={videoRef} className=\"tile-video\" autoPlay muted playsInline aria-label={title} />\n )}\n {illustration && <div className=\"tile-illustration\">{illustration}</div>}\n {fillMedia && <div className={cn('tile-scrim', `scrim-${overlayPosition}`)} />}\n </div>\n )\n }\n\n function renderBody() {\n return (\n <div className={cn('tile-body', fillMedia && 'overlay', fillMedia && `pos-${overlayPosition}`)}>\n <div className=\"tile-top\">\n {icon && <span className=\"tile-icon\">{icon}</span>}\n <h3 className=\"tile-title\">{title}</h3>\n </div>\n {description && <p className=\"tile-desc\">{description}</p>}\n </div>\n )\n }\n\n const hasActions = onFavorite || (menuItems && menuItems.length > 0)\n\n return (\n <div\n className={cn(\n 'card-tile',\n `color-${color}`,\n fillMedia && 'media-fill',\n isInteractive && 'interactive',\n effectClassName,\n className\n )}\n onPointerDown={handlePointerDown}\n {...rest}\n >\n {effectLayer}\n {isLink && (\n <OverlayComponent\n href={OverlayComponent === 'a' || component ? resolvedHref : undefined}\n to={resolvedTo}\n target={target}\n rel={rel}\n className=\"tile-link\"\n aria-label={title}\n onClick={onClick ? handleOverlayClick : undefined}\n />\n )}\n {!isLink && onClick && (\n <OverlayComponent type=\"button\" className=\"tile-link\" aria-label={title} onClick={onClick} />\n )}\n\n {renderMedia()}\n {renderBody()}\n\n {hasActions && (\n <div className=\"tile-actions\" onClick={stopBubble} onPointerDown={stopBubble}>\n {menuItems && menuItems.length > 0 && (\n <MDropdownMenu\n className=\"tile-menu-wrap\"\n trigger={\n <MButton\n variant=\"ghost\"\n iconOnly\n shape=\"circle\"\n aria-label=\"More options\"\n className=\"tile-overlay-btn\"\n >\n <MEllipsisVerticalIcon />\n </MButton>\n }\n placement=\"bottom-end\"\n >\n {menuItems.map((item, i) => (\n <MDropdownItem\n key={i}\n icon={item.icon}\n color={item.danger ? 'error' : undefined}\n label={item.label}\n onClick={item.onClick}\n />\n ))}\n </MDropdownMenu>\n )}\n {onFavorite && (\n <MButton\n variant=\"ghost\"\n iconOnly\n shape=\"circle\"\n onClick={onFavorite}\n aria-label={favorite ? 'Remove from favorites' : 'Add to favorites'}\n className={cn('tile-overlay-btn', favorite && 'tile-fav-active')}\n >\n {favorite ? <MHeartFillIcon /> : <MHeartIcon />}\n </MButton>\n )}\n </div>\n )}\n </div>\n )\n}\n","import type {MCardProductProps} from './MCardProduct.types'\nimport {SharedServiceCard} from '../ServiceCardsShared/ServiceCardsShared'\n\nexport function MCardProduct(props: MCardProductProps) {\n const {addToCartLabel = 'Add to cart', ...rest} = props\n\n return <SharedServiceCard variant=\"product\" actionLabel={addToCartLabel} {...rest} />\n}\n","import type {MCardEventProps} from './MCardEvent.types'\nimport {SharedServiceCard} from '../ServiceCardsShared/ServiceCardsShared'\n\nexport function MCardEvent(props: MCardEventProps) {\n const {onRegister, registerLabel = 'Register', ...rest} = props\n\n return (\n <SharedServiceCard\n variant=\"event\"\n onAddToCart={onRegister ? () => onRegister() : undefined}\n actionLabel={registerLabel}\n {...rest}\n />\n )\n}\n","import type {PointerEvent} from 'react'\nimport type {MCardWidgetProps} from './MCardWidget.types'\nimport {cn} from '../../../utils/cn'\nimport {MArrowDownIcon, MArrowUpIcon} from '../../../icons'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport {resolveMCardAction} from '../shared'\nimport './MCardWidget.css'\n\nfunction resolveTrendType(trend: MCardWidgetProps['trend'], explicit?: MCardWidgetProps['trendType']) {\n if (explicit) return explicit\n if (typeof trend !== 'number' || trend === 0) return 'neutral'\n return trend > 0 ? 'up' : 'down'\n}\n\nfunction formatTrend(trend: MCardWidgetProps['trend']) {\n if (typeof trend === 'number' && trend > 0) {\n return `+${trend}`\n }\n\n return trend\n}\n\nexport function MCardWidget({\n component,\n to,\n href,\n target,\n rel,\n title,\n value,\n trend,\n trendType,\n icon,\n color = 'primary',\n helperText,\n interactive = false,\n clickEffect,\n rippleColor,\n className,\n onPointerDown,\n ...rest\n}: MCardWidgetProps) {\n const hasTrend = trend !== undefined && trend !== null\n const resolvedTrendType = resolveTrendType(trend, trendType)\n const formattedTrend = formatTrend(trend)\n const {\n component: Component,\n href: resolvedHref,\n to: resolvedTo,\n isInteractive,\n } = resolveMCardAction({\n component,\n href,\n to,\n interactive,\n hasClickHandler: Boolean(rest.onClick),\n hasPointerHandler: Boolean(onPointerDown),\n })\n const {effectClassName, effectLayer, handlePointerDown} = useInteractionEffect<HTMLDivElement>({\n effect: clickEffect ?? (isInteractive ? 'ripple' : 'none'),\n disabled: !isInteractive,\n color: rippleColor,\n })\n\n return (\n <Component\n href={Component === 'a' || component ? resolvedHref : undefined}\n to={resolvedTo}\n target={target}\n rel={rel}\n className={cn('card-widget', `color-${color}`, isInteractive && 'interactive', effectClassName, className)}\n onPointerDown={(event: PointerEvent<HTMLDivElement>) => {\n handlePointerDown(event)\n onPointerDown?.(event)\n }}\n {...rest}\n >\n {effectLayer}\n <div className=\"cw-top\">\n <div className=\"cw-meta\">\n <span className=\"cw-title\">{title}</span>\n <span className=\"cw-value\">{value}</span>\n </div>\n {icon && <span className=\"cw-icon\">{icon}</span>}\n </div>\n\n {hasTrend && (\n <div className=\"cw-bottom\">\n <span className={cn('cw-trend', resolvedTrendType)}>\n {resolvedTrendType === 'up' && <MArrowUpIcon size={14} />}\n {resolvedTrendType === 'down' && <MArrowDownIcon size={14} />}\n <span>{formattedTrend}</span>\n </span>\n </div>\n )}\n\n {helperText && <div className=\"cw-helper\">{helperText}</div>}\n </Component>\n )\n}\n","import type {MCardStatProps} from './MStatCard.types'\nimport {MCard} from '../MCard'\nimport {MText} from '../../typography'\nimport {MInline, MStack} from '../../layout'\nimport {MArrowDownIcon, MArrowUpIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MStatCard.css'\n\nfunction resolveTrendType(trend: MCardStatProps['trend'], explicit?: MCardStatProps['trendType']) {\n if (explicit) {\n return explicit\n }\n\n if (typeof trend !== 'number' || trend === 0) {\n return 'neutral'\n }\n\n return trend > 0 ? 'up' : 'down'\n}\n\nfunction formatTrend(trend: MCardStatProps['trend']) {\n if (typeof trend === 'number' && trend > 0) {\n return `+${trend}`\n }\n\n return trend\n}\n\nexport function MCardStat({\n label,\n value,\n icon,\n badge,\n helperText,\n trend,\n trendType,\n color = 'primary',\n className,\n ...rest\n}: MCardStatProps) {\n const hasTrend = trend !== undefined && trend !== null\n const resolvedTrendType = resolveTrendType(trend, trendType)\n\n return (\n <MCard className={cn('stat-card', `color-${color}`, className)} {...rest}>\n <MStack padding={'sm'}>\n <MInline justify={'between'} align={'start'}>\n <MStack>\n <MText size={'sm'} tone={'muted'}>\n {label}\n </MText>\n <span className=\"stat-card-value\">{value}</span>\n </MStack>\n <MInline align={'center'} padding={'xs'}>\n {badge}\n {icon && <span className=\"stat-card-icon\">{icon}</span>}\n </MInline>\n </MInline>\n\n {(hasTrend || helperText) && (\n <MInline justify={'between'} align={'center'}>\n {hasTrend ? (\n <span className={cn('stat-card-trend', resolvedTrendType)}>\n {resolvedTrendType === 'up' && <MArrowUpIcon size={14} />}\n {resolvedTrendType === 'down' && <MArrowDownIcon size={14} />}\n <span>{formatTrend(trend)}</span>\n </span>\n ) : (\n <span />\n )}\n {helperText && (\n <MText size={'sm'} tone={'muted'}>\n {helperText}\n </MText>\n )}\n </MInline>\n )}\n </MStack>\n </MCard>\n )\n}\n","import {Fragment, useState, useMemo, useRef, useCallback, type CSSProperties} from 'react'\nimport type {MCardGridProps, MCardGridResponsiveColumns, MCardGridSort} from './MCardGrid.types'\nimport {cn} from '../../../utils/cn'\nimport {MButton, MCheckbox} from '../../controls'\nimport {MInputSearch} from '../../inputs'\nimport {MPagination} from '../../layout'\nimport {MPopover} from '../../primitives'\nimport {MArrowDownIcon, MArrowUpIcon, MFilterIcon, MSortIcon} from '../../../icons'\nimport './MCardGrid.css'\n\n/**\n * Builds inline style for `.card-grid-items`:\n * - `number` → hard `grid-template-columns: repeat(N, 1fr)` (overrides every breakpoint).\n * - responsive object → CSS custom properties (`--cols-base`, `--cols-sm`, ...) consumed\n * by `min-width` media queries in `MCardGrid.css`. Missing breakpoints cascade through\n * the `var()` fallback chain (xxl → xl → lg → md → sm → base → 1).\n */\nfunction buildColumnsStyle(columns: number | MCardGridResponsiveColumns): CSSProperties {\n if (typeof columns === 'number') return {gridTemplateColumns: `repeat(${columns}, 1fr)`}\n\n const style: Record<string, string | number> = {}\n if (columns.base !== undefined) style['--cols-base'] = columns.base\n if (columns.sm !== undefined) style['--cols-sm'] = columns.sm\n if (columns.md !== undefined) style['--cols-md'] = columns.md\n if (columns.lg !== undefined) style['--cols-lg'] = columns.lg\n if (columns.xl !== undefined) style['--cols-xl'] = columns.xl\n if (columns.xxl !== undefined) style['--cols-xxl'] = columns.xxl\n return style as CSSProperties\n}\n\nfunction getNestedValue(obj: unknown, key: string): unknown {\n const parts = key.split('.')\n let val: unknown = obj\n\n for (const p of parts) {\n if (val == null || typeof val !== 'object') return undefined\n val = (val as Record<string, unknown>)[p]\n }\n\n return val\n}\n\nexport function MCardGrid<T extends Record<string, unknown>>({\n items,\n renderCard,\n color = 'primary',\n searchable = false,\n searchKeys,\n searchPlaceholder = 'Search...',\n search: controlledSearch,\n onSearchChange,\n filterable = false,\n filterKeys = [],\n filters: controlledFilters,\n onFiltersChange,\n sortable = false,\n sortKeys = [],\n defaultSort,\n sort: controlledSort,\n onSortChange,\n pagination = false,\n pageSize = 12,\n page: controlledPage,\n onPageChange,\n total,\n manualSearch = false,\n manualFilters = false,\n manualSort = false,\n manualPagination = false,\n columns = 3,\n emptyMessage = 'No results found.',\n className,\n style,\n ...rest\n}: MCardGridProps<T>) {\n const [internalSearch, setInternalSearch] = useState('')\n const [internalFilters, setInternalFilters] = useState<Record<string, string[]>>({})\n const [internalSort, setInternalSort] = useState<MCardGridSort<T> | null>(defaultSort ?? null)\n const [internalPage, setInternalPage] = useState(1)\n const [filterOpen, setFilterOpen] = useState(false)\n const [sortOpen, setSortOpen] = useState(false)\n const filterBtnRef = useRef<HTMLElement>(null)\n const sortBtnRef = useRef<HTMLElement>(null)\n\n const search = controlledSearch !== undefined ? controlledSearch : internalSearch\n const filters = controlledFilters !== undefined ? controlledFilters : internalFilters\n const sort = controlledSort !== undefined ? controlledSort : internalSort\n const page = controlledPage !== undefined ? controlledPage : internalPage\n\n const setSearch = useCallback(\n (next: string) => {\n if (controlledSearch === undefined) setInternalSearch(next)\n if (!manualPagination && controlledPage === undefined) setInternalPage(1)\n onSearchChange?.(next)\n },\n [controlledSearch, controlledPage, manualPagination, onSearchChange]\n )\n\n const setFilters = useCallback(\n (next: Record<string, string[]>) => {\n if (controlledFilters === undefined) setInternalFilters(next)\n if (!manualPagination && controlledPage === undefined) setInternalPage(1)\n onFiltersChange?.(next)\n },\n [controlledFilters, controlledPage, manualPagination, onFiltersChange]\n )\n\n const setSort = useCallback(\n (next: MCardGridSort<T> | null) => {\n if (controlledSort === undefined) setInternalSort(next)\n if (!manualPagination && controlledPage === undefined) setInternalPage(1)\n onSortChange?.(next)\n },\n [controlledSort, controlledPage, manualPagination, onSortChange]\n )\n\n const setPage = useCallback(\n (next: number) => {\n if (controlledPage === undefined) setInternalPage(next)\n onPageChange?.(next)\n },\n [controlledPage, onPageChange]\n )\n\n const openFilter = useCallback(() => {\n setFilterOpen((v) => !v)\n setSortOpen(false)\n }, [])\n\n const openSort = useCallback(() => {\n setSortOpen((v) => !v)\n setFilterOpen(false)\n }, [])\n\n const processed = useMemo(() => {\n let result = items\n\n if (!manualSearch && search && searchKeys && searchKeys.length > 0) {\n const query = search.toLowerCase()\n result = result.filter((item) =>\n searchKeys.some((key) => {\n const value = getNestedValue(item, key)\n return value != null && String(value).toLowerCase().includes(query)\n })\n )\n }\n\n if (!manualFilters) {\n for (const [key, selected] of Object.entries(filters)) {\n if (!selected || selected.length === 0) continue\n\n result = result.filter((item) => {\n const value = getNestedValue(item, key)\n return value != null && selected.includes(String(value))\n })\n }\n }\n\n if (!manualSort && sort) {\n result = [...result].sort((a, b) => {\n const av = getNestedValue(a, sort.key)\n const bv = getNestedValue(b, sort.key)\n\n if (av == null && bv == null) return 0\n if (av == null) return 1\n if (bv == null) return -1\n\n const compare = String(av).localeCompare(String(bv), undefined, {numeric: true})\n return sort.direction === 'asc' ? compare : -compare\n })\n }\n\n return result === items ? [...result] : result\n }, [items, search, searchKeys, filters, sort, manualSearch, manualFilters, manualSort])\n\n const totalItems = manualPagination ? (total ?? processed.length) : processed.length\n const paginatedItems = useMemo(() => {\n if (!pagination || manualPagination) return processed\n const start = (page - 1) * pageSize\n return processed.slice(start, start + pageSize)\n }, [processed, pagination, manualPagination, page, pageSize])\n\n function toggleFilter(key: string, value: string) {\n const current = filters[key] ?? []\n const next = current.includes(value) ? current.filter((item) => item !== value) : [...current, value]\n setFilters({...filters, [key]: next})\n }\n\n const filterOptions = useMemo(() => {\n const map: Record<string, string[]> = {}\n\n for (const filterKey of filterKeys) {\n if (filterKey.options) {\n map[filterKey.key] = filterKey.options\n continue\n }\n\n const values = new Set<string>()\n\n for (const item of items) {\n const value = getNestedValue(item, filterKey.key)\n if (value != null) values.add(String(value))\n }\n\n map[filterKey.key] = Array.from(values).sort()\n }\n\n return map\n }, [items, filterKeys])\n\n const activeSort = sortKeys.find((item) => item.key === sort?.key)\n\n return (\n <div className={cn('card-grid', `color-${color}`, className)} style={style} {...rest}>\n {(searchable || filterable || sortable) && (\n <div className=\"card-grid-toolbar\">\n {searchable && (\n <MInputSearch\n className=\"card-grid-search\"\n size=\"sm\"\n fullWidth\n placeholder={searchPlaceholder}\n value={search}\n onChange={(event) => setSearch(event.target.value)}\n onClear={() => setSearch('')}\n />\n )}\n\n <div className=\"card-grid-actions\">\n {filterable && filterKeys.length > 0 && (\n <>\n <MButton\n ref={filterBtnRef}\n variant=\"outlined\"\n color={color}\n size=\"sm\"\n startIcon={<MFilterIcon />}\n aria-expanded={filterOpen}\n onClick={openFilter}\n >\n Filter\n </MButton>\n <MPopover\n open={filterOpen}\n anchorRef={filterBtnRef}\n onClose={() => setFilterOpen(false)}\n placement=\"bottom-end\"\n className=\"card-grid-dropdown\"\n >\n {filterKeys.map((filterKey) => (\n <div key={filterKey.key} className=\"card-grid-filter-group\">\n <span className=\"card-grid-filter-label\">{filterKey.label}</span>\n {(filterOptions[filterKey.key] ?? []).map((option) => (\n <div key={option} className=\"card-grid-filter-option\">\n <MCheckbox\n size=\"sm\"\n clickEffect=\"none\"\n checked={filters[filterKey.key]?.includes(option) ?? false}\n onChange={() => toggleFilter(filterKey.key, option)}\n label={option}\n />\n </div>\n ))}\n </div>\n ))}\n </MPopover>\n </>\n )}\n\n {sortable && sortKeys.length > 0 && (\n <>\n <MButton\n ref={sortBtnRef}\n variant=\"outlined\"\n color={color}\n size=\"sm\"\n startIcon={\n sort ? (\n sort.direction === 'asc' ? (\n <MArrowUpIcon />\n ) : (\n <MArrowDownIcon />\n )\n ) : (\n <MSortIcon />\n )\n }\n aria-expanded={sortOpen}\n onClick={openSort}\n >\n {activeSort ? `Sort: ${activeSort.label}` : 'Sort'}\n </MButton>\n <MPopover\n open={sortOpen}\n anchorRef={sortBtnRef}\n onClose={() => setSortOpen(false)}\n placement=\"bottom-end\"\n className=\"card-grid-dropdown\"\n >\n {sortKeys.map((sortItem) => (\n <button\n key={sortItem.key}\n type=\"button\"\n className={cn(\n 'card-grid-sort-item',\n sort?.key === sortItem.key && 'active'\n )}\n onClick={() => {\n if (sort?.key === sortItem.key) {\n setSort({\n key: sortItem.key,\n direction: sort.direction === 'asc' ? 'desc' : 'asc',\n })\n } else {\n setSort({key: sortItem.key, direction: 'asc'})\n }\n }}\n >\n {sortItem.label}\n {sort?.key === sortItem.key && (\n <span className=\"card-grid-sort-dir\">\n {sort.direction === 'asc' ? (\n <MArrowUpIcon className=\"card-grid-sort-icon\" />\n ) : (\n <MArrowDownIcon className=\"card-grid-sort-icon\" />\n )}\n </span>\n )}\n </button>\n ))}\n </MPopover>\n </>\n )}\n </div>\n </div>\n )}\n\n {paginatedItems.length > 0 ? (\n <div className=\"card-grid-items\" style={buildColumnsStyle(columns)}>\n {paginatedItems.map((item, index) => {\n // Wrap each card so consumers don't have to remember `key={item.id}` in renderCard.\n // Prefer the item's id when present (stable across reorders), fall back to index.\n const id = (item as {id?: string | number} | null | undefined)?.id\n return <Fragment key={id ?? index}>{renderCard(item, index)}</Fragment>\n })}\n </div>\n ) : (\n <div className=\"card-grid-empty\">{emptyMessage}</div>\n )}\n\n {pagination && totalItems > pageSize && (\n <div className=\"card-grid-pagination\">\n <MPagination total={totalItems} page={page} pageSize={pageSize} onChange={setPage} />\n </div>\n )}\n </div>\n )\n}\n","import type {PointerEvent} from 'react'\nimport type {MCardFinanceProps} from './MCardFinance.types'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport {MSparkline} from '../../data/MSparkline/MSparkline'\nimport {MArrowUpIcon, MArrowDownIcon} from '../../../icons'\nimport {resolveMCardAction} from '../shared'\nimport './MCardFinance.css'\n\nfunction resolveChangeType(change: number | undefined, explicit?: MCardFinanceProps['changeType']) {\n if (explicit) return explicit\n if (change === undefined || change === 0) return 'neutral'\n return change > 0 ? 'up' : 'down'\n}\n\nexport function MCardFinance({\n component,\n to,\n href,\n target,\n rel,\n label,\n value,\n change,\n changeType: changeTypeProp,\n changeLabel,\n icon,\n sparkline,\n sparklineType = 'area',\n color = 'primary',\n currency,\n interactive = false,\n clickEffect,\n rippleColor,\n className,\n onPointerDown,\n ...rest\n}: MCardFinanceProps) {\n const changeType = resolveChangeType(change, changeTypeProp)\n\n const changeColor = changeType === 'up' ? 'success' : changeType === 'down' ? 'error' : 'neutral'\n const {\n component: Component,\n href: resolvedHref,\n to: resolvedTo,\n isInteractive,\n } = resolveMCardAction({\n component,\n href,\n to,\n interactive,\n hasClickHandler: Boolean(rest.onClick),\n hasPointerHandler: Boolean(onPointerDown),\n })\n const {effectClassName, effectLayer, handlePointerDown} = useInteractionEffect<HTMLDivElement>({\n effect: clickEffect ?? (isInteractive ? 'ripple' : 'none'),\n disabled: !isInteractive,\n color: rippleColor,\n })\n\n return (\n <Component\n href={Component === 'a' || component ? resolvedHref : undefined}\n to={resolvedTo}\n target={target}\n rel={rel}\n className={cn('card-finance', `color-${color}`, isInteractive && 'interactive', effectClassName, className)}\n onPointerDown={(event: PointerEvent<HTMLDivElement>) => {\n handlePointerDown(event)\n onPointerDown?.(event)\n }}\n {...rest}\n >\n {effectLayer}\n <div className=\"cf-top\">\n <div className=\"cf-meta\">\n <span className=\"cf-label\">{label}</span>\n {currency && <span className=\"cf-currency\">{currency}</span>}\n </div>\n {icon && <span className=\"cf-icon\">{icon}</span>}\n </div>\n\n <div className=\"cf-value\">{value}</div>\n\n <div className=\"cf-bottom\">\n {change !== undefined && (\n <span className={cn('cf-change', changeColor)}>\n {changeType === 'up' && <MArrowUpIcon size={14} />}\n {changeType === 'down' && <MArrowDownIcon size={14} />}\n <span className=\"cf-change-value\">\n {change > 0 ? '+' : ''}\n {change}%\n </span>\n {changeLabel && <span className=\"cf-change-label\">{changeLabel}</span>}\n </span>\n )}\n </div>\n\n <div className=\"cf-sparkline\">\n <MSparkline\n data={sparkline}\n type={sparklineType}\n color={changeColor === 'neutral' ? color : changeColor}\n height={46}\n padding={0}\n curved\n animated\n fillOpacity={0.18}\n />\n </div>\n </Component>\n )\n}\n","import type {MCardDayScheduleProps} from './MCardDaySchedule.types'\nimport {MCard, MCardBody, MCardFooter, MCardHeader} from '../MCard'\nimport {MDetailList} from '../../display'\nimport {MGrid, MInline, MStack, MTabs} from '../../layout'\nimport {MHeading, MText} from '../../typography'\nimport {tintCardChildren} from '../shared'\nimport './MCardDaySchedule.css'\n\nexport function MCardDaySchedule({\n title = 'Today',\n description,\n color = 'primary',\n workdayStart,\n workdayEnd,\n timeline,\n summary,\n tabs = [],\n footer,\n emptyTimeline = <MText tone={'muted'}>No events scheduled for this day.</MText>,\n ...rest\n}: MCardDayScheduleProps) {\n const workdayLabel =\n workdayStart && workdayEnd ? `${workdayStart}-${workdayEnd}` : (workdayStart ?? workdayEnd ?? undefined)\n\n const populatedTabs = tabs.filter((tab) => tab.items.length > 0)\n\n return (\n <MCard color={color} {...rest}>\n <MCardHeader>\n <MStack>\n <MHeading level={4}>{title}</MHeading>\n {(description || workdayLabel) && (\n <MText size={'sm'} tone={'muted'}>\n {description}\n {description && workdayLabel ? ' ' : null}\n {workdayLabel}\n </MText>\n )}\n </MStack>\n </MCardHeader>\n <MCardBody>\n <MGrid type={'row'} align={'start'}>\n <MGrid type={'col'} xl={7} sm={12}>\n {timeline.length ? (\n <MStack className=\"day-schedule-card-timeline\">\n {timeline.map((item) => (\n <MInline key={item.id} align={'start'} className=\"day-schedule-card-entry\">\n <span className=\"day-schedule-card-time\">{item.time}</span>\n <div className=\"day-schedule-card-dot\" data-color={item.color ?? color}>\n {tintCardChildren(item.icon, item.color ?? color)}\n </div>\n <div className=\"day-schedule-card-copy\">\n <MText as={'strong'}>{item.title}</MText>\n {item.description && (\n <MText size={'sm'} tone={'muted'}>\n {item.description}\n </MText>\n )}\n </div>\n </MInline>\n ))}\n </MStack>\n ) : (\n emptyTimeline\n )}\n </MGrid>\n\n <MGrid type={'col'} xl={5} sm={12}>\n <MStack className=\"day-schedule-card-side\">\n {summary}\n\n {populatedTabs.length > 0 && (\n <MTabs\n variant={'underline'}\n size={'sm'}\n fullWidth\n defaultValue={populatedTabs[0].type}\n items={populatedTabs.map((tab) => ({\n value: tab.type,\n label: (\n <span className=\"day-schedule-card-tab-label\">\n <span>{tab.title}</span>\n <span className=\"day-schedule-card-tab-count\">{tab.items.length}</span>\n </span>\n ),\n content: <MDetailList items={tab.items} />,\n }))}\n />\n )}\n </MStack>\n </MGrid>\n </MGrid>\n </MCardBody>\n {footer && <MCardFooter>{tintCardChildren(footer, color)}</MCardFooter>}\n </MCard>\n )\n}\n","import type {MCardDocumentTreeProps} from './MCardDocumentTree.types'\nimport {MCard, MCardBody, MCardHeader} from '../MCard'\nimport {MButton} from '../../controls'\nimport {MTreeView} from '../../data'\nimport {MDetailList} from '../../display'\nimport {MGrid, MInline, MStack} from '../../layout'\nimport {MDropdownItem, MDropdownMenu} from '../../overlays'\nimport {MHeading, MText} from '../../typography'\nimport {MEllipsisVerticalIcon} from '../../../icons'\nimport {tintCardChildren} from '../shared'\nimport type {MTreeNode} from '../../data/MTreeView'\n\nexport function MCardDocumentTree({\n title = 'Documents',\n description,\n color = 'primary',\n items,\n selected,\n onSelect,\n defaultExpanded,\n expanded,\n onExpandChange,\n detailsTitle,\n detailsMeta,\n detailsItems = [],\n detailsActions = [],\n renderDetails,\n emptyDetails = <MText tone={'muted'}>Select a document to inspect its details.</MText>,\n primaryAction,\n ...rest\n}: MCardDocumentTreeProps) {\n const mapNode = (node: MTreeNode): MTreeNode => {\n return {\n ...node,\n icon: tintCardChildren(node.icon, color),\n children: node.children?.map(mapNode),\n }\n }\n const itemsWithTint = items.map(mapNode)\n\n return (\n <MCard stretch={false} color={color} {...rest}>\n <MCardHeader>\n <MInline justify={'between'} align={'center'}>\n <MStack>\n <MHeading level={4}>{title}</MHeading>\n {description && (\n <MText size={'sm'} tone={'muted'}>\n {description}\n </MText>\n )}\n </MStack>\n {tintCardChildren(primaryAction, color)}\n </MInline>\n </MCardHeader>\n <MCardBody>\n <MGrid type={'row'} align={'start'}>\n <MGrid type={'col'} xl={7} sm={12}>\n <MTreeView\n items={itemsWithTint}\n color={color}\n defaultExpanded={defaultExpanded}\n expanded={expanded}\n onExpandChange={onExpandChange}\n selected={selected}\n onSelect={onSelect}\n expandable\n selectable\n showLines\n fileIcons\n />\n </MGrid>\n <MGrid type={'col'} xl={5} sm={12}>\n <MStack padding={'sm'}>\n {(detailsTitle || detailsMeta || detailsActions.length > 0) && (\n <MInline justify={'between'} align={'start'}>\n <MStack>\n {detailsTitle && <MHeading level={5}>{detailsTitle}</MHeading>}\n {detailsMeta && (\n <MText size={'sm'} tone={'muted'}>\n {detailsMeta}\n </MText>\n )}\n </MStack>\n\n {detailsActions.length > 0 && (\n <MDropdownMenu\n placement={'bottom-end'}\n trigger={\n <MButton\n variant={'ghost'}\n color={color}\n iconOnly\n shape={'circle'}\n aria-label={'Open document actions'}\n >\n <MEllipsisVerticalIcon />\n </MButton>\n }\n >\n {detailsActions.map((action) => (\n <MDropdownItem\n key={action.id}\n icon={tintCardChildren(action.icon, action.color ?? color)}\n label={action.label}\n color={action.color ?? color}\n disabled={action.disabled}\n component={action.component}\n href={action.href}\n to={action.to}\n onClick={action.onClick}\n />\n ))}\n </MDropdownMenu>\n )}\n </MInline>\n )}\n\n {renderDetails ? (\n renderDetails\n ) : detailsItems.length ? (\n <MDetailList items={detailsItems} />\n ) : (\n emptyDetails\n )}\n </MStack>\n </MGrid>\n </MGrid>\n </MCardBody>\n </MCard>\n )\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { MCardBusinessProps } from './MCardBusiness.types';
2
- export declare function MCardBusiness({ variant, name, title, avatar, address, contact, socials, online, lastActive, qrCode, qrValue, qrStatus, qrStatusLabel, color, className, ...rest }: MCardBusinessProps): import("react/jsx-runtime").JSX.Element;
@@ -1,37 +0,0 @@
1
- import { HTMLAttributes, ReactNode } from 'react';
2
- import { MColor } from '../../../theme';
3
- import { MQrCodeStatus } from '../../display/MQrCode';
4
- import { MSocialPlatform } from '../../../utils/socialPlatforms';
5
- export type MCardBusinessVariant = 'user' | 'company';
6
- export interface MCardBusinessSocial {
7
- platform: MSocialPlatform;
8
- url: string;
9
- icon?: ReactNode;
10
- }
11
- export interface MCardBusinessAddress {
12
- street?: string;
13
- city?: string;
14
- zip?: string;
15
- country?: string;
16
- }
17
- export interface MCardBusinessContact {
18
- email?: string;
19
- phone?: string;
20
- website?: string;
21
- }
22
- export interface MCardBusinessProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
23
- variant?: MCardBusinessVariant;
24
- name: string;
25
- title?: string;
26
- avatar?: string;
27
- address?: MCardBusinessAddress;
28
- contact?: MCardBusinessContact;
29
- socials?: MCardBusinessSocial[];
30
- online?: boolean;
31
- lastActive?: ReactNode;
32
- qrCode?: string;
33
- qrValue?: string;
34
- qrStatus?: MQrCodeStatus;
35
- qrStatusLabel?: string;
36
- color?: MColor;
37
- }
@@ -1,4 +0,0 @@
1
- /** Marked as a Pro component in MineralUI licensing metadata. */
2
- export { MCardBusiness } from './MCardBusiness';
3
- /** Types for a Pro component in MineralUI licensing metadata. */
4
- export type { MCardBusinessProps, MCardBusinessVariant, MCardBusinessSocial, MCardBusinessAddress, MCardBusinessContact, } from './MCardBusiness.types';
@@ -1,2 +0,0 @@
1
- import { MCardFinanceProps } from './MCardFinance.types';
2
- export declare function MCardFinance({ component, to, href, target, rel, label, value, change, changeType: changeTypeProp, changeLabel, icon, sparkline, sparklineType, color, currency, interactive, clickEffect, rippleColor, className, onPointerDown, ...rest }: MCardFinanceProps): import("react/jsx-runtime").JSX.Element;
@@ -1,17 +0,0 @@
1
- import { HTMLAttributes, ReactNode } from 'react';
2
- import { MColor } from '../../../theme/MTheme.types';
3
- import { MSparklineType } from '../../data/MSparkline/MSparkline.types';
4
- import { MCardActionProps } from '../shared';
5
- export type MCardFinanceChangeType = 'up' | 'down' | 'neutral';
6
- export interface MCardFinanceProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'>, MCardActionProps {
7
- label: string;
8
- value: ReactNode;
9
- change?: number;
10
- changeType?: MCardFinanceChangeType;
11
- changeLabel?: string;
12
- icon?: ReactNode;
13
- sparkline: number[];
14
- sparklineType?: MSparklineType;
15
- color?: MColor;
16
- currency?: string;
17
- }
@@ -1,4 +0,0 @@
1
- /** Marked as a Pro component in MineralUI licensing metadata. */
2
- export { MCardFinance } from './MCardFinance';
3
- /** Types for a Pro component in MineralUI licensing metadata. */
4
- export type { MCardFinanceProps, MCardFinanceChangeType } from './MCardFinance.types';
@@ -1,8 +0,0 @@
1
- import { MCalendarBoardProps, MCalendarDayCellProps, MCalendarEventListProps, MCalendarEventPopoverProps, MCalendarEventProps, MCalendarHourBarProps, MCalendarTimelineProps } from './MCalendarBoard.types';
2
- export declare function MCalendarHourBar({ date, events, overlapWarning, orientation, className, ...rest }: MCalendarHourBarProps): import("react/jsx-runtime").JSX.Element;
3
- export declare function MCalendarDayCell({ date, events, badge, isToday, isSelected, isOutsideMonth, showHourBar, overlapWarning, onAddEvent, addEventLabel, className, children, ...rest }: MCalendarDayCellProps): import("react/jsx-runtime").JSX.Element;
4
- export declare function MCalendarEventItem({ event, locale: localeOverride, className, currentDate, menuItems, renderMenu, showActions, overlap, onSelect, onEdit, onDelete, ...rest }: MCalendarEventProps): import("react/jsx-runtime").JSX.Element;
5
- export declare function MCalendarEventList({ events, locale: localeOverride, currentDate, emptyStateText, overlapWarning, renderEventItem, renderEventMenu, onEventSelect, onEventEdit, onEventDelete, className, ...rest }: MCalendarEventListProps): import("react/jsx-runtime").JSX.Element;
6
- export declare function MCalendarTimeline({ date, events, locale: localeOverride, startHour, endHour, emptyStateText, overlapWarning, onAddEvent, addEventLabel, renderEventItem, renderEventMenu, onEventSelect, onEventEdit, onEventDelete, className, ...rest }: MCalendarTimelineProps): import("react/jsx-runtime").JSX.Element;
7
- export declare function MCalendarEventPopover({ open, anchorRef, onClose, date, events, locale: localeOverride, timelineStartHour, timelineEndHour, showTimeline, emptyStateText, overlapWarning, onAddEvent, addEventLabel, dayMenuLabel, onEventSelect, onEventEdit, onEventDelete, renderEventItem, renderEventMenu, renderDayMenu, className, style, }: MCalendarEventPopoverProps): import("react/jsx-runtime").JSX.Element;
8
- export declare function MCalendarBoard({ month, defaultMonth, onMonthChange, events, locale: localeOverride, weekStartsOn, view, defaultView, views, onViewChange, selectedDate, defaultSelectedDate, onDayClick, dayBadge, renderDayCell, renderEventItem, renderEventMenu, detailsMode, showTimeline, showHourBar, timelineStartHour, timelineEndHour, overlapWarning, onAddEvent, addEventLabel, dayMenuLabel, renderDayMenu, onEventSelect, onEventEdit, onEventDelete, emptyStateText, filters, activeFilters, defaultActiveFilters, onActiveFiltersChange, fullWidth, className, ...rest }: MCalendarBoardProps): import("react/jsx-runtime").JSX.Element;
@@ -1,186 +0,0 @@
1
- import { ButtonHTMLAttributes, CSSProperties, HTMLAttributes, ReactNode, RefObject } from 'react';
2
- import { MColor } from '../../../theme';
3
- export type MCalendarBoardLocale = string;
4
- export type MCalendarDetailsMode = 'auto' | 'popover' | 'modal';
5
- export type MCalendarEventStatus = 'planned' | 'active' | 'done' | 'cancelled';
6
- export type MCalendarTimelineSlotState = 'past' | 'active' | 'upcoming';
7
- export type MCalendarBoardView = 'month' | 'week';
8
- export interface MCalendarEventUser {
9
- id: string;
10
- name: string;
11
- avatar?: string;
12
- color?: string;
13
- }
14
- export interface MCalendarEventActionItem {
15
- id: string;
16
- label: ReactNode;
17
- icon?: ReactNode;
18
- color?: MColor;
19
- disabled?: boolean;
20
- onSelect?: (event: MCalendarEvent) => void;
21
- href?: string;
22
- }
23
- export interface MCalendarDayActionItem {
24
- id: string;
25
- label: ReactNode;
26
- icon?: ReactNode;
27
- color?: MColor;
28
- disabled?: boolean;
29
- onSelect?: (date: Date, events: MCalendarEvent[]) => void;
30
- href?: string;
31
- }
32
- export interface MCalendarEvent {
33
- id: string;
34
- title: string;
35
- description?: string;
36
- date: string | Date;
37
- startTime?: string;
38
- endTime?: string;
39
- type?: string;
40
- status?: MCalendarEventStatus;
41
- color?: string;
42
- badgeLabel?: string;
43
- user?: MCalendarEventUser;
44
- href?: string;
45
- menuItems?: MCalendarEventActionItem[];
46
- onClick?: (event: MCalendarEvent) => void;
47
- onEdit?: (event: MCalendarEvent) => void;
48
- onDelete?: (event: MCalendarEvent) => void;
49
- meta?: Record<string, unknown>;
50
- }
51
- export interface MCalendarFilterOption {
52
- id: string;
53
- label: string;
54
- color?: string;
55
- predicate: (event: MCalendarEvent) => boolean;
56
- }
57
- export interface MCalendarDayRenderContext {
58
- date: Date;
59
- events: MCalendarEvent[];
60
- badge: ReactNode;
61
- isToday: boolean;
62
- isSelected: boolean;
63
- isOutsideMonth: boolean;
64
- }
65
- export interface MCalendarDayCellProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color'> {
66
- date: Date;
67
- events?: MCalendarEvent[];
68
- badge?: ReactNode;
69
- isToday?: boolean;
70
- isSelected?: boolean;
71
- isOutsideMonth?: boolean;
72
- showHourBar?: boolean;
73
- overlapWarning?: boolean;
74
- onAddEvent?: (date: Date) => void;
75
- addEventLabel?: string;
76
- children?: ReactNode;
77
- }
78
- export interface MCalendarEventProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color' | 'onClick' | 'onSelect'> {
79
- event: MCalendarEvent;
80
- locale?: MCalendarBoardLocale;
81
- currentDate?: Date;
82
- menuItems?: MCalendarEventActionItem[];
83
- renderMenu?: (event: MCalendarEvent) => MCalendarEventActionItem[] | undefined;
84
- showActions?: boolean;
85
- overlap?: boolean;
86
- onSelect?: (event: MCalendarEvent) => void;
87
- onEdit?: (event: MCalendarEvent) => void;
88
- onDelete?: (event: MCalendarEvent) => void;
89
- }
90
- export type MCalendarEventItemProps = MCalendarEventProps;
91
- export interface MCalendarEventListProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
92
- events: MCalendarEvent[];
93
- locale?: MCalendarBoardLocale;
94
- currentDate?: Date;
95
- emptyStateText?: string;
96
- overlapWarning?: boolean;
97
- renderEventItem?: (event: MCalendarEvent) => ReactNode;
98
- renderEventMenu?: (event: MCalendarEvent) => MCalendarEventActionItem[] | undefined;
99
- onEventSelect?: (event: MCalendarEvent) => void;
100
- onEventEdit?: (event: MCalendarEvent) => void;
101
- onEventDelete?: (event: MCalendarEvent) => void;
102
- }
103
- export interface MCalendarTimelineProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
104
- date: Date;
105
- events: MCalendarEvent[];
106
- locale?: MCalendarBoardLocale;
107
- startHour?: number;
108
- endHour?: number;
109
- emptyStateText?: string;
110
- overlapWarning?: boolean;
111
- onAddEvent?: (date: Date, hour: number) => void;
112
- addEventLabel?: string;
113
- renderEventItem?: (event: MCalendarEvent) => ReactNode;
114
- renderEventMenu?: (event: MCalendarEvent) => MCalendarEventActionItem[] | undefined;
115
- onEventSelect?: (event: MCalendarEvent) => void;
116
- onEventEdit?: (event: MCalendarEvent) => void;
117
- onEventDelete?: (event: MCalendarEvent) => void;
118
- }
119
- export interface MCalendarHourBarProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
120
- date: Date;
121
- events: MCalendarEvent[];
122
- overlapWarning?: boolean;
123
- orientation?: 'vertical' | 'horizontal';
124
- }
125
- export interface MCalendarEventPopoverProps {
126
- open: boolean;
127
- anchorRef: RefObject<HTMLElement | null>;
128
- onClose: () => void;
129
- date: Date | null;
130
- events: MCalendarEvent[];
131
- locale?: MCalendarBoardLocale;
132
- timelineStartHour?: number;
133
- timelineEndHour?: number;
134
- showTimeline?: boolean;
135
- emptyStateText?: string;
136
- overlapWarning?: boolean;
137
- onAddEvent?: (date: Date, hour?: number) => void;
138
- addEventLabel?: string;
139
- dayMenuLabel?: string;
140
- className?: string;
141
- style?: CSSProperties;
142
- renderEventItem?: (event: MCalendarEvent) => ReactNode;
143
- renderEventMenu?: (event: MCalendarEvent) => MCalendarEventActionItem[] | undefined;
144
- renderDayMenu?: (date: Date, events: MCalendarEvent[]) => MCalendarDayActionItem[] | undefined;
145
- onEventSelect?: (event: MCalendarEvent) => void;
146
- onEventEdit?: (event: MCalendarEvent) => void;
147
- onEventDelete?: (event: MCalendarEvent) => void;
148
- }
149
- export interface MCalendarBoardProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {
150
- month?: Date;
151
- defaultMonth?: Date;
152
- onMonthChange?: (month: Date) => void;
153
- events?: MCalendarEvent[];
154
- locale?: MCalendarBoardLocale;
155
- weekStartsOn?: 0 | 1;
156
- view?: MCalendarBoardView;
157
- defaultView?: MCalendarBoardView;
158
- views?: MCalendarBoardView[];
159
- onViewChange?: (view: MCalendarBoardView) => void;
160
- selectedDate?: Date | string | null;
161
- defaultSelectedDate?: Date | string | null;
162
- onDayClick?: (day: Date, events: MCalendarEvent[]) => void;
163
- dayBadge?: (day: Date, events: MCalendarEvent[]) => ReactNode;
164
- renderDayCell?: (day: Date, context: MCalendarDayRenderContext) => ReactNode;
165
- renderEventItem?: (event: MCalendarEvent) => ReactNode;
166
- renderEventMenu?: (event: MCalendarEvent) => MCalendarEventActionItem[] | undefined;
167
- detailsMode?: MCalendarDetailsMode;
168
- showTimeline?: boolean;
169
- showHourBar?: boolean;
170
- timelineStartHour?: number;
171
- timelineEndHour?: number;
172
- overlapWarning?: boolean;
173
- onAddEvent?: (date: Date, hour?: number) => void;
174
- addEventLabel?: string;
175
- dayMenuLabel?: string;
176
- renderDayMenu?: (date: Date, events: MCalendarEvent[]) => MCalendarDayActionItem[] | undefined;
177
- onEventSelect?: (event: MCalendarEvent) => void;
178
- onEventEdit?: (event: MCalendarEvent) => void;
179
- onEventDelete?: (event: MCalendarEvent) => void;
180
- emptyStateText?: string;
181
- filters?: MCalendarFilterOption[];
182
- activeFilters?: string[];
183
- defaultActiveFilters?: string[];
184
- onActiveFiltersChange?: (activeFilters: string[]) => void;
185
- fullWidth?: boolean;
186
- }
@@ -1,4 +0,0 @@
1
- /** Marked as a Pro component in MineralUI licensing metadata. */
2
- export { MCalendarBoard, MCalendarDayCell, MCalendarEventList, MCalendarEventItem, MCalendarEventPopover, MCalendarHourBar, MCalendarTimeline, } from './MCalendarBoard';
3
- /** Types for a Pro component in MineralUI licensing metadata. */
4
- export type { MCalendarBoardProps, MCalendarBoardLocale, MCalendarDetailsMode, MCalendarBoardView, MCalendarEvent, MCalendarEventActionItem, MCalendarDayActionItem, MCalendarEventProps, MCalendarFilterOption, MCalendarEventItemProps, MCalendarEventListProps, MCalendarEventPopoverProps, MCalendarEventStatus, MCalendarEventUser, MCalendarDayCellProps, MCalendarDayRenderContext, MCalendarHourBarProps, MCalendarTimelineProps, MCalendarTimelineSlotState, } from './MCalendarBoard.types';
@@ -1,2 +0,0 @@
1
- import { MAreaChartProps } from './MChart.types';
2
- export declare function MAreaChart(props: MAreaChartProps): import("react/jsx-runtime").JSX.Element;
@@ -1,2 +0,0 @@
1
- import { MBarChartProps } from './MChart.types';
2
- export declare function MBarChart(props: MBarChartProps): import("react/jsx-runtime").JSX.Element;
@@ -1,2 +0,0 @@
1
- import { MChartProps } from './MChart.types';
2
- export declare function MChart({ type, data, width, height, aspectRatio, xAxis, yAxis, showGrid, showXAxis, showYAxis, showLegend, showTooltip, animated, stacked, curved, donut, donutWidth, valueFormatter, labelFormatter, onDataClick, className, style, ...rest }: MChartProps): import("react/jsx-runtime").JSX.Element;