@solostylist/ui-kit 2.0.0 → 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 (365) hide show
  1. package/dist/{Add-COc9VdNg.js → Add-CEnTWsXs.js} +1 -1
  2. package/dist/{ArrowUpward-D88i2k4q.js → ArrowUpward-udL1ltj2.js} +1 -1
  3. package/dist/{Button-DgIFcM44.js → Button-DaLr1m20.js} +5 -5
  4. package/dist/{ButtonBase-DxKtpFYs.js → ButtonBase-DovDC6-1.js} +224 -271
  5. package/dist/{Checkbox-BoZu9z2l.js → Checkbox-C-Xjbzzh.js} +7 -7
  6. package/dist/{ChevronRight-BxsM4W78.js → ChevronRight-DsPfsFKB.js} +1 -1
  7. package/dist/{Close-o4HFfK0I.js → Close-CIYOM-Sc.js} +1 -1
  8. package/dist/{Collapse-zgIFP5Sj.js → Collapse-DPUr1cbP.js} +46 -46
  9. package/dist/{ContentCopy-5unyTYXy.js → ContentCopy-Hlh3azVb.js} +1 -1
  10. package/dist/{DialogContent-CAry6lVf.js → DialogContent-b3xbJVC6.js} +5 -5
  11. package/dist/{Download-DtvoRwpl.js → Download-D9PkFi7a.js} +1 -1
  12. package/dist/{ExpandMore-Ba5bg6s-.js → ExpandMore-sOgvEha9.js} +1 -1
  13. package/dist/{Favorite-B_GsElm0.js → Favorite-BP343hjM.js} +1 -1
  14. package/dist/FavoriteBorder-D15j9xEL.js +6 -0
  15. package/dist/{FormControl-BxmM9UP6.js → FormControl-DwMfZCiz.js} +46 -52
  16. package/dist/{FormControlLabel-DzgppcC_.js → FormControlLabel-Ihga1FTB.js} +5 -5
  17. package/dist/{Grow-zRRuwUl-.js → Grow-BQR7x52V.js} +20 -20
  18. package/dist/{elementAcceptingRef-DhkNAkFH.js → IconButton-CE-4GamO.js} +87 -111
  19. package/dist/{InfoOutlined-VC7X46pc.js → InfoOutlined-lpvhO6P8.js} +1 -1
  20. package/dist/{List-CnGIAXAS.js → List-RNcZhRdr.js} +26 -24
  21. package/dist/Menu-CnyB4SDS.js +180 -0
  22. package/dist/{MenuItem-rXJfQzDC.js → MenuItem-Ck30dBOR.js} +15 -14
  23. package/dist/MenuList-Cc98uWXq.js +160 -0
  24. package/dist/{Modal-jAiibALV.js → Modal-CD2EBfU8.js} +116 -121
  25. package/dist/{Paper-ixxCeml9.js → Paper-_3qggtBp.js} +2 -2
  26. package/dist/Popover-BFdKSYI5.js +340 -0
  27. package/dist/{Popper-CVYyMS3c.js → Popper-DYNAMSDd.js} +62 -61
  28. package/dist/{Portal-AnyvFRC4.js → Portal-i_wgIe9-.js} +13 -17
  29. package/dist/Remove-DDEn8ek8.js +6 -0
  30. package/dist/{Stack-UMc4dV4G.js → Stack-C0LGzM4c.js} +1 -1
  31. package/dist/{SwitchBase-D7zqrstO.js → SwitchBase-CjWtDdmE.js} +5 -5
  32. package/dist/{Tooltip-DbCd6rgF.js → Tooltip-B1sn94L0.js} +161 -160
  33. package/dist/{Typography-yXjc7kVP.js → Typography-_P0svrkO.js} +3 -3
  34. package/dist/{UnfoldMoreRounded-DsN0HVDV.js → UnfoldMoreRounded-CuCrdxoy.js} +1 -1
  35. package/dist/{autocomplete-B_4y84Ba.js → autocomplete-BgARERpp.js} +1 -1
  36. package/dist/{avatar-BHuZu3DN.js → avatar-XNOdbbRz.js} +1 -1
  37. package/dist/chainPropTypes-CkMRtDjQ.js +8 -0
  38. package/dist/{checkbox-BKMZEVU5.js → checkbox-D1U_JKqs.js} +3 -3
  39. package/dist/{createSvgIcon-B0SZlJF1.js → createSvgIcon-3y-gS0r1.js} +3 -3
  40. package/dist/elementAcceptingRef-pKEY6jPR.js +25 -0
  41. package/dist/elementTypeAcceptingRef-xl_04Y5-.js +19 -0
  42. package/dist/{objectWithoutPropertiesLoose-Cpds-4w8.js → extends-DXMyyJCW.js} +1 -12
  43. package/dist/{field-label-styles-BOyhp6gw.js → field-label-styles-4praXMaE.js} +1 -1
  44. package/dist/getActiveElement-BfBkhgy6.js +8 -0
  45. package/dist/{gradients-90SYkAC0.js → gradients-mQAYCK0_.js} +1 -1
  46. package/dist/isFocusVisible-4OIE8TST.js +11 -0
  47. package/dist/isLayoutSupported-Btg2X3QE.js +6 -0
  48. package/dist/isMuiElement-CPjhi284.js +10 -0
  49. package/dist/main.js +1 -1
  50. package/dist/mega-menu-trigger-BcOo8I5_.js +53 -0
  51. package/dist/{mergeSlotProps-xl1-PgWL.js → mergeSlotProps-DC8r4QzS.js} +1 -1
  52. package/dist/objectWithoutPropertiesLoose-q4Zwd1RV.js +12 -0
  53. package/dist/{outlinedInputClasses-DECY98u0.js → outlinedInputClasses-ci1zDasn.js} +1 -1
  54. package/dist/ownerDocument-CJjQZweZ.js +6 -0
  55. package/dist/ownerDocument-pYjJiXem.js +5 -0
  56. package/dist/ownerWindow-SSeeoqPT.js +18 -0
  57. package/dist/palettes/index.js +1 -1
  58. package/dist/{palettes-Dw3PEYF5.js → palettes-B1FcGUYs.js} +2 -2
  59. package/dist/refType-j5S9pc_e.js +6 -0
  60. package/dist/s-accordion/index.js +1 -1
  61. package/dist/s-accordion/s-accordion.js +1 -1
  62. package/dist/{s-accordion-B8nlrdFc.js → s-accordion-1oLxQhod.js} +23 -23
  63. package/dist/s-action-overlay/s-action-overlay.js +1 -1
  64. package/dist/s-animated-gradient-text/index.d.ts +2 -0
  65. package/dist/s-animated-gradient-text/index.js +2 -0
  66. package/dist/s-animated-gradient-text/s-animated-gradient-text.d.ts +64 -0
  67. package/dist/s-animated-gradient-text/s-animated-gradient-text.js +93 -0
  68. package/dist/s-announcement-bar/index.d.ts +2 -0
  69. package/dist/s-announcement-bar/index.js +2 -0
  70. package/dist/s-announcement-bar/s-announcement-bar.d.ts +113 -0
  71. package/dist/s-announcement-bar/s-announcement-bar.js +275 -0
  72. package/dist/s-autocomplete/s-autocomplete.js +1 -1
  73. package/dist/s-avatar/s-avatar.js +1 -1
  74. package/dist/s-blur-text/s-blur-text.js +1 -1
  75. package/dist/s-brand-logo/index.js +1 -1
  76. package/dist/s-brand-logo/s-brand-logo.js +1 -1
  77. package/dist/s-breadcrumbs/s-breadcrumbs.js +1 -1
  78. package/dist/s-carousel/index.js +1 -1
  79. package/dist/s-carousel/s-carousel.d.ts +2 -0
  80. package/dist/s-carousel/s-carousel.js +1 -1
  81. package/dist/{s-carousel-Dnjke4JQ.js → s-carousel-CAyAl3ka.js} +7 -5
  82. package/dist/s-category-card/s-category-card.js +1 -1
  83. package/dist/s-chat-input/index.js +1 -1
  84. package/dist/s-chat-input/s-chat-input.js +1 -1
  85. package/dist/{s-chat-input-DCS0mJE4.js → s-chat-input-T3gyan60.js} +8 -8
  86. package/dist/s-chat-message/index.js +1 -1
  87. package/dist/s-chat-message/s-chat-message.js +1 -1
  88. package/dist/{s-chat-message-9oollJJq.js → s-chat-message-NFTpNgt5.js} +4 -4
  89. package/dist/s-checkbox/s-checkbox.js +5 -5
  90. package/dist/s-chips/index.js +1 -1
  91. package/dist/s-chips/s-chips.js +1 -1
  92. package/dist/{s-chips-WqGdqHW9.js → s-chips-Dqq1fgz-.js} +5 -5
  93. package/dist/s-code-block/index.js +1 -1
  94. package/dist/s-code-block/s-code-block.js +1 -1
  95. package/dist/{s-code-block-DzGoGg5e.js → s-code-block-DyDtctGG.js} +2 -2
  96. package/dist/s-comment-message/index.js +1 -1
  97. package/dist/s-comment-message/s-comment-message.js +1 -1
  98. package/dist/{s-comment-message-C6kfgRjv.js → s-comment-message-DpCVBKiE.js} +53 -52
  99. package/dist/s-copyable-text/s-copyable-text.js +2 -2
  100. package/dist/s-countdown/s-count-box.js +1 -1
  101. package/dist/s-data-table/index.js +1 -1
  102. package/dist/s-data-table/s-data-table.js +1 -1
  103. package/dist/{s-data-table-B1TGVupB.js → s-data-table-D4V58HFR.js} +16 -16
  104. package/dist/s-date-picker/index.js +1 -1
  105. package/dist/s-date-picker/s-date-picker.js +1 -1
  106. package/dist/s-date-picker-BFIQOA8C.js +657 -0
  107. package/dist/s-datetime-picker/index.js +1 -1
  108. package/dist/s-datetime-picker/s-datetime-picker.js +1 -1
  109. package/dist/{s-datetime-picker-ByzW44E0.js → s-datetime-picker-zfg7BEOW.js} +623 -615
  110. package/dist/s-dialog/index.js +1 -1
  111. package/dist/s-dialog/s-dialog.js +1 -1
  112. package/dist/{s-dialog-BLiyjLkx.js → s-dialog-BNlXsVVP.js} +10 -10
  113. package/dist/s-dialog-confirm/s-dialog-confirm.js +4 -4
  114. package/dist/s-dialog-message/s-dialog-message.js +4 -4
  115. package/dist/s-drawer/index.d.ts +3 -0
  116. package/dist/s-drawer/index.js +2 -0
  117. package/dist/s-drawer/s-drawer.d.ts +70 -0
  118. package/dist/s-drawer/s-drawer.js +2 -0
  119. package/dist/s-drawer-4h5ZyoM8.js +562 -0
  120. package/dist/s-empty/s-empty.js +2 -2
  121. package/dist/s-file-dropzone/index.js +1 -1
  122. package/dist/s-file-dropzone/s-file-dropzone.js +1 -1
  123. package/dist/{s-file-dropzone-CVQpYRdY.js → s-file-dropzone-Cfzv1Cm8.js} +16 -16
  124. package/dist/s-file-icon/s-file-icon.js +1 -1
  125. package/dist/s-flex-box/s-flex-box.js +1 -1
  126. package/dist/s-form/s-form.js +2 -2
  127. package/dist/s-gallery/s-gallery.js +1 -1
  128. package/dist/s-glow-button/s-glow-button.js +1 -1
  129. package/dist/s-gradient-blob-pulse/index.d.ts +2 -0
  130. package/dist/s-gradient-blob-pulse/index.js +2 -0
  131. package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.d.ts +62 -0
  132. package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.js +237 -0
  133. package/dist/s-gradient-icon/index.d.ts +1 -1
  134. package/dist/s-gradient-icon/s-gradient-icon.d.ts +4 -4
  135. package/dist/s-gradient-icon/s-gradient-icon.js +2 -2
  136. package/dist/s-icon-button/s-icon-button.d.ts +6 -2
  137. package/dist/s-icon-button/s-icon-button.js +8 -8
  138. package/dist/s-image-comparison/s-image-comparison.js +3 -3
  139. package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +1 -1
  140. package/dist/s-image-viewer/index.js +1 -1
  141. package/dist/s-image-viewer/s-image-viewer.js +1 -1
  142. package/dist/s-image-viewer/use-image-viewer-navigation.js +1 -1
  143. package/dist/{s-image-viewer-DNIEYdtL.js → s-image-viewer-CjK67-rs.js} +5 -5
  144. package/dist/s-interactive-card/index.d.ts +3 -0
  145. package/dist/s-interactive-card/index.js +2 -0
  146. package/dist/s-interactive-card/s-interactive-card.d.ts +57 -0
  147. package/dist/s-interactive-card/s-interactive-card.js +152 -0
  148. package/dist/s-label/s-label.js +9 -9
  149. package/dist/s-language-switcher/index.js +1 -1
  150. package/dist/s-language-switcher/s-language-switcher.js +1 -1
  151. package/dist/s-language-switcher-PaMgHWc2.js +246 -0
  152. package/dist/s-lazy-image/s-lazy-image.js +2 -2
  153. package/dist/s-link/index.js +1 -1
  154. package/dist/s-link/s-link.js +1 -1
  155. package/dist/{s-link-CAMTGfd9.js → s-link-Db1aabHh.js} +5 -4
  156. package/dist/s-list-action-item/index.d.ts +2 -0
  157. package/dist/s-list-action-item/index.js +2 -0
  158. package/dist/s-list-action-item/s-list-action-item.d.ts +89 -0
  159. package/dist/s-list-action-item/s-list-action-item.js +150 -0
  160. package/dist/s-localization-provider/index.js +1 -1
  161. package/dist/s-localization-provider/s-localization-provider.js +1 -1
  162. package/dist/{s-localization-provider-Xw3NO2uP.js → s-localization-provider-CeyB_SGz.js} +2 -2
  163. package/dist/s-mega-menu/index.d.ts +3 -0
  164. package/dist/s-mega-menu/index.js +2 -0
  165. package/dist/s-mega-menu/mega-menu-panel.d.ts +38 -0
  166. package/dist/s-mega-menu/mega-menu-panel.js +253 -0
  167. package/dist/s-mega-menu/mega-menu-slots.d.ts +65 -0
  168. package/dist/s-mega-menu/mega-menu-slots.js +232 -0
  169. package/dist/s-mega-menu/mega-menu-trigger.d.ts +35 -0
  170. package/dist/s-mega-menu/mega-menu-trigger.js +2 -0
  171. package/dist/s-mega-menu/s-mega-menu.d.ts +23 -0
  172. package/dist/s-mega-menu/s-mega-menu.js +228 -0
  173. package/dist/s-mega-menu/types.d.ts +188 -0
  174. package/dist/s-mega-menu/types.js +0 -0
  175. package/dist/s-mega-menu/utils.d.ts +51 -0
  176. package/dist/s-mega-menu/utils.js +51 -0
  177. package/dist/s-mobile-dock/index.d.ts +3 -0
  178. package/dist/s-mobile-dock/index.js +2 -0
  179. package/dist/s-mobile-dock/s-mobile-dock.d.ts +96 -0
  180. package/dist/s-mobile-dock/s-mobile-dock.js +2 -0
  181. package/dist/s-mobile-dock-8F3UWAb8.js +615 -0
  182. package/dist/s-nav-item/index.d.ts +1 -1
  183. package/dist/s-nav-item/s-nav-item.d.ts +35 -16
  184. package/dist/s-nav-item/s-nav-item.js +56 -77
  185. package/dist/s-nav-items/index.js +2 -2
  186. package/dist/s-nav-items/s-nav-items.js +124 -2
  187. package/dist/s-no-ssr/index.js +1 -1
  188. package/dist/s-no-ssr/s-no-ssr.js +1 -1
  189. package/dist/s-number-range/index.d.ts +3 -0
  190. package/dist/s-number-range/index.js +2 -0
  191. package/dist/s-number-range/s-number-range.d.ts +109 -0
  192. package/dist/s-number-range/s-number-range.js +2 -0
  193. package/dist/s-number-range-Low5QjuD.js +253 -0
  194. package/dist/s-pagination/index.js +1 -1
  195. package/dist/s-pagination/s-pagination.js +1 -1
  196. package/dist/{s-pagination-Dt8Pk5Tp.js → s-pagination-s46hBifh.js} +33 -33
  197. package/dist/s-pixel-reveal/s-pixel-reveal.js +1 -1
  198. package/dist/s-popover/index.d.ts +5 -0
  199. package/dist/s-popover/index.js +3 -0
  200. package/dist/s-popover/placement.d.ts +14 -0
  201. package/dist/s-popover/placement.js +65 -0
  202. package/dist/s-popover/s-popover-content.d.ts +22 -0
  203. package/dist/s-popover/s-popover-content.js +22 -0
  204. package/dist/s-popover/s-popover.d.ts +59 -0
  205. package/dist/s-popover/s-popover.js +68 -0
  206. package/dist/s-product-card/index.d.ts +3 -0
  207. package/dist/s-product-card/index.js +2 -0
  208. package/dist/s-product-card/s-product-card.d.ts +216 -0
  209. package/dist/s-product-card/s-product-card.js +502 -0
  210. package/dist/s-product-gallery/index.d.ts +3 -0
  211. package/dist/s-product-gallery/index.js +2 -0
  212. package/dist/s-product-gallery/s-product-gallery.d.ts +116 -0
  213. package/dist/s-product-gallery/s-product-gallery.js +2 -0
  214. package/dist/s-product-gallery-Dj9eGg5i.js +430 -0
  215. package/dist/s-quantity-input/index.js +1 -1
  216. package/dist/s-quantity-input/s-quantity-input.js +246 -2
  217. package/dist/s-review/index.js +1 -1
  218. package/dist/s-review/s-review.js +1 -1
  219. package/dist/{s-review-DSXXtWlL.js → s-review--Q2C0ngO.js} +4 -4
  220. package/dist/s-scroll-reveal/s-scroll-reveal.js +1 -1
  221. package/dist/s-scroll-to-top/s-scroll-to-top.d.ts +1 -1
  222. package/dist/s-scroll-to-top/s-scroll-to-top.js +2 -2
  223. package/dist/s-scroll-velocity/scroll-velocity-row.js +1 -1
  224. package/dist/s-segmented-control/index.d.ts +3 -0
  225. package/dist/s-segmented-control/index.js +2 -0
  226. package/dist/s-segmented-control/s-segmented-control.d.ts +94 -0
  227. package/dist/s-segmented-control/s-segmented-control.js +302 -0
  228. package/dist/s-select/index.js +1 -1
  229. package/dist/s-select/s-select.js +1 -1
  230. package/dist/{s-select-dwY2DYa9.js → s-select-CtVKEOZ5.js} +3 -3
  231. package/dist/s-select-list/s-select-list.js +5 -5
  232. package/dist/s-skeleton/s-skeleton.js +10 -10
  233. package/dist/s-snackbar-message/index.js +1 -1
  234. package/dist/s-snackbar-message/s-snackbar-message.js +1 -1
  235. package/dist/{s-snackbar-message-3Z6VySlB.js → s-snackbar-message-DsfJlDYd.js} +98 -96
  236. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +1 -1
  237. package/dist/s-status-illustration/s-status-illustration.js +1 -1
  238. package/dist/s-stepper/index.d.ts +3 -0
  239. package/dist/s-stepper/index.js +2 -0
  240. package/dist/s-stepper/s-stepper.d.ts +90 -0
  241. package/dist/s-stepper/s-stepper.js +2 -0
  242. package/dist/s-stepper-BtODHVro.js +892 -0
  243. package/dist/s-stripe/s-stripe.js +2 -2
  244. package/dist/s-stripe/stripe-input.js +1 -1
  245. package/dist/s-swatch/index.d.ts +3 -0
  246. package/dist/s-swatch/index.js +2 -0
  247. package/dist/s-swatch/s-swatch.d.ts +235 -0
  248. package/dist/s-swatch/s-swatch.js +219 -0
  249. package/dist/s-switch/index.js +1 -1
  250. package/dist/s-switch/s-switch.js +1 -1
  251. package/dist/{s-switch-B8bZAzLh.js → s-switch-BCeBoxWf.js} +18 -18
  252. package/dist/s-tabs/s-tabs.js +4 -4
  253. package/dist/s-text-editor/index.js +1 -1
  254. package/dist/s-text-editor/s-text-editor-toolbar.js +1 -1
  255. package/dist/s-text-editor/s-text-editor.js +2 -2
  256. package/dist/{s-text-editor-toolbar-D-XgFQix.js → s-text-editor-toolbar-D5eQ-jCs.js} +708 -705
  257. package/dist/s-text-field/index.js +1 -1
  258. package/dist/s-text-field/s-text-field.js +1 -1
  259. package/dist/{s-text-field-BM4qk0mf.js → s-text-field-HYyDf1Jo.js} +4 -4
  260. package/dist/s-text-shimmer/s-text-shimmer.js +1 -1
  261. package/dist/s-text-truncation/s-text-truncation.js +1 -1
  262. package/dist/s-theme-demo/s-theme-demo.js +1 -1
  263. package/dist/s-theme-demo/theme-demo-color-ramps-section.js +1 -1
  264. package/dist/s-theme-demo/theme-demo-components-section.js +1 -1
  265. package/dist/s-theme-provider/s-theme-provider.js +1 -1
  266. package/dist/s-theme-switch/index.js +1 -1
  267. package/dist/s-theme-switch/s-theme-switch.js +1 -1
  268. package/dist/{s-theme-switch-BLMz1_m2.js → s-theme-switch-BFWpADh3.js} +2 -2
  269. package/dist/s-tip/index.js +1 -1
  270. package/dist/s-tip/s-tip.js +1 -1
  271. package/dist/{s-tip-ty41ePQm.js → s-tip-jbL7vtoU.js} +5 -5
  272. package/dist/s-tool-bar/s-tool-bar.js +3 -3
  273. package/dist/s-tool-bar/tool-bar-action-buttons.js +1 -1
  274. package/dist/s-tool-bar/tool-bar-image-input.js +1 -1
  275. package/dist/s-tool-bar/tool-bar-inputs.js +3 -3
  276. package/dist/s-tool-item/s-tool-item.d.ts +10 -6
  277. package/dist/s-tool-item/s-tool-item.js +13 -13
  278. package/dist/s-two-pane-layout/s-two-pane-layout.js +1 -1
  279. package/dist/s-zoom-image/s-zoom-image.js +2 -2
  280. package/dist/setRef-BWPyWnrr.js +6 -0
  281. package/dist/theme/component-augmentation.d.ts +65 -1
  282. package/dist/theme/components/autocomplete.js +1 -1
  283. package/dist/theme/components/avatar.js +1 -1
  284. package/dist/theme/components/card.js +1 -1
  285. package/dist/theme/components/checkbox.js +1 -1
  286. package/dist/theme/components/chip.js +1 -1
  287. package/dist/theme/components/components.js +4 -4
  288. package/dist/theme/components/drawer.d.ts +1 -0
  289. package/dist/theme/components/drawer.js +4 -1
  290. package/dist/theme/components/field-label-styles.js +1 -1
  291. package/dist/theme/components/form-label.js +1 -1
  292. package/dist/theme/components/list-item-button.js +1 -1
  293. package/dist/theme/components/list-item.js +3 -3
  294. package/dist/theme/components/month-calendar.js +2 -2
  295. package/dist/theme/components/outlined-input.js +2 -2
  296. package/dist/theme/components/pickers-calendar-header.js +2 -2
  297. package/dist/theme/components/select.js +2 -2
  298. package/dist/theme/components/slider.js +18 -1
  299. package/dist/theme/components/step-connector.d.ts +0 -3
  300. package/dist/theme/components/step-connector.js +1 -6
  301. package/dist/theme/components/step-icon.d.ts +3 -12
  302. package/dist/theme/components/step-icon.js +3 -14
  303. package/dist/theme/components/switch.js +1 -1
  304. package/dist/theme/components/table-pagination.js +1 -1
  305. package/dist/theme/components/toggle-button.js +1 -1
  306. package/dist/theme/components/year-calendar.js +2 -2
  307. package/dist/theme/theme-primitives.js +2 -2
  308. package/dist/{theme-demo-components-section-gtIYRngY.js → theme-demo-components-section-C7l_2KAo.js} +4 -4
  309. package/dist/{theme-primitives-Dt_DT9b5.js → theme-primitives-CXtaMdVj.js} +2 -2
  310. package/dist/{toggle-button-Cxi5CfXC.js → toggle-button-BsGb-tOr.js} +1 -1
  311. package/dist/{tool-bar-action-buttons-Dt-pV3GA.js → tool-bar-action-buttons-v1koaasr.js} +3 -3
  312. package/dist/{tool-bar-image-input-BXlll_hV.js → tool-bar-image-input-DtXTyEe1.js} +2 -2
  313. package/dist/unsupportedProp-whMV_uOi.js +11 -0
  314. package/dist/{useControlled-BeB0W_Ui.js → useControlled-DqNPBJNp.js} +1 -1
  315. package/dist/useEventCallback-DGCsaRIu.js +5 -0
  316. package/dist/{useEventCallback-CVqMfiG_.js → useEventCallback-DhCPBxRG.js} +1 -4
  317. package/dist/{useMobilePicker-C4UQFvkj.js → useMobilePicker-CdrT935R.js} +2176 -2172
  318. package/dist/useRovingTabIndex-DPlW997R.js +242 -0
  319. package/dist/{useSlot-iIu8ek6E.js → useSlot-BG8ReOxN.js} +3 -3
  320. package/dist/{isLayoutSupported-Ceir7nyK.js → useSlotProps-BOO3qaI9.js} +4 -9
  321. package/dist/useThemeProps-Dw9dmKyT.js +29 -0
  322. package/dist/useTimeout-CoK-Khfm.js +49 -0
  323. package/dist/{utils-oJyTAkZY.js → utils-Bfqbev5I.js} +45 -11
  324. package/dist/{warning-CNkSZkq6.js → warning-D5YhCbje.js} +3 -2
  325. package/package.json +1 -1
  326. package/dist/ListContext-B1HQt3OD.js +0 -6
  327. package/dist/Menu-C4Zabc9U.js +0 -504
  328. package/dist/MenuList-DDV8J-yd.js +0 -407
  329. package/dist/isFocusVisible-Y7157FQS.js +0 -35
  330. package/dist/listItemButtonClasses-DbL-aTVf.js +0 -18
  331. package/dist/s-date-picker-BpX4HmBp.js +0 -656
  332. package/dist/s-language-switcher-D-1nywT3.js +0 -251
  333. package/dist/s-nav-items-BUp7DddG.js +0 -327
  334. package/dist/s-quantity-input-mYCixlJc.js +0 -246
  335. package/dist/theme/components/components.d.ts +0 -2
  336. package/dist/theme/components/slider.d.ts +0 -34
  337. package/dist/useThemeProps-BI9yq95N.js +0 -19
  338. package/dist/useThemeProps-Cr28OQu3.js +0 -13
  339. /package/dist/{appendOwnerState-CELpvdMz.js → appendOwnerState-CFQTq3pb.js} +0 -0
  340. /package/dist/{buttonBaseClasses-BvBqFLb_.js → buttonBaseClasses-B90LjsNK.js} +0 -0
  341. /package/dist/{capitalize-CccCFNpQ.js → capitalize-C0baBJCm.js} +0 -0
  342. /package/dist/{checkboxClasses-CEsqS4sc.js → checkboxClasses-B1up2lUn.js} +0 -0
  343. /package/dist/{colors-DKqWMRgW.js → colors-Bik9qOU9.js} +0 -0
  344. /package/dist/{contains-WOhYaq1E.js → contains-DnqPQsQU.js} +0 -0
  345. /package/dist/{createSimplePaletteValueFilter-C1gWywW_.js → createSimplePaletteValueFilter-DFvyXHoZ.js} +0 -0
  346. /package/dist/{formLabelClasses-B0Fa-86T.js → formLabelClasses-AuZHWfTs.js} +0 -0
  347. /package/dist/{iconButtonClasses-CkciZuIe.js → iconButtonClasses-CVVRFXRo.js} +0 -0
  348. /package/dist/{inputAdornmentClasses-D5yYK5bM.js → inputAdornmentClasses-BbB8s-Z4.js} +0 -0
  349. /package/dist/{inputBaseClasses-DuWQGq8Z.js → inputBaseClasses-Ce_jjdp9.js} +0 -0
  350. /package/dist/{integerPropType-Disnft4a.js → integerPropType-CCkQD1JY.js} +0 -0
  351. /package/dist/{isEventHandler-8dPdzK9U.js → isEventHandler-QShLXBxE.js} +0 -0
  352. /package/dist/{monthCalendarClasses-BYVHyEfI.js → monthCalendarClasses-b964KRbc.js} +0 -0
  353. /package/dist/{pickersCalendarHeaderClasses-CIj0gBye.js → pickersCalendarHeaderClasses-BAiPN_oY.js} +0 -0
  354. /package/dist/{s-brand-logo-jtAJZQIv.js → s-brand-logo-D7Jovf5K.js} +0 -0
  355. /package/dist/{s-no-ssr-D8tPdDfh.js → s-no-ssr-DH57_uP_.js} +0 -0
  356. /package/dist/{selectClasses-DoUlWfzV.js → selectClasses-CPxME5jE.js} +0 -0
  357. /package/dist/{svgIconClasses-C8D4AsMj.js → svgIconClasses-1kWGzgux.js} +0 -0
  358. /package/dist/{switchClasses-eiq1bkQN.js → switchClasses-BtweO7PC.js} +0 -0
  359. /package/dist/{typographyClasses-BLM3NmYd.js → typographyClasses-BH_-zLwg.js} +0 -0
  360. /package/dist/{useControlled-C4QJnpiR.js → useControlled-uxVKygk1.js} +0 -0
  361. /package/dist/{useEnhancedEffect-Bc3gBClC.js → useEnhancedEffect-dBFfkm1e.js} +0 -0
  362. /package/dist/{useForkRef-CKneCEtr.js → useForkRef-BuNFTXxE.js} +0 -0
  363. /package/dist/{useFormControl-iWLrn7Ek.js → useFormControl-gXwNeUM1.js} +0 -0
  364. /package/dist/{utils-DaSrTYUS.js → utils-DOY6v6ln.js} +0 -0
  365. /package/dist/{yearCalendarClasses-CuAQumpz.js → yearCalendarClasses-D9k_KT38.js} +0 -0
@@ -5,18 +5,18 @@ import { t as i } from "./generateUtilityClass-PAIOm1jC.js";
5
5
  import { t as a } from "./clsx-DGZSe4Nt.js";
6
6
  import { t as o } from "./generateUtilityClasses-DvX505Gy.js";
7
7
  import { t as s } from "./styled-Bog8QCl3.js";
8
- import { t as c } from "./Stack-UMc4dV4G.js";
9
- import { t as l } from "./RtlProvider-B7uVJXUY.js";
10
- import { t as u } from "./memoTheme-qFyKAk7y.js";
11
- import { t as d } from "./Skeleton-iZFynl7z.js";
12
- import { t as f } from "./useThemeProps-Cr28OQu3.js";
13
- import { t as p } from "./ButtonBase-DxKtpFYs.js";
14
- import { t as m } from "./useControlled-C4QJnpiR.js";
15
- import { t as h } from "./useSlot-iIu8ek6E.js";
16
- import { t as g } from "./capitalize-CccCFNpQ.js";
17
- import { t as _ } from "./createSimplePaletteValueFilter-C1gWywW_.js";
18
- import { t as v } from "./createSvgIcon-B0SZlJF1.js";
19
- import { t as y } from "./integerPropType-Disnft4a.js";
8
+ import { t as c } from "./Stack-C0LGzM4c.js";
9
+ import { t as l } from "./useThemeProps-Dw9dmKyT.js";
10
+ import { t as u } from "./RtlProvider-B7uVJXUY.js";
11
+ import { t as d } from "./memoTheme-qFyKAk7y.js";
12
+ import { t as f } from "./Skeleton-iZFynl7z.js";
13
+ import { t as p } from "./ButtonBase-DovDC6-1.js";
14
+ import { t as m } from "./useControlled-uxVKygk1.js";
15
+ import { t as h } from "./useSlot-BG8ReOxN.js";
16
+ import { t as g } from "./capitalize-C0baBJCm.js";
17
+ import { t as _ } from "./createSimplePaletteValueFilter-DFvyXHoZ.js";
18
+ import { t as v } from "./createSvgIcon-3y-gS0r1.js";
19
+ import { t as y } from "./integerPropType-CCkQD1JY.js";
20
20
  import { getPaginationDimensions as b } from "./s-pagination/types.js";
21
21
  import * as x from "react";
22
22
  import { jsx as S, jsxs as C } from "react/jsx-runtime";
@@ -146,7 +146,7 @@ var O = o("MuiPaginationItem", [
146
146
  name: "MuiPaginationItem",
147
147
  slot: "Root",
148
148
  overridesResolver: N
149
- })(u(({ theme: e }) => ({
149
+ })(d(({ theme: e }) => ({
150
150
  ...e.typography.body2,
151
151
  borderRadius: 32 / 2,
152
152
  textAlign: "center",
@@ -178,7 +178,7 @@ var O = o("MuiPaginationItem", [
178
178
  name: "MuiPaginationItem",
179
179
  slot: "Root",
180
180
  overridesResolver: N
181
- })(u(({ theme: e }) => ({
181
+ })(d(({ theme: e }) => ({
182
182
  ...e.typography.body2,
183
183
  borderRadius: 32 / 2,
184
184
  textAlign: "center",
@@ -283,7 +283,7 @@ var O = o("MuiPaginationItem", [
283
283
  }))), L = s("div", {
284
284
  name: "MuiPaginationItem",
285
285
  slot: "Icon"
286
- })(u(({ theme: e }) => ({
286
+ })(d(({ theme: e }) => ({
287
287
  fontSize: e.typography.pxToRem(20),
288
288
  margin: "0 -8px",
289
289
  variants: [{
@@ -297,7 +297,7 @@ var O = o("MuiPaginationItem", [
297
297
  let n = r({
298
298
  props: e,
299
299
  name: "MuiPaginationItem"
300
- }), { className: i, color: o = "standard", component: s, disabled: c = !1, page: u, selected: d = !1, shape: f = "circular", size: p = "medium", slots: m = {}, slotProps: g = {}, type: _ = "page", variant: v = "text", ...y } = n, b = {
300
+ }), { className: i, color: o = "standard", component: s, disabled: c = !1, page: l, selected: d = !1, shape: f = "circular", size: p = "medium", slots: m = {}, slotProps: g = {}, type: _ = "page", variant: v = "text", ...y } = n, b = {
301
301
  ...n,
302
302
  color: o,
303
303
  disabled: c,
@@ -306,7 +306,7 @@ var O = o("MuiPaginationItem", [
306
306
  size: p,
307
307
  type: _,
308
308
  variant: v
309
- }, x = l(), w = P(b), T = {
309
+ }, x = u(), w = P(b), T = {
310
310
  slots: m,
311
311
  slotProps: g
312
312
  }, [E, D] = h("previous", {
@@ -354,7 +354,7 @@ var O = o("MuiPaginationItem", [
354
354
  disabled: c,
355
355
  className: a(w.root, i),
356
356
  ...y,
357
- children: [_ === "page" && u, U ? /* @__PURE__ */ S(L, {
357
+ children: [_ === "page" && l, U ? /* @__PURE__ */ S(L, {
358
358
  ...W,
359
359
  className: w.icon,
360
360
  as: U
@@ -532,18 +532,18 @@ var W = 5, G = s(U, {
532
532
  slot: "Root",
533
533
  shouldForwardProp: (e) => e !== "ownerState"
534
534
  })(({ ownerState: e }) => ({ ...e.loading && { display: "inline-flex" } })), K = x.forwardRef(function(e, t) {
535
- let n = f({
535
+ let n = l({
536
536
  props: e,
537
537
  name: "SPagination"
538
- }), { "aria-label": r = "pagination navigation", "aria-busy": i, className: a, color: o = "primary", count: s = 0, loading: l = !1, loadingIndicator: u, shape: p = "rounded", size: m = "medium", style: h, sx: g, variant: _ = "text", ...v } = n;
538
+ }), { "aria-label": r = "pagination navigation", "aria-busy": i, className: a, color: o = "primary", count: s = 0, loading: u = !1, loadingIndicator: d, shape: p = "rounded", size: m = "medium", style: h, sx: g, variant: _ = "text", ...v } = n;
539
539
  if (s <= 0) return null;
540
- let y = b(m), w = l || v.disabled, T = {
540
+ let y = b(m), w = u || v.disabled, T = {
541
541
  ...n,
542
542
  "aria-label": r,
543
543
  color: o,
544
544
  count: s,
545
545
  disabled: w,
546
- loading: l,
546
+ loading: u,
547
547
  shape: p,
548
548
  size: m,
549
549
  variant: _
@@ -556,22 +556,22 @@ var W = 5, G = s(U, {
556
556
  display: "inline-flex",
557
557
  gap: `${y.gap}px`
558
558
  },
559
- children: u ?? (p === "circular" ? Array.from({ length: W }, (e, t) => /* @__PURE__ */ S(d, {
559
+ children: d ?? (p === "circular" ? Array.from({ length: W }, (e, t) => /* @__PURE__ */ S(f, {
560
560
  variant: "circular",
561
561
  width: y.item,
562
562
  height: y.item
563
563
  }, t)) : /* @__PURE__ */ C(x.Fragment, { children: [
564
- /* @__PURE__ */ S(d, {
564
+ /* @__PURE__ */ S(f, {
565
565
  variant: "rounded",
566
566
  width: y.item,
567
567
  height: y.item
568
568
  }),
569
- /* @__PURE__ */ S(d, {
569
+ /* @__PURE__ */ S(f, {
570
570
  variant: "rounded",
571
571
  width: y.bar,
572
572
  height: y.item
573
573
  }),
574
- /* @__PURE__ */ S(d, {
574
+ /* @__PURE__ */ S(f, {
575
575
  variant: "rounded",
576
576
  width: y.item,
577
577
  height: y.item
@@ -581,20 +581,20 @@ var W = 5, G = s(U, {
581
581
  return /* @__PURE__ */ S(G, {
582
582
  ...v,
583
583
  "aria-label": r,
584
- "aria-busy": i ?? (l || void 0),
584
+ "aria-busy": i ?? (u || void 0),
585
585
  className: a,
586
586
  color: o,
587
- count: l ? 1 : s,
587
+ count: u ? 1 : s,
588
588
  disabled: w,
589
- hideNextButton: l || v.hideNextButton,
590
- hidePrevButton: l || v.hidePrevButton,
589
+ hideNextButton: u || v.hideNextButton,
590
+ hidePrevButton: u || v.hidePrevButton,
591
591
  ownerState: T,
592
592
  page: v.page,
593
593
  ref: t,
594
- renderItem: l ? () => E : v.renderItem,
594
+ renderItem: u ? () => E : v.renderItem,
595
595
  shape: p,
596
- showFirstButton: l ? !1 : v.showFirstButton,
597
- showLastButton: l ? !1 : v.showLastButton,
596
+ showFirstButton: u ? !1 : v.showFirstButton,
597
+ showLastButton: u ? !1 : v.showLastButton,
598
598
  size: m,
599
599
  style: h,
600
600
  sx: g,
@@ -1,6 +1,6 @@
1
1
  import { toSxArray as e } from "../utils/sx.js";
2
2
  import { resolveCanvasColor as t } from "../utils/canvas-color.js";
3
- import { t as n } from "../useForkRef-CKneCEtr.js";
3
+ import { t as n } from "../useForkRef-BuNFTXxE.js";
4
4
  import { forwardRef as r, useCallback as i, useEffect as a, useRef as o } from "react";
5
5
  import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
6
  import { Box as l, styled as u, useMediaQuery as d, useTheme as f, useThemeProps as p } from "@mui/material";
@@ -0,0 +1,5 @@
1
+ export { default, default as SPopover } from './s-popover';
2
+ export type { SPopoverOwnerState, SPopoverPlacement, SPopoverProps, SPopoverSlotProps, SPopoverSlots, } from './s-popover';
3
+ export { default as SPopoverContent } from './s-popover-content';
4
+ export type { SPopoverContentProps, SPopoverContentTypeMap } from './s-popover-content';
5
+ export type {} from '../theme/component-augmentation';
@@ -0,0 +1,3 @@
1
+ import { SPopover as e } from "./s-popover.js";
2
+ import { SPopoverContent as t } from "./s-popover-content.js";
3
+ export { e as SPopover, e as default, t as SPopoverContent };
@@ -0,0 +1,14 @@
1
+ import { PopoverOrigin } from '@mui/material/Popover';
2
+ /** Anchor edge/corner the popover surface is attached to. */
3
+ export type SPopoverPlacement = 'bottom' | 'bottom-end' | 'bottom-start' | 'top' | 'top-end' | 'top-start';
4
+ /**
5
+ * Shared placement vocabulary for every anchored surface in the kit.
6
+ *
7
+ * Lives outside `s-popover.tsx` so components that anchor a MUI `Menu` (which
8
+ * cannot be swapped for `SPopover`) can reuse the same origin pairs without
9
+ * pulling the `SPopover` component into their bundle.
10
+ */
11
+ export declare const placementOrigins: Record<SPopoverPlacement, {
12
+ anchorOrigin: PopoverOrigin;
13
+ transformOrigin: PopoverOrigin;
14
+ }>;
@@ -0,0 +1,65 @@
1
+ //#region lib/s-popover/placement.ts
2
+ var e = {
3
+ bottom: {
4
+ anchorOrigin: {
5
+ horizontal: "center",
6
+ vertical: "bottom"
7
+ },
8
+ transformOrigin: {
9
+ horizontal: "center",
10
+ vertical: "top"
11
+ }
12
+ },
13
+ "bottom-end": {
14
+ anchorOrigin: {
15
+ horizontal: "right",
16
+ vertical: "bottom"
17
+ },
18
+ transformOrigin: {
19
+ horizontal: "right",
20
+ vertical: "top"
21
+ }
22
+ },
23
+ "bottom-start": {
24
+ anchorOrigin: {
25
+ horizontal: "left",
26
+ vertical: "bottom"
27
+ },
28
+ transformOrigin: {
29
+ horizontal: "left",
30
+ vertical: "top"
31
+ }
32
+ },
33
+ top: {
34
+ anchorOrigin: {
35
+ horizontal: "center",
36
+ vertical: "top"
37
+ },
38
+ transformOrigin: {
39
+ horizontal: "center",
40
+ vertical: "bottom"
41
+ }
42
+ },
43
+ "top-end": {
44
+ anchorOrigin: {
45
+ horizontal: "right",
46
+ vertical: "top"
47
+ },
48
+ transformOrigin: {
49
+ horizontal: "right",
50
+ vertical: "bottom"
51
+ }
52
+ },
53
+ "top-start": {
54
+ anchorOrigin: {
55
+ horizontal: "left",
56
+ vertical: "top"
57
+ },
58
+ transformOrigin: {
59
+ horizontal: "left",
60
+ vertical: "bottom"
61
+ }
62
+ }
63
+ };
64
+ //#endregion
65
+ export { e as placementOrigins };
@@ -0,0 +1,22 @@
1
+ import { OverridableComponent, OverrideProps } from '@mui/material/OverridableComponent';
2
+ import { Theme } from '@mui/material/styles';
3
+ import { BoxTypeMap } from '@mui/system';
4
+ import * as React from 'react';
5
+ export interface SPopoverContentTypeMap<AdditionalProps = object, RootComponent extends React.ElementType = 'div'> {
6
+ props: AdditionalProps & BoxTypeMap<object, RootComponent, Theme>['props'];
7
+ defaultComponent: RootComponent;
8
+ }
9
+ export type SPopoverContentProps<RootComponent extends React.ElementType = SPopoverContentTypeMap['defaultComponent'], AdditionalProps = object> = OverrideProps<SPopoverContentTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
10
+ component?: React.ElementType;
11
+ };
12
+ /**
13
+ * Padded content region for SPopover.
14
+ *
15
+ * Use one or more content regions when a popover mixes padded sections with
16
+ * edge-to-edge elements such as lists and dividers. The default 16px padding
17
+ * can be customized through `sx` or the `SPopoverContent` theme entry.
18
+ */
19
+ export declare const SPopoverContent: OverridableComponent<SPopoverContentTypeMap<object, "div">> & {
20
+ displayName: string;
21
+ };
22
+ export default SPopoverContent;
@@ -0,0 +1,22 @@
1
+ import { t as e } from "../Box-9oeZgA1U.js";
2
+ import { t } from "../styled-Bog8QCl3.js";
3
+ import { t as n } from "../useThemeProps-Dw9dmKyT.js";
4
+ import * as r from "react";
5
+ import { jsx as i } from "react/jsx-runtime";
6
+ //#region lib/s-popover/s-popover-content.tsx
7
+ var a = t(e, {
8
+ name: "SPopoverContent",
9
+ slot: "Root"
10
+ })(({ theme: e }) => ({ padding: e.spacing(2) })), o = Object.assign(r.forwardRef(function(e, t) {
11
+ let r = n({
12
+ props: e,
13
+ name: "SPopoverContent"
14
+ });
15
+ return /* @__PURE__ */ i(a, {
16
+ ...r,
17
+ ownerState: r,
18
+ ref: t
19
+ });
20
+ }), { displayName: "SPopoverContent" });
21
+ //#endregion
22
+ export { o as SPopoverContent, o as default };
@@ -0,0 +1,59 @@
1
+ import { PaperProps } from '@mui/material/Paper';
2
+ import { PopoverProps, PopoverSlots } from '@mui/material/Popover';
3
+ import { OwnerStateSlotProps } from '../utils/slots';
4
+ import { SPopoverPlacement } from './placement';
5
+ import * as React from 'react';
6
+ export type { SPopoverPlacement } from './placement';
7
+ type PopoverSlotProps = NonNullable<PopoverProps['slotProps']>;
8
+ export interface SPopoverSlots extends Partial<Pick<PopoverSlots, 'backdrop' | 'transition'>> {
9
+ /** Surface rendered inside the popover, defaults to a themed MUI Paper. */
10
+ paper?: React.ElementType;
11
+ /** Popover element itself, defaults to MUI Popover. */
12
+ root?: React.ElementType;
13
+ }
14
+ type SPopoverRootSlotProps = Omit<PopoverProps, 'anchorOrigin' | 'children' | 'open' | 'slotProps' | 'slots' | 'transformOrigin'>;
15
+ export interface SPopoverSlotProps extends Pick<PopoverSlotProps, 'backdrop' | 'transition'> {
16
+ /** Props or owner-state callback for the popover surface. */
17
+ paper?: OwnerStateSlotProps<PaperProps, SPopoverOwnerState>;
18
+ /** Props or owner-state callback for the popover root. */
19
+ root?: OwnerStateSlotProps<SPopoverRootSlotProps, SPopoverOwnerState>;
20
+ }
21
+ /** Props for a themed MUI Popover with placement-based origin mapping. */
22
+ export interface SPopoverProps extends Omit<PopoverProps, 'anchorOrigin' | 'slotProps' | 'slots' | 'transformOrigin'> {
23
+ /** Element, virtual element, or getter the surface is positioned against. */
24
+ anchorEl?: PopoverProps['anchorEl'];
25
+ /** Popover content. Use SPopoverContent for a standard padded content region. */
26
+ children?: React.ReactNode;
27
+ /** Called when the popover requests to close (backdrop click or Escape). */
28
+ onClose?: PopoverProps['onClose'];
29
+ /** If `true`, the popover is shown. */
30
+ open: boolean;
31
+ /**
32
+ * Anchor edge/corner the surface attaches to. Resolves the matching
33
+ * `anchorOrigin`/`transformOrigin` pair on MUI Popover.
34
+ */
35
+ placement?: SPopoverPlacement;
36
+ /** Components used for internal structural slots. */
37
+ slots?: SPopoverSlots;
38
+ /** Props or owner-state callbacks for internal structural slots. */
39
+ slotProps?: SPopoverSlotProps;
40
+ /** Stacking order of the popover. Defaults to `theme.zIndex.modal`. */
41
+ zIndex?: number;
42
+ }
43
+ export interface SPopoverOwnerState extends SPopoverProps {
44
+ placement: SPopoverPlacement;
45
+ }
46
+ /**
47
+ * Themed MUI Popover with a `placement` API.
48
+ *
49
+ * Replaces the `anchorOrigin`/`transformOrigin` pair with a single `placement`
50
+ * token resolved from the kit's shared origin map, and applies the flat surface
51
+ * treatment used by every anchored panel in the system: `background.paper`,
52
+ * a 1px `divider` border and `radius.md`, with no elevation shadow.
53
+ * Compose with SPopoverContent when the content needs the standard 16px inset.
54
+ *
55
+ * The MUI `backdrop` and `transition` slots stay reachable through `slots` /
56
+ * `slotProps`; `root` targets the Popover itself rather than the inner Modal.
57
+ */
58
+ export declare const SPopover: React.ForwardRefExoticComponent<Omit<SPopoverProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
59
+ export default SPopover;
@@ -0,0 +1,68 @@
1
+ import { t as e } from "../styled-Bog8QCl3.js";
2
+ import { t } from "../useThemeProps-Dw9dmKyT.js";
3
+ import { toSxArray as n } from "../utils/sx.js";
4
+ import { resolveOwnerStateSlotProps as r } from "../utils/slots.js";
5
+ import { t as i } from "../useForkRef-BuNFTXxE.js";
6
+ import { t as a } from "../appendOwnerState-CFQTq3pb.js";
7
+ import { t as o } from "../mergeSlotProps-DC8r4QzS.js";
8
+ import { n as s, t as c } from "../Popover-BFdKSYI5.js";
9
+ import { placementOrigins as l } from "./placement.js";
10
+ import * as u from "react";
11
+ import { jsx as d } from "react/jsx-runtime";
12
+ //#region lib/s-popover/s-popover.tsx
13
+ var f = .5, p = e(c, {
14
+ name: "SPopover",
15
+ slot: "Root",
16
+ shouldForwardProp: (e) => e !== "ownerState"
17
+ })(({ theme: e }) => ({ zIndex: e.zIndex.modal })), m = e(s, {
18
+ name: "SPopover",
19
+ slot: "Paper",
20
+ shouldForwardProp: (e) => e !== "ownerState"
21
+ })(({ theme: e }) => ({
22
+ border: "1px solid",
23
+ borderColor: (e.vars ?? e).palette.divider,
24
+ borderRadius: e.radius.md,
25
+ marginTop: 0,
26
+ variants: [{
27
+ props: ({ ownerState: e }) => e?.placement?.startsWith("bottom") ?? !1,
28
+ style: { marginTop: e.spacing(f) }
29
+ }, {
30
+ props: ({ ownerState: e }) => e?.placement?.startsWith("top") ?? !1,
31
+ style: { marginTop: e.spacing(-f) }
32
+ }]
33
+ })), h = u.forwardRef(function(e, s) {
34
+ let c = t({
35
+ props: e,
36
+ name: "SPopover"
37
+ }), { placement: u = "bottom-end", slotProps: f, slots: h, sx: g, zIndex: _, ...v } = c, y = {
38
+ ...c,
39
+ placement: u
40
+ }, { anchorOrigin: b, transformOrigin: x } = l[u], S = h?.root ?? p, C = h?.paper ?? m, { ref: w, sx: T, ...E } = a(S, o(r(f?.root, y), v), y), D = i(w, s), { sx: O, ...k } = a(C, r(f?.paper, y) ?? {}, y);
41
+ return /* @__PURE__ */ d(S, {
42
+ ...E,
43
+ ref: D,
44
+ anchorOrigin: b,
45
+ slots: {
46
+ backdrop: h?.backdrop,
47
+ paper: C,
48
+ transition: h?.transition
49
+ },
50
+ slotProps: {
51
+ backdrop: f?.backdrop,
52
+ paper: {
53
+ ...k,
54
+ sx: n(O)
55
+ },
56
+ transition: f?.transition
57
+ },
58
+ sx: [
59
+ ..._ === void 0 ? [] : [{ zIndex: _ }],
60
+ ...n(T),
61
+ ...n(g)
62
+ ],
63
+ transformOrigin: x
64
+ });
65
+ });
66
+ h.displayName = "SPopover";
67
+ //#endregion
68
+ export { h as SPopover, h as default };
@@ -0,0 +1,3 @@
1
+ export { default, default as SProductCard } from './s-product-card';
2
+ export type { SProductCardBadgePlacement, SProductCardLinkProps, SProductCardOwnerState, SProductCardProps, SProductCardRootProps, SProductCardSlotProps, SProductCardSlots, SProductCardSwatch, SProductCardVariant, } from './s-product-card';
3
+ export type {} from '../theme/component-augmentation';
@@ -0,0 +1,2 @@
1
+ import { SProductCard as e } from "./s-product-card.js";
2
+ export { e as SProductCard, e as default };
@@ -0,0 +1,216 @@
1
+ import { BoxProps, CardProps, TypographyProps } from '@mui/material';
2
+ import { SIconButtonProps } from '../s-icon-button/s-icon-button';
3
+ import { SLazyImageProps } from '../s-lazy-image/s-lazy-image';
4
+ import { SSwatchVisualProps } from '../s-swatch/s-swatch';
5
+ import { OwnerStateSlotProps as MuiOwnerStateSlotProps } from '../utils/slots';
6
+ import * as React from 'react';
7
+ /** Density preset. All four share one anatomy and differ only in layout and spacing. */
8
+ export type SProductCardVariant = 'grid' | 'list' | 'mini' | 'overlay';
9
+ /** Logical corner of the media the badge is pinned to. Safe in LTR and RTL layouts. */
10
+ export type SProductCardBadgePlacement = 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start';
11
+ /** One valid color or image option summarised in the swatch row. */
12
+ export type SProductCardSwatch = SSwatchVisualProps & {
13
+ /** Optional display and accessible label. */
14
+ label?: string;
15
+ /** Stable key and human-readable option value. */
16
+ value: string;
17
+ };
18
+ /** Stretched primary-action props. Navigation and activation stay owned by the top-level API. */
19
+ export type SProductCardLinkProps = Omit<BoxProps, 'children' | 'component' | 'onClick'> & Pick<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'download' | 'rel' | 'target'> & {
20
+ /** Disable the MUI touch ripple for the primary action. */
21
+ disableRipple?: boolean;
22
+ /** Enable the keyboard focus ripple. */
23
+ focusRipple?: boolean;
24
+ /** Class applied while the primary action is keyboard-focus-visible. */
25
+ focusVisibleClassName?: string;
26
+ };
27
+ /** Root surface props that do not duplicate SProductCard's interaction API. */
28
+ export type SProductCardRootProps = Omit<CardProps, 'children' | 'component' | 'onClick'>;
29
+ export interface SProductCardSlots {
30
+ /** Trailing cluster of the footer row, holding the favorite toggle and `actions`. */
31
+ actions?: React.ElementType;
32
+ /** Promotional label pinned over the media. */
33
+ badge?: React.ElementType;
34
+ /** Text column below the media. */
35
+ content?: React.ElementType;
36
+ /** Built-in favorite toggle. */
37
+ favoriteButton?: React.ElementType;
38
+ /** Bottom row of the content column. */
39
+ footer?: React.ElementType;
40
+ /** Layer revealed over the media on hover, focus, and on touch devices. */
41
+ hoverActions?: React.ElementType;
42
+ /** Second image cross-faded in on hover. */
43
+ hoverImage?: React.ElementType;
44
+ /** Primary media image. */
45
+ image?: React.ElementType;
46
+ /** Stretched link covering the whole card. */
47
+ link?: React.ElementType;
48
+ /** Media frame that clips the image and positions the badge and hover actions. */
49
+ media?: React.ElementType;
50
+ /** Secondary information row under the title. */
51
+ meta?: React.ElementType;
52
+ /** Price group of the footer row. */
53
+ price?: React.ElementType;
54
+ /** Struck-through original price. */
55
+ originalPrice?: React.ElementType;
56
+ /** Rating row under the title. */
57
+ rating?: React.ElementType;
58
+ /** Card surface. */
59
+ root?: React.ElementType;
60
+ /** Swatch summary row. */
61
+ swatches?: React.ElementType;
62
+ /** Product name. */
63
+ title?: React.ElementType;
64
+ }
65
+ type OwnerStateSlotProps<Props> = MuiOwnerStateSlotProps<Props, SProductCardOwnerState>;
66
+ export interface SProductCardSlotProps {
67
+ /** Props or owner-state callback for the actions slot. */
68
+ actions?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
69
+ /** Props or owner-state callback for the badge slot. */
70
+ badge?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
71
+ /** Props or owner-state callback for the content slot. */
72
+ content?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
73
+ /** Props or owner-state callback for the favorite button slot. */
74
+ favoriteButton?: OwnerStateSlotProps<Omit<SIconButtonProps, 'children'>>;
75
+ /** Props or owner-state callback for the footer slot. */
76
+ footer?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
77
+ /** Props or owner-state callback for the hover actions slot. */
78
+ hoverActions?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
79
+ /** Props or owner-state callback for the hover image slot. */
80
+ hoverImage?: OwnerStateSlotProps<Omit<SLazyImageProps, 'alt' | 'src'>>;
81
+ /** Props or owner-state callback for the image slot. */
82
+ image?: OwnerStateSlotProps<Omit<SLazyImageProps, 'alt' | 'src'>>;
83
+ /** Props or owner-state callback for the stretched link slot. */
84
+ link?: OwnerStateSlotProps<SProductCardLinkProps>;
85
+ /** Props or owner-state callback for the media slot. */
86
+ media?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
87
+ /** Props or owner-state callback for the meta slot. */
88
+ meta?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
89
+ /** Props or owner-state callback for the price slot. */
90
+ price?: OwnerStateSlotProps<Omit<TypographyProps, 'children'>>;
91
+ /** Props or owner-state callback for the original-price slot. */
92
+ originalPrice?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
93
+ /** Props or owner-state callback for the rating slot. */
94
+ rating?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
95
+ /** Props or owner-state callback for the root slot. */
96
+ root?: OwnerStateSlotProps<SProductCardRootProps>;
97
+ /** Props or owner-state callback for the swatches slot. */
98
+ swatches?: OwnerStateSlotProps<Omit<BoxProps, 'children'>>;
99
+ /** Props or owner-state callback for the title slot. */
100
+ title?: OwnerStateSlotProps<Omit<TypographyProps, 'children'>>;
101
+ }
102
+ /**
103
+ * Props for a presentation-only product card. Every region is a `ReactNode` prop
104
+ * with a matching slot, so no commerce model, formatter, or router is involved.
105
+ */
106
+ export interface SProductCardProps extends Omit<CardProps, 'children' | 'component' | 'onClick' | 'title' | 'variant'> {
107
+ /** Action cluster rendered at the trailing end of the footer row. */
108
+ actions?: React.ReactNode;
109
+ /**
110
+ * Alternative text for the built-in image. Empty by default because the
111
+ * primary card action is already labelled by the visible product title.
112
+ */
113
+ alt?: string;
114
+ /** Media aspect ratio, used when `mediaHeight` is not set. */
115
+ aspectRatio?: number | string;
116
+ /** Promotional label rendered over the media — a discount chip, "new", and so on. */
117
+ badge?: React.ReactNode;
118
+ /** Corner of the media the badge is pinned to. */
119
+ badgePlacement?: SProductCardBadgePlacement;
120
+ /** Initial favorite state for uncontrolled usage. */
121
+ defaultFavorite?: boolean;
122
+ /** Disables the primary action and removes all built-in action regions from the tab order. */
123
+ disabled?: boolean;
124
+ /** Keeps the hover border feedback but removes the card translate and scale. */
125
+ disableLift?: boolean;
126
+ /** Favorite state for controlled usage. */
127
+ favorite?: boolean;
128
+ /** Icon of the favorite toggle while favorited. */
129
+ favoriteActiveIcon?: React.ReactNode;
130
+ /** Accessible name of the favorite toggle while favorited. */
131
+ favoriteActiveLabel?: string;
132
+ /** Icon of the favorite toggle while not favorited. */
133
+ favoriteIcon?: React.ReactNode;
134
+ /** Accessible name of the favorite toggle while not favorited. */
135
+ favoriteLabel?: string;
136
+ /** Supplemental content rendered between the price and the trailing actions. */
137
+ footerContent?: React.ReactNode;
138
+ /** Actions revealed over the media on hover and focus. Always visible on touch devices. */
139
+ hoverActions?: React.ReactNode;
140
+ /** Second image URL cross-faded in over the primary image on hover and focus. */
141
+ hoverImage?: string;
142
+ /** Link destination. Renders a stretched anchor that covers the whole card. */
143
+ href?: string;
144
+ /** Primary media image URL, rendered with `SLazyImage`. Ignored when `media` is set. */
145
+ image?: string;
146
+ /** Enables card and media hover/focus effects without changing primary-action semantics. */
147
+ interactive?: boolean;
148
+ /** Accessible name of the stretched link. Defaults to the rendered `title`. */
149
+ linkLabel?: string;
150
+ /** Maximum swatches rendered before the overflow counter. */
151
+ maxSwatches?: number;
152
+ /** Custom media content. Replaces the built-in image and hover image. */
153
+ media?: React.ReactNode;
154
+ /** Fixed media height. Takes precedence over `aspectRatio`. */
155
+ mediaHeight?: number | string;
156
+ /** Media width. Only meaningful for the `list` variant. */
157
+ mediaWidth?: number | string;
158
+ /** Zooms the media image while the card is hovered or focused. */
159
+ mediaZoom?: boolean;
160
+ /** Scale factor of the media zoom. */
161
+ mediaZoomScale?: number;
162
+ /** Secondary information under the title — tags, category, or an option summary. */
163
+ meta?: React.ReactNode;
164
+ /** Called when the card is activated. Used instead of `href` for non-navigating cards. */
165
+ onClick?: React.MouseEventHandler<HTMLElement>;
166
+ /** Called with the next favorite state when the favorite toggle is pressed. */
167
+ onFavoriteChange?: (event: React.MouseEvent<HTMLButtonElement>, favorite: boolean) => void;
168
+ /** Pre-formatted current price. Formatting and currency stay with the consumer. */
169
+ price?: React.ReactNode;
170
+ /** Pre-formatted original price, rendered struck through next to `price`. */
171
+ originalPrice?: React.ReactNode;
172
+ /**
173
+ * Read-only rating. A number renders a read-only `SRating`; any other node is
174
+ * rendered as-is, so a custom rating summary can be injected.
175
+ */
176
+ rating?: React.ReactNode;
177
+ /** Sweeps a light sheen across the card on hover and focus. */
178
+ sheen?: boolean;
179
+ /** Renders the built-in favorite toggle at the start of the footer actions. */
180
+ showFavorite?: boolean;
181
+ /** Props or owner-state callbacks for internal structural slots. */
182
+ slotProps?: SProductCardSlotProps;
183
+ /** Components used for internal structural slots. */
184
+ slots?: SProductCardSlots;
185
+ /** Color or image options summarised under the title. Presentational, never focusable. */
186
+ swatches?: SProductCardSwatch[];
187
+ /** Accessible name of the swatch summary row. */
188
+ swatchesLabel?: string;
189
+ /** Product name. Also labels the primary card action when `linkLabel` is omitted. */
190
+ title: React.ReactNode;
191
+ /** Density preset. Replaces the MUI `Card` variant, which is available via `slotProps.root`. */
192
+ variant?: SProductCardVariant;
193
+ }
194
+ export interface SProductCardOwnerState extends Omit<SProductCardProps, 'slotProps' | 'slots'> {
195
+ alt: string;
196
+ aspectRatio: number | string;
197
+ badgePlacement: SProductCardBadgePlacement;
198
+ clickable: boolean;
199
+ disableLift: boolean;
200
+ disabled: boolean;
201
+ favorite: boolean;
202
+ interactive: boolean;
203
+ maxSwatches: number;
204
+ mediaZoom: boolean;
205
+ mediaZoomScale: number;
206
+ sheen: boolean;
207
+ showFavorite: boolean;
208
+ variant: SProductCardVariant;
209
+ }
210
+ /**
211
+ * Presentation shell for a product card. Media, badge, title, rating, meta,
212
+ * swatches, price, footer and actions are all `ReactNode` props backed by slots,
213
+ * and every hover effect is CSS driven so no animation library is pulled in.
214
+ */
215
+ export declare const SProductCard: React.ForwardRefExoticComponent<Omit<SProductCardProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
216
+ export default SProductCard;