@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,14 +0,0 @@
1
- import { ImgHTMLAttributes, ReactNode } from 'react';
2
- import { MMediaInteractionEffect } from '../mediaInteraction';
3
- export interface MMasonryItemProps {
4
- src: string;
5
- alt?: string;
6
- height?: number | string;
7
- overlay?: ReactNode;
8
- body?: ReactNode;
9
- footer?: ReactNode;
10
- interactive?: boolean;
11
- imageClickEffect?: MMediaInteractionEffect;
12
- imgProps?: Omit<ImgHTMLAttributes<HTMLImageElement>, 'src' | 'alt' | 'height'>;
13
- children?: ReactNode;
14
- }
@@ -1,2 +0,0 @@
1
- export { MMasonryItem } from './MMasonryItem';
2
- export type { MMasonryItemProps } from './MMasonryItem.types';
@@ -1,2 +0,0 @@
1
- import { MShowcaseCarouselProps } from './MShowcaseCarousel.types';
2
- export declare function MShowcaseCarousel<T = unknown>({ items, renderItem, initialIndex, showButtons, loop, draggable, wheel, itemMinWidth, itemMaxWidth, itemWidthRatio, className, children, style, ...rest }: MShowcaseCarouselProps<T>): import("react/jsx-runtime").JSX.Element | null;
@@ -1,19 +0,0 @@
1
- import { HTMLAttributes, ReactNode } from 'react';
2
- export interface MShowcaseCarouselSlide {
3
- src: string;
4
- alt?: string;
5
- overlay?: ReactNode;
6
- }
7
- export interface MShowcaseCarouselProps<T = unknown> extends HTMLAttributes<HTMLDivElement> {
8
- items?: T[];
9
- renderItem?: (item: T, index: number) => ReactNode;
10
- initialIndex?: number;
11
- showButtons?: boolean;
12
- loop?: boolean;
13
- draggable?: boolean;
14
- wheel?: boolean;
15
- itemMinWidth?: number;
16
- itemMaxWidth?: number;
17
- itemWidthRatio?: number;
18
- children?: ReactNode;
19
- }
@@ -1,2 +0,0 @@
1
- export { MShowcaseCarousel } from './MShowcaseCarousel';
2
- export type { MShowcaseCarouselSlide, MShowcaseCarouselProps } from './MShowcaseCarousel.types';
@@ -1,2 +0,0 @@
1
- import { MShowcaseCarouselItemProps } from './MShowcaseCarouselItem.types';
2
- export declare function MShowcaseCarouselItem({ src, alt, media, mediaHeight, overlay, body, footer, interactive, imageClickEffect, ratio, fit, imgProps, children, }: MShowcaseCarouselItemProps): import("react/jsx-runtime").JSX.Element;
@@ -1,18 +0,0 @@
1
- import { ImgHTMLAttributes, ReactNode } from 'react';
2
- import { MImageFit, MImageRatio } from '../MImage';
3
- import { MMediaInteractionEffect } from '../mediaInteraction';
4
- export interface MShowcaseCarouselItemProps {
5
- src?: string;
6
- alt?: string;
7
- media?: ReactNode;
8
- mediaHeight?: number | string;
9
- overlay?: ReactNode;
10
- body?: ReactNode;
11
- footer?: ReactNode;
12
- interactive?: boolean;
13
- imageClickEffect?: MMediaInteractionEffect;
14
- ratio?: MImageRatio;
15
- fit?: MImageFit;
16
- imgProps?: Omit<ImgHTMLAttributes<HTMLImageElement>, 'src' | 'alt'>;
17
- children?: ReactNode;
18
- }
@@ -1,2 +0,0 @@
1
- export { MShowcaseCarouselItem } from './MShowcaseCarouselItem';
2
- export type { MShowcaseCarouselItemProps } from './MShowcaseCarouselItem.types';
@@ -1,2 +0,0 @@
1
- const e=require(`./theme-DsTDooyX.cjs`),t=require(`./icons-qCoE70hn.cjs`),n=require(`./cn-CU5TNITO.cjs`),r=require(`./useInteractionEffect-Bo8285cg.cjs`),i=require(`./MButton-DFRHWHzh.cjs`),a=require(`./MSimpleGrid-CyLf-9R2.cjs`);require(`./core-DAox0BHy.cjs`);let o=require(`react`),s=require(`react/jsx-runtime`);var c=(0,o.forwardRef)(function({orientation:e=`horizontal`,variant:t,size:r,color:a,attached:c=!0,className:l,children:u,...d},f){let p=(0,o.useMemo)(()=>({variant:t,size:r,color:a}),[t,r,a]);return(0,s.jsx)(i.i.Provider,{value:p,children:(0,s.jsx)(`div`,{ref:f,role:`group`,className:n.t(`button-group`,e,c&&`attached`,l),...d,children:u})})}),l=(0,o.createContext)(null);function u(){return(0,o.useContext)(l)}var d=(0,o.forwardRef)(function({checked:e,defaultChecked:t,name:i,id:a,value:c,disabled:l=!1,size:d=`md`,color:f=`primary`,label:p,labelPosition:m=`right`,onChange:h,clickEffect:g=`ripple`,rippleColor:_,className:v,style:y},b){let x=u(),S=x?.name??i,C=x?.disabled??l,w=x?.size??d,T=x?.color??f,E=x?x.value===c:e,{effectClassName:D,effectLayer:O,handlePointerDown:k,triggerEffect:A}=r.t({effect:g,disabled:C,centered:!0,color:_}),j=(0,o.useCallback)(e=>{h?.(e),x?.onChange&&c&&x.onChange(c)},[h,x,c]);return(0,s.jsxs)(`label`,{className:n.t(`radio`,w,m===`left`&&`label-left`,C&&`disabled`,v),style:y,children:[(0,s.jsxs)(`span`,{className:n.t(`circle`,`color-${T}`,D),onPointerDown:k,children:[O,(0,s.jsx)(`input`,{ref:b,type:`radio`,name:S,id:a,value:c,checked:E,defaultChecked:x?void 0:t,disabled:C,onChange:j,onKeyDown:e=>{(e.key===` `||e.key===`Enter`)&&A(e.currentTarget.parentElement)},className:`input`})]}),p&&(0,s.jsx)(`span`,{className:`label-text`,children:p})]})});function f({name:e,value:t,defaultValue:r,onChange:i,direction:a=`vertical`,children:c,disabled:u=!1,size:d=`md`,color:f=`primary`,error:p=!1,errorText:m,label:h,className:g,style:_}){let[v,y]=(0,o.useState)(r),b=t===void 0?v:t,x=(0,o.useCallback)(e=>{t===void 0&&y(e),i?.(e)},[i,t]),S=(0,o.useMemo)(()=>({name:e,value:b,disabled:u,size:d,color:f,onChange:x}),[e,b,u,d,f,x]);return(0,s.jsx)(l.Provider,{value:S,children:(0,s.jsxs)(`fieldset`,{className:n.t(`radio-group`,a,g),style:_,role:`radiogroup`,children:[h&&(0,s.jsx)(`legend`,{className:n.t(`label`,p&&`error`),children:h}),c,m&&(0,s.jsx)(`span`,{className:`field-error`,role:`alert`,children:m})]})})}function p({onLoadMore:e,loading:t=!1,hasMore:r=!0,loaded:a,total:c,auto:l=!1,autoThreshold:u=100,variant:d=`outlined`,color:f=`primary`,label:p=`Load more`,loadingLabel:m=`Loading...`,doneLabel:h=`All items loaded`,className:g,..._}){let v=(0,o.useRef)(null),y=(0,o.useRef)(e);y.current=e,(0,o.useEffect)(()=>{if(!l||!r||t)return;let e=v.current;if(!e)return;let n=new IntersectionObserver(e=>{e[0].isIntersecting&&y.current()},{rootMargin:`${u}px`});return n.observe(e),()=>n.disconnect()},[l,r,t,u]);let b=(0,o.useCallback)(()=>{!t&&r&&e()},[e,t,r]),x=a!==void 0&&c!==void 0;return(0,s.jsxs)(`div`,{className:n.t(`load-more`,g),..._,children:[x&&(0,s.jsxs)(`span`,{className:`load-more-count`,children:[a,` / `,c]}),r?(0,s.jsx)(i.t,{variant:d,color:f,loading:t,onClick:b,className:`load-more-btn`,children:t?m:p}):(0,s.jsx)(`span`,{className:`load-more-done`,children:h}),l&&r&&(0,s.jsx)(`div`,{ref:v,className:`load-more-sentinel`}),x&&(0,s.jsx)(`div`,{className:`load-more-bar`,children:(0,s.jsx)(`div`,{className:`load-more-bar-fill`,style:{width:`${Math.min(a/c*100,100)}%`}})})]})}function m({threshold:e=300,variant:r=`filled`,color:a=`primary`,smooth:c=!0,className:l}){let[u,d]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{function t(){d(window.scrollY>e)}return t(),window.addEventListener(`scroll`,t,{passive:!0}),()=>window.removeEventListener(`scroll`,t)},[e]),(0,s.jsx)(i.t,{variant:r,color:a,shape:`circle`,size:`lg`,iconOnly:!0,onClick:(0,o.useCallback)(()=>{window.scrollTo({top:0,behavior:c?`smooth`:`instant`})},[c]),"aria-label":`Scroll to top`,className:n.t(`scroll-top`,u&&`visible`,l),children:(0,s.jsx)(t.ki,{})})}function h({items:e,layout:t=`group`,orientation:r=`horizontal`,columns:o=4,size:l=`sm`,color:u,variant:d=`ghost`,fullWidth:f=!0,className:p,...m}){let h=e.map(e=>(0,s.jsx)(i.t,{component:e.component,to:e.to,href:e.href,target:e.target,rel:e.rel,onClick:e.onClick,color:e.color??u,variant:e.variant??d,size:l,startIcon:e.icon,badge:e.badge,badgeColor:e.badgeColor,badgePulsing:e.badgePulsing,pulsing:e.pulsing,disabled:e.disabled,fullWidth:t===`grid`?!0:f,children:e.label},e.key??e.to??e.href??e.label?.toString()));return t===`grid`?(0,s.jsx)(a.t,{columns:o,className:n.t(`quick-actions`,f&&`full-width`,p),...m,children:h}):(0,s.jsx)(`div`,{className:n.t(`quick-actions`,f&&`full-width`,p),...m,children:(0,s.jsx)(c,{orientation:r,size:l,variant:d,color:u,attached:!1,children:h})})}function g(e,t){return(0,s.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,...t,children:e})}function _(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10.2`,fill:`#fff`,stroke:`#dadce0`,strokeWidth:`1.2`}),(0,s.jsx)(`path`,{d:`M17.95 12.25c0-.48-.04-.83-.13-1.2H12v2.26h3.42c-.07.56-.48 1.4-1.4 1.97l-.01.08 2 1.52.14.02c1.28-1.15 1.8-2.84 1.8-4.65z`,fill:`#4285F4`}),(0,s.jsx)(`path`,{d:`M12 18.2c1.67 0 3.07-.54 4.1-1.48l-2.13-1.62c-.57.39-1.34.67-1.97.67-1.64 0-3.03-1.06-3.53-2.53l-.08.01-2.08 1.58-.03.08c1.02 1.97 3.09 3.29 5.72 3.29z`,fill:`#34A853`}),(0,s.jsx)(`path`,{d:`M8.47 13.24a3.72 3.72 0 0 1-.2-1.24c0-.43.08-.84.19-1.24l-.01-.08-2.1-1.6-.07.03a6.02 6.02 0 0 0 0 5.78l2.19-1.65z`,fill:`#FBBC05`}),(0,s.jsx)(`path`,{d:`M12 8.22c.8 0 1.53.27 2.1.8l1.54-1.48C14.99 6.96 13.67 6.5 12 6.5c-2.63 0-4.7 1.32-5.72 3.29l2.18 1.66c.5-1.47 1.9-2.53 3.54-2.53z`,fill:`#EA4335`})]}),e)}function v(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`rect`,{x:`2.2`,y:`2.2`,width:`19.6`,height:`19.6`,rx:`6.2`,fill:`#1877F2`}),(0,s.jsx)(`path`,{d:`M13.28 20v-6.02h2.02l.31-2.43h-2.33V10c0-.78.27-1.37 1.35-1.37h1.11V6.4c-.4-.06-1.09-.11-2.03-.11-2.3 0-3.64 1.22-3.64 3.76v1.49h-1.9v2.44h1.9V20z`,fill:`#fff`})]}),e)}function y(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`path`,{d:`M15.38 11.84c.02 2.33 2.04 3.1 2.07 3.12-.03.07-.33 1.09-1.06 2.16-.63.91-1.3 1.84-2.34 1.86-1.03.02-1.37-.61-2.57-.61-1.2 0-1.57.59-2.53.63-1.02.04-1.79-1.01-2.43-1.92-1.3-1.89-2.3-5.33-.97-7.64.67-1.15 1.86-1.88 3.14-1.9.98-.02 1.89.65 2.57.65.67 0 1.92-.81 3.24-.69.55.02 2.1.22 3.09 1.67-.08.05-1.84 1.07-1.81 2.67z`,fill:`currentColor`}),(0,s.jsx)(`path`,{d:`M13.59 4.67c.53-.64.9-1.52.8-2.42-.77.04-1.69.52-2.24 1.15-.5.58-.93 1.49-.82 2.35.86.07 1.72-.44 2.26-1.08z`,fill:`currentColor`})]}),e)}function b(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`rect`,{x:`3.5`,y:`3.5`,width:`7.8`,height:`7.8`,rx:`1.3`,fill:`#F25022`}),(0,s.jsx)(`rect`,{x:`12.7`,y:`3.5`,width:`7.8`,height:`7.8`,rx:`1.3`,fill:`#7FBA00`}),(0,s.jsx)(`rect`,{x:`3.5`,y:`12.7`,width:`7.8`,height:`7.8`,rx:`1.3`,fill:`#00A4EF`}),(0,s.jsx)(`rect`,{x:`12.7`,y:`12.7`,width:`7.8`,height:`7.8`,rx:`1.3`,fill:`#FFB900`})]}),e)}function x(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10.1`,fill:`#fff`}),(0,s.jsx)(`path`,{d:`M12.87 6.76c-2.95 0-4.74 2.03-4.74 4.34 0 1.65.92 3.07 2.38 3.62.1.03.14.01.17-.06l.32-1.23c.05-.14.02-.19-.09-.33-.26-.33-.47-.96-.47-1.57 0-1.52 1.14-2.97 3.08-2.97 1.68 0 2.86 1.14 2.86 2.78 0 1.86-.93 3.13-2.14 3.13-.67 0-1.17-.56-1-1.23.18-.8.55-1.64.55-2.2 0-.51-.28-.93-.84-.93-.67 0-1.2.69-1.2 1.62 0 .59.2.99.2.99l-.78 3.28c-.14.58-.03 1.55.01 1.68.02.08.1.1.15.03.09-.11 1.07-1.49 1.24-2.18l.27-1.06c.25.48.99.89 1.77.89 2.34 0 4.04-2.15 4.04-4.79 0-2.54-2.08-4.44-4.78-4.44z`,fill:`#E60023`})]}),e)}function S(e){return g((0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`rect`,{x:`2.4`,y:`2.4`,width:`19.2`,height:`19.2`,rx:`4.8`,fill:`#fff`}),(0,s.jsx)(`path`,{d:`M8.1 10.02h2.04v7.24H8.1zm1.03-3.22a1.17 1.17 0 1 1 0 2.35 1.17 1.17 0 0 1 0-2.35zm2.68 3.22h1.95v.99c.34-.61 1.08-1.15 2.13-1.15 2.15 0 2.82 1.42 2.82 3.78v3.62h-2.04v-3.26c0-.98-.35-1.67-1.23-1.67-.66 0-1.05.45-1.23.88-.08.16-.08.38-.08.59v3.46h-2.32z`,fill:`#0A66C2`})]}),e)}var C={google:{label:`Sign in with Google`,iconLabel:`Google`,mode:`google`,Icon:_},facebook:{label:`Sign in with Facebook`,iconLabel:`Facebook`,mode:`outline`,Icon:v},apple:{label:`Sign in with Apple`,iconLabel:`Apple`,mode:`brand`,Icon:y},microsoft:{label:`Sign in with Microsoft`,iconLabel:`Microsoft`,mode:`brand`,Icon:b},pinterest:{label:`Sign in with Pinterest`,iconLabel:`Pinterest`,mode:`brand`,Icon:x},linkedin:{label:`Sign in with LinkedIn`,iconLabel:`LinkedIn`,mode:`brand`,Icon:S}},w=(0,o.forwardRef)(function({platform:t=`google`,variant:a=`outline`,size:o=`md`,iconOnly:c=!1,iconShape:l=`circle`,hidden:u,fullWidth:d=!1,loading:f=!1,active:p=!1,pulsing:m=!1,clickEffect:h=`ripple`,rippleColor:g,className:_,style:v,children:y,disabled:b=!1,type:x=`button`,onPointerDown:S,onKeyDown:w,"aria-label":T,...E},D){let O=C[t],k=O.Icon,A=y??O.label,j=T??(c?O.iconLabel:void 0),M=O.mode===`google`?a:O.mode,N=b||f,{effectClassName:P,effectLayer:F,handlePointerDown:I,triggerEffect:L}=r.t({effect:h,disabled:N,centered:c,color:g});return(0,s.jsxs)(`button`,{ref:D,type:x,className:n.t(`social-button-root`,t,M,o,d&&`full-width`,c&&`icon-only`,c&&`icon-shape-${l}`,f&&`loading`,p&&`active`,m&&`pulsing`,N&&`disabled`,P,_),style:v,disabled:N,"aria-busy":f||void 0,"aria-label":j,onPointerDown:e=>{I(e),S?.(e)},onKeyDown:e=>{(e.key===` `||e.key===`Enter`)&&L(e.currentTarget),w?.(e)},...e.r(u),...E,children:[F,f&&(0,s.jsx)(i.r,{size:`sm`,color:`inherit`,className:`social-button-spinner`,"aria-hidden":`true`}),(0,s.jsx)(`span`,{className:`social-button-brand`,"aria-hidden":`true`,children:(0,s.jsx)(k,{className:`social-button-mark`})}),!c&&(0,s.jsx)(`span`,{className:`social-button-label`,children:A})]})});Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return w}});
2
- //# sourceMappingURL=controls-CYQxPd4U.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controls-CYQxPd4U.cjs","names":[],"sources":["../src/components/controls/MButtonGroup/MButtonGroup.tsx","../src/components/controls/MRadio/RadioContext.ts","../src/components/controls/MRadio/MRadio.tsx","../src/components/controls/MRadio/MRadioGroup.tsx","../src/components/controls/MLoadMore/MLoadMore.tsx","../src/components/controls/MScrollTop/MScrollTop.tsx","../src/components/controls/MQuickActions/MQuickActions.tsx","../src/components/controls/MSocialButton/MSocialButton.icons.tsx","../src/components/controls/MSocialButton/MSocialButton.tsx"],"sourcesContent":["import {forwardRef, useMemo} from 'react'\nimport type {MButtonGroupProps} from './MButtonGroup.types'\nimport {ButtonGroupContext} from './MButtonGroupContext'\nimport type {MButtonGroupContextValue} from './MButtonGroupContext'\nimport {cn} from '../../../utils/cn'\nimport './MButtonGroup.css'\n\nexport const MButtonGroup = forwardRef<HTMLDivElement, MButtonGroupProps>(function MButtonGroup(\n {orientation = 'horizontal', variant, size, color, attached = true, className, children, ...rest},\n ref\n) {\n const ctx = useMemo<MButtonGroupContextValue>(() => ({variant, size, color}), [variant, size, color])\n\n return (\n <ButtonGroupContext.Provider value={ctx}>\n <div\n ref={ref}\n role=\"group\"\n className={cn('button-group', orientation, attached && 'attached', className)}\n {...rest}\n >\n {children}\n </div>\n </ButtonGroupContext.Provider>\n )\n})\n","import {createContext, useContext} from 'react'\nimport type {MRadioGroupContextValue} from './MRadio.types'\n\nexport const RadioContext = createContext<MRadioGroupContextValue | null>(null)\n\n// Read the nearest radio-group context when a radio participates in grouped state.\nexport function useRadioGroup(): MRadioGroupContextValue | null {\n return useContext(RadioContext)\n}\n","import {forwardRef, useCallback} from 'react'\nimport type * as React from 'react'\nimport type {MRadioProps} from './MRadio.types'\nimport {useRadioGroup} from './RadioContext'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MRadio.css'\n\n// Render a single radio that can work standalone or inside MRadioGroup.\nexport const MRadio = forwardRef<HTMLInputElement, MRadioProps>(function MRadio(\n {\n checked,\n defaultChecked,\n name,\n id,\n value,\n disabled = false,\n size = 'md',\n color = 'primary',\n label,\n labelPosition = 'right',\n onChange,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n },\n ref\n) {\n const group = useRadioGroup()\n\n const resolvedName = group?.name ?? name\n const resolvedDisabled = group?.disabled ?? disabled\n const resolvedSize = group?.size ?? size\n const resolvedColor = group?.color ?? color\n const resolvedChecked = group ? group.value === value : checked\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLSpanElement>({\n effect: clickEffect,\n disabled: resolvedDisabled,\n centered: true,\n color: rippleColor,\n })\n\n // Delegate selection back to the group when one is present.\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event)\n if (group?.onChange && value) {\n group.onChange(value)\n }\n },\n [onChange, group, value]\n )\n\n return (\n <label\n className={cn(\n 'radio',\n resolvedSize,\n labelPosition === 'left' && 'label-left',\n resolvedDisabled && 'disabled',\n className\n )}\n style={style}\n >\n <span className={cn('circle', `color-${resolvedColor}`, effectClassName)} onPointerDown={handlePointerDown}>\n {effectLayer}\n <input\n ref={ref}\n type=\"radio\"\n name={resolvedName}\n id={id}\n value={value}\n checked={resolvedChecked}\n defaultChecked={!group ? defaultChecked : undefined}\n disabled={resolvedDisabled}\n onChange={handleChange}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget.parentElement as HTMLSpanElement | null)\n }\n }}\n className=\"input\"\n />\n </span>\n {label && <span className=\"label-text\">{label}</span>}\n </label>\n )\n})\n","import {useState, useCallback, useMemo} from 'react'\nimport type {MRadioGroupProps} from './MRadio.types'\nimport {RadioContext} from './RadioContext'\nimport {cn} from '../../../utils/cn'\nimport './MRadio.css'\n\n// Coordinate multiple radio items through shared context and optional controlled state.\nexport function MRadioGroup({\n name,\n value,\n defaultValue,\n onChange,\n direction = 'vertical',\n children,\n disabled = false,\n size = 'md',\n color = 'primary',\n error = false,\n errorText,\n label,\n className,\n style,\n}: MRadioGroupProps) {\n const [internalValue, setInternalValue] = useState(defaultValue)\n const currentValue = value !== undefined ? value : internalValue\n\n // Mirror controlled and uncontrolled usage with the same group API.\n const handleChange = useCallback(\n (val: string) => {\n if (value === undefined) {\n setInternalValue(val)\n }\n onChange?.(val)\n },\n [onChange, value]\n )\n\n // Memoize context so nested radios only update when relevant inputs change.\n const ctx = useMemo(\n () => ({name, value: currentValue, disabled, size, color, onChange: handleChange}),\n [name, currentValue, disabled, size, color, handleChange]\n )\n\n return (\n <RadioContext.Provider value={ctx}>\n <fieldset className={cn('radio-group', direction, className)} style={style} role=\"radiogroup\">\n {label && <legend className={cn('label', error && 'error')}>{label}</legend>}\n {children}\n {errorText && (\n <span className=\"field-error\" role=\"alert\">\n {errorText}\n </span>\n )}\n </fieldset>\n </RadioContext.Provider>\n )\n}\n","import {useEffect, useRef, useCallback} from 'react'\nimport type {MLoadMoreProps} from './MLoadMore.types'\nimport {MButton} from '../MButton'\nimport {cn} from '../../../utils/cn'\nimport './MLoadMore.css'\n\nexport function MLoadMore({\n onLoadMore,\n loading = false,\n hasMore = true,\n loaded,\n total,\n auto = false,\n autoThreshold = 100,\n variant = 'outlined',\n color = 'primary',\n label = 'Load more',\n loadingLabel = 'Loading...',\n doneLabel = 'All items loaded',\n className,\n ...rest\n}: MLoadMoreProps) {\n const sentinelRef = useRef<HTMLDivElement>(null)\n const loadMoreRef = useRef(onLoadMore)\n loadMoreRef.current = onLoadMore\n\n useEffect(() => {\n if (!auto || !hasMore || loading) return\n\n const sentinel = sentinelRef.current\n if (!sentinel) return\n\n const observer = new IntersectionObserver(\n (entries) => {\n if (entries[0].isIntersecting) {\n loadMoreRef.current()\n }\n },\n {rootMargin: `${autoThreshold}px`}\n )\n\n observer.observe(sentinel)\n return () => observer.disconnect()\n }, [auto, hasMore, loading, autoThreshold])\n\n const handleClick = useCallback(() => {\n if (!loading && hasMore) onLoadMore()\n }, [onLoadMore, loading, hasMore])\n\n const showCount = loaded !== undefined && total !== undefined\n\n return (\n <div className={cn('load-more', className)} {...rest}>\n {showCount && (\n <span className=\"load-more-count\">\n {loaded} / {total}\n </span>\n )}\n\n {hasMore ? (\n <MButton\n variant={variant}\n color={color}\n loading={loading}\n onClick={handleClick}\n className=\"load-more-btn\"\n >\n {loading ? loadingLabel : label}\n </MButton>\n ) : (\n <span className=\"load-more-done\">{doneLabel}</span>\n )}\n\n {auto && hasMore && <div ref={sentinelRef} className=\"load-more-sentinel\" />}\n\n {showCount && (\n <div className=\"load-more-bar\">\n <div className=\"load-more-bar-fill\" style={{width: `${Math.min((loaded / total) * 100, 100)}%`}} />\n </div>\n )}\n </div>\n )\n}\n","import {useState, useEffect, useCallback} from 'react'\nimport type {MScrollTopProps} from './MScrollTop.types'\nimport {MButton} from '../MButton'\nimport {MArrowUpIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MScrollTop.css'\n\nexport function MScrollTop({\n threshold = 300,\n variant = 'filled',\n color = 'primary',\n smooth = true,\n className,\n}: MScrollTopProps) {\n const [visible, setVisible] = useState(false)\n\n useEffect(() => {\n function onScroll() {\n setVisible(window.scrollY > threshold)\n }\n onScroll()\n window.addEventListener('scroll', onScroll, {passive: true})\n return () => window.removeEventListener('scroll', onScroll)\n }, [threshold])\n\n const scrollToTop = useCallback(() => {\n window.scrollTo({top: 0, behavior: smooth ? 'smooth' : 'instant'})\n }, [smooth])\n\n return (\n <MButton\n variant={variant}\n color={color}\n shape=\"circle\"\n size=\"lg\"\n iconOnly\n onClick={scrollToTop}\n aria-label=\"Scroll to top\"\n className={cn('scroll-top', visible && 'visible', className)}\n >\n <MArrowUpIcon />\n </MButton>\n )\n}\n","import type {MQuickActionsProps} from './MQuickActions.types'\nimport {MButton} from '../MButton'\nimport {MButtonGroup} from '../MButtonGroup'\nimport {MSimpleGrid} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport './MQuickActions.css'\n\nexport function MQuickActions({\n items,\n layout = 'group',\n orientation = 'horizontal',\n columns = 4,\n size = 'sm',\n color,\n variant = 'ghost',\n fullWidth = true,\n className,\n ...rest\n}: MQuickActionsProps) {\n const buttons = items.map((item) => (\n <MButton\n key={item.key ?? item.to ?? item.href ?? item.label?.toString()}\n component={item.component}\n to={item.to}\n href={item.href}\n target={item.target}\n rel={item.rel}\n onClick={item.onClick}\n color={item.color ?? color}\n variant={item.variant ?? variant}\n size={size}\n startIcon={item.icon}\n badge={item.badge}\n badgeColor={item.badgeColor}\n badgePulsing={item.badgePulsing}\n pulsing={item.pulsing}\n disabled={item.disabled}\n fullWidth={layout === 'grid' ? true : fullWidth}\n >\n {item.label}\n </MButton>\n ))\n\n if (layout === 'grid') {\n return (\n <MSimpleGrid\n columns={columns}\n className={cn('quick-actions', fullWidth && 'full-width', className)}\n {...rest}\n >\n {buttons}\n </MSimpleGrid>\n )\n }\n\n return (\n <div className={cn('quick-actions', fullWidth && 'full-width', className)} {...rest}>\n <MButtonGroup orientation={orientation} size={size} variant={variant} color={color} attached={false}>\n {buttons}\n </MButtonGroup>\n </div>\n )\n}\n","import type {ReactNode, SVGProps} from 'react'\n\ntype SocialMarkProps = SVGProps<SVGSVGElement>\n\nfunction createMark(children: ReactNode, props: SocialMarkProps) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" {...props}>\n {children}\n </svg>\n )\n}\n\nexport function SocialGoogleMark(props: SocialMarkProps) {\n return createMark(\n <>\n <circle cx=\"12\" cy=\"12\" r=\"10.2\" fill=\"#fff\" stroke=\"#dadce0\" strokeWidth=\"1.2\" />\n <path\n d=\"M17.95 12.25c0-.48-.04-.83-.13-1.2H12v2.26h3.42c-.07.56-.48 1.4-1.4 1.97l-.01.08 2 1.52.14.02c1.28-1.15 1.8-2.84 1.8-4.65z\"\n fill=\"#4285F4\"\n />\n <path\n d=\"M12 18.2c1.67 0 3.07-.54 4.1-1.48l-2.13-1.62c-.57.39-1.34.67-1.97.67-1.64 0-3.03-1.06-3.53-2.53l-.08.01-2.08 1.58-.03.08c1.02 1.97 3.09 3.29 5.72 3.29z\"\n fill=\"#34A853\"\n />\n <path\n d=\"M8.47 13.24a3.72 3.72 0 0 1-.2-1.24c0-.43.08-.84.19-1.24l-.01-.08-2.1-1.6-.07.03a6.02 6.02 0 0 0 0 5.78l2.19-1.65z\"\n fill=\"#FBBC05\"\n />\n <path\n d=\"M12 8.22c.8 0 1.53.27 2.1.8l1.54-1.48C14.99 6.96 13.67 6.5 12 6.5c-2.63 0-4.7 1.32-5.72 3.29l2.18 1.66c.5-1.47 1.9-2.53 3.54-2.53z\"\n fill=\"#EA4335\"\n />\n </>,\n props\n )\n}\n\nexport function SocialFacebookMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"2.2\" y=\"2.2\" width=\"19.6\" height=\"19.6\" rx=\"6.2\" fill=\"#1877F2\" />\n <path\n d=\"M13.28 20v-6.02h2.02l.31-2.43h-2.33V10c0-.78.27-1.37 1.35-1.37h1.11V6.4c-.4-.06-1.09-.11-2.03-.11-2.3 0-3.64 1.22-3.64 3.76v1.49h-1.9v2.44h1.9V20z\"\n fill=\"#fff\"\n />\n </>,\n props\n )\n}\n\nexport function SocialAppleMark(props: SocialMarkProps) {\n return createMark(\n <>\n <path\n d=\"M15.38 11.84c.02 2.33 2.04 3.1 2.07 3.12-.03.07-.33 1.09-1.06 2.16-.63.91-1.3 1.84-2.34 1.86-1.03.02-1.37-.61-2.57-.61-1.2 0-1.57.59-2.53.63-1.02.04-1.79-1.01-2.43-1.92-1.3-1.89-2.3-5.33-.97-7.64.67-1.15 1.86-1.88 3.14-1.9.98-.02 1.89.65 2.57.65.67 0 1.92-.81 3.24-.69.55.02 2.1.22 3.09 1.67-.08.05-1.84 1.07-1.81 2.67z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M13.59 4.67c.53-.64.9-1.52.8-2.42-.77.04-1.69.52-2.24 1.15-.5.58-.93 1.49-.82 2.35.86.07 1.72-.44 2.26-1.08z\"\n fill=\"currentColor\"\n />\n </>,\n props\n )\n}\n\nexport function SocialMicrosoftMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"3.5\" y=\"3.5\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#F25022\" />\n <rect x=\"12.7\" y=\"3.5\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#7FBA00\" />\n <rect x=\"3.5\" y=\"12.7\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#00A4EF\" />\n <rect x=\"12.7\" y=\"12.7\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#FFB900\" />\n </>,\n props\n )\n}\n\nexport function SocialPinterestMark(props: SocialMarkProps) {\n return createMark(\n <>\n <circle cx=\"12\" cy=\"12\" r=\"10.1\" fill=\"#fff\" />\n <path\n d=\"M12.87 6.76c-2.95 0-4.74 2.03-4.74 4.34 0 1.65.92 3.07 2.38 3.62.1.03.14.01.17-.06l.32-1.23c.05-.14.02-.19-.09-.33-.26-.33-.47-.96-.47-1.57 0-1.52 1.14-2.97 3.08-2.97 1.68 0 2.86 1.14 2.86 2.78 0 1.86-.93 3.13-2.14 3.13-.67 0-1.17-.56-1-1.23.18-.8.55-1.64.55-2.2 0-.51-.28-.93-.84-.93-.67 0-1.2.69-1.2 1.62 0 .59.2.99.2.99l-.78 3.28c-.14.58-.03 1.55.01 1.68.02.08.1.1.15.03.09-.11 1.07-1.49 1.24-2.18l.27-1.06c.25.48.99.89 1.77.89 2.34 0 4.04-2.15 4.04-4.79 0-2.54-2.08-4.44-4.78-4.44z\"\n fill=\"#E60023\"\n />\n </>,\n props\n )\n}\n\nexport function SocialLinkedInMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"2.4\" y=\"2.4\" width=\"19.2\" height=\"19.2\" rx=\"4.8\" fill=\"#fff\" />\n <path\n d=\"M8.1 10.02h2.04v7.24H8.1zm1.03-3.22a1.17 1.17 0 1 1 0 2.35 1.17 1.17 0 0 1 0-2.35zm2.68 3.22h1.95v.99c.34-.61 1.08-1.15 2.13-1.15 2.15 0 2.82 1.42 2.82 3.78v3.62h-2.04v-3.26c0-.98-.35-1.67-1.23-1.67-.66 0-1.05.45-1.23.88-.08.16-.08.38-.08.59v3.46h-2.32z\"\n fill=\"#0A66C2\"\n />\n </>,\n props\n )\n}\n","import {forwardRef} from 'react'\nimport type {MSocialButtonProps} from './MSocialButton.types'\nimport {getHiddenProps} from '../../../theme'\nimport {\n SocialAppleMark,\n SocialFacebookMark,\n SocialGoogleMark,\n SocialLinkedInMark,\n SocialMicrosoftMark,\n SocialPinterestMark,\n} from './MSocialButton.icons'\nimport {MSpinner} from '../../feedback'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MSocialButton.css'\n\nconst socialButtonConfig = {\n google: {\n label: 'Sign in with Google',\n iconLabel: 'Google',\n mode: 'google',\n Icon: SocialGoogleMark,\n },\n facebook: {\n label: 'Sign in with Facebook',\n iconLabel: 'Facebook',\n mode: 'outline',\n Icon: SocialFacebookMark,\n },\n apple: {\n label: 'Sign in with Apple',\n iconLabel: 'Apple',\n mode: 'brand',\n Icon: SocialAppleMark,\n },\n microsoft: {\n label: 'Sign in with Microsoft',\n iconLabel: 'Microsoft',\n mode: 'brand',\n Icon: SocialMicrosoftMark,\n },\n pinterest: {\n label: 'Sign in with Pinterest',\n iconLabel: 'Pinterest',\n mode: 'brand',\n Icon: SocialPinterestMark,\n },\n linkedin: {\n label: 'Sign in with LinkedIn',\n iconLabel: 'LinkedIn',\n mode: 'brand',\n Icon: SocialLinkedInMark,\n },\n} as const\n\nexport const MSocialButton = forwardRef<HTMLButtonElement, MSocialButtonProps>(function MSocialButton(\n {\n platform = 'google',\n variant = 'outline',\n size = 'md',\n iconOnly = false,\n iconShape = 'circle',\n hidden,\n fullWidth = false,\n loading = false,\n active = false,\n pulsing = false,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n children,\n disabled = false,\n type = 'button',\n onPointerDown,\n onKeyDown,\n 'aria-label': ariaLabel,\n ...rest\n },\n ref\n) {\n const config = socialButtonConfig[platform]\n const Icon = config.Icon\n const label = children ?? config.label\n const resolvedAriaLabel = ariaLabel ?? (iconOnly ? config.iconLabel : undefined)\n const resolvedVariant = config.mode === 'google' ? variant : config.mode\n const isDisabled = disabled || loading\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLButtonElement>({\n effect: clickEffect,\n disabled: isDisabled,\n centered: iconOnly,\n color: rippleColor,\n })\n\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n 'social-button-root',\n platform,\n resolvedVariant,\n size,\n fullWidth && 'full-width',\n iconOnly && 'icon-only',\n iconOnly && `icon-shape-${iconShape}`,\n loading && 'loading',\n active && 'active',\n pulsing && 'pulsing',\n isDisabled && 'disabled',\n effectClassName,\n className\n )}\n style={style}\n disabled={isDisabled}\n aria-busy={loading || undefined}\n aria-label={resolvedAriaLabel}\n onPointerDown={(event) => {\n handlePointerDown(event)\n onPointerDown?.(event)\n }}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget)\n }\n\n onKeyDown?.(event)\n }}\n {...getHiddenProps(hidden)}\n {...rest}\n >\n {effectLayer}\n {loading && <MSpinner size=\"sm\" color=\"inherit\" className=\"social-button-spinner\" aria-hidden=\"true\" />}\n <span className=\"social-button-brand\" aria-hidden=\"true\">\n <Icon className=\"social-button-mark\" />\n </span>\n {!iconOnly && <span className=\"social-button-label\">{label}</span>}\n </button>\n )\n})\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"controls-CcbEqqWo.js","names":[],"sources":["../src/components/controls/MButtonGroup/MButtonGroup.tsx","../src/components/controls/MRadio/RadioContext.ts","../src/components/controls/MRadio/MRadio.tsx","../src/components/controls/MRadio/MRadioGroup.tsx","../src/components/controls/MLoadMore/MLoadMore.tsx","../src/components/controls/MScrollTop/MScrollTop.tsx","../src/components/controls/MQuickActions/MQuickActions.tsx","../src/components/controls/MSocialButton/MSocialButton.icons.tsx","../src/components/controls/MSocialButton/MSocialButton.tsx"],"sourcesContent":["import {forwardRef, useMemo} from 'react'\nimport type {MButtonGroupProps} from './MButtonGroup.types'\nimport {ButtonGroupContext} from './MButtonGroupContext'\nimport type {MButtonGroupContextValue} from './MButtonGroupContext'\nimport {cn} from '../../../utils/cn'\nimport './MButtonGroup.css'\n\nexport const MButtonGroup = forwardRef<HTMLDivElement, MButtonGroupProps>(function MButtonGroup(\n {orientation = 'horizontal', variant, size, color, attached = true, className, children, ...rest},\n ref\n) {\n const ctx = useMemo<MButtonGroupContextValue>(() => ({variant, size, color}), [variant, size, color])\n\n return (\n <ButtonGroupContext.Provider value={ctx}>\n <div\n ref={ref}\n role=\"group\"\n className={cn('button-group', orientation, attached && 'attached', className)}\n {...rest}\n >\n {children}\n </div>\n </ButtonGroupContext.Provider>\n )\n})\n","import {createContext, useContext} from 'react'\nimport type {MRadioGroupContextValue} from './MRadio.types'\n\nexport const RadioContext = createContext<MRadioGroupContextValue | null>(null)\n\n// Read the nearest radio-group context when a radio participates in grouped state.\nexport function useRadioGroup(): MRadioGroupContextValue | null {\n return useContext(RadioContext)\n}\n","import {forwardRef, useCallback} from 'react'\nimport type * as React from 'react'\nimport type {MRadioProps} from './MRadio.types'\nimport {useRadioGroup} from './RadioContext'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MRadio.css'\n\n// Render a single radio that can work standalone or inside MRadioGroup.\nexport const MRadio = forwardRef<HTMLInputElement, MRadioProps>(function MRadio(\n {\n checked,\n defaultChecked,\n name,\n id,\n value,\n disabled = false,\n size = 'md',\n color = 'primary',\n label,\n labelPosition = 'right',\n onChange,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n },\n ref\n) {\n const group = useRadioGroup()\n\n const resolvedName = group?.name ?? name\n const resolvedDisabled = group?.disabled ?? disabled\n const resolvedSize = group?.size ?? size\n const resolvedColor = group?.color ?? color\n const resolvedChecked = group ? group.value === value : checked\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLSpanElement>({\n effect: clickEffect,\n disabled: resolvedDisabled,\n centered: true,\n color: rippleColor,\n })\n\n // Delegate selection back to the group when one is present.\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event)\n if (group?.onChange && value) {\n group.onChange(value)\n }\n },\n [onChange, group, value]\n )\n\n return (\n <label\n className={cn(\n 'radio',\n resolvedSize,\n labelPosition === 'left' && 'label-left',\n resolvedDisabled && 'disabled',\n className\n )}\n style={style}\n >\n <span className={cn('circle', `color-${resolvedColor}`, effectClassName)} onPointerDown={handlePointerDown}>\n {effectLayer}\n <input\n ref={ref}\n type=\"radio\"\n name={resolvedName}\n id={id}\n value={value}\n checked={resolvedChecked}\n defaultChecked={!group ? defaultChecked : undefined}\n disabled={resolvedDisabled}\n onChange={handleChange}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget.parentElement as HTMLSpanElement | null)\n }\n }}\n className=\"input\"\n />\n </span>\n {label && <span className=\"label-text\">{label}</span>}\n </label>\n )\n})\n","import {useState, useCallback, useMemo} from 'react'\nimport type {MRadioGroupProps} from './MRadio.types'\nimport {RadioContext} from './RadioContext'\nimport {cn} from '../../../utils/cn'\nimport './MRadio.css'\n\n// Coordinate multiple radio items through shared context and optional controlled state.\nexport function MRadioGroup({\n name,\n value,\n defaultValue,\n onChange,\n direction = 'vertical',\n children,\n disabled = false,\n size = 'md',\n color = 'primary',\n error = false,\n errorText,\n label,\n className,\n style,\n}: MRadioGroupProps) {\n const [internalValue, setInternalValue] = useState(defaultValue)\n const currentValue = value !== undefined ? value : internalValue\n\n // Mirror controlled and uncontrolled usage with the same group API.\n const handleChange = useCallback(\n (val: string) => {\n if (value === undefined) {\n setInternalValue(val)\n }\n onChange?.(val)\n },\n [onChange, value]\n )\n\n // Memoize context so nested radios only update when relevant inputs change.\n const ctx = useMemo(\n () => ({name, value: currentValue, disabled, size, color, onChange: handleChange}),\n [name, currentValue, disabled, size, color, handleChange]\n )\n\n return (\n <RadioContext.Provider value={ctx}>\n <fieldset className={cn('radio-group', direction, className)} style={style} role=\"radiogroup\">\n {label && <legend className={cn('label', error && 'error')}>{label}</legend>}\n {children}\n {errorText && (\n <span className=\"field-error\" role=\"alert\">\n {errorText}\n </span>\n )}\n </fieldset>\n </RadioContext.Provider>\n )\n}\n","import {useEffect, useRef, useCallback} from 'react'\nimport type {MLoadMoreProps} from './MLoadMore.types'\nimport {MButton} from '../MButton'\nimport {cn} from '../../../utils/cn'\nimport './MLoadMore.css'\n\nexport function MLoadMore({\n onLoadMore,\n loading = false,\n hasMore = true,\n loaded,\n total,\n auto = false,\n autoThreshold = 100,\n variant = 'outlined',\n color = 'primary',\n label = 'Load more',\n loadingLabel = 'Loading...',\n doneLabel = 'All items loaded',\n className,\n ...rest\n}: MLoadMoreProps) {\n const sentinelRef = useRef<HTMLDivElement>(null)\n const loadMoreRef = useRef(onLoadMore)\n loadMoreRef.current = onLoadMore\n\n useEffect(() => {\n if (!auto || !hasMore || loading) return\n\n const sentinel = sentinelRef.current\n if (!sentinel) return\n\n const observer = new IntersectionObserver(\n (entries) => {\n if (entries[0].isIntersecting) {\n loadMoreRef.current()\n }\n },\n {rootMargin: `${autoThreshold}px`}\n )\n\n observer.observe(sentinel)\n return () => observer.disconnect()\n }, [auto, hasMore, loading, autoThreshold])\n\n const handleClick = useCallback(() => {\n if (!loading && hasMore) onLoadMore()\n }, [onLoadMore, loading, hasMore])\n\n const showCount = loaded !== undefined && total !== undefined\n\n return (\n <div className={cn('load-more', className)} {...rest}>\n {showCount && (\n <span className=\"load-more-count\">\n {loaded} / {total}\n </span>\n )}\n\n {hasMore ? (\n <MButton\n variant={variant}\n color={color}\n loading={loading}\n onClick={handleClick}\n className=\"load-more-btn\"\n >\n {loading ? loadingLabel : label}\n </MButton>\n ) : (\n <span className=\"load-more-done\">{doneLabel}</span>\n )}\n\n {auto && hasMore && <div ref={sentinelRef} className=\"load-more-sentinel\" />}\n\n {showCount && (\n <div className=\"load-more-bar\">\n <div className=\"load-more-bar-fill\" style={{width: `${Math.min((loaded / total) * 100, 100)}%`}} />\n </div>\n )}\n </div>\n )\n}\n","import {useState, useEffect, useCallback} from 'react'\nimport type {MScrollTopProps} from './MScrollTop.types'\nimport {MButton} from '../MButton'\nimport {MArrowUpIcon} from '../../../icons'\nimport {cn} from '../../../utils/cn'\nimport './MScrollTop.css'\n\nexport function MScrollTop({\n threshold = 300,\n variant = 'filled',\n color = 'primary',\n smooth = true,\n className,\n}: MScrollTopProps) {\n const [visible, setVisible] = useState(false)\n\n useEffect(() => {\n function onScroll() {\n setVisible(window.scrollY > threshold)\n }\n onScroll()\n window.addEventListener('scroll', onScroll, {passive: true})\n return () => window.removeEventListener('scroll', onScroll)\n }, [threshold])\n\n const scrollToTop = useCallback(() => {\n window.scrollTo({top: 0, behavior: smooth ? 'smooth' : 'instant'})\n }, [smooth])\n\n return (\n <MButton\n variant={variant}\n color={color}\n shape=\"circle\"\n size=\"lg\"\n iconOnly\n onClick={scrollToTop}\n aria-label=\"Scroll to top\"\n className={cn('scroll-top', visible && 'visible', className)}\n >\n <MArrowUpIcon />\n </MButton>\n )\n}\n","import type {MQuickActionsProps} from './MQuickActions.types'\nimport {MButton} from '../MButton'\nimport {MButtonGroup} from '../MButtonGroup'\nimport {MSimpleGrid} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport './MQuickActions.css'\n\nexport function MQuickActions({\n items,\n layout = 'group',\n orientation = 'horizontal',\n columns = 4,\n size = 'sm',\n color,\n variant = 'ghost',\n fullWidth = true,\n className,\n ...rest\n}: MQuickActionsProps) {\n const buttons = items.map((item) => (\n <MButton\n key={item.key ?? item.to ?? item.href ?? item.label?.toString()}\n component={item.component}\n to={item.to}\n href={item.href}\n target={item.target}\n rel={item.rel}\n onClick={item.onClick}\n color={item.color ?? color}\n variant={item.variant ?? variant}\n size={size}\n startIcon={item.icon}\n badge={item.badge}\n badgeColor={item.badgeColor}\n badgePulsing={item.badgePulsing}\n pulsing={item.pulsing}\n disabled={item.disabled}\n fullWidth={layout === 'grid' ? true : fullWidth}\n >\n {item.label}\n </MButton>\n ))\n\n if (layout === 'grid') {\n return (\n <MSimpleGrid\n columns={columns}\n className={cn('quick-actions', fullWidth && 'full-width', className)}\n {...rest}\n >\n {buttons}\n </MSimpleGrid>\n )\n }\n\n return (\n <div className={cn('quick-actions', fullWidth && 'full-width', className)} {...rest}>\n <MButtonGroup orientation={orientation} size={size} variant={variant} color={color} attached={false}>\n {buttons}\n </MButtonGroup>\n </div>\n )\n}\n","import type {ReactNode, SVGProps} from 'react'\n\ntype SocialMarkProps = SVGProps<SVGSVGElement>\n\nfunction createMark(children: ReactNode, props: SocialMarkProps) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" {...props}>\n {children}\n </svg>\n )\n}\n\nexport function SocialGoogleMark(props: SocialMarkProps) {\n return createMark(\n <>\n <circle cx=\"12\" cy=\"12\" r=\"10.2\" fill=\"#fff\" stroke=\"#dadce0\" strokeWidth=\"1.2\" />\n <path\n d=\"M17.95 12.25c0-.48-.04-.83-.13-1.2H12v2.26h3.42c-.07.56-.48 1.4-1.4 1.97l-.01.08 2 1.52.14.02c1.28-1.15 1.8-2.84 1.8-4.65z\"\n fill=\"#4285F4\"\n />\n <path\n d=\"M12 18.2c1.67 0 3.07-.54 4.1-1.48l-2.13-1.62c-.57.39-1.34.67-1.97.67-1.64 0-3.03-1.06-3.53-2.53l-.08.01-2.08 1.58-.03.08c1.02 1.97 3.09 3.29 5.72 3.29z\"\n fill=\"#34A853\"\n />\n <path\n d=\"M8.47 13.24a3.72 3.72 0 0 1-.2-1.24c0-.43.08-.84.19-1.24l-.01-.08-2.1-1.6-.07.03a6.02 6.02 0 0 0 0 5.78l2.19-1.65z\"\n fill=\"#FBBC05\"\n />\n <path\n d=\"M12 8.22c.8 0 1.53.27 2.1.8l1.54-1.48C14.99 6.96 13.67 6.5 12 6.5c-2.63 0-4.7 1.32-5.72 3.29l2.18 1.66c.5-1.47 1.9-2.53 3.54-2.53z\"\n fill=\"#EA4335\"\n />\n </>,\n props\n )\n}\n\nexport function SocialFacebookMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"2.2\" y=\"2.2\" width=\"19.6\" height=\"19.6\" rx=\"6.2\" fill=\"#1877F2\" />\n <path\n d=\"M13.28 20v-6.02h2.02l.31-2.43h-2.33V10c0-.78.27-1.37 1.35-1.37h1.11V6.4c-.4-.06-1.09-.11-2.03-.11-2.3 0-3.64 1.22-3.64 3.76v1.49h-1.9v2.44h1.9V20z\"\n fill=\"#fff\"\n />\n </>,\n props\n )\n}\n\nexport function SocialAppleMark(props: SocialMarkProps) {\n return createMark(\n <>\n <path\n d=\"M15.38 11.84c.02 2.33 2.04 3.1 2.07 3.12-.03.07-.33 1.09-1.06 2.16-.63.91-1.3 1.84-2.34 1.86-1.03.02-1.37-.61-2.57-.61-1.2 0-1.57.59-2.53.63-1.02.04-1.79-1.01-2.43-1.92-1.3-1.89-2.3-5.33-.97-7.64.67-1.15 1.86-1.88 3.14-1.9.98-.02 1.89.65 2.57.65.67 0 1.92-.81 3.24-.69.55.02 2.1.22 3.09 1.67-.08.05-1.84 1.07-1.81 2.67z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M13.59 4.67c.53-.64.9-1.52.8-2.42-.77.04-1.69.52-2.24 1.15-.5.58-.93 1.49-.82 2.35.86.07 1.72-.44 2.26-1.08z\"\n fill=\"currentColor\"\n />\n </>,\n props\n )\n}\n\nexport function SocialMicrosoftMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"3.5\" y=\"3.5\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#F25022\" />\n <rect x=\"12.7\" y=\"3.5\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#7FBA00\" />\n <rect x=\"3.5\" y=\"12.7\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#00A4EF\" />\n <rect x=\"12.7\" y=\"12.7\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"#FFB900\" />\n </>,\n props\n )\n}\n\nexport function SocialPinterestMark(props: SocialMarkProps) {\n return createMark(\n <>\n <circle cx=\"12\" cy=\"12\" r=\"10.1\" fill=\"#fff\" />\n <path\n d=\"M12.87 6.76c-2.95 0-4.74 2.03-4.74 4.34 0 1.65.92 3.07 2.38 3.62.1.03.14.01.17-.06l.32-1.23c.05-.14.02-.19-.09-.33-.26-.33-.47-.96-.47-1.57 0-1.52 1.14-2.97 3.08-2.97 1.68 0 2.86 1.14 2.86 2.78 0 1.86-.93 3.13-2.14 3.13-.67 0-1.17-.56-1-1.23.18-.8.55-1.64.55-2.2 0-.51-.28-.93-.84-.93-.67 0-1.2.69-1.2 1.62 0 .59.2.99.2.99l-.78 3.28c-.14.58-.03 1.55.01 1.68.02.08.1.1.15.03.09-.11 1.07-1.49 1.24-2.18l.27-1.06c.25.48.99.89 1.77.89 2.34 0 4.04-2.15 4.04-4.79 0-2.54-2.08-4.44-4.78-4.44z\"\n fill=\"#E60023\"\n />\n </>,\n props\n )\n}\n\nexport function SocialLinkedInMark(props: SocialMarkProps) {\n return createMark(\n <>\n <rect x=\"2.4\" y=\"2.4\" width=\"19.2\" height=\"19.2\" rx=\"4.8\" fill=\"#fff\" />\n <path\n d=\"M8.1 10.02h2.04v7.24H8.1zm1.03-3.22a1.17 1.17 0 1 1 0 2.35 1.17 1.17 0 0 1 0-2.35zm2.68 3.22h1.95v.99c.34-.61 1.08-1.15 2.13-1.15 2.15 0 2.82 1.42 2.82 3.78v3.62h-2.04v-3.26c0-.98-.35-1.67-1.23-1.67-.66 0-1.05.45-1.23.88-.08.16-.08.38-.08.59v3.46h-2.32z\"\n fill=\"#0A66C2\"\n />\n </>,\n props\n )\n}\n","import {forwardRef} from 'react'\nimport type {MSocialButtonProps} from './MSocialButton.types'\nimport {getHiddenProps} from '../../../theme'\nimport {\n SocialAppleMark,\n SocialFacebookMark,\n SocialGoogleMark,\n SocialLinkedInMark,\n SocialMicrosoftMark,\n SocialPinterestMark,\n} from './MSocialButton.icons'\nimport {MSpinner} from '../../feedback'\nimport {cn} from '../../../utils/cn'\nimport {useInteractionEffect} from '../../../utils/useInteractionEffect'\nimport './MSocialButton.css'\n\nconst socialButtonConfig = {\n google: {\n label: 'Sign in with Google',\n iconLabel: 'Google',\n mode: 'google',\n Icon: SocialGoogleMark,\n },\n facebook: {\n label: 'Sign in with Facebook',\n iconLabel: 'Facebook',\n mode: 'outline',\n Icon: SocialFacebookMark,\n },\n apple: {\n label: 'Sign in with Apple',\n iconLabel: 'Apple',\n mode: 'brand',\n Icon: SocialAppleMark,\n },\n microsoft: {\n label: 'Sign in with Microsoft',\n iconLabel: 'Microsoft',\n mode: 'brand',\n Icon: SocialMicrosoftMark,\n },\n pinterest: {\n label: 'Sign in with Pinterest',\n iconLabel: 'Pinterest',\n mode: 'brand',\n Icon: SocialPinterestMark,\n },\n linkedin: {\n label: 'Sign in with LinkedIn',\n iconLabel: 'LinkedIn',\n mode: 'brand',\n Icon: SocialLinkedInMark,\n },\n} as const\n\nexport const MSocialButton = forwardRef<HTMLButtonElement, MSocialButtonProps>(function MSocialButton(\n {\n platform = 'google',\n variant = 'outline',\n size = 'md',\n iconOnly = false,\n iconShape = 'circle',\n hidden,\n fullWidth = false,\n loading = false,\n active = false,\n pulsing = false,\n clickEffect = 'ripple',\n rippleColor,\n className,\n style,\n children,\n disabled = false,\n type = 'button',\n onPointerDown,\n onKeyDown,\n 'aria-label': ariaLabel,\n ...rest\n },\n ref\n) {\n const config = socialButtonConfig[platform]\n const Icon = config.Icon\n const label = children ?? config.label\n const resolvedAriaLabel = ariaLabel ?? (iconOnly ? config.iconLabel : undefined)\n const resolvedVariant = config.mode === 'google' ? variant : config.mode\n const isDisabled = disabled || loading\n const {effectClassName, effectLayer, handlePointerDown, triggerEffect} = useInteractionEffect<HTMLButtonElement>({\n effect: clickEffect,\n disabled: isDisabled,\n centered: iconOnly,\n color: rippleColor,\n })\n\n return (\n <button\n ref={ref}\n type={type}\n className={cn(\n 'social-button-root',\n platform,\n resolvedVariant,\n size,\n fullWidth && 'full-width',\n iconOnly && 'icon-only',\n iconOnly && `icon-shape-${iconShape}`,\n loading && 'loading',\n active && 'active',\n pulsing && 'pulsing',\n isDisabled && 'disabled',\n effectClassName,\n className\n )}\n style={style}\n disabled={isDisabled}\n aria-busy={loading || undefined}\n aria-label={resolvedAriaLabel}\n onPointerDown={(event) => {\n handlePointerDown(event)\n onPointerDown?.(event)\n }}\n onKeyDown={(event) => {\n if (event.key === ' ' || event.key === 'Enter') {\n triggerEffect(event.currentTarget)\n }\n\n onKeyDown?.(event)\n }}\n {...getHiddenProps(hidden)}\n {...rest}\n >\n {effectLayer}\n {loading && <MSpinner size=\"sm\" color=\"inherit\" className=\"social-button-spinner\" aria-hidden=\"true\" />}\n <span className=\"social-button-brand\" aria-hidden=\"true\">\n <Icon className=\"social-button-mark\" />\n </span>\n {!iconOnly && <span className=\"social-button-label\">{label}</span>}\n </button>\n )\n})\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./MCookieBootstrap-BUqtJO3m.cjs`);function t(e){return e.replace(/\/+$/,``)}function n(e){return`${e.storageKey??`mineralui-cookie-consent`}-key`}function r(e){if(typeof window>`u`)return null;try{return window.localStorage.getItem(e)}catch{return null}}function i(e,t){if(!(typeof window>`u`||!t))try{window.localStorage.setItem(e,t)}catch{}}function a(t){typeof window>`u`||(window[e.o]=t.config,window[e.c]=t,window.dispatchEvent(new CustomEvent(e.l)))}function o(e){if(!e?.src||typeof window>`u`)return null;try{return new URL(e.src,window.location.href)}catch{return null}}function s(e){if(typeof document>`u`)return null;let t=document.getElementById(`mineral-cookie-bootstrap`);if(t instanceof HTMLScriptElement)return t;let n=document.currentScript;if(n instanceof HTMLScriptElement)return n;if(!e||typeof window>`u`)return null;for(let t of Array.from(document.querySelectorAll(`script[src]`)))try{let n=new URL(t.src,window.location.href);if(n.href===e.href||n.origin===e.origin&&n.pathname===e.pathname)return t}catch{}return null}function c(e,a,o){let s=`${t(a)}/cookie/sites/${encodeURIComponent(o)}`,c=n(e);return{config:e,getDeclaration:async()=>{let e=await fetch(`${s}/declaration`);return e.ok?(await e.json()).items??[]:[]},getConsent:async()=>{let e=r(c);if(!e)return null;let t=await fetch(`${s}/consent?consentKey=${encodeURIComponent(e)}`);return t.ok?(await t.json()).state??null:null},saveConsent:async t=>{let n=r(c),a=await fetch(`${s}/consent`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({...n?{consentKey:n}:{},version:t.version,decidedAt:t.decidedAt,source:t.source,categories:t.categories,domain:typeof window<`u`?window.location.hostname:e.domain??null})});a.ok&&i(c,(await a.json()).consentKey)}}}async function l(n){if(typeof window>`u`||typeof fetch>`u`)return null;let r=window[e.o];if(r)return r;let i=s(n),l=n??o(i),u=i?.dataset.siteKey??l?.searchParams.get(`siteKey`);if(!u)return null;let d=i?.dataset.apiBase??l?.searchParams.get(`apiBase`)??l?.origin??window.location.origin,f=i?.dataset.configEndpoint??l?.searchParams.get(`configEndpoint`)??`${t(d)}/cookie/bootstrap/${encodeURIComponent(u)}`;try{let e=await fetch(f,{headers:{"x-mineral-site-key":u}});if(!e.ok)return null;let t=await e.json(),n={...t,siteKey:t.siteKey??u,scanEndpoint:t.scanEndpoint??i?.dataset.scanEndpoint??l?.searchParams.get(`scanEndpoint`)??void 0};return a(c(n,d,u)),n}catch{return null}}async function u(t){return await l(t),e.t()}u(new URL({}.url)),exports.MCOOKIE_BOOTSTRAP_CONFIG_KEY=e.o,exports.MCOOKIE_CONSENT_CHANGE_EVENT=e.s,exports.MCOOKIE_RUNTIME_KEY=e.c,exports.MCOOKIE_RUNTIME_READY_EVENT=e.l,exports.autoBootstrapMCookieConsent=e.t,exports.bootstrapMCookieConsent=e.n,exports.readMCookieBootstrapConfig=e.r,exports.reportMCookieSurface=e.i,exports.scanMCookieSurface=e.a;
2
- //# sourceMappingURL=cookie-consent-bootstrap.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cookie-consent-bootstrap.cjs","names":[],"sources":["../src/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script.ts","../src/cookie-consent-bootstrap.ts"],"sourcesContent":["import {autoBootstrapMCookieConsent} from './MCookieBootstrap'\nimport {\n MCOOKIE_BOOTSTRAP_CONFIG_KEY,\n MCOOKIE_RUNTIME_KEY,\n MCOOKIE_RUNTIME_READY_EVENT,\n type MCookieBootstrapConfig,\n type MCookieRuntime,\n} from './MCookieBootstrap.types'\nimport type {MCookieConsentState} from '../MCookieConsentProvider'\n\nfunction trimTrailingSlash(value: string) {\n return value.replace(/\\/+$/, '')\n}\n\nfunction getConsentKeyStorageKey(config: MCookieBootstrapConfig) {\n return `${config.storageKey ?? 'mineralui-cookie-consent'}-key`\n}\n\nfunction readStoredConsentKey(storageKey: string) {\n if (typeof window === 'undefined') {\n return null\n }\n\n try {\n return window.localStorage.getItem(storageKey)\n } catch {\n return null\n }\n}\n\nfunction writeStoredConsentKey(storageKey: string, consentKey: string | null | undefined) {\n if (typeof window === 'undefined' || !consentKey) {\n return\n }\n\n try {\n window.localStorage.setItem(storageKey, consentKey)\n } catch {\n // ignore storage issues\n }\n}\n\nfunction dispatchRuntimeReady(runtime: MCookieRuntime) {\n if (typeof window === 'undefined') {\n return\n }\n\n window[MCOOKIE_BOOTSTRAP_CONFIG_KEY] = runtime.config\n window[MCOOKIE_RUNTIME_KEY] = runtime\n window.dispatchEvent(new CustomEvent(MCOOKIE_RUNTIME_READY_EVENT))\n}\n\nfunction readScriptUrl(candidate: HTMLScriptElement | null) {\n if (!candidate?.src || typeof window === 'undefined') {\n return null\n }\n\n try {\n return new URL(candidate.src, window.location.href)\n } catch {\n return null\n }\n}\n\nfunction findBootstrapScriptElement(scriptUrl?: URL | null) {\n if (typeof document === 'undefined') {\n return null\n }\n\n const namedScript = document.getElementById('mineral-cookie-bootstrap')\n if (namedScript instanceof HTMLScriptElement) {\n return namedScript\n }\n\n const currentScript = document.currentScript\n if (currentScript instanceof HTMLScriptElement) {\n return currentScript\n }\n\n if (!scriptUrl || typeof window === 'undefined') {\n return null\n }\n\n for (const candidate of Array.from(document.querySelectorAll<HTMLScriptElement>('script[src]'))) {\n try {\n const candidateUrl = new URL(candidate.src, window.location.href)\n\n if (candidateUrl.href === scriptUrl.href) {\n return candidate\n }\n\n if (candidateUrl.origin === scriptUrl.origin && candidateUrl.pathname === scriptUrl.pathname) {\n return candidate\n }\n } catch {\n // ignore invalid script urls\n }\n }\n\n return null\n}\n\nexport function createMCookieRuntime(\n config: MCookieBootstrapConfig,\n apiBaseUrl: string,\n siteKey: string\n): MCookieRuntime {\n const cookieSiteBase = `${trimTrailingSlash(apiBaseUrl)}/cookie/sites/${encodeURIComponent(siteKey)}`\n const consentKeyStorage = getConsentKeyStorageKey(config)\n\n return {\n config,\n getDeclaration: async () => {\n const response = await fetch(`${cookieSiteBase}/declaration`)\n\n if (!response.ok) {\n return []\n }\n\n const payload = await response.json()\n return payload.items ?? []\n },\n getConsent: async () => {\n const consentKey = readStoredConsentKey(consentKeyStorage)\n\n if (!consentKey) {\n return null\n }\n\n const response = await fetch(`${cookieSiteBase}/consent?consentKey=${encodeURIComponent(consentKey)}`)\n\n if (!response.ok) {\n return null\n }\n\n const payload = await response.json()\n return payload.state ?? null\n },\n saveConsent: async (state: MCookieConsentState) => {\n const consentKey = readStoredConsentKey(consentKeyStorage)\n const response = await fetch(`${cookieSiteBase}/consent`, {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n },\n body: JSON.stringify({\n ...(consentKey ? {consentKey} : {}),\n version: state.version,\n decidedAt: state.decidedAt,\n source: state.source,\n categories: state.categories,\n domain: typeof window !== 'undefined' ? window.location.hostname : (config.domain ?? null),\n }),\n })\n\n if (!response.ok) {\n return\n }\n\n const payload = await response.json()\n writeStoredConsentKey(consentKeyStorage, payload.consentKey)\n },\n }\n}\n\nexport async function resolveMCookieBootstrapConfigFromScript(scriptUrl?: URL | null) {\n if (typeof window === 'undefined' || typeof fetch === 'undefined') {\n return null\n }\n\n const existingConfig = window[MCOOKIE_BOOTSTRAP_CONFIG_KEY]\n if (existingConfig) {\n return existingConfig\n }\n\n const bootstrapScript = findBootstrapScriptElement(scriptUrl)\n const resolvedScriptUrl = scriptUrl ?? readScriptUrl(bootstrapScript)\n const siteKey = bootstrapScript?.dataset.siteKey ?? resolvedScriptUrl?.searchParams.get('siteKey')\n\n if (!siteKey) {\n return null\n }\n\n const apiBaseUrl =\n bootstrapScript?.dataset.apiBase ??\n resolvedScriptUrl?.searchParams.get('apiBase') ??\n resolvedScriptUrl?.origin ??\n window.location.origin\n\n const configEndpoint =\n bootstrapScript?.dataset.configEndpoint ??\n resolvedScriptUrl?.searchParams.get('configEndpoint') ??\n `${trimTrailingSlash(apiBaseUrl)}/cookie/bootstrap/${encodeURIComponent(siteKey)}`\n\n try {\n const response = await fetch(configEndpoint, {\n headers: {\n 'x-mineral-site-key': siteKey,\n },\n })\n\n if (!response.ok) {\n return null\n }\n\n const resolvedConfig = (await response.json()) as MCookieBootstrapConfig\n const mergedConfig: MCookieBootstrapConfig = {\n ...resolvedConfig,\n siteKey: resolvedConfig.siteKey ?? siteKey,\n scanEndpoint:\n resolvedConfig.scanEndpoint ??\n bootstrapScript?.dataset.scanEndpoint ??\n resolvedScriptUrl?.searchParams.get('scanEndpoint') ??\n undefined,\n }\n\n dispatchRuntimeReady(createMCookieRuntime(mergedConfig, apiBaseUrl, siteKey))\n return mergedConfig\n } catch {\n return null\n }\n}\n\nexport async function initializeMCookieConsentBootstrapScript(scriptUrl?: URL | null) {\n await resolveMCookieBootstrapConfigFromScript(scriptUrl)\n return autoBootstrapMCookieConsent()\n}\n","export * from './components/feedback/MCookie/MCookieBootstrap'\n\nimport {initializeMCookieConsentBootstrapScript} from './components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script'\n\nvoid initializeMCookieConsentBootstrapScript(new URL(import.meta.url))\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- export * from './components/feedback/MCookie/MCookieBootstrap';
@@ -1,106 +0,0 @@
1
- import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "./MCookieBootstrap-Btt49Iuq.js";
2
- //#region src/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script.ts
3
- function l(e) {
4
- return e.replace(/\/+$/, "");
5
- }
6
- function u(e) {
7
- return `${e.storageKey ?? "mineralui-cookie-consent"}-key`;
8
- }
9
- function d(e) {
10
- if (typeof window > "u") return null;
11
- try {
12
- return window.localStorage.getItem(e);
13
- } catch {
14
- return null;
15
- }
16
- }
17
- function f(e, t) {
18
- if (!(typeof window > "u" || !t)) try {
19
- window.localStorage.setItem(e, t);
20
- } catch {}
21
- }
22
- function p(e) {
23
- typeof window > "u" || (window[a] = e.config, window[t] = e, window.dispatchEvent(new CustomEvent(r)));
24
- }
25
- function m(e) {
26
- if (!e?.src || typeof window > "u") return null;
27
- try {
28
- return new URL(e.src, window.location.href);
29
- } catch {
30
- return null;
31
- }
32
- }
33
- function h(e) {
34
- if (typeof document > "u") return null;
35
- let t = document.getElementById("mineral-cookie-bootstrap");
36
- if (t instanceof HTMLScriptElement) return t;
37
- let n = document.currentScript;
38
- if (n instanceof HTMLScriptElement) return n;
39
- if (!e || typeof window > "u") return null;
40
- for (let t of Array.from(document.querySelectorAll("script[src]"))) try {
41
- let n = new URL(t.src, window.location.href);
42
- if (n.href === e.href || n.origin === e.origin && n.pathname === e.pathname) return t;
43
- } catch {}
44
- return null;
45
- }
46
- function g(e, t, n) {
47
- let r = `${l(t)}/cookie/sites/${encodeURIComponent(n)}`, i = u(e);
48
- return {
49
- config: e,
50
- getDeclaration: async () => {
51
- let e = await fetch(`${r}/declaration`);
52
- return e.ok ? (await e.json()).items ?? [] : [];
53
- },
54
- getConsent: async () => {
55
- let e = d(i);
56
- if (!e) return null;
57
- let t = await fetch(`${r}/consent?consentKey=${encodeURIComponent(e)}`);
58
- return t.ok ? (await t.json()).state ?? null : null;
59
- },
60
- saveConsent: async (t) => {
61
- let n = d(i), a = await fetch(`${r}/consent`, {
62
- method: "POST",
63
- headers: { "content-type": "application/json" },
64
- body: JSON.stringify({
65
- ...n ? { consentKey: n } : {},
66
- version: t.version,
67
- decidedAt: t.decidedAt,
68
- source: t.source,
69
- categories: t.categories,
70
- domain: typeof window < "u" ? window.location.hostname : e.domain ?? null
71
- })
72
- });
73
- a.ok && f(i, (await a.json()).consentKey);
74
- }
75
- };
76
- }
77
- async function _(e) {
78
- if (typeof window > "u" || typeof fetch > "u") return null;
79
- let t = window[a];
80
- if (t) return t;
81
- let n = h(e), r = e ?? m(n), i = n?.dataset.siteKey ?? r?.searchParams.get("siteKey");
82
- if (!i) return null;
83
- let o = n?.dataset.apiBase ?? r?.searchParams.get("apiBase") ?? r?.origin ?? window.location.origin, s = n?.dataset.configEndpoint ?? r?.searchParams.get("configEndpoint") ?? `${l(o)}/cookie/bootstrap/${encodeURIComponent(i)}`;
84
- try {
85
- let e = await fetch(s, { headers: { "x-mineral-site-key": i } });
86
- if (!e.ok) return null;
87
- let t = await e.json(), a = {
88
- ...t,
89
- siteKey: t.siteKey ?? i,
90
- scanEndpoint: t.scanEndpoint ?? n?.dataset.scanEndpoint ?? r?.searchParams.get("scanEndpoint") ?? void 0
91
- };
92
- return p(g(a, o, i)), a;
93
- } catch {
94
- return null;
95
- }
96
- }
97
- async function v(e) {
98
- return await _(e), c();
99
- }
100
- //#endregion
101
- //#region src/cookie-consent-bootstrap.ts
102
- v(new URL(import.meta.url));
103
- //#endregion
104
- export { a as MCOOKIE_BOOTSTRAP_CONFIG_KEY, s as MCOOKIE_CONSENT_CHANGE_EVENT, t as MCOOKIE_RUNTIME_KEY, r as MCOOKIE_RUNTIME_READY_EVENT, c as autoBootstrapMCookieConsent, i as bootstrapMCookieConsent, o as readMCookieBootstrapConfig, n as reportMCookieSurface, e as scanMCookieSurface };
105
-
106
- //# sourceMappingURL=cookie-consent-bootstrap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cookie-consent-bootstrap.js","names":[],"sources":["../src/components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script.ts","../src/cookie-consent-bootstrap.ts"],"sourcesContent":["import {autoBootstrapMCookieConsent} from './MCookieBootstrap'\nimport {\n MCOOKIE_BOOTSTRAP_CONFIG_KEY,\n MCOOKIE_RUNTIME_KEY,\n MCOOKIE_RUNTIME_READY_EVENT,\n type MCookieBootstrapConfig,\n type MCookieRuntime,\n} from './MCookieBootstrap.types'\nimport type {MCookieConsentState} from '../MCookieConsentProvider'\n\nfunction trimTrailingSlash(value: string) {\n return value.replace(/\\/+$/, '')\n}\n\nfunction getConsentKeyStorageKey(config: MCookieBootstrapConfig) {\n return `${config.storageKey ?? 'mineralui-cookie-consent'}-key`\n}\n\nfunction readStoredConsentKey(storageKey: string) {\n if (typeof window === 'undefined') {\n return null\n }\n\n try {\n return window.localStorage.getItem(storageKey)\n } catch {\n return null\n }\n}\n\nfunction writeStoredConsentKey(storageKey: string, consentKey: string | null | undefined) {\n if (typeof window === 'undefined' || !consentKey) {\n return\n }\n\n try {\n window.localStorage.setItem(storageKey, consentKey)\n } catch {\n // ignore storage issues\n }\n}\n\nfunction dispatchRuntimeReady(runtime: MCookieRuntime) {\n if (typeof window === 'undefined') {\n return\n }\n\n window[MCOOKIE_BOOTSTRAP_CONFIG_KEY] = runtime.config\n window[MCOOKIE_RUNTIME_KEY] = runtime\n window.dispatchEvent(new CustomEvent(MCOOKIE_RUNTIME_READY_EVENT))\n}\n\nfunction readScriptUrl(candidate: HTMLScriptElement | null) {\n if (!candidate?.src || typeof window === 'undefined') {\n return null\n }\n\n try {\n return new URL(candidate.src, window.location.href)\n } catch {\n return null\n }\n}\n\nfunction findBootstrapScriptElement(scriptUrl?: URL | null) {\n if (typeof document === 'undefined') {\n return null\n }\n\n const namedScript = document.getElementById('mineral-cookie-bootstrap')\n if (namedScript instanceof HTMLScriptElement) {\n return namedScript\n }\n\n const currentScript = document.currentScript\n if (currentScript instanceof HTMLScriptElement) {\n return currentScript\n }\n\n if (!scriptUrl || typeof window === 'undefined') {\n return null\n }\n\n for (const candidate of Array.from(document.querySelectorAll<HTMLScriptElement>('script[src]'))) {\n try {\n const candidateUrl = new URL(candidate.src, window.location.href)\n\n if (candidateUrl.href === scriptUrl.href) {\n return candidate\n }\n\n if (candidateUrl.origin === scriptUrl.origin && candidateUrl.pathname === scriptUrl.pathname) {\n return candidate\n }\n } catch {\n // ignore invalid script urls\n }\n }\n\n return null\n}\n\nexport function createMCookieRuntime(\n config: MCookieBootstrapConfig,\n apiBaseUrl: string,\n siteKey: string\n): MCookieRuntime {\n const cookieSiteBase = `${trimTrailingSlash(apiBaseUrl)}/cookie/sites/${encodeURIComponent(siteKey)}`\n const consentKeyStorage = getConsentKeyStorageKey(config)\n\n return {\n config,\n getDeclaration: async () => {\n const response = await fetch(`${cookieSiteBase}/declaration`)\n\n if (!response.ok) {\n return []\n }\n\n const payload = await response.json()\n return payload.items ?? []\n },\n getConsent: async () => {\n const consentKey = readStoredConsentKey(consentKeyStorage)\n\n if (!consentKey) {\n return null\n }\n\n const response = await fetch(`${cookieSiteBase}/consent?consentKey=${encodeURIComponent(consentKey)}`)\n\n if (!response.ok) {\n return null\n }\n\n const payload = await response.json()\n return payload.state ?? null\n },\n saveConsent: async (state: MCookieConsentState) => {\n const consentKey = readStoredConsentKey(consentKeyStorage)\n const response = await fetch(`${cookieSiteBase}/consent`, {\n method: 'POST',\n headers: {\n 'content-type': 'application/json',\n },\n body: JSON.stringify({\n ...(consentKey ? {consentKey} : {}),\n version: state.version,\n decidedAt: state.decidedAt,\n source: state.source,\n categories: state.categories,\n domain: typeof window !== 'undefined' ? window.location.hostname : (config.domain ?? null),\n }),\n })\n\n if (!response.ok) {\n return\n }\n\n const payload = await response.json()\n writeStoredConsentKey(consentKeyStorage, payload.consentKey)\n },\n }\n}\n\nexport async function resolveMCookieBootstrapConfigFromScript(scriptUrl?: URL | null) {\n if (typeof window === 'undefined' || typeof fetch === 'undefined') {\n return null\n }\n\n const existingConfig = window[MCOOKIE_BOOTSTRAP_CONFIG_KEY]\n if (existingConfig) {\n return existingConfig\n }\n\n const bootstrapScript = findBootstrapScriptElement(scriptUrl)\n const resolvedScriptUrl = scriptUrl ?? readScriptUrl(bootstrapScript)\n const siteKey = bootstrapScript?.dataset.siteKey ?? resolvedScriptUrl?.searchParams.get('siteKey')\n\n if (!siteKey) {\n return null\n }\n\n const apiBaseUrl =\n bootstrapScript?.dataset.apiBase ??\n resolvedScriptUrl?.searchParams.get('apiBase') ??\n resolvedScriptUrl?.origin ??\n window.location.origin\n\n const configEndpoint =\n bootstrapScript?.dataset.configEndpoint ??\n resolvedScriptUrl?.searchParams.get('configEndpoint') ??\n `${trimTrailingSlash(apiBaseUrl)}/cookie/bootstrap/${encodeURIComponent(siteKey)}`\n\n try {\n const response = await fetch(configEndpoint, {\n headers: {\n 'x-mineral-site-key': siteKey,\n },\n })\n\n if (!response.ok) {\n return null\n }\n\n const resolvedConfig = (await response.json()) as MCookieBootstrapConfig\n const mergedConfig: MCookieBootstrapConfig = {\n ...resolvedConfig,\n siteKey: resolvedConfig.siteKey ?? siteKey,\n scanEndpoint:\n resolvedConfig.scanEndpoint ??\n bootstrapScript?.dataset.scanEndpoint ??\n resolvedScriptUrl?.searchParams.get('scanEndpoint') ??\n undefined,\n }\n\n dispatchRuntimeReady(createMCookieRuntime(mergedConfig, apiBaseUrl, siteKey))\n return mergedConfig\n } catch {\n return null\n }\n}\n\nexport async function initializeMCookieConsentBootstrapScript(scriptUrl?: URL | null) {\n await resolveMCookieBootstrapConfigFromScript(scriptUrl)\n return autoBootstrapMCookieConsent()\n}\n","export * from './components/feedback/MCookie/MCookieBootstrap'\n\nimport {initializeMCookieConsentBootstrapScript} from './components/feedback/MCookie/MCookieBootstrap/MCookieBootstrap.script'\n\nvoid initializeMCookieConsentBootstrapScript(new URL(import.meta.url))\n"],"mappings":"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"}