@solostylist/ui-kit 2.0.1 → 2.0.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 (379) hide show
  1. package/dist/Add-CEnTWsXs.js +6 -0
  2. package/dist/ArrowUpward-udL1ltj2.js +6 -0
  3. package/dist/Box-9oeZgA1U.js +46 -0
  4. package/dist/Button-DaLr1m20.js +534 -0
  5. package/dist/ButtonBase-DovDC6-1.js +700 -0
  6. package/dist/Checkbox-C-Xjbzzh.js +152 -0
  7. package/dist/ChevronRight-DsPfsFKB.js +6 -0
  8. package/dist/Close-CIYOM-Sc.js +6 -0
  9. package/dist/Collapse-DPUr1cbP.js +266 -0
  10. package/dist/ContentCopy-Hlh3azVb.js +6 -0
  11. package/dist/DefaultPropsProvider-ebWx4_5E.js +128 -0
  12. package/dist/DialogContent-b3xbJVC6.js +450 -0
  13. package/dist/Download-D9PkFi7a.js +6 -0
  14. package/dist/ExpandMore-sOgvEha9.js +6 -0
  15. package/dist/Favorite-BP343hjM.js +6 -0
  16. package/dist/FavoriteBorder-D15j9xEL.js +6 -0
  17. package/dist/FormControl-DwMfZCiz.js +215 -0
  18. package/dist/FormControlLabel-Ihga1FTB.js +173 -0
  19. package/dist/Grow-BQR7x52V.js +121 -0
  20. package/dist/IconButton-CE-4GamO.js +448 -0
  21. package/dist/InfoOutlined-lpvhO6P8.js +6 -0
  22. package/dist/List-RNcZhRdr.js +105 -0
  23. package/dist/Menu-CnyB4SDS.js +180 -0
  24. package/dist/MenuItem-Ck30dBOR.js +224 -0
  25. package/dist/MenuList-Cc98uWXq.js +160 -0
  26. package/dist/Modal-CD2EBfU8.js +702 -0
  27. package/dist/Paper-_3qggtBp.js +115 -0
  28. package/dist/Popover-BFdKSYI5.js +340 -0
  29. package/dist/Popper-DYNAMSDd.js +1351 -0
  30. package/dist/Portal-i_wgIe9-.js +49 -0
  31. package/dist/Remove-DDEn8ek8.js +6 -0
  32. package/dist/RtlProvider-B7uVJXUY.js +19 -0
  33. package/dist/Skeleton-iZFynl7z.js +220 -0
  34. package/dist/Stack-C0LGzM4c.js +158 -0
  35. package/dist/SwitchBase-CjWtDdmE.js +198 -0
  36. package/dist/Tooltip-B1sn94L0.js +448 -0
  37. package/dist/Typography-_P0svrkO.js +168 -0
  38. package/dist/UnfoldMoreRounded-CuCrdxoy.js +6 -0
  39. package/dist/appendOwnerState-CFQTq3pb.js +17 -0
  40. package/dist/assets/stripe-input.css +1 -0
  41. package/dist/autocomplete-BgARERpp.js +43 -0
  42. package/dist/avatar-XNOdbbRz.js +10 -0
  43. package/dist/buttonBaseClasses-B90LjsNK.js +13 -0
  44. package/dist/capitalize-C0baBJCm.js +5 -0
  45. package/dist/chainPropTypes-CkMRtDjQ.js +8 -0
  46. package/dist/checkbox-D1U_JKqs.js +88 -0
  47. package/dist/checkboxClasses-B1up2lUn.js +18 -0
  48. package/dist/chunk-C_CI6nMA.js +13 -0
  49. package/dist/clsx-DGZSe4Nt.js +16 -0
  50. package/dist/colorManipulator-DmUjcif3.js +129 -0
  51. package/dist/contains-DnqPQsQU.js +16 -0
  52. package/dist/createSimplePaletteValueFilter-DFvyXHoZ.js +14 -0
  53. package/dist/createSvgIcon-3y-gS0r1.js +155 -0
  54. package/dist/createTheme-xB2Em0Na.js +1869 -0
  55. package/dist/defaultTheme-BaGcIzCh.js +210 -0
  56. package/dist/elementAcceptingRef-pKEY6jPR.js +25 -0
  57. package/dist/elementTypeAcceptingRef-xl_04Y5-.js +19 -0
  58. package/dist/exactProp-C_IsucXf.js +13 -0
  59. package/dist/extends-DXMyyJCW.js +12 -0
  60. package/dist/field-label-styles-4praXMaE.js +50 -0
  61. package/dist/formLabelClasses-AuZHWfTs.js +18 -0
  62. package/dist/generateUtilityClass-PAIOm1jC.js +34 -0
  63. package/dist/generateUtilityClasses-DvX505Gy.js +10 -0
  64. package/dist/getActiveElement-BfBkhgy6.js +8 -0
  65. package/dist/{gradients-DSnBONEQ.js → gradients-mQAYCK0_.js} +1 -1
  66. package/dist/iconButtonClasses-CVVRFXRo.js +27 -0
  67. package/dist/inputAdornmentClasses-BbB8s-Z4.js +19 -0
  68. package/dist/inputBaseClasses-Ce_jjdp9.js +25 -0
  69. package/dist/integerPropType-CCkQD1JY.js +27 -0
  70. package/dist/isEventHandler-QShLXBxE.js +7 -0
  71. package/dist/isFocusVisible-4OIE8TST.js +11 -0
  72. package/dist/isLayoutSupported-Btg2X3QE.js +6 -0
  73. package/dist/isMuiElement-CPjhi284.js +10 -0
  74. package/dist/main.js +1 -1
  75. package/dist/mega-menu-trigger-BcOo8I5_.js +53 -0
  76. package/dist/memoTheme-qFyKAk7y.js +15 -0
  77. package/dist/mergeSlotProps-DC8r4QzS.js +45 -0
  78. package/dist/monthCalendarClasses-b964KRbc.js +14 -0
  79. package/dist/objectWithoutPropertiesLoose-q4Zwd1RV.js +12 -0
  80. package/dist/outlinedInputClasses-ci1zDasn.js +17 -0
  81. package/dist/ownerDocument-CJjQZweZ.js +6 -0
  82. package/dist/ownerDocument-pYjJiXem.js +5 -0
  83. package/dist/ownerWindow-SSeeoqPT.js +18 -0
  84. package/dist/palettes/index.js +1 -1
  85. package/dist/{palettes-CJLuEy1m.js → palettes-B1FcGUYs.js} +163 -163
  86. package/dist/pickersCalendarHeaderClasses-BAiPN_oY.js +12 -0
  87. package/dist/prop-types-BzYPyWN7.js +516 -0
  88. package/dist/refType-j5S9pc_e.js +6 -0
  89. package/dist/resolveProps-7jIA45vn.js +30 -0
  90. package/dist/s-accordion/index.js +1 -1
  91. package/dist/s-accordion/s-accordion.js +2 -70
  92. package/dist/s-accordion-1oLxQhod.js +487 -0
  93. package/dist/s-action-overlay/s-action-overlay.js +21 -21
  94. package/dist/s-animated-gradient-text/index.d.ts +2 -0
  95. package/dist/s-animated-gradient-text/index.js +2 -0
  96. package/dist/s-animated-gradient-text/s-animated-gradient-text.d.ts +64 -0
  97. package/dist/s-animated-gradient-text/s-animated-gradient-text.js +93 -0
  98. package/dist/s-announcement-bar/index.d.ts +2 -0
  99. package/dist/s-announcement-bar/index.js +2 -0
  100. package/dist/s-announcement-bar/s-announcement-bar.d.ts +113 -0
  101. package/dist/s-announcement-bar/s-announcement-bar.js +275 -0
  102. package/dist/s-autocomplete/s-autocomplete.js +1 -1
  103. package/dist/s-avatar/s-avatar.js +17 -17
  104. package/dist/s-blur-text/s-blur-text.js +16 -16
  105. package/dist/s-brand-logo/index.js +1 -1
  106. package/dist/s-brand-logo/s-brand-logo.js +1 -1
  107. package/dist/s-breadcrumbs/s-breadcrumbs.js +19 -19
  108. package/dist/s-carousel/index.js +1 -1
  109. package/dist/s-carousel/s-carousel.d.ts +2 -0
  110. package/dist/s-carousel/s-carousel.js +2 -184
  111. package/dist/s-carousel-CAyAl3ka.js +1355 -0
  112. package/dist/s-category-card/s-category-card.js +22 -22
  113. package/dist/s-chat-input/index.js +1 -1
  114. package/dist/s-chat-input/s-chat-input.js +2 -398
  115. package/dist/s-chat-input-T3gyan60.js +419 -0
  116. package/dist/s-chat-message/index.js +1 -1
  117. package/dist/s-chat-message/s-chat-message.js +2 -314
  118. package/dist/s-chat-message-NFTpNgt5.js +315 -0
  119. package/dist/s-checkbox/s-checkbox.js +19 -18
  120. package/dist/s-chips/index.js +1 -1
  121. package/dist/s-chips/s-chips.js +2 -174
  122. package/dist/s-chips-Dqq1fgz-.js +176 -0
  123. package/dist/s-code-block/index.js +1 -1
  124. package/dist/s-code-block/s-code-block.js +2 -103
  125. package/dist/s-code-block-DyDtctGG.js +658 -0
  126. package/dist/s-comment-message/index.js +1 -1
  127. package/dist/s-comment-message/s-comment-message.js +2 -189
  128. package/dist/s-comment-message-DpCVBKiE.js +192 -0
  129. package/dist/s-copyable-text/s-copyable-text.js +18 -18
  130. package/dist/s-countdown/s-count-box.js +18 -18
  131. package/dist/s-data-table/index.js +1 -1
  132. package/dist/s-data-table/s-data-table.js +2 -213
  133. package/dist/s-data-table-D4V58HFR.js +805 -0
  134. package/dist/s-date-picker/index.js +1 -1
  135. package/dist/s-date-picker/s-date-picker.js +2 -106
  136. package/dist/s-date-picker-BFIQOA8C.js +657 -0
  137. package/dist/s-datetime-picker/index.js +1 -1
  138. package/dist/s-datetime-picker/s-datetime-picker.js +2 -108
  139. package/dist/s-datetime-picker-zfg7BEOW.js +3886 -0
  140. package/dist/s-dialog/index.js +1 -1
  141. package/dist/s-dialog/s-dialog.js +2 -80
  142. package/dist/s-dialog-BNlXsVVP.js +123 -0
  143. package/dist/s-dialog-confirm/s-dialog-confirm.js +33 -32
  144. package/dist/s-dialog-message/s-dialog-message.js +32 -31
  145. package/dist/s-drawer/index.d.ts +3 -0
  146. package/dist/s-drawer/index.js +2 -0
  147. package/dist/s-drawer/s-drawer.d.ts +70 -0
  148. package/dist/s-drawer/s-drawer.js +2 -0
  149. package/dist/s-drawer-4h5ZyoM8.js +562 -0
  150. package/dist/s-empty/s-empty.js +14 -13
  151. package/dist/s-file-dropzone/index.js +1 -1
  152. package/dist/s-file-dropzone/s-file-dropzone.js +2 -219
  153. package/dist/s-file-dropzone-Cfzv1Cm8.js +422 -0
  154. package/dist/s-file-icon/s-file-icon.js +88 -87
  155. package/dist/s-flex-box/s-flex-box.js +12 -11
  156. package/dist/s-form/s-form.js +15 -15
  157. package/dist/s-gallery/s-gallery.js +1 -1
  158. package/dist/s-glow-button/s-glow-button.js +10 -9
  159. package/dist/s-gradient-blob-pulse/index.d.ts +2 -0
  160. package/dist/s-gradient-blob-pulse/index.js +2 -0
  161. package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.d.ts +62 -0
  162. package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.js +237 -0
  163. package/dist/s-gradient-icon/index.d.ts +1 -1
  164. package/dist/s-gradient-icon/s-gradient-icon.d.ts +4 -4
  165. package/dist/s-gradient-icon/s-gradient-icon.js +2 -2
  166. package/dist/s-icon-button/s-icon-button.d.ts +6 -2
  167. package/dist/s-icon-button/s-icon-button.js +14 -13
  168. package/dist/s-image-comparison/s-image-comparison.js +31 -29
  169. package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +1 -1
  170. package/dist/s-image-viewer/index.js +3 -3
  171. package/dist/s-image-viewer/s-image-viewer.js +2 -266
  172. package/dist/s-image-viewer/use-image-viewer-navigation.js +7 -7
  173. package/dist/s-image-viewer-CjK67-rs.js +269 -0
  174. package/dist/s-interactive-card/index.d.ts +3 -0
  175. package/dist/s-interactive-card/index.js +2 -0
  176. package/dist/s-interactive-card/s-interactive-card.d.ts +57 -0
  177. package/dist/s-interactive-card/s-interactive-card.js +152 -0
  178. package/dist/s-label/s-label.js +26 -25
  179. package/dist/s-language-switcher/index.js +2 -2
  180. package/dist/s-language-switcher/s-language-switcher.js +2 -150
  181. package/dist/s-language-switcher-PaMgHWc2.js +246 -0
  182. package/dist/s-lazy-image/s-lazy-image.js +18 -17
  183. package/dist/s-link/index.js +1 -1
  184. package/dist/s-link/s-link.js +2 -5
  185. package/dist/s-link-Db1aabHh.js +235 -0
  186. package/dist/s-list-action-item/index.d.ts +2 -0
  187. package/dist/s-list-action-item/index.js +2 -0
  188. package/dist/s-list-action-item/s-list-action-item.d.ts +89 -0
  189. package/dist/s-list-action-item/s-list-action-item.js +150 -0
  190. package/dist/s-localization-provider/index.js +1 -1
  191. package/dist/s-localization-provider/s-localization-provider.js +2 -12
  192. package/dist/s-localization-provider-CeyB_SGz.js +519 -0
  193. package/dist/s-mega-menu/index.d.ts +3 -0
  194. package/dist/s-mega-menu/index.js +2 -0
  195. package/dist/s-mega-menu/mega-menu-panel.d.ts +38 -0
  196. package/dist/s-mega-menu/mega-menu-panel.js +253 -0
  197. package/dist/s-mega-menu/mega-menu-slots.d.ts +65 -0
  198. package/dist/s-mega-menu/mega-menu-slots.js +232 -0
  199. package/dist/s-mega-menu/mega-menu-trigger.d.ts +35 -0
  200. package/dist/s-mega-menu/mega-menu-trigger.js +2 -0
  201. package/dist/s-mega-menu/s-mega-menu.d.ts +23 -0
  202. package/dist/s-mega-menu/s-mega-menu.js +228 -0
  203. package/dist/s-mega-menu/types.d.ts +188 -0
  204. package/dist/s-mega-menu/types.js +0 -0
  205. package/dist/s-mega-menu/utils.d.ts +51 -0
  206. package/dist/s-mega-menu/utils.js +51 -0
  207. package/dist/s-mobile-dock/index.d.ts +3 -0
  208. package/dist/s-mobile-dock/index.js +2 -0
  209. package/dist/s-mobile-dock/s-mobile-dock.d.ts +96 -0
  210. package/dist/s-mobile-dock/s-mobile-dock.js +2 -0
  211. package/dist/s-mobile-dock-8F3UWAb8.js +615 -0
  212. package/dist/s-nav-item/index.d.ts +1 -1
  213. package/dist/s-nav-item/s-nav-item.d.ts +35 -16
  214. package/dist/s-nav-item/s-nav-item.js +56 -77
  215. package/dist/s-nav-items/s-nav-items.js +78 -121
  216. package/dist/s-no-ssr/index.js +1 -1
  217. package/dist/s-no-ssr/s-no-ssr.js +2 -5
  218. package/dist/s-no-ssr-DH57_uP_.js +25 -0
  219. package/dist/s-number-range/index.d.ts +3 -0
  220. package/dist/s-number-range/index.js +2 -0
  221. package/dist/s-number-range/s-number-range.d.ts +109 -0
  222. package/dist/s-number-range/s-number-range.js +2 -0
  223. package/dist/s-number-range-Low5QjuD.js +253 -0
  224. package/dist/s-pagination/index.js +1 -1
  225. package/dist/s-pagination/s-pagination.js +2 -85
  226. package/dist/s-pagination-s46hBifh.js +606 -0
  227. package/dist/s-pixel-reveal/s-pixel-reveal.js +20 -20
  228. package/dist/s-popover/index.d.ts +5 -0
  229. package/dist/s-popover/index.js +3 -0
  230. package/dist/s-popover/placement.d.ts +14 -0
  231. package/dist/s-popover/placement.js +65 -0
  232. package/dist/s-popover/s-popover-content.d.ts +22 -0
  233. package/dist/s-popover/s-popover-content.js +22 -0
  234. package/dist/s-popover/s-popover.d.ts +59 -0
  235. package/dist/s-popover/s-popover.js +68 -0
  236. package/dist/s-product-card/index.d.ts +3 -0
  237. package/dist/s-product-card/index.js +2 -0
  238. package/dist/s-product-card/s-product-card.d.ts +216 -0
  239. package/dist/s-product-card/s-product-card.js +502 -0
  240. package/dist/s-product-gallery/index.d.ts +3 -0
  241. package/dist/s-product-gallery/index.js +2 -0
  242. package/dist/s-product-gallery/s-product-gallery.d.ts +116 -0
  243. package/dist/s-product-gallery/s-product-gallery.js +2 -0
  244. package/dist/s-product-gallery-Dj9eGg5i.js +430 -0
  245. package/dist/s-quantity-input/s-quantity-input.js +24 -24
  246. package/dist/s-review/index.js +1 -1
  247. package/dist/s-review/s-review.js +2 -272
  248. package/dist/s-review--Q2C0ngO.js +272 -0
  249. package/dist/s-scroll-reveal/s-scroll-reveal.js +8 -7
  250. package/dist/s-scroll-to-top/s-scroll-to-top.d.ts +1 -1
  251. package/dist/s-scroll-to-top/s-scroll-to-top.js +28 -27
  252. package/dist/s-scroll-velocity/scroll-velocity-row.js +29 -29
  253. package/dist/s-segmented-control/index.d.ts +3 -0
  254. package/dist/s-segmented-control/index.js +2 -0
  255. package/dist/s-segmented-control/s-segmented-control.d.ts +94 -0
  256. package/dist/s-segmented-control/s-segmented-control.js +302 -0
  257. package/dist/s-select/index.js +1 -1
  258. package/dist/s-select/s-select.js +2 -201
  259. package/dist/s-select-CtVKEOZ5.js +204 -0
  260. package/dist/s-select-list/s-select-list.js +50 -47
  261. package/dist/s-skeleton/s-skeleton.js +13 -12
  262. package/dist/s-snackbar-message/index.js +2 -2
  263. package/dist/s-snackbar-message/s-snackbar-message.js +2 -89
  264. package/dist/s-snackbar-message-DsfJlDYd.js +810 -0
  265. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +27 -27
  266. package/dist/s-status-illustration/s-status-illustration.js +74 -74
  267. package/dist/s-stepper/index.d.ts +3 -0
  268. package/dist/s-stepper/index.js +2 -0
  269. package/dist/s-stepper/s-stepper.d.ts +90 -0
  270. package/dist/s-stepper/s-stepper.js +2 -0
  271. package/dist/s-stepper-BtODHVro.js +892 -0
  272. package/dist/s-stripe/s-stripe.js +12 -11
  273. package/dist/s-stripe/stripe-input.js +2 -3
  274. package/dist/s-swatch/index.d.ts +3 -0
  275. package/dist/s-swatch/index.js +2 -0
  276. package/dist/s-swatch/s-swatch.d.ts +235 -0
  277. package/dist/s-swatch/s-swatch.js +219 -0
  278. package/dist/s-switch/index.js +1 -1
  279. package/dist/s-switch/s-switch.js +2 -48
  280. package/dist/s-switch-BCeBoxWf.js +307 -0
  281. package/dist/s-tabs/s-tabs.js +50 -48
  282. package/dist/s-text-editor/index.js +1 -1
  283. package/dist/s-text-editor/s-text-editor-toolbar.js +2 -216
  284. package/dist/s-text-editor/s-text-editor.js +26 -25
  285. package/dist/s-text-editor-toolbar-D5eQ-jCs.js +2124 -0
  286. package/dist/s-text-field/index.js +1 -1
  287. package/dist/s-text-field/s-text-field.js +2 -52
  288. package/dist/s-text-field-HYyDf1Jo.js +51 -0
  289. package/dist/s-text-shimmer/s-text-shimmer.js +3 -1
  290. package/dist/s-text-truncation/s-text-truncation.js +20 -20
  291. package/dist/s-theme-demo/s-theme-demo.js +8 -8
  292. package/dist/s-theme-demo/theme-demo-color-palette-section.js +1 -1
  293. package/dist/s-theme-demo/theme-demo-color-ramps-section.js +1 -1
  294. package/dist/s-theme-demo/theme-demo-components-section.js +2 -265
  295. package/dist/s-theme-demo/theme-demo-typography-section.js +10 -10
  296. package/dist/s-theme-provider/s-theme-provider.js +1 -1
  297. package/dist/s-theme-switch/index.js +1 -1
  298. package/dist/s-theme-switch/s-theme-switch.js +2 -60
  299. package/dist/s-theme-switch-BFWpADh3.js +60 -0
  300. package/dist/s-tip/index.js +1 -1
  301. package/dist/s-tip/s-tip.js +2 -61
  302. package/dist/s-tip-jbL7vtoU.js +62 -0
  303. package/dist/s-tool-bar/s-tool-bar.js +28 -28
  304. package/dist/s-tool-bar/tool-bar-action-buttons.js +2 -55
  305. package/dist/s-tool-bar/tool-bar-image-input.js +2 -148
  306. package/dist/s-tool-bar/tool-bar-inputs.js +55 -55
  307. package/dist/s-tool-item/s-tool-item.d.ts +10 -6
  308. package/dist/s-tool-item/s-tool-item.js +29 -29
  309. package/dist/s-two-pane-layout/s-two-pane-layout.js +32 -32
  310. package/dist/s-zoom-image/s-zoom-image.js +19 -18
  311. package/dist/selectClasses-CPxME5jE.js +22 -0
  312. package/dist/setRef-BWPyWnrr.js +6 -0
  313. package/dist/styled-Bog8QCl3.js +163 -0
  314. package/dist/svgIconClasses-1kWGzgux.js +20 -0
  315. package/dist/switchClasses-BtweO7PC.js +23 -0
  316. package/dist/theme/component-augmentation.d.ts +65 -1
  317. package/dist/theme/components/autocomplete.js +2 -43
  318. package/dist/theme/components/avatar.js +2 -9
  319. package/dist/theme/components/card.js +3 -3
  320. package/dist/theme/components/checkbox.js +2 -90
  321. package/dist/theme/components/chip.js +3 -3
  322. package/dist/theme/components/components.js +20 -20
  323. package/dist/theme/components/date-calendar.js +0 -1
  324. package/dist/theme/components/day-calendar.js +0 -1
  325. package/dist/theme/components/drawer.d.ts +1 -0
  326. package/dist/theme/components/drawer.js +4 -1
  327. package/dist/theme/components/field-label-styles.js +2 -19
  328. package/dist/theme/components/form-label.js +1 -1
  329. package/dist/theme/components/list-item-button.js +1 -1
  330. package/dist/theme/components/list-item.js +7 -7
  331. package/dist/theme/components/month-calendar.js +13 -14
  332. package/dist/theme/components/multi-section-digital-clock-section.js +0 -1
  333. package/dist/theme/components/outlined-input.js +6 -6
  334. package/dist/theme/components/picker-day.js +0 -1
  335. package/dist/theme/components/pickers-arrow-switcher.js +0 -1
  336. package/dist/theme/components/pickers-calendar-header.js +2 -3
  337. package/dist/theme/components/select.js +6 -6
  338. package/dist/theme/components/slider.js +18 -1
  339. package/dist/theme/components/step-connector.d.ts +0 -3
  340. package/dist/theme/components/step-connector.js +1 -6
  341. package/dist/theme/components/step-icon.d.ts +3 -12
  342. package/dist/theme/components/step-icon.js +3 -14
  343. package/dist/theme/components/switch.js +1 -1
  344. package/dist/theme/components/table-pagination.js +1 -1
  345. package/dist/theme/components/toggle-button.js +2 -93
  346. package/dist/theme/components/year-calendar.js +13 -14
  347. package/dist/theme/theme-primitives.js +2 -2
  348. package/dist/theme-demo-components-section-C7l_2KAo.js +267 -0
  349. package/dist/{theme-primitives-CRfnMsNy.js → theme-primitives-CXtaMdVj.js} +109 -108
  350. package/dist/toggle-button-BsGb-tOr.js +104 -0
  351. package/dist/tool-bar-action-buttons-v1koaasr.js +54 -0
  352. package/dist/tool-bar-image-input-DtXTyEe1.js +148 -0
  353. package/dist/typographyClasses-BH_-zLwg.js +31 -0
  354. package/dist/unsupportedProp-whMV_uOi.js +11 -0
  355. package/dist/useControlled-DqNPBJNp.js +5 -0
  356. package/dist/useControlled-uxVKygk1.js +29 -0
  357. package/dist/useEnhancedEffect-DFq_FMGX.js +5 -0
  358. package/dist/useEnhancedEffect-dBFfkm1e.js +5 -0
  359. package/dist/useEventCallback-DGCsaRIu.js +5 -0
  360. package/dist/useEventCallback-DhCPBxRG.js +11 -0
  361. package/dist/useForkRef-BuNFTXxE.js +29 -0
  362. package/dist/useFormControl-gXwNeUM1.js +18 -0
  363. package/dist/useMobilePicker-CdrT935R.js +7584 -0
  364. package/dist/useRovingTabIndex-DPlW997R.js +242 -0
  365. package/dist/useSlot-BG8ReOxN.js +83 -0
  366. package/dist/useSlotProps-BOO3qaI9.js +16 -0
  367. package/dist/useTheme-BIWMbX3i.js +9 -0
  368. package/dist/useThemeProps-Dw9dmKyT.js +29 -0
  369. package/dist/useTimeout-CoK-Khfm.js +49 -0
  370. package/dist/utils/dayjs.js +146 -9
  371. package/dist/utils-Bfqbev5I.js +248 -0
  372. package/dist/warning-D5YhCbje.js +99 -0
  373. package/dist/yearCalendarClasses-D9k_KT38.js +14 -0
  374. package/package.json +1 -1
  375. package/dist/theme/components/components.d.ts +0 -2
  376. package/dist/theme/components/slider.d.ts +0 -34
  377. /package/dist/{colors-CNjL5fhq.js → colors-Bik9qOU9.js} +0 -0
  378. /package/dist/{s-brand-logo-CErW9Slg.js → s-brand-logo-D7Jovf5K.js} +0 -0
  379. /package/dist/{utils-CMeAWSRO.js → utils-DOY6v6ln.js} +0 -0
@@ -0,0 +1,253 @@
1
+ import { toSxArray as e } from "../utils/sx.js";
2
+ import { resolveOwnerStateSlotProps as t } from "../utils/slots.js";
3
+ import { t as n } from "../useForkRef-BuNFTXxE.js";
4
+ import { t as r } from "../useEventCallback-DGCsaRIu.js";
5
+ import { t as i } from "../appendOwnerState-CFQTq3pb.js";
6
+ import { t as a } from "../mergeSlotProps-DC8r4QzS.js";
7
+ import { t as o } from "../ChevronRight-DsPfsFKB.js";
8
+ import { LIST_ATTRIBUTE as s, NODE_ATTRIBUTE as c, PANEL_ATTRIBUTE as l, ROW_ATTRIBUTE as u, focusAdjacentList as d, focusRowByOffset as f, getFirstRow as p, getSiblingRows as m, hasNestedChildren as h, resolveLayout as g, resolveSubmenuSide as _ } from "./utils.js";
9
+ import { SMegaMenuColumn as v, SMegaMenuHeading as y, SMegaMenuItemRoot as b, SMegaMenuPanel as x, SMegaMenuSubmenu as S, SMegaMenuSubmenuNode as C } from "./mega-menu-slots.js";
10
+ import * as w from "react";
11
+ import { jsx as T, jsxs as E } from "react/jsx-runtime";
12
+ //#region lib/s-mega-menu/mega-menu-panel.tsx
13
+ function D(e, t, n) {
14
+ return {
15
+ ...e.ownerState,
16
+ active: e.getIsActive(t),
17
+ hasChildren: !!t.children?.length,
18
+ item: t,
19
+ ...n
20
+ };
21
+ }
22
+ function O({ closeParent: e, ctx: s, depth: c, item: l, onOpenSubmenu: p, onRowClick: h, open: g = !1, resolvedLayout: _, rowRef: v, side: y = "right", submenuId: x, triggerId: S }) {
23
+ let C = D(s, l, {
24
+ depth: c,
25
+ heading: !1,
26
+ open: g,
27
+ resolvedLayout: _,
28
+ side: y
29
+ }), w = s.slots?.item ?? b, E = C.hasChildren, O = r((t) => {
30
+ let n = t.currentTarget;
31
+ switch (t.key) {
32
+ case "ArrowDown":
33
+ t.preventDefault(), f(m(n), n, 1);
34
+ break;
35
+ case "ArrowUp":
36
+ t.preventDefault(), f(m(n), n, -1);
37
+ break;
38
+ case "Home":
39
+ t.preventDefault(), m(n)[0]?.focus();
40
+ break;
41
+ case "End": {
42
+ t.preventDefault();
43
+ let e = m(n);
44
+ e[e.length - 1]?.focus();
45
+ break;
46
+ }
47
+ case "ArrowRight":
48
+ t.preventDefault(), p ? p() : d(n, 1);
49
+ break;
50
+ case "ArrowLeft":
51
+ t.preventDefault(), e ? e() : d(n, -1) || s.closeMenu({
52
+ event: t,
53
+ focusTrigger: !0,
54
+ reason: "triggerKeyDown"
55
+ });
56
+ break;
57
+ case "Escape":
58
+ t.preventDefault(), s.closeMenu({
59
+ event: t,
60
+ focusTrigger: !0,
61
+ reason: "escapeKeyDown"
62
+ });
63
+ break;
64
+ default: break;
65
+ }
66
+ }), k = E ? void 0 : l.component ?? (l.href ? s.linkComponent : void 0), A = E ? void 0 : l.href, { slotProps: j, ...M } = t(s.slotProps?.item, C) ?? {}, { ref: N, ...P } = i(w, a(M, {
67
+ [u]: "",
68
+ "aria-controls": E ? x : void 0,
69
+ "aria-current": C.active && A ? "page" : void 0,
70
+ "aria-expanded": E ? g : void 0,
71
+ component: k,
72
+ description: l.description,
73
+ disabled: l.disabled,
74
+ href: A,
75
+ icon: l.icon,
76
+ onClick: h,
77
+ onKeyDown: O,
78
+ rel: A ? l.rel : void 0,
79
+ selected: C.active,
80
+ slotProps: {
81
+ ...j,
82
+ label: a(j?.label, { variant: c === 0 ? "body1" : "body2" }),
83
+ trailing: a(j?.trailing, { sx: { color: "inherit" } })
84
+ },
85
+ target: A ? l.target : void 0,
86
+ trailing: E ? /* @__PURE__ */ T(o, { fontSize: "small" }) : void 0,
87
+ id: S,
88
+ variant: _ === "columns" ? "plain" : "inset"
89
+ }), C), F = n(N, v);
90
+ return /* @__PURE__ */ T(w, {
91
+ ...P,
92
+ ref: F,
93
+ label: s.renderItem ? s.renderItem(l, C) : l.label
94
+ });
95
+ }
96
+ function k({ closeParent: o, ctx: s, depth: l, item: u, onSubmenuOpenChange: d, open: f = !1, resolvedLayout: m }) {
97
+ let h = w.useRef(null), g = w.useRef(null), v = w.useRef(null), y = w.useRef(void 0), b = w.useRef(!1), [x, k] = w.useState("right"), A = w.useId(), M = `${A}-submenu`, N = `${A}-trigger`, P = u.children ?? [], F = w.useCallback(() => {
98
+ y.current &&= (clearTimeout(y.current), void 0);
99
+ }, []);
100
+ w.useEffect(() => F, [F]);
101
+ let I = r(() => {
102
+ k(_(h.current, g.current));
103
+ });
104
+ w.useLayoutEffect(() => {
105
+ f && (I(), b.current && (b.current = !1, p(g.current)?.focus()));
106
+ }, [f, I]);
107
+ let L = r(() => {
108
+ F(), !u.disabled && (I(), d?.(!0));
109
+ }), R = r(() => {
110
+ F(), y.current = setTimeout(() => d?.(!1), s.ownerState.closeDelay);
111
+ }), z = r((e) => {
112
+ F(), d?.(!1), e && v.current?.focus();
113
+ }), B = r(() => {
114
+ if (f) {
115
+ p(g.current)?.focus();
116
+ return;
117
+ }
118
+ b.current = !0, L();
119
+ }), V = r(() => {
120
+ if (!f) {
121
+ L();
122
+ return;
123
+ }
124
+ z(!1);
125
+ }), H = D(s, u, {
126
+ depth: l,
127
+ heading: !1,
128
+ open: f,
129
+ resolvedLayout: m,
130
+ side: x
131
+ }), U = s.slots?.submenuNode ?? C, W = s.slots?.submenu ?? S, G = r((e) => {
132
+ let t = e.relatedTarget;
133
+ !t || e.currentTarget.contains(t) || z(!1);
134
+ }), { ref: K, ...q } = i(U, a(t(s.slotProps?.submenuNode, H), {
135
+ [c]: "",
136
+ "data-side": x,
137
+ onBlurCapture: G,
138
+ onFocus: I,
139
+ onPointerEnter: (e) => {
140
+ !u.disabled && e.pointerType !== "touch" && L();
141
+ },
142
+ onPointerLeave: (e) => {
143
+ e.pointerType !== "touch" && R();
144
+ }
145
+ }), H), J = n(K, h), { ref: Y, sx: X, ...Z } = i(W, a(t(s.slotProps?.submenu, H), {
146
+ "aria-hidden": f ? void 0 : !0,
147
+ "aria-labelledby": N,
148
+ id: M,
149
+ role: "region"
150
+ }), H), Q = n(Y, g);
151
+ return /* @__PURE__ */ E(U, {
152
+ ...q,
153
+ ref: J,
154
+ children: [/* @__PURE__ */ T(O, {
155
+ closeParent: o,
156
+ ctx: s,
157
+ depth: l,
158
+ item: u,
159
+ onOpenSubmenu: B,
160
+ onRowClick: V,
161
+ open: f,
162
+ resolvedLayout: m,
163
+ rowRef: v,
164
+ side: x,
165
+ submenuId: M,
166
+ triggerId: N
167
+ }), /* @__PURE__ */ T(W, {
168
+ ...Z,
169
+ ref: Q,
170
+ sx: [...e(X)],
171
+ children: f || s.keepMounted ? /* @__PURE__ */ T(j, {
172
+ closeParent: () => z(!0),
173
+ ctx: s,
174
+ depth: l + 1,
175
+ items: P
176
+ }) : null
177
+ })]
178
+ });
179
+ }
180
+ function A({ closeParent: e, ctx: n, depth: r, item: o }) {
181
+ let c = D(n, o, {
182
+ depth: r,
183
+ heading: !0,
184
+ open: !1,
185
+ resolvedLayout: "columns",
186
+ side: "right"
187
+ }), l = `${w.useId()}-heading`, u = n.slots?.column ?? v, d = n.slots?.heading ?? y, f = i(u, a(t(n.slotProps?.column, c), {
188
+ [s]: "",
189
+ "aria-labelledby": l
190
+ }), c), p = i(d, a(t(n.slotProps?.heading, c), {
191
+ component: "h3",
192
+ id: l
193
+ }), c);
194
+ return /* @__PURE__ */ E(u, {
195
+ ...f,
196
+ children: [/* @__PURE__ */ T(d, {
197
+ ...p,
198
+ children: n.renderItem ? n.renderItem(o, c) : o.label
199
+ }), (o.children ?? []).map((t) => /* @__PURE__ */ T(O, {
200
+ closeParent: e,
201
+ ctx: n,
202
+ depth: r + 1,
203
+ item: t,
204
+ onRowClick: (e) => n.closeMenu({
205
+ event: e,
206
+ reason: "itemClick"
207
+ }),
208
+ resolvedLayout: "columns"
209
+ }, t.id))]
210
+ });
211
+ }
212
+ function j({ closeParent: n, ctx: r, depth: o, items: c }) {
213
+ let u = g(c, r.ownerState.layout), [d, f] = w.useState(null), p = u === "columns" || !h(c), m = {
214
+ ...r.ownerState,
215
+ depth: o,
216
+ resolvedLayout: u,
217
+ scrollable: p
218
+ }, _ = r.slots?.panel ?? x, { sx: v, ...y } = i(_, a(t(r.slotProps?.panel, m), {
219
+ [l]: "",
220
+ ...u === "list" ? { [s]: "" } : {}
221
+ }), m);
222
+ return /* @__PURE__ */ T(_, {
223
+ ...y,
224
+ sx: [...e(v)],
225
+ children: u === "columns" ? c.map((e) => /* @__PURE__ */ T(A, {
226
+ closeParent: n,
227
+ ctx: r,
228
+ depth: o,
229
+ item: e,
230
+ resolvedLayout: u
231
+ }, e.id)) : c.map((e) => e.children?.length ? /* @__PURE__ */ T(k, {
232
+ closeParent: n,
233
+ ctx: r,
234
+ depth: o,
235
+ item: e,
236
+ onSubmenuOpenChange: (t) => f((n) => t ? e.id : n === e.id ? null : n),
237
+ open: d === e.id,
238
+ resolvedLayout: u
239
+ }, e.id) : /* @__PURE__ */ T(O, {
240
+ closeParent: n,
241
+ ctx: r,
242
+ depth: o,
243
+ item: e,
244
+ onRowClick: (e) => r.closeMenu({
245
+ event: e,
246
+ reason: "itemClick"
247
+ }),
248
+ resolvedLayout: u
249
+ }, e.id))
250
+ });
251
+ }
252
+ //#endregion
253
+ export { j as MegaMenuPanelContent };
@@ -0,0 +1,65 @@
1
+ import { SMegaMenuItemState, SMegaMenuOwnerState, SMegaMenuPanelState, SMegaMenuTriggerState } from './types';
2
+ /**
3
+ * Navigation root. Semantic `nav` markup is fixed by the default slot; consumers
4
+ * can replace the slot when their application needs a custom navigation root.
5
+ */
6
+ export declare const SMegaMenuRoot: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
7
+ ownerState: SMegaMenuOwnerState;
8
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
9
+ /**
10
+ * Top-level trigger.
11
+ *
12
+ * While its panel is open an invisible `::after` bridge extends past the bottom
13
+ * edge so the pointer never leaves a hoverable element on its way down to the
14
+ * panel surface. See the close-intent explanation in `s-mega-menu.tsx`.
15
+ */
16
+ export declare const SMegaMenuTrigger: import('@emotion/styled').StyledComponent<import('@mui/material').ButtonBaseOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, keyof import('@mui/material').ButtonBaseOwnProps> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "className" | "style" | "classes" | "children" | "sx" | "disabled" | "tabIndex" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "nativeButton" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "type"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
17
+ ownerState: SMegaMenuTriggerState;
18
+ }, {}, {}>;
19
+ /** Chevron rendered by the default trigger content, rotated while the panel is open. */
20
+ export declare const SMegaMenuTriggerArrow: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
21
+ ownerState: SMegaMenuTriggerState;
22
+ }, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
23
+ /**
24
+ * Popover hosting the top-level panel.
25
+ *
26
+ * `pointerEvents: 'none'` on the popover root plus `pointerEvents: 'auto'` on the
27
+ * surface keeps the page underneath interactive — the non-modal pattern
28
+ * documented in the SPopover `hover-preview` example. Without it the modal root
29
+ * would swallow every pointer event outside the surface.
30
+ */
31
+ export declare const SMegaMenuPopover: import('@emotion/styled').StyledComponent<Omit<import('../s-popover').SPopoverProps, "ref"> & import('react').RefAttributes<HTMLDivElement> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
32
+ ownerState?: SMegaMenuOwnerState;
33
+ }, {}, {}>;
34
+ /** Content container inside a panel surface. Also used for every flyout submenu. */
35
+ export declare const SMegaMenuPanel: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
36
+ ownerState: SMegaMenuPanelState;
37
+ }, {}, {}>;
38
+ /** Column wrapper in the `columns` layout. */
39
+ export declare const SMegaMenuColumn: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
40
+ ownerState: SMegaMenuItemState;
41
+ }, {}, {}>;
42
+ /** Non-interactive label of one column group. */
43
+ export declare const SMegaMenuHeading: import('@emotion/styled').StyledComponent<import('@mui/material').TypographyOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "color" | "className" | "style" | "classes" | "children" | "sx" | "variant" | "align" | "gutterBottom" | "noWrap" | "variantMapping"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
44
+ ownerState: SMegaMenuItemState;
45
+ }, {}, {}>;
46
+ /** Panel row. */
47
+ export declare const SMegaMenuItemRoot: import('@emotion/styled').StyledComponent<Omit<import('../s-list-action-item').SListActionItemProps, "ref"> & import('react').RefAttributes<HTMLElement> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
48
+ ownerState: SMegaMenuItemState;
49
+ }, {}, {}>;
50
+ /**
51
+ * Positioned wrapper around a row plus its flyout submenu.
52
+ *
53
+ * While open, an invisible `::after` bridge spans the horizontal gap between the
54
+ * row and the submenu, flipped to the other side when collision detection moved
55
+ * the submenu left. Because the submenu is a DOM descendant of this wrapper, the
56
+ * pointer never leaves the wrapper on its way across — `pointerleave` simply
57
+ * does not fire.
58
+ */
59
+ export declare const SMegaMenuSubmenuNode: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
60
+ ownerState: SMegaMenuItemState;
61
+ }, {}, {}>;
62
+ /** Flyout submenu surface rendered next to a nested row. */
63
+ export declare const SMegaMenuSubmenu: import('@emotion/styled').StyledComponent<import('@mui/material').PaperOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "style" | "classes" | "children" | "elevation" | "square" | "sx" | "variant"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
64
+ ownerState: SMegaMenuItemState;
65
+ }, {}, {}>;
@@ -0,0 +1,232 @@
1
+ import { actionHoverMedia as e, getFocusVisibleStyle as t, reducedMotionMedia as n } from "../theme/components/action-styles.js";
2
+ import { SListActionItem as r } from "../s-list-action-item/s-list-action-item.js";
3
+ import { SPopover as i } from "../s-popover/s-popover.js";
4
+ import { Box as a, ButtonBase as o, Paper as s, Typography as c, styled as l } from "@mui/material";
5
+ //#region lib/s-mega-menu/mega-menu-slots.tsx
6
+ var u = 44, d = .75, f = l("nav", {
7
+ name: "SMegaMenu",
8
+ slot: "Root",
9
+ shouldForwardProp: (e) => e !== "ownerState"
10
+ })(({ theme: e }) => ({
11
+ alignItems: "center",
12
+ display: "flex",
13
+ flexWrap: "nowrap",
14
+ gap: e.spacing(1.25),
15
+ minWidth: 0,
16
+ [e.breakpoints.down("lg")]: { gap: e.spacing(.75) }
17
+ })), p = l(o, {
18
+ name: "SMegaMenu",
19
+ slot: "Trigger",
20
+ shouldForwardProp: (e) => e !== "ownerState"
21
+ })(({ theme: r }) => ({
22
+ ...r.typography.body1,
23
+ alignItems: "center",
24
+ backgroundColor: "transparent",
25
+ border: "1px solid transparent",
26
+ borderRadius: r.radius.md,
27
+ color: (r.vars ?? r).palette.text.primary,
28
+ display: "inline-flex",
29
+ gap: r.spacing(1.25),
30
+ minHeight: u,
31
+ minWidth: 0,
32
+ padding: r.spacing(.75, 1.5),
33
+ position: "relative",
34
+ textDecoration: "none",
35
+ transition: r.transitions.create([
36
+ "background-color",
37
+ "border-color",
38
+ "color"
39
+ ], { duration: r.transitions.duration.shorter }),
40
+ whiteSpace: "nowrap",
41
+ [e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.hover } },
42
+ "&.Mui-focusVisible": {
43
+ backgroundColor: (r.vars ?? r).palette.action.focus,
44
+ ...t(r)
45
+ },
46
+ "&.Mui-disabled": { color: (r.vars ?? r).palette.text.disabled },
47
+ [r.breakpoints.down("lg")]: { padding: r.spacing(.75, 1) },
48
+ [n]: { transition: "none" },
49
+ variants: [{
50
+ props: ({ ownerState: e }) => e.open,
51
+ style: {
52
+ backgroundColor: (r.vars ?? r).palette.action.selected,
53
+ "&::after": {
54
+ content: "\"\"",
55
+ height: r.spacing(2.5),
56
+ left: 0,
57
+ position: "absolute",
58
+ top: "100%",
59
+ width: "100%"
60
+ },
61
+ [e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.selected } }
62
+ }
63
+ }, {
64
+ props: ({ ownerState: e }) => e.active,
65
+ style: {
66
+ backgroundColor: (r.vars ?? r).palette.action.selected,
67
+ color: (r.vars ?? r).palette.text.primary,
68
+ fontWeight: r.typography.fontWeightMedium,
69
+ [e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.selected } }
70
+ }
71
+ }]
72
+ })), m = l("span", {
73
+ name: "SMegaMenu",
74
+ slot: "TriggerArrow",
75
+ shouldForwardProp: (e) => e !== "ownerState"
76
+ })(({ theme: e }) => ({
77
+ alignItems: "center",
78
+ color: "inherit",
79
+ display: "inline-flex",
80
+ flexShrink: 0,
81
+ transition: e.transitions.create(["transform"], { duration: e.transitions.duration.shorter }),
82
+ [n]: { transition: "none" },
83
+ variants: [{
84
+ props: ({ ownerState: e }) => e.open,
85
+ style: { transform: "rotate(180deg)" }
86
+ }]
87
+ })), h = l(i, {
88
+ name: "SMegaMenu",
89
+ slot: "Popover",
90
+ shouldForwardProp: (e) => e !== "ownerState"
91
+ })({ pointerEvents: "none" }), g = l(a, {
92
+ name: "SMegaMenu",
93
+ slot: "Panel",
94
+ shouldForwardProp: (e) => e !== "ownerState"
95
+ })(({ theme: e }) => ({
96
+ minWidth: 0,
97
+ variants: [
98
+ {
99
+ props: ({ ownerState: e }) => e.resolvedLayout === "list",
100
+ style: {
101
+ display: "block",
102
+ paddingBlock: e.spacing(d)
103
+ }
104
+ },
105
+ {
106
+ props: ({ ownerState: e }) => e.resolvedLayout === "columns",
107
+ style: {
108
+ alignItems: "start",
109
+ columnGap: e.spacing(5),
110
+ display: "grid",
111
+ gridAutoColumns: "1fr",
112
+ gridAutoFlow: "column",
113
+ padding: e.spacing(d)
114
+ }
115
+ },
116
+ {
117
+ props: ({ ownerState: e }) => e.scrollable,
118
+ style: {
119
+ maxHeight: "min(70vh, 620px)",
120
+ overflowY: "auto"
121
+ }
122
+ }
123
+ ]
124
+ })), _ = l(a, {
125
+ name: "SMegaMenu",
126
+ slot: "Column",
127
+ shouldForwardProp: (e) => e !== "ownerState"
128
+ })(({ theme: e }) => ({
129
+ display: "flex",
130
+ flexDirection: "column",
131
+ gap: e.spacing(d),
132
+ minWidth: 0
133
+ })), v = l(c, {
134
+ name: "SMegaMenu",
135
+ slot: "Heading",
136
+ shouldForwardProp: (e) => e !== "ownerState"
137
+ })(({ theme: e }) => ({
138
+ ...e.typography.subtitle1,
139
+ color: (e.vars ?? e).palette.text.primary,
140
+ margin: 0,
141
+ padding: e.spacing(1, 1.5, .5),
142
+ whiteSpace: "nowrap"
143
+ })), y = l(r, {
144
+ name: "SMegaMenu",
145
+ slot: "Item",
146
+ shouldForwardProp: (e) => e !== "ownerState"
147
+ })(({ theme: e }) => ({
148
+ borderRadius: e.radius.md,
149
+ flex: "0 0 auto",
150
+ paddingInline: e.spacing(1.5),
151
+ whiteSpace: "nowrap",
152
+ variants: [{
153
+ props: ({ ownerState: e }) => e.resolvedLayout === "list",
154
+ style: {
155
+ marginInline: e.spacing(d),
156
+ width: `calc(100% - ${e.spacing(d * 2)})`
157
+ }
158
+ }]
159
+ })), b = l(a, {
160
+ name: "SMegaMenu",
161
+ slot: "SubmenuNode",
162
+ shouldForwardProp: (e) => e !== "ownerState"
163
+ })(({ theme: e }) => ({
164
+ minWidth: 0,
165
+ position: "relative",
166
+ variants: [{
167
+ props: ({ ownerState: e }) => e.open,
168
+ style: { "&::after": {
169
+ content: "\"\"",
170
+ height: "100%",
171
+ left: "100%",
172
+ position: "absolute",
173
+ top: 0,
174
+ width: e.spacing(1.5)
175
+ } }
176
+ }, {
177
+ props: ({ ownerState: e }) => e.open && e.side === "left",
178
+ style: { "&::after": {
179
+ left: "auto",
180
+ right: "100%"
181
+ } }
182
+ }]
183
+ })), x = l(s, {
184
+ name: "SMegaMenu",
185
+ slot: "Submenu",
186
+ shouldForwardProp: (e) => e !== "ownerState"
187
+ })(({ theme: e }) => ({
188
+ backgroundColor: (e.vars ?? e).palette.background.paper,
189
+ backgroundImage: "none",
190
+ border: "1px solid",
191
+ borderColor: (e.vars ?? e).palette.divider,
192
+ borderRadius: e.radius.md,
193
+ left: `calc(100% + ${e.spacing(1.5)})`,
194
+ minWidth: e.spacing(25),
195
+ opacity: 0,
196
+ overflow: "visible",
197
+ pointerEvents: "none",
198
+ position: "absolute",
199
+ top: 0,
200
+ transform: `translateX(${e.spacing(1)})`,
201
+ transition: e.transitions.create([
202
+ "opacity",
203
+ "transform",
204
+ "visibility"
205
+ ], { duration: e.transitions.duration.shorter }),
206
+ visibility: "hidden",
207
+ width: "max-content",
208
+ zIndex: 1,
209
+ [n]: {
210
+ transform: "none",
211
+ transition: "none"
212
+ },
213
+ variants: [{
214
+ props: ({ ownerState: e }) => e.side === "left",
215
+ style: {
216
+ left: "auto",
217
+ right: `calc(100% + ${e.spacing(1.5)})`,
218
+ transform: `translateX(-${e.spacing(1)})`
219
+ }
220
+ }, {
221
+ props: ({ ownerState: e }) => e.open,
222
+ style: {
223
+ opacity: 1,
224
+ pointerEvents: "auto",
225
+ transform: "translateX(0)",
226
+ visibility: "visible",
227
+ zIndex: 2
228
+ }
229
+ }]
230
+ }));
231
+ //#endregion
232
+ export { _ as SMegaMenuColumn, v as SMegaMenuHeading, y as SMegaMenuItemRoot, g as SMegaMenuPanel, h as SMegaMenuPopover, f as SMegaMenuRoot, x as SMegaMenuSubmenu, b as SMegaMenuSubmenuNode, p as SMegaMenuTrigger, m as SMegaMenuTriggerArrow };
@@ -0,0 +1,35 @@
1
+ import { SMegaMenuItem, SMegaMenuOwnerState, SMegaMenuSlotProps, SMegaMenuSlots, SMegaMenuTriggerState } from './types';
2
+ import * as React from 'react';
3
+ export interface MegaMenuTriggerButtonProps<T = unknown> {
4
+ /** The trigger points at the active `href`. */
5
+ active: boolean;
6
+ /** The item has children, so the trigger owns a panel. */
7
+ hasPanel: boolean;
8
+ item: SMegaMenuItem<T>;
9
+ /** Default element used when the item has an `href`. */
10
+ linkComponent?: React.ElementType;
11
+ onClick: React.MouseEventHandler<HTMLElement>;
12
+ onFocus: React.FocusEventHandler<HTMLElement>;
13
+ onKeyDown: React.KeyboardEventHandler<HTMLElement>;
14
+ onPointerEnter: React.PointerEventHandler<HTMLElement>;
15
+ onPointerLeave: React.PointerEventHandler<HTMLElement>;
16
+ /** The trigger's panel is open. */
17
+ open: boolean;
18
+ ownerState: SMegaMenuOwnerState<T>;
19
+ /** `id` of the panel surface, referenced by `aria-controls` while open. */
20
+ panelId: string;
21
+ /** Registers the rendered element so the menu can anchor to it and restore focus. */
22
+ registerRef: (id: string, node: HTMLElement | null) => void;
23
+ renderTrigger?: (item: SMegaMenuItem<T>, state: SMegaMenuTriggerState<T>) => React.ReactNode;
24
+ slotProps?: SMegaMenuSlotProps<T>;
25
+ slots?: SMegaMenuSlots;
26
+ /** Stable accessible relationship target for the panel's `aria-labelledby`. */
27
+ triggerId: string;
28
+ }
29
+ /**
30
+ * A single top-level trigger.
31
+ *
32
+ * Extracted from `SMegaMenu` so the per-item `useForkRef` stays a top-level hook
33
+ * instead of being called inside a render loop.
34
+ */
35
+ export declare function MegaMenuTriggerButton<T>({ active, hasPanel, item, linkComponent, onClick, onFocus, onKeyDown, onPointerEnter, onPointerLeave, open, ownerState, panelId, registerRef, renderTrigger, slotProps, slots, triggerId, }: Readonly<MegaMenuTriggerButtonProps<T>>): React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { t as e } from "../mega-menu-trigger-BcOo8I5_.js";
2
+ export { e as MegaMenuTriggerButton };
@@ -0,0 +1,23 @@
1
+ import { SMegaMenuProps } from './types';
2
+ import * as React from 'react';
3
+ interface SMegaMenuComponent {
4
+ <T = unknown>(props: SMegaMenuProps<T> & React.RefAttributes<HTMLElement>): React.JSX.Element;
5
+ displayName?: string;
6
+ }
7
+ /**
8
+ * Multi-level navigation mega menu built on `SPopover`.
9
+ *
10
+ * The panel opens on hover, click/tap and keyboard, and — the point of
11
+ * the component — never closes while the pointer or focus travels between the
12
+ * trigger and the panel content:
13
+ *
14
+ * 1. An invisible `::after` bridge under an open trigger covers the vertical gap,
15
+ * and a second bridge on every submenu wrapper covers the horizontal gap, so
16
+ * `pointerleave` usually does not fire at all while crossing.
17
+ * 2. Any `pointerleave` that does fire only *schedules* a close after
18
+ * `closeDelay`; entering the panel surface cancels the pending close.
19
+ * 3. Focus never closes the panel unless `relatedTarget` is outside both the
20
+ * navigation root and the panel surface.
21
+ */
22
+ export declare const SMegaMenu: SMegaMenuComponent;
23
+ export default SMegaMenu;