@solostylist/ui-kit 2.0.0 → 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 (268) hide show
  1. package/dist/{gradients-90SYkAC0.js → gradients-DSnBONEQ.js} +1 -1
  2. package/dist/main.js +1 -1
  3. package/dist/palettes/index.js +1 -1
  4. package/dist/{palettes-Dw3PEYF5.js → palettes-CJLuEy1m.js} +163 -163
  5. package/dist/s-accordion/index.js +1 -1
  6. package/dist/s-accordion/s-accordion.js +70 -2
  7. package/dist/s-action-overlay/s-action-overlay.js +21 -21
  8. package/dist/s-autocomplete/s-autocomplete.js +1 -1
  9. package/dist/s-avatar/s-avatar.js +17 -17
  10. package/dist/s-blur-text/s-blur-text.js +16 -16
  11. package/dist/s-brand-logo/index.js +1 -1
  12. package/dist/s-brand-logo/s-brand-logo.js +1 -1
  13. package/dist/s-breadcrumbs/s-breadcrumbs.js +19 -19
  14. package/dist/s-carousel/index.js +1 -1
  15. package/dist/s-carousel/s-carousel.js +184 -2
  16. package/dist/s-category-card/s-category-card.js +22 -22
  17. package/dist/s-chat-input/index.js +1 -1
  18. package/dist/s-chat-input/s-chat-input.js +398 -2
  19. package/dist/s-chat-message/index.js +1 -1
  20. package/dist/s-chat-message/s-chat-message.js +314 -2
  21. package/dist/s-checkbox/s-checkbox.js +18 -19
  22. package/dist/s-chips/index.js +1 -1
  23. package/dist/s-chips/s-chips.js +174 -2
  24. package/dist/s-code-block/index.js +1 -1
  25. package/dist/s-code-block/s-code-block.js +103 -2
  26. package/dist/s-comment-message/index.js +1 -1
  27. package/dist/s-comment-message/s-comment-message.js +189 -2
  28. package/dist/s-copyable-text/s-copyable-text.js +18 -18
  29. package/dist/s-countdown/s-count-box.js +18 -18
  30. package/dist/s-data-table/index.js +1 -1
  31. package/dist/s-data-table/s-data-table.js +213 -2
  32. package/dist/s-date-picker/index.js +1 -1
  33. package/dist/s-date-picker/s-date-picker.js +106 -2
  34. package/dist/s-datetime-picker/index.js +1 -1
  35. package/dist/s-datetime-picker/s-datetime-picker.js +108 -2
  36. package/dist/s-dialog/index.js +1 -1
  37. package/dist/s-dialog/s-dialog.js +80 -2
  38. package/dist/s-dialog-confirm/s-dialog-confirm.js +32 -33
  39. package/dist/s-dialog-message/s-dialog-message.js +31 -32
  40. package/dist/s-empty/s-empty.js +13 -14
  41. package/dist/s-file-dropzone/index.js +1 -1
  42. package/dist/s-file-dropzone/s-file-dropzone.js +219 -2
  43. package/dist/s-file-icon/s-file-icon.js +87 -88
  44. package/dist/s-flex-box/s-flex-box.js +11 -12
  45. package/dist/s-form/s-form.js +15 -15
  46. package/dist/s-gallery/s-gallery.js +1 -1
  47. package/dist/s-glow-button/s-glow-button.js +9 -10
  48. package/dist/s-icon-button/s-icon-button.js +15 -16
  49. package/dist/s-image-comparison/s-image-comparison.js +29 -31
  50. package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +1 -1
  51. package/dist/s-image-viewer/index.js +3 -3
  52. package/dist/s-image-viewer/s-image-viewer.js +266 -2
  53. package/dist/s-image-viewer/use-image-viewer-navigation.js +7 -7
  54. package/dist/s-label/s-label.js +26 -27
  55. package/dist/s-language-switcher/index.js +2 -2
  56. package/dist/s-language-switcher/s-language-switcher.js +150 -2
  57. package/dist/s-lazy-image/s-lazy-image.js +17 -18
  58. package/dist/s-link/index.js +1 -1
  59. package/dist/s-link/s-link.js +5 -2
  60. package/dist/s-localization-provider/index.js +1 -1
  61. package/dist/s-localization-provider/s-localization-provider.js +12 -2
  62. package/dist/s-nav-item/s-nav-item.js +16 -16
  63. package/dist/s-nav-items/index.js +2 -2
  64. package/dist/s-nav-items/s-nav-items.js +167 -2
  65. package/dist/s-no-ssr/index.js +1 -1
  66. package/dist/s-no-ssr/s-no-ssr.js +5 -2
  67. package/dist/s-pagination/index.js +1 -1
  68. package/dist/s-pagination/s-pagination.js +85 -2
  69. package/dist/s-pixel-reveal/s-pixel-reveal.js +20 -20
  70. package/dist/s-quantity-input/index.js +1 -1
  71. package/dist/s-quantity-input/s-quantity-input.js +246 -2
  72. package/dist/s-review/index.js +1 -1
  73. package/dist/s-review/s-review.js +272 -2
  74. package/dist/s-scroll-reveal/s-scroll-reveal.js +7 -8
  75. package/dist/s-scroll-to-top/s-scroll-to-top.js +27 -28
  76. package/dist/s-scroll-velocity/scroll-velocity-row.js +29 -29
  77. package/dist/s-select/index.js +1 -1
  78. package/dist/s-select/s-select.js +201 -2
  79. package/dist/s-select-list/s-select-list.js +47 -50
  80. package/dist/s-skeleton/s-skeleton.js +16 -17
  81. package/dist/s-snackbar-message/index.js +2 -2
  82. package/dist/s-snackbar-message/s-snackbar-message.js +89 -2
  83. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +27 -27
  84. package/dist/s-status-illustration/s-status-illustration.js +74 -74
  85. package/dist/s-stripe/s-stripe.js +11 -12
  86. package/dist/s-stripe/stripe-input.js +3 -2
  87. package/dist/s-switch/index.js +1 -1
  88. package/dist/s-switch/s-switch.js +48 -2
  89. package/dist/s-tabs/s-tabs.js +48 -50
  90. package/dist/s-text-editor/index.js +1 -1
  91. package/dist/s-text-editor/s-text-editor-toolbar.js +216 -2
  92. package/dist/s-text-editor/s-text-editor.js +25 -26
  93. package/dist/s-text-field/index.js +1 -1
  94. package/dist/s-text-field/s-text-field.js +52 -2
  95. package/dist/s-text-shimmer/s-text-shimmer.js +1 -3
  96. package/dist/s-text-truncation/s-text-truncation.js +20 -20
  97. package/dist/s-theme-demo/s-theme-demo.js +8 -8
  98. package/dist/s-theme-demo/theme-demo-color-palette-section.js +1 -1
  99. package/dist/s-theme-demo/theme-demo-color-ramps-section.js +1 -1
  100. package/dist/s-theme-demo/theme-demo-components-section.js +265 -2
  101. package/dist/s-theme-demo/theme-demo-typography-section.js +10 -10
  102. package/dist/s-theme-provider/s-theme-provider.js +1 -1
  103. package/dist/s-theme-switch/index.js +1 -1
  104. package/dist/s-theme-switch/s-theme-switch.js +60 -2
  105. package/dist/s-tip/index.js +1 -1
  106. package/dist/s-tip/s-tip.js +61 -2
  107. package/dist/s-tool-bar/s-tool-bar.js +28 -28
  108. package/dist/s-tool-bar/tool-bar-action-buttons.js +55 -2
  109. package/dist/s-tool-bar/tool-bar-image-input.js +148 -2
  110. package/dist/s-tool-bar/tool-bar-inputs.js +55 -55
  111. package/dist/s-tool-item/s-tool-item.js +22 -22
  112. package/dist/s-two-pane-layout/s-two-pane-layout.js +32 -32
  113. package/dist/s-zoom-image/s-zoom-image.js +18 -19
  114. package/dist/theme/components/autocomplete.js +43 -2
  115. package/dist/theme/components/avatar.js +9 -2
  116. package/dist/theme/components/card.js +3 -3
  117. package/dist/theme/components/checkbox.js +90 -2
  118. package/dist/theme/components/chip.js +3 -3
  119. package/dist/theme/components/components.js +20 -20
  120. package/dist/theme/components/date-calendar.js +1 -0
  121. package/dist/theme/components/day-calendar.js +1 -0
  122. package/dist/theme/components/field-label-styles.js +19 -2
  123. package/dist/theme/components/form-label.js +1 -1
  124. package/dist/theme/components/list-item-button.js +1 -1
  125. package/dist/theme/components/list-item.js +7 -7
  126. package/dist/theme/components/month-calendar.js +14 -13
  127. package/dist/theme/components/multi-section-digital-clock-section.js +1 -0
  128. package/dist/theme/components/outlined-input.js +6 -6
  129. package/dist/theme/components/picker-day.js +1 -0
  130. package/dist/theme/components/pickers-arrow-switcher.js +1 -0
  131. package/dist/theme/components/pickers-calendar-header.js +3 -2
  132. package/dist/theme/components/select.js +6 -6
  133. package/dist/theme/components/switch.js +1 -1
  134. package/dist/theme/components/table-pagination.js +1 -1
  135. package/dist/theme/components/toggle-button.js +93 -2
  136. package/dist/theme/components/year-calendar.js +14 -13
  137. package/dist/theme/theme-primitives.js +2 -2
  138. package/dist/{theme-primitives-Dt_DT9b5.js → theme-primitives-CRfnMsNy.js} +108 -109
  139. package/dist/utils/dayjs.js +9 -146
  140. package/package.json +1 -1
  141. package/dist/Add-COc9VdNg.js +0 -6
  142. package/dist/ArrowUpward-D88i2k4q.js +0 -6
  143. package/dist/Box-9oeZgA1U.js +0 -46
  144. package/dist/Button-DgIFcM44.js +0 -534
  145. package/dist/ButtonBase-DxKtpFYs.js +0 -747
  146. package/dist/Checkbox-BoZu9z2l.js +0 -152
  147. package/dist/ChevronRight-BxsM4W78.js +0 -6
  148. package/dist/Close-o4HFfK0I.js +0 -6
  149. package/dist/Collapse-zgIFP5Sj.js +0 -266
  150. package/dist/ContentCopy-5unyTYXy.js +0 -6
  151. package/dist/DefaultPropsProvider-ebWx4_5E.js +0 -128
  152. package/dist/DialogContent-CAry6lVf.js +0 -450
  153. package/dist/Download-DtvoRwpl.js +0 -6
  154. package/dist/ExpandMore-Ba5bg6s-.js +0 -6
  155. package/dist/Favorite-B_GsElm0.js +0 -6
  156. package/dist/FormControl-BxmM9UP6.js +0 -221
  157. package/dist/FormControlLabel-DzgppcC_.js +0 -173
  158. package/dist/Grow-zRRuwUl-.js +0 -121
  159. package/dist/InfoOutlined-VC7X46pc.js +0 -6
  160. package/dist/List-CnGIAXAS.js +0 -103
  161. package/dist/ListContext-B1HQt3OD.js +0 -6
  162. package/dist/Menu-C4Zabc9U.js +0 -504
  163. package/dist/MenuItem-rXJfQzDC.js +0 -223
  164. package/dist/MenuList-DDV8J-yd.js +0 -407
  165. package/dist/Modal-jAiibALV.js +0 -707
  166. package/dist/Paper-ixxCeml9.js +0 -115
  167. package/dist/Popper-CVYyMS3c.js +0 -1350
  168. package/dist/Portal-AnyvFRC4.js +0 -53
  169. package/dist/RtlProvider-B7uVJXUY.js +0 -19
  170. package/dist/Skeleton-iZFynl7z.js +0 -220
  171. package/dist/Stack-UMc4dV4G.js +0 -158
  172. package/dist/SwitchBase-D7zqrstO.js +0 -198
  173. package/dist/Tooltip-DbCd6rgF.js +0 -447
  174. package/dist/Typography-yXjc7kVP.js +0 -168
  175. package/dist/UnfoldMoreRounded-DsN0HVDV.js +0 -6
  176. package/dist/appendOwnerState-CELpvdMz.js +0 -17
  177. package/dist/assets/stripe-input.css +0 -1
  178. package/dist/autocomplete-B_4y84Ba.js +0 -43
  179. package/dist/avatar-BHuZu3DN.js +0 -10
  180. package/dist/buttonBaseClasses-BvBqFLb_.js +0 -13
  181. package/dist/capitalize-CccCFNpQ.js +0 -5
  182. package/dist/checkbox-BKMZEVU5.js +0 -88
  183. package/dist/checkboxClasses-CEsqS4sc.js +0 -18
  184. package/dist/chunk-C_CI6nMA.js +0 -13
  185. package/dist/clsx-DGZSe4Nt.js +0 -16
  186. package/dist/colorManipulator-DmUjcif3.js +0 -129
  187. package/dist/contains-WOhYaq1E.js +0 -16
  188. package/dist/createSimplePaletteValueFilter-C1gWywW_.js +0 -14
  189. package/dist/createSvgIcon-B0SZlJF1.js +0 -155
  190. package/dist/createTheme-xB2Em0Na.js +0 -1869
  191. package/dist/defaultTheme-BaGcIzCh.js +0 -210
  192. package/dist/elementAcceptingRef-DhkNAkFH.js +0 -472
  193. package/dist/exactProp-C_IsucXf.js +0 -13
  194. package/dist/field-label-styles-BOyhp6gw.js +0 -50
  195. package/dist/formLabelClasses-B0Fa-86T.js +0 -18
  196. package/dist/generateUtilityClass-PAIOm1jC.js +0 -34
  197. package/dist/generateUtilityClasses-DvX505Gy.js +0 -10
  198. package/dist/iconButtonClasses-CkciZuIe.js +0 -27
  199. package/dist/inputAdornmentClasses-D5yYK5bM.js +0 -19
  200. package/dist/inputBaseClasses-DuWQGq8Z.js +0 -25
  201. package/dist/integerPropType-Disnft4a.js +0 -27
  202. package/dist/isEventHandler-8dPdzK9U.js +0 -7
  203. package/dist/isFocusVisible-Y7157FQS.js +0 -35
  204. package/dist/isLayoutSupported-Ceir7nyK.js +0 -21
  205. package/dist/listItemButtonClasses-DbL-aTVf.js +0 -18
  206. package/dist/memoTheme-qFyKAk7y.js +0 -15
  207. package/dist/mergeSlotProps-xl1-PgWL.js +0 -45
  208. package/dist/monthCalendarClasses-BYVHyEfI.js +0 -14
  209. package/dist/objectWithoutPropertiesLoose-Cpds-4w8.js +0 -23
  210. package/dist/outlinedInputClasses-DECY98u0.js +0 -17
  211. package/dist/pickersCalendarHeaderClasses-CIj0gBye.js +0 -12
  212. package/dist/prop-types-BzYPyWN7.js +0 -516
  213. package/dist/resolveProps-7jIA45vn.js +0 -30
  214. package/dist/s-accordion-B8nlrdFc.js +0 -487
  215. package/dist/s-carousel-Dnjke4JQ.js +0 -1353
  216. package/dist/s-chat-input-DCS0mJE4.js +0 -419
  217. package/dist/s-chat-message-9oollJJq.js +0 -315
  218. package/dist/s-chips-WqGdqHW9.js +0 -176
  219. package/dist/s-code-block-DzGoGg5e.js +0 -658
  220. package/dist/s-comment-message-C6kfgRjv.js +0 -191
  221. package/dist/s-data-table-B1TGVupB.js +0 -805
  222. package/dist/s-date-picker-BpX4HmBp.js +0 -656
  223. package/dist/s-datetime-picker-ByzW44E0.js +0 -3878
  224. package/dist/s-dialog-BLiyjLkx.js +0 -123
  225. package/dist/s-file-dropzone-CVQpYRdY.js +0 -422
  226. package/dist/s-image-viewer-DNIEYdtL.js +0 -269
  227. package/dist/s-language-switcher-D-1nywT3.js +0 -251
  228. package/dist/s-link-CAMTGfd9.js +0 -234
  229. package/dist/s-localization-provider-Xw3NO2uP.js +0 -519
  230. package/dist/s-nav-items-BUp7DddG.js +0 -327
  231. package/dist/s-no-ssr-D8tPdDfh.js +0 -25
  232. package/dist/s-pagination-Dt8Pk5Tp.js +0 -606
  233. package/dist/s-quantity-input-mYCixlJc.js +0 -246
  234. package/dist/s-review-DSXXtWlL.js +0 -272
  235. package/dist/s-select-dwY2DYa9.js +0 -204
  236. package/dist/s-snackbar-message-3Z6VySlB.js +0 -808
  237. package/dist/s-switch-B8bZAzLh.js +0 -307
  238. package/dist/s-text-editor-toolbar-D-XgFQix.js +0 -2121
  239. package/dist/s-text-field-BM4qk0mf.js +0 -51
  240. package/dist/s-theme-switch-BLMz1_m2.js +0 -60
  241. package/dist/s-tip-ty41ePQm.js +0 -62
  242. package/dist/selectClasses-DoUlWfzV.js +0 -22
  243. package/dist/styled-Bog8QCl3.js +0 -163
  244. package/dist/svgIconClasses-C8D4AsMj.js +0 -20
  245. package/dist/switchClasses-eiq1bkQN.js +0 -23
  246. package/dist/theme-demo-components-section-gtIYRngY.js +0 -267
  247. package/dist/toggle-button-Cxi5CfXC.js +0 -104
  248. package/dist/tool-bar-action-buttons-Dt-pV3GA.js +0 -54
  249. package/dist/tool-bar-image-input-BXlll_hV.js +0 -148
  250. package/dist/typographyClasses-BLM3NmYd.js +0 -31
  251. package/dist/useControlled-BeB0W_Ui.js +0 -5
  252. package/dist/useControlled-C4QJnpiR.js +0 -29
  253. package/dist/useEnhancedEffect-Bc3gBClC.js +0 -5
  254. package/dist/useEnhancedEffect-DFq_FMGX.js +0 -5
  255. package/dist/useEventCallback-CVqMfiG_.js +0 -14
  256. package/dist/useForkRef-CKneCEtr.js +0 -29
  257. package/dist/useFormControl-iWLrn7Ek.js +0 -18
  258. package/dist/useMobilePicker-C4UQFvkj.js +0 -7580
  259. package/dist/useSlot-iIu8ek6E.js +0 -83
  260. package/dist/useTheme-BIWMbX3i.js +0 -9
  261. package/dist/useThemeProps-BI9yq95N.js +0 -19
  262. package/dist/useThemeProps-Cr28OQu3.js +0 -13
  263. package/dist/utils-oJyTAkZY.js +0 -214
  264. package/dist/warning-CNkSZkq6.js +0 -98
  265. package/dist/yearCalendarClasses-CuAQumpz.js +0 -14
  266. /package/dist/{colors-DKqWMRgW.js → colors-CNjL5fhq.js} +0 -0
  267. /package/dist/{s-brand-logo-jtAJZQIv.js → s-brand-logo-CErW9Slg.js} +0 -0
  268. /package/dist/{utils-DaSrTYUS.js → utils-CMeAWSRO.js} +0 -0
@@ -1,9 +1,9 @@
1
1
  import { toSxArray as e } from "../utils/sx.js";
2
- import { t } from "../appendOwnerState-CELpvdMz.js";
3
- import { SLazyImage as n } from "../s-lazy-image/s-lazy-image.js";
4
- import * as r from "react";
5
- import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
6
- import { ButtonBase as s, Typography as c, styled as l, useThemeProps as u } from "@mui/material";
2
+ import { SLazyImage as t } from "../s-lazy-image/s-lazy-image.js";
3
+ import * as n from "react";
4
+ import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import { ButtonBase as o, Typography as s, styled as c, useThemeProps as l } from "@mui/material";
6
+ import u from "@mui/utils/appendOwnerState";
7
7
  //#region lib/s-category-card/s-category-card.tsx
8
8
  var d = ({ ownerState: e, theme: t }) => ({
9
9
  borderRadius: t.shape.borderRadius,
@@ -26,13 +26,13 @@ var d = ({ ownerState: e, theme: t }) => ({
26
26
  },
27
27
  ...!e.disableHoverEffect && { "@media (hover: hover) and (pointer: fine)": { "&:hover img": { transform: `scale(${e.hoverScale})` } } },
28
28
  "@media (prefers-reduced-motion: reduce)": { "& img": { transition: "none" } }
29
- }), f = l(s, {
29
+ }), f = c(o, {
30
30
  name: "SCategoryCard",
31
31
  slot: "Root"
32
- })(d), p = l("div", {
32
+ })(d), p = c("div", {
33
33
  name: "SCategoryCard",
34
34
  slot: "Root"
35
- })(d), m = l(c, {
35
+ })(d), m = c(s, {
36
36
  name: "SCategoryCard",
37
37
  slot: "Title"
38
38
  })(({ ownerState: e, theme: t }) => ({
@@ -58,40 +58,40 @@ function g(e) {
58
58
  let t = { ...e };
59
59
  return delete t.action, delete t.centerRipple, delete t.classes, delete t.disabled, delete t.disableRipple, delete t.disableTouchRipple, delete t.focusRipple, delete t.focusVisibleClassName, delete t.LinkComponent, delete t.nativeButton, delete t.onFocusVisible, delete t.TouchRippleProps, delete t.touchRippleRef, delete t.type, t;
60
60
  }
61
- var _ = r.forwardRef(function(r, s) {
62
- let c = u({
63
- props: r,
61
+ var _ = n.forwardRef(function(n, o) {
62
+ let s = l({
63
+ props: n,
64
64
  name: "SCategoryCard"
65
- }), { alt: l = "", disableHoverEffect: d = !1, hoverScale: _ = 1.1, image: v, slotProps: y, slots: b, sx: x, title: S, titleAlignment: C = "center", titlePosition: w = "bottom", ...T } = c, E = {
66
- ...c,
65
+ }), { alt: c = "", disableHoverEffect: d = !1, hoverScale: _ = 1.1, image: v, slotProps: y, slots: b, sx: x, title: S, titleAlignment: C = "center", titlePosition: w = "bottom", ...T } = s, E = {
66
+ ...s,
67
67
  disableHoverEffect: d,
68
68
  hoverScale: _,
69
- interactive: typeof c.onClick == "function",
69
+ interactive: typeof s.onClick == "function",
70
70
  titleAlignment: C,
71
71
  titlePosition: w
72
- }, D = b?.image ?? n, O = b?.title ?? m, k = h(y?.image, E), A = h(y?.title, E), j = t(b?.image, k ?? {}, E), { sx: M, ...N } = A ?? {}, P = t(O, {
72
+ }, D = b?.image ?? t, O = b?.title ?? m, k = h(y?.image, E), A = h(y?.title, E), j = u(b?.image, k ?? {}, E), { sx: M, ...N } = A ?? {}, P = u(O, {
73
73
  variant: "body1",
74
74
  ...N,
75
75
  sx: e(M)
76
- }, E), F = /* @__PURE__ */ o(i, { children: [/* @__PURE__ */ a(D, {
76
+ }, E), F = /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i(D, {
77
77
  variant: "rectangular",
78
78
  ...j,
79
- alt: l,
79
+ alt: c,
80
80
  src: v
81
- }), /* @__PURE__ */ a(O, {
81
+ }), /* @__PURE__ */ i(O, {
82
82
  ...P,
83
83
  children: S
84
84
  })] });
85
- return E.interactive ? /* @__PURE__ */ a(f, {
85
+ return E.interactive ? /* @__PURE__ */ i(f, {
86
86
  ...T,
87
87
  ownerState: E,
88
- ref: s,
88
+ ref: o,
89
89
  sx: e(x),
90
90
  children: F
91
- }) : /* @__PURE__ */ a(p, {
91
+ }) : /* @__PURE__ */ i(p, {
92
92
  ...g(T),
93
93
  ownerState: E,
94
- ref: s,
94
+ ref: o,
95
95
  sx: e(x),
96
96
  children: F
97
97
  });
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-chat-input-DCS0mJE4.js";
1
+ import { SChatInput as e } from "./s-chat-input.js";
2
2
  export { e as SChatInput, e as default };
@@ -1,2 +1,398 @@
1
- import { t as e } from "../s-chat-input-DCS0mJE4.js";
2
- export { e as SChatInput, e as default };
1
+ import { toSxArray as e } from "../utils/sx.js";
2
+ import { tint as t } from "../theme/utils.js";
3
+ import { SIconButton as n } from "../s-icon-button/s-icon-button.js";
4
+ import { STextField as r } from "../s-text-field/s-text-field.js";
5
+ import { SFileIcon as i } from "../s-file-icon/s-file-icon.js";
6
+ import { forwardRef as a, useEffect as ee, useRef as o, useState as s } from "react";
7
+ import { Fragment as te, jsx as c, jsxs as l } from "react/jsx-runtime";
8
+ import { AccessTime as u, ArrowUpward as ne, AttachFile as re, Close as d, EmojiEmotions as f, EmojiEvents as p, EmojiFlags as m, EmojiFoodBeverage as h, EmojiNature as g, EmojiObjects as _, EmojiSymbols as v, EmojiTransportation as y } from "@mui/icons-material";
9
+ import { Box as b, ClickAwayListener as ie, Popper as x, Typography as S, outlinedInputClasses as C, styled as w, useThemeProps as ae } from "@mui/material";
10
+ import { mergeSlotProps as oe, useControlled as se, useForkRef as ce } from "@mui/material/utils";
11
+ import le from "@mui/utils/appendOwnerState";
12
+ import ue, { Categories as T } from "emoji-picker-react";
13
+ //#region lib/s-chat-input/s-chat-input.tsx
14
+ var de = {
15
+ [T.SUGGESTED]: /* @__PURE__ */ c(u, {}),
16
+ [T.SMILEYS_PEOPLE]: /* @__PURE__ */ c(f, {}),
17
+ [T.ANIMALS_NATURE]: /* @__PURE__ */ c(g, {}),
18
+ [T.FOOD_DRINK]: /* @__PURE__ */ c(h, {}),
19
+ [T.TRAVEL_PLACES]: /* @__PURE__ */ c(y, {}),
20
+ [T.ACTIVITIES]: /* @__PURE__ */ c(p, {}),
21
+ [T.OBJECTS]: /* @__PURE__ */ c(_, {}),
22
+ [T.SYMBOLS]: /* @__PURE__ */ c(v, {}),
23
+ [T.FLAGS]: /* @__PURE__ */ c(m, {})
24
+ }, E = "url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"/></svg>')", fe = w(b, {
25
+ name: "SChatInput",
26
+ slot: "Root"
27
+ })({});
28
+ function pe(e, t) {
29
+ return typeof e == "function" ? e(t) : e;
30
+ }
31
+ var D = a((a, u) => {
32
+ let p = ae({
33
+ props: a,
34
+ name: "SChatInput"
35
+ }), { onSubmit: m, onFileSelect: h, disabled: g = !1, acceptedFileTypes: _, maxFileSize: v, hideEmojiPicker: y, hideFileAttachment: w, value: T, defaultValue: D = "", onChange: O, onKeyDown: me, inputRef: k, placeholder: A = "Enter your message here...", slotProps: j, slots: M, sx: N, attachFileLabel: P = "Attach files", emojiPickerLabel: F = "Choose emoji", submitLabel: I = "Send message", ...L } = p, [R, z] = se({
36
+ controlled: T,
37
+ default: D,
38
+ name: "SChatInput",
39
+ state: "value"
40
+ }), [B, V] = s([]), [he, H] = s(/* @__PURE__ */ new Map()), U = o(/* @__PURE__ */ new Map()), W = o(null), [G, K] = s(!1), [ge, q] = s(null), J = {
41
+ ...p,
42
+ disabled: g,
43
+ emojiPickerOpen: G,
44
+ hasFiles: B.length > 0
45
+ }, _e = M?.input ?? r, ve = pe(j?.input, J), { inputRef: ye, onChange: be, onKeyDown: xe, slotProps: Y, ...Se } = le(M?.input, ve ?? {}, J), Ce = ce(k, ye), X = (e) => e.type.startsWith("image/"), we = (e) => he.get(e) ?? "", Te = (e) => {
46
+ if (be?.(e), e.defaultPrevented) return;
47
+ let t = e.target.value;
48
+ z(t), O?.(e, t, "input");
49
+ }, Z = (e, t) => {
50
+ let n = `${R}${e.emoji}`;
51
+ z(n), O?.(t, n, "emoji"), K(!1), q(null);
52
+ }, Ee = (e) => {
53
+ q(e.currentTarget), K(!G);
54
+ }, Q = (e) => {
55
+ g || R.trim().length === 0 && B.length === 0 || (m?.(e, R, B), !e.defaultPrevented && (e.preventDefault(), z(""), O?.(e, "", "clear"), U.current.forEach((e) => URL.revokeObjectURL(e)), U.current = /* @__PURE__ */ new Map(), H(/* @__PURE__ */ new Map()), V([])));
56
+ }, De = (e) => {
57
+ let t = Array.from(e.target.files ?? []).filter((e) => !(v && e.size > v)), n = new Map(U.current);
58
+ t.forEach((e) => {
59
+ X(e) && n.set(e, URL.createObjectURL(e));
60
+ }), U.current = n, H(n), V((e) => [...e, ...t]), h?.(t), e.target.value = "";
61
+ }, $ = (e) => {
62
+ let t = B[e];
63
+ if (t && X(t)) {
64
+ let e = U.current.get(t);
65
+ if (e) {
66
+ URL.revokeObjectURL(e);
67
+ let n = new Map(U.current);
68
+ n.delete(t), U.current = n, H(n);
69
+ }
70
+ }
71
+ V((t) => t.filter((t, n) => n !== e));
72
+ }, Oe = (e) => {
73
+ xe?.(e), me?.(e), !e.defaultPrevented && e.key === "Enter" && !e.shiftKey && (Q(e), e.preventDefault());
74
+ };
75
+ return ee(() => () => {
76
+ U.current.forEach((e) => URL.revokeObjectURL(e)), U.current.clear();
77
+ }, []), /* @__PURE__ */ l(fe, {
78
+ ...L,
79
+ ownerState: J,
80
+ ref: u,
81
+ sx: [(e) => ({
82
+ border: "1px solid",
83
+ borderColor: "divider",
84
+ borderRadius: 1,
85
+ padding: "8px 12px",
86
+ transition: "border 120ms ease-in",
87
+ "&:hover": { borderColor: (e.vars ?? e).palette.grey[500] },
88
+ "&:focus-within": {
89
+ outline: `3px solid ${t((e.vars ?? e).palette.primary[500], 50)}`,
90
+ borderColor: (e.vars ?? e).palette.primary[400]
91
+ },
92
+ ...g && {
93
+ opacity: .5,
94
+ pointerEvents: "none"
95
+ }
96
+ }), ...e(N)],
97
+ children: [
98
+ /* @__PURE__ */ c(_e, {
99
+ ...Se,
100
+ placeholder: A,
101
+ disabled: g,
102
+ value: R,
103
+ onChange: Te,
104
+ onKeyDown: Oe,
105
+ fullWidth: !0,
106
+ multiline: !0,
107
+ minRows: 1,
108
+ maxRows: 10,
109
+ variant: "outlined",
110
+ inputRef: Ce,
111
+ slotProps: {
112
+ ...Y,
113
+ input: oe(Y?.input, { sx: {
114
+ height: "100%",
115
+ backgroundColor: "transparent",
116
+ border: "none",
117
+ padding: 0,
118
+ [`&.${C.focused}`]: { outline: "none" },
119
+ "& fieldset": { border: "none" },
120
+ "&:hover fieldset": { border: "none" },
121
+ "&.Mui-focused fieldset": { border: "none" }
122
+ } })
123
+ }
124
+ }),
125
+ B.length > 0 && /* @__PURE__ */ c(b, {
126
+ sx: {
127
+ display: "flex",
128
+ flexWrap: "wrap",
129
+ gap: 1,
130
+ mt: 1
131
+ },
132
+ children: B.map((e, t) => {
133
+ let r = X(e), a = e.name.split(".").pop();
134
+ return r ? /* @__PURE__ */ l(b, {
135
+ sx: {
136
+ flex: "0 0 auto",
137
+ height: 72,
138
+ position: "relative",
139
+ width: 72
140
+ },
141
+ children: [/* @__PURE__ */ c(b, {
142
+ component: "img",
143
+ src: we(e),
144
+ alt: e.name,
145
+ sx: {
146
+ borderRadius: 1,
147
+ display: "block",
148
+ height: "100%",
149
+ objectFit: "cover",
150
+ width: "100%"
151
+ }
152
+ }), /* @__PURE__ */ c(n, {
153
+ "aria-label": `Remove ${e.name}`,
154
+ onClick: () => $(t),
155
+ size: "small",
156
+ variant: "overlay",
157
+ sx: {
158
+ position: "absolute",
159
+ right: 4,
160
+ top: 4
161
+ },
162
+ children: /* @__PURE__ */ c(d, { fontSize: "small" })
163
+ })]
164
+ }, `${e.name}-${t}`) : /* @__PURE__ */ l(b, {
165
+ sx: {
166
+ alignItems: "center",
167
+ bgcolor: "background.paper",
168
+ border: "1px solid",
169
+ borderColor: "divider",
170
+ borderRadius: 1,
171
+ display: "flex",
172
+ justifyContent: "space-between",
173
+ p: 1,
174
+ width: "100%"
175
+ },
176
+ children: [/* @__PURE__ */ l(b, {
177
+ sx: {
178
+ display: "flex",
179
+ alignItems: "center",
180
+ gap: 1
181
+ },
182
+ children: [/* @__PURE__ */ c(i, { extension: a }), /* @__PURE__ */ l(b, {
183
+ sx: {
184
+ display: "flex",
185
+ flexDirection: "row",
186
+ alignItems: "center",
187
+ gap: 1
188
+ },
189
+ children: [/* @__PURE__ */ c(S, {
190
+ variant: "subtitle2",
191
+ sx: {
192
+ textOverflow: "ellipsis",
193
+ overflow: "hidden",
194
+ whiteSpace: "nowrap"
195
+ },
196
+ children: e.name
197
+ }), /* @__PURE__ */ c("div", { children: /* @__PURE__ */ l(S, {
198
+ variant: "caption",
199
+ children: [
200
+ "(",
201
+ Math.round(e.size / 1024),
202
+ " KB)"
203
+ ]
204
+ }) })]
205
+ })]
206
+ }), /* @__PURE__ */ c(n, {
207
+ "aria-label": `Remove ${e.name}`,
208
+ onClick: () => $(t),
209
+ sx: {
210
+ minWidth: "auto",
211
+ p: .5
212
+ },
213
+ children: /* @__PURE__ */ c(d, {})
214
+ })]
215
+ }, `${e.name}-${t}`);
216
+ })
217
+ }),
218
+ /* @__PURE__ */ l(b, {
219
+ sx: {
220
+ display: "flex",
221
+ justifyContent: "space-between",
222
+ alignItems: "center",
223
+ mt: 1
224
+ },
225
+ children: [/* @__PURE__ */ l(b, {
226
+ sx: {
227
+ display: "flex",
228
+ gap: 1
229
+ },
230
+ children: [!w && /* @__PURE__ */ l(te, { children: [/* @__PURE__ */ c("input", {
231
+ ref: W,
232
+ type: "file",
233
+ multiple: !0,
234
+ accept: _,
235
+ onChange: De,
236
+ style: { display: "none" },
237
+ disabled: g
238
+ }), /* @__PURE__ */ c(n, {
239
+ "aria-label": P,
240
+ disabled: g,
241
+ onClick: () => W.current?.click(),
242
+ children: /* @__PURE__ */ c(re, {})
243
+ })] }), !y && /* @__PURE__ */ c(n, {
244
+ "aria-label": F,
245
+ onClick: Ee,
246
+ disabled: g,
247
+ children: /* @__PURE__ */ c(f, {})
248
+ })]
249
+ }), /* @__PURE__ */ c(n, {
250
+ "aria-label": I,
251
+ onClick: Q,
252
+ disabled: g,
253
+ children: /* @__PURE__ */ c(ne, {})
254
+ })]
255
+ }),
256
+ /* @__PURE__ */ c(x, {
257
+ open: G,
258
+ anchorEl: ge,
259
+ placement: "top-start",
260
+ sx: { zIndex: 1300 },
261
+ children: /* @__PURE__ */ c(ie, {
262
+ onClickAway: () => {
263
+ K(!1), q(null);
264
+ },
265
+ children: /* @__PURE__ */ c(b, {
266
+ sx: (e) => ({
267
+ border: "1px solid",
268
+ borderColor: "divider",
269
+ borderRadius: 1,
270
+ overflow: "hidden",
271
+ "& .epr-main": {
272
+ backgroundColor: "background.paper",
273
+ border: "none"
274
+ },
275
+ "& .epr-main, & .epr-main *": { fontFamily: e.typography.fontFamily },
276
+ "& .epr-header": { backgroundColor: "background.paper" },
277
+ "& .epr-search-container": { backgroundColor: "background.paper" },
278
+ "& .epr-search-container > .epr-icn-search": { display: "none" },
279
+ "& .epr-icn-clear-search": {
280
+ backgroundImage: "none",
281
+ backgroundColor: "action.active",
282
+ WebkitMaskImage: E,
283
+ maskImage: E,
284
+ WebkitMaskRepeat: "no-repeat",
285
+ maskRepeat: "no-repeat",
286
+ WebkitMaskPosition: "center",
287
+ maskPosition: "center",
288
+ WebkitMaskSize: "0.875rem",
289
+ maskSize: "0.875rem"
290
+ },
291
+ "& .epr-btn-clear-search": {
292
+ height: 24,
293
+ width: 24,
294
+ "&:hover, &:focus": { backgroundColor: "action.hover" }
295
+ },
296
+ "& .epr-search-container > input": {
297
+ boxSizing: "border-box",
298
+ minHeight: 40,
299
+ backgroundColor: "background.default",
300
+ border: "1px solid",
301
+ borderColor: "divider",
302
+ borderRadius: 1,
303
+ color: "text.primary",
304
+ fontFamily: "inherit",
305
+ fontSize: e.typography.body1.fontSize,
306
+ padding: "8px 12px",
307
+ transition: "border 120ms ease-in",
308
+ "&:hover": { borderColor: (e.vars ?? e).palette.grey[500] },
309
+ "&:focus": {
310
+ outline: `3px solid ${t((e.vars ?? e).palette.primary[500], 50)}`,
311
+ borderColor: (e.vars ?? e).palette.primary[400]
312
+ },
313
+ "&::placeholder": { color: "text.secondary" }
314
+ },
315
+ "& .epr-category-nav": {
316
+ backgroundColor: "background.paper",
317
+ borderBottom: "1px solid",
318
+ borderColor: "divider",
319
+ padding: "0px 8px 8px 8px"
320
+ },
321
+ "& .epr-cat-btn": {
322
+ backgroundColor: "transparent !important",
323
+ border: "none",
324
+ transition: e.transitions.create("background-color", { duration: e.transitions.duration.shorter })
325
+ },
326
+ "& .epr-cat-btn:focus::before": { display: "none" },
327
+ "& .epr-cat-btn:focus-visible": {
328
+ borderRadius: 1,
329
+ outline: "2px solid",
330
+ outlineColor: "primary.main",
331
+ outlineOffset: 2
332
+ },
333
+ "& .epr-cat-btn-custom-icon svg": {
334
+ color: "text.secondary",
335
+ transition: e.transitions.create("color", { duration: e.transitions.duration.shorter })
336
+ },
337
+ "& .epr-cat-btn-custom-icon.epr-active svg": { color: (e.vars ?? e).palette.primary[500] },
338
+ "& .epr-body": { backgroundColor: "background.paper" },
339
+ "& .epr-emoji-category-label": {
340
+ backgroundColor: "background.paper",
341
+ color: "text.primary",
342
+ fontSize: e.typography.caption.fontSize,
343
+ fontWeight: 600,
344
+ padding: "8px 16px 4px",
345
+ textTransform: "uppercase",
346
+ letterSpacing: "0.5px"
347
+ },
348
+ "& .epr-emoji-list": { backgroundColor: "background.paper" },
349
+ "& .epr-emoji": {
350
+ borderRadius: 1,
351
+ margin: "2px",
352
+ transition: e.transitions.create("background-color", { duration: e.transitions.duration.shorter }),
353
+ "&:focus-visible": {
354
+ outline: "2px solid",
355
+ outlineColor: "primary.main",
356
+ outlineOffset: 1
357
+ }
358
+ },
359
+ "& .epr-skin-tones": {
360
+ backgroundColor: "background.paper",
361
+ border: "1px solid",
362
+ borderColor: "divider",
363
+ borderRadius: 1,
364
+ display: "none"
365
+ },
366
+ "& .epr-tone": {
367
+ border: "none",
368
+ borderRadius: 1,
369
+ transition: e.transitions.create("background-color", { duration: e.transitions.duration.shorter }),
370
+ "&:focus-visible": {
371
+ outline: "2px solid",
372
+ outlineColor: "primary.main",
373
+ outlineOffset: 1
374
+ }
375
+ },
376
+ "@media (hover: hover) and (pointer: fine)": {
377
+ "& .epr-cat-btn-custom-icon:hover svg": { color: "text.primary" },
378
+ "& .epr-emoji:hover, & .epr-tone:hover": { backgroundColor: "action.hover" }
379
+ }
380
+ }),
381
+ children: /* @__PURE__ */ c(ue, {
382
+ onEmojiClick: Z,
383
+ width: 300,
384
+ height: 400,
385
+ searchDisabled: !1,
386
+ skinTonesDisabled: !1,
387
+ previewConfig: { showPreview: !1 },
388
+ categoryIcons: de
389
+ })
390
+ })
391
+ })
392
+ })
393
+ ]
394
+ });
395
+ });
396
+ D.displayName = "SChatInput";
397
+ //#endregion
398
+ export { D as SChatInput, D as default };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-chat-message-9oollJJq.js";
1
+ import { SChatMessage as e } from "./s-chat-message.js";
2
2
  export { e as SChatMessage, e as default };