@solostylist/ui-kit 1.0.230 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (553) hide show
  1. package/dist/colors-CNjL5fhq.js +180 -0
  2. package/dist/gradients-DSnBONEQ.js +199 -0
  3. package/dist/hooks/index.d.ts +0 -1
  4. package/dist/hooks/index.js +4 -5
  5. package/dist/hooks/use-countdown.js +69 -47
  6. package/dist/main.d.ts +7 -2
  7. package/dist/main.js +2 -0
  8. package/dist/palettes/index.d.ts +11 -0
  9. package/dist/palettes/index.js +2 -0
  10. package/dist/palettes-CJLuEy1m.js +1765 -0
  11. package/dist/s-accordion/index.d.ts +2 -1
  12. package/dist/s-accordion/index.js +1 -1
  13. package/dist/s-accordion/s-accordion.d.ts +39 -19
  14. package/dist/s-accordion/s-accordion.js +70 -2
  15. package/dist/s-action-overlay/index.d.ts +2 -1
  16. package/dist/s-action-overlay/s-action-overlay.d.ts +52 -51
  17. package/dist/s-action-overlay/s-action-overlay.js +106 -107
  18. package/dist/s-autocomplete/index.d.ts +2 -1
  19. package/dist/s-autocomplete/s-autocomplete.d.ts +25 -8
  20. package/dist/s-autocomplete/s-autocomplete.js +33 -22
  21. package/dist/s-avatar/index.d.ts +2 -1
  22. package/dist/s-avatar/s-avatar.d.ts +36 -18
  23. package/dist/s-avatar/s-avatar.js +53 -27
  24. package/dist/s-blur-text/index.d.ts +1 -0
  25. package/dist/s-blur-text/s-blur-text.d.ts +3 -3
  26. package/dist/s-blur-text/s-blur-text.js +68 -40
  27. package/dist/s-brand-logo/index.d.ts +3 -0
  28. package/dist/s-brand-logo/index.js +2 -0
  29. package/dist/s-brand-logo/s-brand-logo.d.ts +15 -0
  30. package/dist/s-brand-logo/s-brand-logo.js +2 -0
  31. package/dist/s-brand-logo-CErW9Slg.js +123 -0
  32. package/dist/s-breadcrumbs/index.d.ts +2 -1
  33. package/dist/s-breadcrumbs/s-breadcrumbs.d.ts +5 -1
  34. package/dist/s-breadcrumbs/s-breadcrumbs.js +71 -36
  35. package/dist/s-button/s-button.d.ts +3 -5
  36. package/dist/s-button/s-button.js +3 -9
  37. package/dist/s-carousel/index.d.ts +3 -1
  38. package/dist/s-carousel/index.js +1 -1
  39. package/dist/s-carousel/s-carousel.d.ts +18 -8
  40. package/dist/s-carousel/s-carousel.js +184 -2
  41. package/dist/s-category-card/index.d.ts +2 -1
  42. package/dist/s-category-card/s-category-card.d.ts +38 -51
  43. package/dist/s-category-card/s-category-card.js +88 -56
  44. package/dist/s-chat-input/index.d.ts +2 -1
  45. package/dist/s-chat-input/index.js +1 -1
  46. package/dist/s-chat-input/s-chat-input.d.ts +41 -6
  47. package/dist/s-chat-input/s-chat-input.js +398 -2
  48. package/dist/s-chat-message/index.d.ts +2 -1
  49. package/dist/s-chat-message/index.js +1 -1
  50. package/dist/s-chat-message/s-chat-message.d.ts +6 -3
  51. package/dist/s-chat-message/s-chat-message.js +314 -2
  52. package/dist/s-checkbox/index.d.ts +2 -1
  53. package/dist/s-checkbox/s-checkbox.d.ts +33 -11
  54. package/dist/s-checkbox/s-checkbox.js +44 -34
  55. package/dist/s-chip/s-chip.d.ts +3 -5
  56. package/dist/s-chip/s-chip.js +3 -9
  57. package/dist/s-chips/index.d.ts +2 -1
  58. package/dist/s-chips/index.js +1 -1
  59. package/dist/s-chips/s-chips.d.ts +50 -28
  60. package/dist/s-chips/s-chips.js +174 -2
  61. package/dist/s-code-block/index.d.ts +3 -1
  62. package/dist/s-code-block/index.js +1 -1
  63. package/dist/s-code-block/s-code-block.d.ts +30 -28
  64. package/dist/s-code-block/s-code-block.js +103 -2
  65. package/dist/s-comment-message/index.d.ts +1 -0
  66. package/dist/s-comment-message/index.js +1 -1
  67. package/dist/s-comment-message/s-comment-message.d.ts +6 -8
  68. package/dist/s-comment-message/s-comment-message.js +189 -2
  69. package/dist/s-copyable-text/index.d.ts +2 -1
  70. package/dist/s-copyable-text/s-copyable-text.d.ts +34 -17
  71. package/dist/s-copyable-text/s-copyable-text.js +55 -33
  72. package/dist/s-countdown/index.d.ts +4 -3
  73. package/dist/s-countdown/index.js +1 -1
  74. package/dist/s-countdown/s-count-box.d.ts +39 -32
  75. package/dist/s-countdown/s-count-box.js +104 -87
  76. package/dist/s-countdown/s-countdown.d.ts +3 -10
  77. package/dist/s-countdown/s-countdown.js +86 -70
  78. package/dist/s-data-table/index.d.ts +2 -1
  79. package/dist/s-data-table/index.js +1 -1
  80. package/dist/s-data-table/s-data-table.d.ts +15 -7
  81. package/dist/s-data-table/s-data-table.js +213 -2
  82. package/dist/s-date-picker/index.d.ts +3 -1
  83. package/dist/s-date-picker/index.js +1 -1
  84. package/dist/s-date-picker/picker-action-bar.js +43 -42
  85. package/dist/s-date-picker/s-date-picker.d.ts +9 -5
  86. package/dist/s-date-picker/s-date-picker.js +106 -2
  87. package/dist/s-datetime-picker/index.d.ts +3 -1
  88. package/dist/s-datetime-picker/index.js +1 -1
  89. package/dist/s-datetime-picker/s-datetime-picker.d.ts +9 -5
  90. package/dist/s-datetime-picker/s-datetime-picker.js +108 -2
  91. package/dist/s-dialog/index.d.ts +2 -1
  92. package/dist/s-dialog/s-dialog.d.ts +44 -22
  93. package/dist/s-dialog/s-dialog.js +76 -39
  94. package/dist/s-dialog-confirm/index.d.ts +2 -1
  95. package/dist/s-dialog-confirm/s-dialog-confirm.d.ts +46 -62
  96. package/dist/s-dialog-confirm/s-dialog-confirm.js +89 -71
  97. package/dist/s-dialog-message/index.d.ts +2 -1
  98. package/dist/s-dialog-message/s-dialog-message.d.ts +34 -51
  99. package/dist/s-dialog-message/s-dialog-message.js +74 -67
  100. package/dist/s-empty/index.d.ts +1 -0
  101. package/dist/s-empty/s-empty.d.ts +5 -10
  102. package/dist/s-empty/s-empty.js +27 -9
  103. package/dist/s-file-dropzone/index.d.ts +3 -1
  104. package/dist/s-file-dropzone/index.js +1 -1
  105. package/dist/s-file-dropzone/s-file-dropzone.d.ts +49 -26
  106. package/dist/s-file-dropzone/s-file-dropzone.js +219 -2
  107. package/dist/s-file-icon/index.d.ts +1 -0
  108. package/dist/s-file-icon/s-file-icon.d.ts +3 -5
  109. package/dist/s-file-icon/s-file-icon.js +118 -98
  110. package/dist/s-flex-box/index.d.ts +2 -1
  111. package/dist/s-flex-box/s-flex-box.d.ts +12 -14
  112. package/dist/s-flex-box/s-flex-box.js +19 -19
  113. package/dist/s-form/index.d.ts +2 -1
  114. package/dist/s-form/s-form.d.ts +33 -18
  115. package/dist/s-form/s-form.js +50 -21
  116. package/dist/s-gallery/gallery-grid-item.d.ts +3 -1
  117. package/dist/s-gallery/gallery-grid-item.js +128 -99
  118. package/dist/s-gallery/gallery-layout.d.ts +1 -1
  119. package/dist/s-gallery/gallery-media-item.d.ts +3 -3
  120. package/dist/s-gallery/gallery-media-item.js +45 -50
  121. package/dist/s-gallery/index.d.ts +2 -1
  122. package/dist/s-gallery/s-gallery.d.ts +14 -3
  123. package/dist/s-gallery/s-gallery.js +70 -51
  124. package/dist/s-glow-button/index.d.ts +2 -1
  125. package/dist/s-glow-button/index.js +1 -1
  126. package/dist/s-glow-button/s-glow-button.d.ts +14 -9
  127. package/dist/s-glow-button/s-glow-button.js +46 -25
  128. package/dist/s-gradient-icon/index.d.ts +2 -1
  129. package/dist/s-gradient-icon/s-gradient-icon.d.ts +17 -9
  130. package/dist/s-gradient-icon/s-gradient-icon.js +81 -69
  131. package/dist/s-icon-button/index.d.ts +2 -1
  132. package/dist/s-icon-button/s-icon-button.d.ts +31 -13
  133. package/dist/s-icon-button/s-icon-button.js +47 -9
  134. package/dist/s-image-comparison/index.d.ts +2 -1
  135. package/dist/s-image-comparison/index.js +1 -1
  136. package/dist/s-image-comparison/s-image-comparison.d.ts +13 -3
  137. package/dist/s-image-comparison/s-image-comparison.js +195 -98
  138. package/dist/{s-image-modal → s-image-viewer}/default-media-item.d.ts +0 -1
  139. package/dist/s-image-viewer/default-media-item.js +30 -0
  140. package/dist/s-image-viewer/image-viewer-thumbnail-dock.d.ts +12 -0
  141. package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +102 -0
  142. package/dist/s-image-viewer/index.d.ts +4 -0
  143. package/dist/s-image-viewer/index.js +3 -0
  144. package/dist/s-image-viewer/s-image-viewer.d.ts +4 -0
  145. package/dist/s-image-viewer/s-image-viewer.js +266 -0
  146. package/dist/{s-image-modal → s-image-viewer}/types.d.ts +27 -10
  147. package/dist/s-image-viewer/use-image-viewer-navigation.d.ts +29 -0
  148. package/dist/s-image-viewer/use-image-viewer-navigation.js +75 -0
  149. package/dist/s-label/index.d.ts +2 -1
  150. package/dist/s-label/s-label.d.ts +35 -18
  151. package/dist/s-label/s-label.js +64 -23
  152. package/dist/s-language-switcher/index.d.ts +2 -1
  153. package/dist/s-language-switcher/index.js +2 -2
  154. package/dist/s-language-switcher/s-language-switcher.d.ts +25 -18
  155. package/dist/s-language-switcher/s-language-switcher.js +150 -2
  156. package/dist/s-lazy-image/index.d.ts +2 -1
  157. package/dist/s-lazy-image/index.js +1 -1
  158. package/dist/s-lazy-image/s-lazy-image.d.ts +45 -24
  159. package/dist/s-lazy-image/s-lazy-image.js +77 -40
  160. package/dist/s-link/s-link.d.ts +4 -33
  161. package/dist/s-link/s-link.js +3 -35
  162. package/dist/s-localization-provider/index.js +1 -1
  163. package/dist/s-localization-provider/s-localization-provider.d.ts +3 -5
  164. package/dist/s-localization-provider/s-localization-provider.js +12 -2
  165. package/dist/s-moving-border/index.d.ts +2 -1
  166. package/dist/s-moving-border/s-moving-border.d.ts +8 -2
  167. package/dist/s-moving-border/s-moving-border.js +100 -71
  168. package/dist/s-nav-item/index.d.ts +2 -1
  169. package/dist/s-nav-item/s-nav-item.d.ts +39 -31
  170. package/dist/s-nav-item/s-nav-item.js +65 -66
  171. package/dist/s-nav-items/index.d.ts +2 -1
  172. package/dist/s-nav-items/s-nav-items.d.ts +13 -10
  173. package/dist/s-nav-items/s-nav-items.js +95 -79
  174. package/dist/s-no-ssr/s-no-ssr.d.ts +4 -16
  175. package/dist/s-no-ssr/s-no-ssr.js +3 -13
  176. package/dist/s-overlay-scrollbar/index.d.ts +3 -1
  177. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.d.ts +10 -8
  178. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.js +28 -16
  179. package/dist/s-pagination/index.d.ts +2 -1
  180. package/dist/s-pagination/s-pagination.d.ts +14 -49
  181. package/dist/s-pagination/s-pagination.js +70 -35
  182. package/dist/s-pagination/types.d.ts +23 -1
  183. package/dist/s-pagination/types.js +8 -4
  184. package/dist/s-pixel-reveal/index.d.ts +2 -1
  185. package/dist/s-pixel-reveal/s-pixel-reveal.d.ts +10 -2
  186. package/dist/s-pixel-reveal/s-pixel-reveal.js +124 -86
  187. package/dist/s-quantity-input/index.d.ts +3 -0
  188. package/dist/s-quantity-input/index.js +2 -0
  189. package/dist/s-quantity-input/s-quantity-input.d.ts +114 -0
  190. package/dist/s-quantity-input/s-quantity-input.js +246 -0
  191. package/dist/s-radial-pulse-animate/index.d.ts +2 -1
  192. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.d.ts +7 -7
  193. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.js +50 -52
  194. package/dist/s-rating/s-rating.d.ts +3 -5
  195. package/dist/s-rating/s-rating.js +3 -9
  196. package/dist/s-review/index.d.ts +2 -1
  197. package/dist/s-review/index.js +1 -1
  198. package/dist/s-review/s-review.d.ts +25 -10
  199. package/dist/s-review/s-review.js +272 -2
  200. package/dist/s-scroll-reveal/index.d.ts +3 -1
  201. package/dist/s-scroll-reveal/s-scroll-reveal.d.ts +14 -6
  202. package/dist/s-scroll-reveal/s-scroll-reveal.js +78 -60
  203. package/dist/s-scroll-to-top/index.d.ts +2 -1
  204. package/dist/s-scroll-to-top/s-scroll-to-top.d.ts +15 -16
  205. package/dist/s-scroll-to-top/s-scroll-to-top.js +55 -28
  206. package/dist/s-scroll-velocity/index.d.ts +2 -1
  207. package/dist/s-scroll-velocity/s-scroll-velocity.d.ts +11 -7
  208. package/dist/s-scroll-velocity/s-scroll-velocity.js +27 -10
  209. package/dist/s-scroll-velocity/scroll-velocity-container.d.ts +2 -2
  210. package/dist/s-scroll-velocity/scroll-velocity-container.js +18 -18
  211. package/dist/s-scroll-velocity/scroll-velocity-row.d.ts +5 -3
  212. package/dist/s-scroll-velocity/scroll-velocity-row.js +81 -67
  213. package/dist/s-select/index.d.ts +2 -1
  214. package/dist/s-select/index.js +1 -1
  215. package/dist/s-select/s-select.d.ts +25 -11
  216. package/dist/s-select/s-select.js +201 -2
  217. package/dist/s-select-list/index.d.ts +2 -1
  218. package/dist/s-select-list/s-select-list.d.ts +57 -18
  219. package/dist/s-select-list/s-select-list.js +156 -32
  220. package/dist/s-skeleton/index.d.ts +2 -1
  221. package/dist/s-skeleton/s-skeleton.d.ts +21 -22
  222. package/dist/s-skeleton/s-skeleton.js +40 -39
  223. package/dist/s-snackbar-message/index.d.ts +2 -1
  224. package/dist/s-snackbar-message/s-snackbar-message.d.ts +40 -51
  225. package/dist/s-snackbar-message/s-snackbar-message.js +81 -44
  226. package/dist/s-spotlight-cursor/index.d.ts +2 -1
  227. package/dist/s-spotlight-cursor/s-spotlight-cursor.d.ts +23 -20
  228. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +83 -58
  229. package/dist/s-status-illustration/index.d.ts +3 -0
  230. package/dist/s-status-illustration/index.js +2 -0
  231. package/dist/s-status-illustration/s-status-illustration.d.ts +57 -0
  232. package/dist/s-status-illustration/s-status-illustration.js +429 -0
  233. package/dist/s-stripe/index.d.ts +6 -1
  234. package/dist/s-stripe/s-stripe-cvc.d.ts +3 -1
  235. package/dist/s-stripe/s-stripe-expiry.d.ts +3 -1
  236. package/dist/s-stripe/s-stripe-number.d.ts +3 -1
  237. package/dist/s-stripe/s-stripe.d.ts +10 -3
  238. package/dist/s-stripe/s-stripe.js +53 -27
  239. package/dist/s-stripe/stripe-input.js +48 -20
  240. package/dist/s-switch/index.d.ts +2 -1
  241. package/dist/s-switch/s-switch.d.ts +33 -11
  242. package/dist/s-switch/s-switch.js +44 -34
  243. package/dist/s-tabs/index.d.ts +5 -3
  244. package/dist/s-tabs/index.js +5 -4
  245. package/dist/s-tabs/s-tab-panel.d.ts +12 -10
  246. package/dist/s-tabs/s-tab-panel.js +26 -19
  247. package/dist/s-tabs/s-tab.d.ts +3 -2
  248. package/dist/s-tabs/s-tab.js +3 -9
  249. package/dist/s-tabs/s-tabs.d.ts +46 -32
  250. package/dist/s-tabs/s-tabs.js +76 -37
  251. package/dist/s-tabs/tab-ids.d.ts +3 -0
  252. package/dist/s-tabs/tab-ids.js +9 -0
  253. package/dist/s-text-editor/index.d.ts +4 -2
  254. package/dist/s-text-editor/index.js +1 -1
  255. package/dist/s-text-editor/s-text-editor-toolbar.d.ts +9 -2
  256. package/dist/s-text-editor/s-text-editor-toolbar.js +216 -2
  257. package/dist/s-text-editor/s-text-editor.d.ts +7 -2
  258. package/dist/s-text-editor/s-text-editor.js +62 -39
  259. package/dist/s-text-field/index.d.ts +2 -1
  260. package/dist/s-text-field/index.js +1 -1
  261. package/dist/s-text-field/s-text-field.d.ts +6 -11
  262. package/dist/s-text-field/s-text-field.js +52 -2
  263. package/dist/s-text-shimmer/index.d.ts +2 -1
  264. package/dist/s-text-shimmer/s-text-shimmer.d.ts +16 -2
  265. package/dist/s-text-shimmer/s-text-shimmer.js +48 -25
  266. package/dist/s-text-truncation/index.d.ts +2 -1
  267. package/dist/s-text-truncation/s-text-truncation.d.ts +38 -14
  268. package/dist/s-text-truncation/s-text-truncation.js +105 -58
  269. package/dist/s-theme-demo/index.d.ts +2 -1
  270. package/dist/s-theme-demo/index.js +1 -1
  271. package/dist/s-theme-demo/s-theme-demo.d.ts +2 -12
  272. package/dist/s-theme-demo/s-theme-demo.js +77 -2
  273. package/dist/s-theme-demo/theme-demo-color-palette-section.d.ts +5 -0
  274. package/dist/s-theme-demo/theme-demo-color-palette-section.js +185 -0
  275. package/dist/s-theme-demo/theme-demo-color-ramps-section.d.ts +5 -0
  276. package/dist/s-theme-demo/theme-demo-color-ramps-section.js +125 -0
  277. package/dist/s-theme-demo/theme-demo-components-section.d.ts +2 -0
  278. package/dist/s-theme-demo/theme-demo-components-section.js +265 -0
  279. package/dist/s-theme-demo/theme-demo-data.d.ts +7 -0
  280. package/dist/s-theme-demo/theme-demo-data.js +45 -0
  281. package/dist/s-theme-demo/theme-demo-interactive-section.d.ts +2 -0
  282. package/dist/s-theme-demo/theme-demo-interactive-section.js +95 -0
  283. package/dist/s-theme-demo/theme-demo-shadow-section.d.ts +5 -0
  284. package/dist/s-theme-demo/theme-demo-shadow-section.js +52 -0
  285. package/dist/s-theme-demo/theme-demo-typography-section.d.ts +5 -0
  286. package/dist/s-theme-demo/theme-demo-typography-section.js +129 -0
  287. package/dist/s-theme-demo/types.d.ts +17 -0
  288. package/dist/s-theme-demo/types.js +0 -0
  289. package/dist/s-theme-demo/utils.d.ts +2 -0
  290. package/dist/s-theme-demo/utils.js +9 -0
  291. package/dist/s-theme-provider/index.d.ts +1 -0
  292. package/dist/s-theme-provider/s-theme-provider.js +30 -31
  293. package/dist/s-theme-switch/index.d.ts +2 -1
  294. package/dist/s-theme-switch/index.js +1 -1
  295. package/dist/s-theme-switch/s-theme-switch.d.ts +6 -4
  296. package/dist/s-theme-switch/s-theme-switch.js +60 -2
  297. package/dist/s-tip/index.d.ts +2 -1
  298. package/dist/s-tip/index.js +1 -1
  299. package/dist/s-tip/s-tip.d.ts +29 -11
  300. package/dist/s-tip/s-tip.js +61 -2
  301. package/dist/s-toggle-button/index.d.ts +2 -0
  302. package/dist/s-toggle-button/index.js +2 -0
  303. package/dist/s-toggle-button/s-toggle-button.d.ts +6 -0
  304. package/dist/s-toggle-button/s-toggle-button.js +5 -0
  305. package/dist/s-tool-bar/index.d.ts +2 -1
  306. package/dist/s-tool-bar/s-tool-bar.d.ts +2 -5
  307. package/dist/s-tool-bar/s-tool-bar.js +101 -72
  308. package/dist/s-tool-bar/tool-bar-action-buttons.d.ts +3 -3
  309. package/dist/s-tool-bar/tool-bar-action-buttons.js +55 -2
  310. package/dist/s-tool-bar/tool-bar-image-input.d.ts +2 -2
  311. package/dist/s-tool-bar/tool-bar-image-input.js +148 -2
  312. package/dist/s-tool-bar/tool-bar-inputs.js +139 -112
  313. package/dist/s-tool-bar/types.d.ts +45 -35
  314. package/dist/s-tool-bar/utils.d.ts +1 -0
  315. package/dist/s-tool-bar/utils.js +10 -7
  316. package/dist/s-tool-item/index.d.ts +2 -1
  317. package/dist/s-tool-item/s-tool-item.d.ts +35 -30
  318. package/dist/s-tool-item/s-tool-item.js +111 -56
  319. package/dist/s-two-pane-layout/index.d.ts +3 -1
  320. package/dist/s-two-pane-layout/s-two-pane-layout.d.ts +56 -50
  321. package/dist/s-two-pane-layout/s-two-pane-layout.js +154 -85
  322. package/dist/s-typewriter-text/index.d.ts +2 -1
  323. package/dist/s-typewriter-text/s-typewriter-text.d.ts +16 -5
  324. package/dist/s-typewriter-text/s-typewriter-text.js +50 -27
  325. package/dist/s-zoom-image/index.d.ts +2 -1
  326. package/dist/s-zoom-image/s-zoom-image.d.ts +14 -5
  327. package/dist/s-zoom-image/s-zoom-image.js +65 -44
  328. package/dist/theme/component-augmentation.d.ts +265 -0
  329. package/dist/theme/component-augmentation.js +0 -0
  330. package/dist/theme/components/accordion-summary.d.ts +41 -38
  331. package/dist/theme/components/accordion-summary.js +7 -7
  332. package/dist/theme/components/accordion.d.ts +21 -13
  333. package/dist/theme/components/accordion.js +15 -12
  334. package/dist/theme/components/action-styles.d.ts +1075 -0
  335. package/dist/theme/components/action-styles.js +71 -0
  336. package/dist/theme/components/alert.d.ts +169 -140
  337. package/dist/theme/components/alert.js +15 -4
  338. package/dist/theme/components/app-bar.d.ts +2 -2
  339. package/dist/theme/components/autocomplete.js +43 -2
  340. package/dist/theme/components/avatar.js +9 -2
  341. package/dist/theme/components/backdrop.js +1 -1
  342. package/dist/theme/components/button-base.d.ts +0 -5
  343. package/dist/theme/components/button-base.js +1 -10
  344. package/dist/theme/components/button.d.ts +111 -5275
  345. package/dist/theme/components/button.js +58 -74
  346. package/dist/theme/components/card.d.ts +69 -69
  347. package/dist/theme/components/card.js +11 -10
  348. package/dist/theme/components/checkbox.d.ts +34 -34
  349. package/dist/theme/components/checkbox.js +90 -2
  350. package/dist/theme/components/chip.d.ts +1 -7
  351. package/dist/theme/components/chip.js +91 -67
  352. package/dist/theme/components/components.js +22 -22
  353. package/dist/theme/components/date-calendar.js +1 -0
  354. package/dist/theme/components/day-calendar.js +1 -0
  355. package/dist/theme/components/dialog-title.d.ts +2 -2
  356. package/dist/theme/components/field-label-styles.d.ts +9 -0
  357. package/dist/theme/components/field-label-styles.js +19 -0
  358. package/dist/theme/components/form-control.d.ts +1 -1
  359. package/dist/theme/components/form-control.js +1 -1
  360. package/dist/theme/components/form-label.d.ts +2 -2
  361. package/dist/theme/components/form-label.js +1 -1
  362. package/dist/theme/components/icon-button.d.ts +85 -5228
  363. package/dist/theme/components/icon-button.js +27 -47
  364. package/dist/theme/components/input-adornment.d.ts +2 -2
  365. package/dist/theme/components/linear-progress.d.ts +35 -35
  366. package/dist/theme/components/linear-progress.js +5 -6
  367. package/dist/theme/components/link.d.ts +2 -2
  368. package/dist/theme/components/link.js +7 -9
  369. package/dist/theme/components/list-item-button.d.ts +120 -46
  370. package/dist/theme/components/list-item-button.js +27 -20
  371. package/dist/theme/components/list-item.d.ts +61 -24
  372. package/dist/theme/components/list-item.js +7 -7
  373. package/dist/theme/components/list-subheader.d.ts +2 -2
  374. package/dist/theme/components/month-calendar.d.ts +1049 -6
  375. package/dist/theme/components/month-calendar.js +25 -15
  376. package/dist/theme/components/multi-section-digital-clock-section.d.ts +2 -0
  377. package/dist/theme/components/multi-section-digital-clock-section.js +16 -17
  378. package/dist/theme/components/outlined-input.d.ts +42 -8
  379. package/dist/theme/components/outlined-input.js +41 -30
  380. package/dist/theme/components/pagination-item.d.ts +1038 -1043
  381. package/dist/theme/components/pagination-item.js +21 -53
  382. package/dist/theme/components/pagination.js +2 -2
  383. package/dist/theme/components/picker-day.d.ts +1034 -5
  384. package/dist/theme/components/picker-day.js +12 -13
  385. package/dist/theme/components/pickers-arrow-switcher.js +1 -0
  386. package/dist/theme/components/pickers-calendar-header.d.ts +51 -19
  387. package/dist/theme/components/pickers-calendar-header.js +49 -25
  388. package/dist/theme/components/rating.d.ts +12 -0
  389. package/dist/theme/components/rating.js +4 -1
  390. package/dist/theme/components/select.js +6 -6
  391. package/dist/theme/components/slider.d.ts +4 -4
  392. package/dist/theme/components/step-icon.d.ts +34 -34
  393. package/dist/theme/components/step-icon.js +9 -10
  394. package/dist/theme/components/step-label.d.ts +36 -36
  395. package/dist/theme/components/switch.d.ts +36 -36
  396. package/dist/theme/components/switch.js +48 -2
  397. package/dist/theme/components/tab.d.ts +14 -1015
  398. package/dist/theme/components/tab.js +18 -17
  399. package/dist/theme/components/table-pagination.js +1 -1
  400. package/dist/theme/components/tabs.d.ts +20 -1030
  401. package/dist/theme/components/tabs.js +14 -14
  402. package/dist/theme/components/toggle-button-group.d.ts +1 -1013
  403. package/dist/theme/components/toggle-button-group.js +3 -1
  404. package/dist/theme/components/toggle-button.d.ts +1135 -1014
  405. package/dist/theme/components/toggle-button.js +93 -2
  406. package/dist/theme/components/year-calendar.d.ts +1051 -6
  407. package/dist/theme/components/year-calendar.js +39 -29
  408. package/dist/theme/optional-component-augmentations/s-carousel.d.ts +14 -0
  409. package/dist/theme/optional-component-augmentations/s-carousel.js +0 -0
  410. package/dist/theme/optional-component-augmentations/s-code-block.d.ts +14 -0
  411. package/dist/theme/optional-component-augmentations/s-code-block.js +0 -0
  412. package/dist/theme/optional-component-augmentations/s-date-picker.d.ts +14 -0
  413. package/dist/theme/optional-component-augmentations/s-date-picker.js +0 -0
  414. package/dist/theme/optional-component-augmentations/s-datetime-picker.d.ts +14 -0
  415. package/dist/theme/optional-component-augmentations/s-datetime-picker.js +0 -0
  416. package/dist/theme/optional-component-augmentations/s-file-dropzone.d.ts +14 -0
  417. package/dist/theme/optional-component-augmentations/s-file-dropzone.js +0 -0
  418. package/dist/theme/optional-component-augmentations/s-overlay-scrollbar.d.ts +14 -0
  419. package/dist/theme/optional-component-augmentations/s-overlay-scrollbar.js +0 -0
  420. package/dist/theme/optional-component-augmentations/s-scroll-reveal.d.ts +14 -0
  421. package/dist/theme/optional-component-augmentations/s-scroll-reveal.js +0 -0
  422. package/dist/theme/optional-component-augmentations/s-stripe.d.ts +14 -0
  423. package/dist/theme/optional-component-augmentations/s-stripe.js +0 -0
  424. package/dist/theme/optional-component-augmentations/s-text-editor.d.ts +18 -0
  425. package/dist/theme/optional-component-augmentations/s-text-editor.js +0 -0
  426. package/dist/theme/optional-component-augmentations/s-two-pane-layout.d.ts +14 -0
  427. package/dist/theme/optional-component-augmentations/s-two-pane-layout.js +0 -0
  428. package/dist/theme/theme-primitives.d.ts +51 -8
  429. package/dist/theme/theme-primitives.js +3 -2
  430. package/dist/theme-primitives-CRfnMsNy.js +254 -0
  431. package/dist/utils/canvas-color.d.ts +7 -0
  432. package/dist/utils/canvas-color.js +62 -0
  433. package/dist/utils/dayjs.js +9 -146
  434. package/dist/utils/index.d.ts +4 -0
  435. package/dist/utils/index.js +6 -3
  436. package/dist/utils/slots.d.ts +12 -0
  437. package/dist/utils/slots.js +6 -0
  438. package/dist/utils/sx.d.ts +11 -0
  439. package/dist/utils/sx.js +4 -0
  440. package/package.json +1 -1
  441. package/dist/ArrowUpward-CNiENJp2.js +0 -6
  442. package/dist/Box-BlmynALm.js +0 -45
  443. package/dist/ButtonBase-BDefit5I.js +0 -720
  444. package/dist/ChevronRight-gZJ3kc6N.js +0 -6
  445. package/dist/Close-CJu3iF1p.js +0 -6
  446. package/dist/Collapse-JUd84Z9O.js +0 -261
  447. package/dist/ContentCopy-BMQ2JTA0.js +0 -6
  448. package/dist/Download-SNal6U7j.js +0 -6
  449. package/dist/ExpandMore-DIsT5FOp.js +0 -6
  450. package/dist/Favorite-CbvuQfe4.js +0 -6
  451. package/dist/FormControl-DsRIRfTs.js +0 -686
  452. package/dist/InfoOutlined-BCzG-5py.js +0 -6
  453. package/dist/MenuItem-IOMcBScJ.js +0 -220
  454. package/dist/MenuList-vtqACjea.js +0 -403
  455. package/dist/Modal-CLdC2-Th.js +0 -1027
  456. package/dist/Paper-CPC6sMxx.js +0 -133
  457. package/dist/Popover-ZneFWo2r.js +0 -333
  458. package/dist/Stack-BQkLmLFp.js +0 -157
  459. package/dist/Typography-CZ_MYa-E.js +0 -166
  460. package/dist/UnfoldMoreRounded-tvqQS6eb.js +0 -6
  461. package/dist/assets/stripe-input.css +0 -1
  462. package/dist/autocomplete-Dd4zjpaF.js +0 -43
  463. package/dist/avatar-DFQ5F7pY.js +0 -10
  464. package/dist/buttonBaseClasses-BVDyR-hz.js +0 -13
  465. package/dist/checkbox-DC-OoGvh.js +0 -74
  466. package/dist/checkboxClasses-DANc9lnq.js +0 -18
  467. package/dist/chunk-C_CI6nMA.js +0 -13
  468. package/dist/clsx-Bv8WXdlr.js +0 -34
  469. package/dist/createSimplePaletteValueFilter-5v48HHyU.js +0 -14
  470. package/dist/createSvgIcon-HW-tbFcL.js +0 -153
  471. package/dist/createTheme-Bnw5w28O.js +0 -2506
  472. package/dist/defaultTheme-Bi3OTfLN.js +0 -5
  473. package/dist/extends-DM-C9PwL.js +0 -12
  474. package/dist/formLabelClasses-LXZqWZfM.js +0 -18
  475. package/dist/generateUtilityClass-tRYNDrlH.js +0 -34
  476. package/dist/generateUtilityClasses-XrPHiTcM.js +0 -10
  477. package/dist/hooks/use-is-passed-position.d.ts +0 -1
  478. package/dist/hooks/use-is-passed-position.js +0 -21
  479. package/dist/iconButtonClasses-LyjwljJq.js +0 -27
  480. package/dist/inputAdornmentClasses-ZoGTcUz5.js +0 -19
  481. package/dist/memoTheme-QMocAblm.js +0 -150
  482. package/dist/mergeSlotProps-slENzJO5.js +0 -45
  483. package/dist/monthCalendarClasses-BLfBep-t.js +0 -14
  484. package/dist/objectWithoutPropertiesLoose-kj3TmhoA.js +0 -12
  485. package/dist/outlinedInputClasses-DPwt_pSZ.js +0 -38
  486. package/dist/resolveProps-DrnBChYC.js +0 -30
  487. package/dist/s-accordion-xPDelTvP.js +0 -453
  488. package/dist/s-carousel-CvmWl6Sc.js +0 -1324
  489. package/dist/s-chat-input-BHMymKij.js +0 -352
  490. package/dist/s-chat-message-C-d9amiC.js +0 -270
  491. package/dist/s-chips-CAC_vVd0.js +0 -99
  492. package/dist/s-code-block-DEojINTt.js +0 -630
  493. package/dist/s-comment-message-Dum0P6de.js +0 -169
  494. package/dist/s-data-table-DfGYIIvn.js +0 -951
  495. package/dist/s-date-picker-C06rlE6_.js +0 -640
  496. package/dist/s-datetime-picker-DnIK-QnQ.js +0 -3837
  497. package/dist/s-error/index.d.ts +0 -1
  498. package/dist/s-error/index.js +0 -2
  499. package/dist/s-error/s-error.d.ts +0 -6
  500. package/dist/s-error/s-error.js +0 -33
  501. package/dist/s-error-layout/index.d.ts +0 -2
  502. package/dist/s-error-layout/index.js +0 -2
  503. package/dist/s-error-layout/s-error-layout.d.ts +0 -58
  504. package/dist/s-error-layout/s-error-layout.js +0 -81
  505. package/dist/s-file-dropzone-C4_hCsN8.js +0 -139
  506. package/dist/s-image-modal/default-media-item.js +0 -34
  507. package/dist/s-image-modal/image-modal-thumbnail-dock.d.ts +0 -11
  508. package/dist/s-image-modal/image-modal-thumbnail-dock.js +0 -102
  509. package/dist/s-image-modal/index.d.ts +0 -3
  510. package/dist/s-image-modal/index.js +0 -3
  511. package/dist/s-image-modal/s-image-modal.d.ts +0 -4
  512. package/dist/s-image-modal/s-image-modal.js +0 -2
  513. package/dist/s-image-modal/use-image-modal-navigation.d.ts +0 -29
  514. package/dist/s-image-modal/use-image-modal-navigation.js +0 -57
  515. package/dist/s-image-modal-D-Jh-5b3.js +0 -243
  516. package/dist/s-item-not-found/index.d.ts +0 -2
  517. package/dist/s-item-not-found/index.js +0 -2
  518. package/dist/s-item-not-found/s-item-not-found.d.ts +0 -20
  519. package/dist/s-item-not-found/s-item-not-found.js +0 -243
  520. package/dist/s-language-switcher-B96dUknj.js +0 -192
  521. package/dist/s-localization-provider-l5J7myJJ.js +0 -519
  522. package/dist/s-review-CvTVBxTZ.js +0 -223
  523. package/dist/s-select-HMWY7frm.js +0 -149
  524. package/dist/s-text-editor-toolbar-ChtNCg2A.js +0 -2253
  525. package/dist/s-text-field-DD6nnwwU.js +0 -42
  526. package/dist/s-theme-demo-Bnv7lPIh.js +0 -867
  527. package/dist/s-theme-switch-DzXoVmQH.js +0 -37
  528. package/dist/s-tip-BOGEH1v8.js +0 -34
  529. package/dist/selectClasses-C-QpiLPi.js +0 -22
  530. package/dist/styled-BTDmdi4c.js +0 -164
  531. package/dist/styled-engine-DOxAQ3qw.js +0 -190
  532. package/dist/svgIconClasses-BtHvkhy5.js +0 -20
  533. package/dist/switch-BSg1TGWH.js +0 -62
  534. package/dist/tabClasses-CmFw6sbs.js +0 -20
  535. package/dist/theme-primitives-CiQYd9Cc.js +0 -431
  536. package/dist/toggle-button-TmtJ4nSp.js +0 -26
  537. package/dist/toggle-button-group-BCkdd3Jj.js +0 -26
  538. package/dist/tool-bar-action-buttons-CSXNDen6.js +0 -50
  539. package/dist/tool-bar-image-input-IdA6l71Y.js +0 -138
  540. package/dist/typographyClasses-CiDYRanL.js +0 -31
  541. package/dist/useControlled-BtZNCHV0.js +0 -5
  542. package/dist/useControlled-DuSwFVhD.js +0 -29
  543. package/dist/useEnhancedEffect-Dsu5K7-Z.js +0 -5
  544. package/dist/useForkRef-yOYCJHzF.js +0 -29
  545. package/dist/useFormControl-CUs308br.js +0 -18
  546. package/dist/useMobilePicker-CQA6fYLQ.js +0 -9864
  547. package/dist/useSlot-IwEDsR9t.js +0 -171
  548. package/dist/useThemeProps-D4jtjo2I.js +0 -19
  549. package/dist/utils-CU6O7jrX.js +0 -214
  550. package/dist/warning-CFMmJJnf.js +0 -111
  551. package/dist/yearCalendarClasses-DypEe_Vn.js +0 -14
  552. /package/dist/{s-image-modal → s-image-viewer}/types.js +0 -0
  553. /package/dist/{utils-B5Rl6Zwv.js → utils-CMeAWSRO.js} +0 -0
@@ -1,2 +1,3 @@
1
1
  export { default, default as SAccordion } from './s-accordion';
2
- export type { SAccordionProps } from './s-accordion';
2
+ export type { SAccordionOwnerState, SAccordionProps, SAccordionSlotProps, SAccordionSlots } from './s-accordion';
3
+ export type {} from '../theme/component-augmentation';
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-accordion-xPDelTvP.js";
1
+ import { SAccordion as e } from "./s-accordion.js";
2
2
  export { e as SAccordion, e as default };
@@ -1,25 +1,45 @@
1
- import { default as React } from 'react';
2
- import { AccordionProps } from '@mui/material/Accordion';
1
+ import { AccordionProps, AccordionSlots } from '@mui/material/Accordion';
3
2
  import { AccordionDetailsProps } from '@mui/material/AccordionDetails';
4
3
  import { AccordionSummaryProps } from '@mui/material/AccordionSummary';
4
+ import { StackProps } from '@mui/material/Stack';
5
5
  import { TypographyProps } from '@mui/material/Typography';
6
- /**
7
- * Props interface for SAccordion component
8
- */
9
- export interface SAccordionProps extends Omit<AccordionProps, 'title'> {
10
- /** The title/header content of the accordion */
11
- title: React.ReactNode;
12
- /** Optional icon to display at the start of the accordion header */
13
- startIcon?: React.ReactNode;
14
- /** Props to pass to the Typography component for the title */
15
- titleTypographyProps?: TypographyProps;
16
- /** Props to pass to the AccordionSummary component for customization */
17
- accordionSummaryProps?: AccordionSummaryProps;
18
- /** Props to pass to the AccordionDetails component for customization */
19
- accordionDetailsProps?: AccordionDetailsProps;
6
+ import { OwnerStateSlotProps as MuiOwnerStateSlotProps } from '../utils/slots';
7
+ import * as React from 'react';
8
+ export interface SAccordionOwnerState {
9
+ disabled: boolean;
10
+ expanded: boolean;
11
+ }
12
+ type OwnerStateSlotProps<Props> = MuiOwnerStateSlotProps<Props, SAccordionOwnerState>;
13
+ export interface SAccordionSlots extends Partial<AccordionSlots> {
14
+ details?: React.ElementType;
15
+ summary?: React.ElementType;
16
+ summaryContent?: React.ElementType;
17
+ title?: React.ElementType;
20
18
  }
21
- export declare const SAccordion: {
22
- ({ title, children, startIcon, titleTypographyProps, accordionSummaryProps, accordionDetailsProps, ...rest }: SAccordionProps): import("react/jsx-runtime").JSX.Element;
23
- displayName: string;
19
+ export type SAccordionSlotProps = NonNullable<AccordionProps['slotProps']> & {
20
+ details?: OwnerStateSlotProps<AccordionDetailsProps>;
21
+ summary?: OwnerStateSlotProps<AccordionSummaryProps>;
22
+ summaryContent?: OwnerStateSlotProps<StackProps>;
23
+ title?: OwnerStateSlotProps<TypographyProps>;
24
24
  };
25
+ /** Props for a convenience Accordion composition with MUI-style slots. */
26
+ export interface SAccordionProps extends Omit<AccordionProps, 'component' | 'defaultExpanded' | 'expanded' | 'onChange' | 'slots' | 'slotProps' | 'title'> {
27
+ /** Initially expanded state for uncontrolled usage. */
28
+ defaultExpanded?: boolean;
29
+ /** Icon rendered by the summary expand control. */
30
+ expandIcon?: React.ReactNode;
31
+ /** Controlled expanded state. */
32
+ expanded?: boolean;
33
+ /** Called with the standard MUI Accordion change signature. */
34
+ onChange?: (event: React.SyntheticEvent, expanded: boolean) => void;
35
+ /** Optional leading icon in the summary. */
36
+ startIcon?: React.ReactNode;
37
+ /** Components used for internal structural slots. */
38
+ slots?: SAccordionSlots;
39
+ /** Props or owner-state callbacks for internal structural slots. */
40
+ slotProps?: SAccordionSlotProps;
41
+ /** Summary title content. */
42
+ title: React.ReactNode;
43
+ }
44
+ export declare const SAccordion: React.ForwardRefExoticComponent<Omit<SAccordionProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
25
45
  export default SAccordion;
@@ -1,2 +1,70 @@
1
- import { t as e } from "../s-accordion-xPDelTvP.js";
2
- export { e as SAccordion, e as default };
1
+ import { toSxArray as e } from "../utils/sx.js";
2
+ import { styled as t, useThemeProps as n } from "@mui/material/styles";
3
+ import * as r from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import o from "@mui/icons-material/ExpandMore";
6
+ import s from "@mui/material/Typography";
7
+ import { useControlled as c } from "@mui/material/utils";
8
+ import l from "@mui/utils/appendOwnerState";
9
+ import u from "@mui/material/Stack";
10
+ import d from "@mui/material/Accordion";
11
+ import f from "@mui/material/AccordionDetails";
12
+ import p from "@mui/material/AccordionSummary";
13
+ //#region lib/s-accordion/s-accordion.tsx
14
+ var m = t(d, {
15
+ name: "SAccordion",
16
+ slot: "Root"
17
+ })({});
18
+ function h(e, t) {
19
+ return typeof e == "function" ? e(t) : e;
20
+ }
21
+ var g = r.forwardRef(function(t, r) {
22
+ let d = n({
23
+ props: t,
24
+ name: "SAccordion"
25
+ }), { children: g, defaultExpanded: _ = !1, disabled: v = !1, expandIcon: y = /* @__PURE__ */ i(o, {}), expanded: b, onChange: x, slotProps: S, slots: C, startIcon: w, title: T, ...E } = d, [D, O] = c({
26
+ controlled: b,
27
+ default: _,
28
+ name: "SAccordion",
29
+ state: "expanded"
30
+ }), k = {
31
+ ...d,
32
+ disabled: v,
33
+ expanded: D
34
+ }, { details: A = f, summary: j = p, summaryContent: M = u, title: N = s, ...P } = C ?? {}, { details: F, summary: I, summaryContent: L, title: R, ...z } = S ?? {}, B = l(C?.summary, h(I, k) ?? {}, k), V = l(C?.summaryContent, h(L, k) ?? {}, k), H = l(C?.title, h(R, k) ?? {}, k), U = l(C?.details, h(F, k) ?? {}, k), { sx: W, ...G } = V, { sx: K, ...q } = H;
35
+ return /* @__PURE__ */ a(m, {
36
+ elevation: 0,
37
+ ...E,
38
+ disabled: v,
39
+ expanded: D,
40
+ onChange: (e, t) => {
41
+ O(t), x?.(e, t);
42
+ },
43
+ ownerState: k,
44
+ ref: r,
45
+ slots: P,
46
+ slotProps: z,
47
+ children: [T != null || w ? /* @__PURE__ */ i(j, {
48
+ expandIcon: y,
49
+ ...B,
50
+ children: /* @__PURE__ */ a(M, {
51
+ direction: "row",
52
+ spacing: 1,
53
+ ...G,
54
+ sx: [{ alignItems: "center" }, ...e(W)],
55
+ children: [w, /* @__PURE__ */ i(N, {
56
+ variant: "subtitle1",
57
+ ...q,
58
+ sx: [{ fontWeight: 600 }, ...e(K)],
59
+ children: T
60
+ })]
61
+ })
62
+ }) : null, /* @__PURE__ */ i(A, {
63
+ ...U,
64
+ children: g
65
+ })]
66
+ });
67
+ });
68
+ g.displayName = "SAccordion";
69
+ //#endregion
70
+ export { g as SAccordion, g as default };
@@ -1,2 +1,3 @@
1
1
  export { default, default as SActionOverlay } from './s-action-overlay';
2
- export type { SActionOverlayProps, IActionOverlay } from './s-action-overlay';
2
+ export type { SActionOverlayAction, SActionOverlayOwnerState, SActionOverlayProps, SActionOverlaySlotProps, SActionOverlaySlots, } from './s-action-overlay';
3
+ export type {} from '../theme/component-augmentation';
@@ -1,58 +1,59 @@
1
- import { ReactNode } from 'react';
2
- import { SxProps, Theme } from '@mui/material';
1
+ import { BoxProps, GridProps } from '@mui/material';
3
2
  import { SIconButtonProps } from '../s-icon-button';
4
- /**
5
- * Configuration for individual action overlay buttons
6
- */
7
- export interface IActionOverlay {
8
- /** Icon to display in the button */
9
- icon: ReactNode;
10
- /** Tooltip text to show on hover */
11
- tooltip: string;
12
- /** Click handler for the action */
13
- onClick?: () => void;
14
- /** Whether the action is in an active state */
15
- isActive?: boolean;
16
- /** Whether the action is disabled */
17
- disabled?: boolean;
18
- /** Color variant for the icon button */
19
- color?: 'inherit' | 'default' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';
20
- /** Additional props to pass to the underlying SIconButton */
21
- iconButtonProps?: SIconButtonProps;
3
+ import { OwnerStateSlotProps as MuiOwnerStateSlotProps } from '../utils/slots';
4
+ import * as React from 'react';
5
+ /** One icon action rendered by SActionOverlay. Standard SIconButton props are accepted directly. */
6
+ export interface SActionOverlayAction extends Omit<SIconButtonProps, 'aria-label' | 'children' | 'slotProps' | 'slots' | 'tooltip'> {
7
+ /** Icon rendered inside the action button. */
8
+ icon: React.ReactNode;
9
+ /** Accessible name and tooltip text. */
10
+ label: string;
11
+ /** Whether the action is currently pressed. */
12
+ selected?: boolean;
22
13
  }
23
- /**
24
- * Props interface for SActionOverlay component
25
- */
26
- export interface SActionOverlayProps {
27
- /** Array of action configurations for the overlay buttons */
28
- actions: IActionOverlay[];
29
- /** Maximum width of the actions container (overrides columns calculation) */
30
- maxWidth?: number | string;
31
- /** Number of columns for the action grid layout */
32
- columns?: number;
33
- /** The content to overlay the actions on */
34
- children: ReactNode;
35
- /** Whether to show overlay on hover */
36
- showOnHover?: boolean;
37
- /** Controlled visibility state (overrides showOnHover) */
38
- visible?: boolean;
39
- /** Position of the action buttons within the overlay */
40
- position?: 'center' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
41
- /** Background color of the overlay backdrop */
14
+ export interface SActionOverlayOwnerState {
15
+ position: 'bottom-left' | 'bottom-right' | 'center' | 'top-left' | 'top-right';
16
+ visible: boolean;
17
+ }
18
+ type OwnerStateSlotProps<Props> = MuiOwnerStateSlotProps<Props, SActionOverlayOwnerState>;
19
+ export interface SActionOverlaySlots {
20
+ actions?: React.ElementType;
21
+ overlay?: React.ElementType;
22
+ }
23
+ export interface SActionOverlaySlotProps {
24
+ actions?: OwnerStateSlotProps<GridProps>;
25
+ overlay?: OwnerStateSlotProps<BoxProps>;
26
+ }
27
+ /** Props for an accessible action layer revealed by hover or keyboard focus. */
28
+ export interface SActionOverlayProps extends Omit<BoxProps, 'children' | 'component'> {
29
+ /** Actions rendered in the overlay. */
30
+ actions: SActionOverlayAction[];
31
+ /** Overlay background color. */
42
32
  backdropColor?: string;
43
- /** Opacity of the backdrop (0-1) */
33
+ /** Overlay background opacity. */
44
34
  backdropOpacity?: number;
45
- /** Blur amount in pixels for the backdrop filter */
46
- blurAmount?: number;
47
- /** Border radius of the overlay */
35
+ /** Overlay border radius. */
48
36
  borderRadius?: number | string;
49
- /** Custom styles for the overlay element */
50
- overlaySx?: SxProps<Theme>;
51
- /** Callback when overlay visibility changes */
52
- onVisibilityChange?: (visible: boolean) => void;
37
+ /** Backdrop-filter blur in pixels. */
38
+ blurAmount?: number;
39
+ /** Content covered by the action layer. */
40
+ children: React.ReactNode;
41
+ /** Maximum number of action columns. */
42
+ columns?: number;
43
+ /** Maximum width of the action grid. */
44
+ maxWidth?: number | string;
45
+ /** Called when hover/focus requests a visibility change. */
46
+ onVisibilityChange?: (event: React.SyntheticEvent, visible: boolean) => void;
47
+ /** Alignment of the action grid. */
48
+ position?: SActionOverlayOwnerState['position'];
49
+ /** Enables hover and focus-within disclosure. */
50
+ showOnHover?: boolean;
51
+ /** Components used for the overlay and action-grid slots. */
52
+ slots?: SActionOverlaySlots;
53
+ /** Props or owner-state callbacks for structural slots. */
54
+ slotProps?: SActionOverlaySlotProps;
55
+ /** Controlled visibility. */
56
+ visible?: boolean;
53
57
  }
54
- export declare const SActionOverlay: {
55
- ({ actions, maxWidth, columns, children, showOnHover, visible: controlledVisible, position, backdropColor, backdropOpacity, blurAmount, borderRadius, overlaySx, onVisibilityChange, }: SActionOverlayProps): import("react/jsx-runtime").JSX.Element;
56
- displayName: string;
57
- };
58
+ export declare const SActionOverlay: React.ForwardRefExoticComponent<Omit<SActionOverlayProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
58
59
  export default SActionOverlay;
@@ -1,113 +1,112 @@
1
- import { SIconButton as e } from "../s-icon-button/s-icon-button.js";
2
- import { useState as t } from "react";
3
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
- import { Box as i, Grid as a } from "@mui/material";
1
+ import { toSxArray as e } from "../utils/sx.js";
2
+ import { SIconButton as t } from "../s-icon-button/s-icon-button.js";
3
+ import * as n from "react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ import { Box as a, Grid as o, styled as s, useThemeProps as c } from "@mui/material";
6
+ import l from "@mui/utils/appendOwnerState";
5
7
  //#region lib/s-action-overlay/s-action-overlay.tsx
6
- var o = 40, s = 16, c = ({ actions: c, maxWidth: l, columns: u = 3, children: d, showOnHover: f = !0, visible: p, position: m = "center", backdropColor: h = "background.paper", backdropOpacity: g = .9, blurAmount: _ = 10, borderRadius: v = 0, overlaySx: y, onVisibilityChange: b }) => {
7
- let [x, S] = t(!1), C = p ?? (f && x), w = () => {
8
- f && p === void 0 && (S(!0), b?.(!0));
9
- }, T = () => {
10
- f && p === void 0 && (S(!1), b?.(!1));
11
- }, E = () => {
12
- switch (m) {
13
- case "top-left": return {
14
- justifyContent: "flex-start",
15
- alignItems: "flex-start"
16
- };
17
- case "top-right": return {
18
- justifyContent: "flex-end",
19
- alignItems: "flex-start"
20
- };
21
- case "bottom-left": return {
22
- justifyContent: "flex-start",
23
- alignItems: "flex-end"
24
- };
25
- case "bottom-right": return {
26
- justifyContent: "flex-end",
27
- alignItems: "flex-end"
28
- };
29
- default: return {
30
- justifyContent: "center",
31
- alignItems: "center"
32
- };
33
- }
34
- }, D = () => {
35
- switch (m) {
36
- case "top-left": return "flex-start";
37
- case "top-right": return "flex-end";
38
- case "bottom-left": return "flex-start";
39
- case "bottom-right": return "flex-end";
40
- default: return "center";
41
- }
42
- }, O = () => {
43
- let e = l;
44
- return u && (e = u * o + (u - 1) * s + u * 16), e;
8
+ var u = 40, d = 16, f = s(a, {
9
+ name: "SActionOverlay",
10
+ slot: "Root"
11
+ })({});
12
+ function p(e, t) {
13
+ return typeof e == "function" ? e(t) : e;
14
+ }
15
+ function m(e) {
16
+ let t = e.endsWith("left") ? "flex-start" : e.endsWith("right") ? "flex-end" : "center";
17
+ return {
18
+ alignItems: e.startsWith("top") ? "flex-start" : e.startsWith("bottom") ? "flex-end" : "center",
19
+ justifyContent: t
45
20
  };
46
- return /* @__PURE__ */ n(i, {
47
- sx: { display: "flex" },
48
- children: /* @__PURE__ */ r(i, {
49
- onMouseEnter: w,
50
- onMouseLeave: T,
51
- sx: { position: "relative" },
52
- children: [d, C && /* @__PURE__ */ n(i, {
53
- sx: {
54
- position: "absolute",
55
- top: 0,
56
- left: 0,
57
- width: "100%",
58
- height: "100%",
59
- display: "flex",
60
- bgcolor: h,
61
- borderRadius: v,
62
- opacity: g,
63
- backdropFilter: `blur(${_}px)`,
64
- transform: "translateZ(0)",
65
- willChange: "transform",
66
- transition: "opacity 0.2s ease-in-out",
67
- ...E(),
68
- ...y
69
- },
70
- children: /* @__PURE__ */ n(a, {
71
- container: !0,
72
- spacing: 2,
21
+ }
22
+ var h = n.forwardRef(function(s, h) {
23
+ let g = c({
24
+ props: s,
25
+ name: "SActionOverlay"
26
+ }), { "aria-label": _, actions: v, backdropColor: y = "background.paper", backdropOpacity: b = .9, borderRadius: x = 0, blurAmount: S = 10, children: C, columns: w = 3, maxWidth: T, onBlur: E, onFocus: D, onMouseEnter: O, onMouseLeave: k, onVisibilityChange: A, position: j = "center", showOnHover: M = !0, slotProps: N, slots: P, sx: F, tabIndex: I, visible: L, ...R } = g, [z, B] = n.useState(!1), V = L ?? z, H = {
27
+ ...g,
28
+ position: j,
29
+ visible: V
30
+ }, U = P?.overlay ?? a, W = P?.actions ?? o, G = l(P?.overlay, p(N?.overlay, H) ?? {}, H), K = l(P?.actions, p(N?.actions, H) ?? {}, H), { sx: q, ...J } = G, { sx: Y, ...X } = K, Z = m(j), Q = w > 0 ? w * u + (w - 1) * d + w * 16 : void 0, $ = (e, t) => {
31
+ M && (L === void 0 && B(t), A?.(e, t));
32
+ };
33
+ return /* @__PURE__ */ i(f, {
34
+ ...R,
35
+ "aria-label": _ ?? (M ? "Show actions" : void 0),
36
+ onBlur: (e) => {
37
+ E?.(e), e.currentTarget.contains(e.relatedTarget) || $(e, !1);
38
+ },
39
+ onFocus: (e) => {
40
+ D?.(e), $(e, !0);
41
+ },
42
+ onMouseEnter: (e) => {
43
+ O?.(e), $(e, !0);
44
+ },
45
+ onMouseLeave: (e) => {
46
+ k?.(e), $(e, !1);
47
+ },
48
+ ownerState: H,
49
+ ref: h,
50
+ tabIndex: I ?? (M ? 0 : void 0),
51
+ sx: [{
52
+ display: "inline-flex",
53
+ position: "relative"
54
+ }, ...e(F)],
55
+ children: [C, V ? /* @__PURE__ */ r(U, {
56
+ ...J,
57
+ sx: [{
58
+ ...Z,
59
+ backdropFilter: `blur(${S}px)`,
60
+ bgcolor: y,
61
+ borderRadius: x,
62
+ display: "flex",
63
+ inset: 0,
64
+ opacity: b,
65
+ position: "absolute",
66
+ transform: "translateZ(0)",
67
+ transition: "opacity 200ms ease-in-out"
68
+ }, ...e(q)],
69
+ children: /* @__PURE__ */ r(W, {
70
+ container: !0,
71
+ spacing: 2,
72
+ ...X,
73
+ sx: [{
74
+ justifyContent: Z.justifyContent,
75
+ maxWidth: T ?? Q
76
+ }, ...e(Y)],
77
+ children: v.map(({ icon: n, label: i, selected: a, sx: s, ...c }, l) => /* @__PURE__ */ r(o, {
73
78
  sx: {
74
- justifyContent: D(),
75
- maxWidth: O()
79
+ display: "flex",
80
+ justifyContent: "center"
76
81
  },
77
- children: c.map((t, r) => /* @__PURE__ */ n(a, {
78
- sx: {
79
- display: "flex",
80
- justifyContent: "center"
81
- },
82
- children: /* @__PURE__ */ n(e, {
83
- tooltipOptions: {
84
- title: t.tooltip,
85
- placement: "top"
86
- },
87
- onClick: t.onClick,
88
- disabled: t.disabled,
89
- color: t.color,
90
- sx: {
91
- margin: 1,
92
- backgroundColor: t.isActive ? "primary.main" : void 0,
93
- color: t.isActive ? "primary.contrastText" : void 0,
94
- transition: "all 0.2s cubic-bezier(0.4, 0, 0.2, 1)",
95
- opacity: t.disabled ? .5 : 1,
96
- "&:hover": {
97
- backgroundColor: t.isActive ? "primary.main" : void 0,
98
- color: t.isActive ? "primary.contrastText" : void 0
99
- },
100
- ...t.iconButtonProps?.sx
101
- },
102
- ...t.iconButtonProps,
103
- children: t.icon
104
- })
105
- }, `${t.tooltip}-${r}`))
106
- })
107
- })]
108
- })
82
+ children: /* @__PURE__ */ r(t, {
83
+ ...c,
84
+ "aria-label": i,
85
+ "aria-pressed": a,
86
+ tooltip: i,
87
+ slotProps: { tooltip: { placement: "top" } },
88
+ sx: [{
89
+ bgcolor: a ? "primary.main" : void 0,
90
+ color: a ? "primary.contrastText" : void 0,
91
+ m: 1,
92
+ transition: (e) => e.transitions.create([
93
+ "background-color",
94
+ "color",
95
+ "opacity"
96
+ ], { duration: e.transitions.duration.shorter }),
97
+ "&.Mui-disabled": { opacity: .5 },
98
+ "&:hover": {
99
+ bgcolor: a ? "primary.main" : void 0,
100
+ color: a ? "primary.contrastText" : void 0
101
+ }
102
+ }, ...e(s)],
103
+ children: n
104
+ })
105
+ }, `${i}-${l}`))
106
+ })
107
+ }) : null]
109
108
  });
110
- };
111
- c.displayName = "SActionOverlay";
109
+ });
110
+ h.displayName = "SActionOverlay";
112
111
  //#endregion
113
- export { c as SActionOverlay, c as default };
112
+ export { h as SActionOverlay, h as default };
@@ -1,2 +1,3 @@
1
1
  export { default, default as SAutocomplete } from './s-autocomplete';
2
- export type { SAutocompleteProps } from './s-autocomplete';
2
+ export type { SAutocompleteComponent, SAutocompleteOwnerState, SAutocompleteProps } from './s-autocomplete';
3
+ export type {} from '../theme/component-augmentation';
@@ -10,20 +10,31 @@ import { AutocompleteProps } from '@mui/material';
10
10
  * @template DisableClearable - Whether the clear button is disabled
11
11
  * @template FreeSolo - Whether free text input is allowed
12
12
  */
13
- export interface SAutocompleteProps<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined = undefined> extends Omit<AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>, 'renderInput'> {
14
- /** Optional custom renderInput function for advanced input customization */
15
- renderInput?: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>['renderInput'];
16
- /** Field label displayed above the autocomplete */
13
+ type SAutocompleteBaseProps<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined = undefined> = Omit<AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>, 'renderInput'>;
14
+ interface SAutocompleteDefaultInputProps {
15
+ /** Uses SAutocomplete's default MUI TextField renderer. */
16
+ renderInput?: undefined;
17
+ /** Field label rendered by the default MUI TextField input */
17
18
  label?: string | React.ReactNode;
18
19
  /** Placeholder text shown when no option is selected */
19
20
  placeholder?: string;
20
21
  /** Whether the field is required (shows asterisk in label) */
21
22
  required?: boolean;
22
- /** Error message to display below the field */
23
- error?: string;
24
- /** HTML id attribute for the input element */
25
- htmlFor?: string;
23
+ /** Whether the field has an error */
24
+ error?: boolean;
25
+ /** Supporting or validation content shown below the input */
26
+ helperText?: React.ReactNode;
26
27
  }
28
+ interface SAutocompleteCustomInputProps<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined = undefined> {
29
+ /** Custom input renderer. It owns label, placeholder, required, error, and helper text. */
30
+ renderInput: AutocompleteProps<T, Multiple, DisableClearable, FreeSolo>['renderInput'];
31
+ error?: never;
32
+ helperText?: never;
33
+ label?: never;
34
+ placeholder?: never;
35
+ required?: never;
36
+ }
37
+ export type SAutocompleteProps<T, Multiple extends boolean | undefined, DisableClearable extends boolean | undefined, FreeSolo extends boolean | undefined = undefined> = SAutocompleteBaseProps<T, Multiple, DisableClearable, FreeSolo> & (SAutocompleteDefaultInputProps | SAutocompleteCustomInputProps<T, Multiple, DisableClearable, FreeSolo>);
27
38
  /**
28
39
  * Type definition for SAutocomplete component with generic support
29
40
  */
@@ -33,5 +44,11 @@ export interface SAutocompleteComponent {
33
44
  }): React.JSX.Element;
34
45
  displayName?: string;
35
46
  }
47
+ export interface SAutocompleteOwnerState {
48
+ disablePortal: boolean;
49
+ error: boolean;
50
+ fullWidth: boolean;
51
+ required: boolean;
52
+ }
36
53
  export declare const SAutocomplete: SAutocompleteComponent;
37
54
  export default SAutocomplete;
@@ -1,28 +1,39 @@
1
- import { SForm as e } from "../s-form/s-form.js";
1
+ import { STextField as e } from "../s-text-field/s-text-field.js";
2
2
  import { forwardRef as t, useId as n } from "react";
3
3
  import { jsx as r } from "react/jsx-runtime";
4
- import { Autocomplete as i, TextField as a } from "@mui/material";
4
+ import { Autocomplete as i, styled as a, useThemeProps as o } from "@mui/material";
5
5
  //#region lib/s-autocomplete/s-autocomplete.tsx
6
- var o = t(({ label: t = "", placeholder: o, required: s = !1, error: c, htmlFor: l, ...u }, d) => {
7
- let f = n(), p = l ?? f;
8
- return /* @__PURE__ */ r(e, {
9
- error: c,
10
- label: t,
11
- required: s,
12
- htmlFor: p,
13
- children: /* @__PURE__ */ r(i, {
14
- disablePortal: !0,
15
- fullWidth: !0,
16
- renderInput: u.renderInput ?? ((e) => /* @__PURE__ */ r(a, {
17
- ...e,
18
- placeholder: o
19
- })),
20
- id: p,
21
- ...u,
22
- ref: d
23
- })
6
+ var s = a(i, {
7
+ name: "SAutocomplete",
8
+ slot: "Root",
9
+ shouldForwardProp: (e) => e !== "ownerState"
10
+ })({}), c = t((t, i) => {
11
+ let { label: a = "", placeholder: c, required: l = !1, error: u = !1, fullWidth: d = !0, helperText: f, id: p, renderInput: m, disablePortal: h = !0, ...g } = o({
12
+ props: t,
13
+ name: "SAutocomplete"
14
+ }), _ = n(), v = p ?? _, y = {
15
+ disablePortal: h,
16
+ error: u,
17
+ fullWidth: d,
18
+ required: l
19
+ };
20
+ return /* @__PURE__ */ r(s, {
21
+ ...g,
22
+ ref: i,
23
+ id: v,
24
+ disablePortal: h,
25
+ fullWidth: d,
26
+ ownerState: y,
27
+ renderInput: m ?? ((t) => /* @__PURE__ */ r(e, {
28
+ ...t,
29
+ error: u,
30
+ helperText: f,
31
+ label: a,
32
+ placeholder: c,
33
+ required: l
34
+ }))
24
35
  });
25
36
  });
26
- o.displayName = "SAutocomplete";
37
+ c.displayName = "SAutocomplete";
27
38
  //#endregion
28
- export { o as SAutocomplete, o as default };
39
+ export { c as SAutocomplete, c as default };
@@ -1,2 +1,3 @@
1
1
  export { default, default as SAvatar } from './s-avatar';
2
- export type { SAvatarProps } from './s-avatar';
2
+ export type { SAvatarOwnerState, SAvatarProps, SAvatarSlotProps, SAvatarSlots } from './s-avatar';
3
+ export type {} from '../theme/component-augmentation';