@solostylist/ui-kit 1.0.203 → 1.0.204

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 (366) hide show
  1. package/dist/ArrowUpward-KYbUu0UZ.js +5 -0
  2. package/dist/Box-a5uPlxYL.js +47 -0
  3. package/dist/ButtonBase-CyZX7c8K.js +802 -0
  4. package/dist/ChevronLeft-Djq7TyZX.js +5 -0
  5. package/dist/ChevronRight-BgWjUtu8.js +5 -0
  6. package/dist/Close-DD2G0QfM.js +5 -0
  7. package/dist/ContentCopy-D1OlBB-D.js +6 -0
  8. package/dist/DefaultPropsProvider-CFaP_bh_.js +157 -0
  9. package/dist/Download-DDt8mUQX.js +5 -0
  10. package/dist/ExpandMore-3GurpYw-.js +5 -0
  11. package/dist/Favorite-gVQqn0Cm.js +5 -0
  12. package/dist/Menu-BB3Khkc0.js +1662 -0
  13. package/dist/MenuItem-CjPW2J-w.js +213 -0
  14. package/dist/Paper-COr98fp-.js +329 -0
  15. package/dist/Select-B9880Uge.js +2545 -0
  16. package/dist/Stack-BJ4hQFAK.js +158 -0
  17. package/dist/Typography-B_GHPkH2.js +187 -0
  18. package/dist/assets/s-carousel.css +1 -1
  19. package/dist/assets/s-overlay-scrollbar.css +10 -1
  20. package/dist/assets/stripe-input.css +1 -1
  21. package/dist/avatar-boNnyODN.js +9 -0
  22. package/dist/buttonBaseClasses-DqKyadLa.js +13 -0
  23. package/dist/checkbox-CajxsIFH.js +57 -0
  24. package/dist/chunk-BQCxAhux.js +23 -0
  25. package/dist/createSimplePaletteValueFilter-1V26n1YK.js +14 -0
  26. package/dist/createSvgIcon-Bs2KOQvq.js +153 -0
  27. package/dist/createTheme-CMuiGmV-.js +2430 -0
  28. package/dist/defaultTheme-C7Su92B_.js +5 -0
  29. package/dist/entries/carousel.js +4 -4
  30. package/dist/entries/chat.js +4 -4
  31. package/dist/entries/code.js +4 -4
  32. package/dist/entries/core.js +57 -122
  33. package/dist/entries/dates.js +8 -12
  34. package/dist/entries/dropzone.js +4 -4
  35. package/dist/entries/editor.js +3 -4
  36. package/dist/entries/gallery.js +8 -13
  37. package/dist/entries/i18n.js +4 -7
  38. package/dist/entries/motion.js +15 -27
  39. package/dist/entries/scrollbar.js +3 -4
  40. package/dist/entries/stripe.js +7 -10
  41. package/dist/extendSxProp-DC0zdi8T.js +29 -0
  42. package/dist/generateUtilityClass-DdqZpZoW.js +34 -0
  43. package/dist/generateUtilityClasses-i3-S3IQr.js +10 -0
  44. package/dist/hooks/index.js +5 -11
  45. package/dist/hooks/use-count-down.js +85 -76
  46. package/dist/hooks/use-dialog.js +21 -18
  47. package/dist/hooks/use-is-passed-position.js +20 -20
  48. package/dist/hooks/use-popover.js +18 -18
  49. package/dist/hooks/use-scroll-animation.js +74 -56
  50. package/dist/iconButtonClasses-BggbSXxO.js +27 -0
  51. package/dist/identifier-_S1f0Pg2.js +190 -0
  52. package/dist/jsx-runtime-V-UOMaX1.js +180 -0
  53. package/dist/main.js +104 -196
  54. package/dist/mergeSlotProps-DKt8V_TK.js +48 -0
  55. package/dist/objectWithoutPropertiesLoose-Dn-p_OIo.js +23 -0
  56. package/dist/outlinedInputClasses-5cvWh4bu.js +43 -0
  57. package/dist/resolveProps-BfzHOpig.js +30 -0
  58. package/dist/s-accordion/index.js +4 -4
  59. package/dist/s-accordion/s-accordion.js +4 -949
  60. package/dist/s-accordion-Dt3fbZNh.js +712 -0
  61. package/dist/s-action-overlay/index.js +3 -4
  62. package/dist/s-action-overlay/s-action-overlay.js +108 -109
  63. package/dist/s-autocomplete/index.js +3 -4
  64. package/dist/s-autocomplete/s-autocomplete.js +25 -31
  65. package/dist/s-avatar/index.js +3 -4
  66. package/dist/s-avatar/s-avatar.js +32 -22
  67. package/dist/s-blur-text/index.js +3 -4
  68. package/dist/s-blur-text/s-blur-text.js +67 -81
  69. package/dist/s-breadcrumbs/index.js +3 -3
  70. package/dist/s-breadcrumbs/s-breadcrumbs.js +49 -44
  71. package/dist/s-button/index.js +3 -4
  72. package/dist/s-button/s-button.js +11 -9
  73. package/dist/s-carousel/index.js +4 -4
  74. package/dist/s-carousel/s-carousel.js +4 -2480
  75. package/dist/s-carousel-B3VUHzx3.js +2294 -0
  76. package/dist/s-category-card/index.js +2 -3
  77. package/dist/s-category-card/s-category-card.js +70 -105
  78. package/dist/s-chat-input/index.js +4 -4
  79. package/dist/s-chat-input/s-chat-input.js +4 -319
  80. package/dist/s-chat-input-j_4JZfmI.js +283 -0
  81. package/dist/s-chat-message/index.js +4 -4
  82. package/dist/s-chat-message/s-chat-message.js +4 -283
  83. package/dist/s-chat-message-DQk5XWSJ.js +281 -0
  84. package/dist/s-checkbox/index.js +3 -4
  85. package/dist/s-checkbox/s-checkbox.js +27 -17
  86. package/dist/s-chip/index.js +3 -4
  87. package/dist/s-chip/s-chip.js +10 -8
  88. package/dist/s-chips/index.js +3 -4
  89. package/dist/s-chips/s-chips.js +91 -86
  90. package/dist/s-code-block/index.js +4 -4
  91. package/dist/s-code-block/s-code-block.js +4 -1052
  92. package/dist/s-code-block-BxdWmtRX.js +608 -0
  93. package/dist/s-comment-message/index.js +4 -4
  94. package/dist/s-comment-message/s-comment-message.js +4 -123
  95. package/dist/s-comment-message-D3XTOm1L.js +195 -0
  96. package/dist/s-copyable-text/index.js +4 -4
  97. package/dist/s-copyable-text/s-copyable-text.js +50 -54
  98. package/dist/s-countdown/index.js +4 -5
  99. package/dist/s-countdown/s-count-box.js +102 -106
  100. package/dist/s-countdown/s-count-down.js +101 -109
  101. package/dist/s-data-table/index.js +4 -4
  102. package/dist/s-data-table/s-data-table.js +4 -1291
  103. package/dist/s-data-table-B9B189jk.js +893 -0
  104. package/dist/s-date-picker/index.js +4 -4
  105. package/dist/s-date-picker/s-date-picker.js +4 -1521
  106. package/dist/s-date-picker-CH4q-Bfx.js +581 -0
  107. package/dist/s-datetime-picker/index.js +4 -4
  108. package/dist/s-datetime-picker/s-datetime-picker.js +4 -5180
  109. package/dist/s-datetime-picker-dviksz3-.js +3808 -0
  110. package/dist/s-dialog/index.js +3 -3
  111. package/dist/s-dialog/s-dialog.js +44 -36
  112. package/dist/s-dialog-confirm/index.js +4 -6
  113. package/dist/s-dialog-confirm/s-dialog-confirm.js +86 -75
  114. package/dist/s-dialog-message/index.js +4 -6
  115. package/dist/s-dialog-message/s-dialog-message.js +75 -66
  116. package/dist/s-empty/index.js +2 -3
  117. package/dist/s-empty/s-empty.js +12 -7
  118. package/dist/s-error/index.js +3 -4
  119. package/dist/s-error/s-error.js +31 -20
  120. package/dist/s-error-layout/index.js +3 -4
  121. package/dist/s-error-layout/s-error-layout.js +78 -56
  122. package/dist/s-file-dropzone/index.js +4 -4
  123. package/dist/s-file-dropzone/s-file-dropzone.js +4 -124
  124. package/dist/s-file-dropzone-DYiYlcY8.js +134 -0
  125. package/dist/s-file-icon/index.js +4 -4
  126. package/dist/s-file-icon/s-file-icon.js +327 -272
  127. package/dist/s-flex-box/index.js +4 -4
  128. package/dist/s-flex-box/s-flex-box.js +11 -7
  129. package/dist/s-form/index.js +3 -4
  130. package/dist/s-form/s-form.js +23 -15
  131. package/dist/s-gallery/index.js +4 -5
  132. package/dist/s-gallery/s-gallery.js +310 -346
  133. package/dist/s-glow-button/index.js +4 -4
  134. package/dist/s-glow-button/s-glow-button.js +30 -43
  135. package/dist/s-gradient-icon/index.js +3 -4
  136. package/dist/s-gradient-icon/s-gradient-icon.js +124 -79
  137. package/dist/s-i18n-provider/index.js +3 -4
  138. package/dist/s-i18n-provider/s-i18n-provider.js +23 -26
  139. package/dist/s-icon-button/index.js +3 -4
  140. package/dist/s-icon-button/s-icon-button.js +11 -8
  141. package/dist/s-image-comparison/index.js +4 -4
  142. package/dist/s-image-comparison/s-image-comparison.js +169 -207
  143. package/dist/s-image-modal/index.js +4 -5
  144. package/dist/s-image-modal/s-image-modal.js +396 -387
  145. package/dist/s-item-not-found/index.js +2 -3
  146. package/dist/s-item-not-found/s-item-not-found.js +240 -262
  147. package/dist/s-label/index.js +4 -4
  148. package/dist/s-label/s-label.js +4 -17
  149. package/dist/s-label-g_Qac9jO.js +30 -0
  150. package/dist/s-language-switcher/index.js +4 -6
  151. package/dist/s-language-switcher/s-language-switcher.js +4 -252
  152. package/dist/s-language-switcher-DhcrqHJt.js +198 -0
  153. package/dist/s-lazy-image/index.js +3 -4
  154. package/dist/s-lazy-image/s-lazy-image.js +41 -56
  155. package/dist/s-link/index.js +3 -4
  156. package/dist/s-link/s-link.js +30 -37
  157. package/dist/s-localization-provider/index.js +4 -4
  158. package/dist/s-localization-provider/s-localization-provider.js +4 -562
  159. package/dist/s-localization-provider-BpoHpRVl.js +537 -0
  160. package/dist/s-moving-border/index.js +2 -3
  161. package/dist/s-moving-border/s-moving-border.js +117 -131
  162. package/dist/s-multi-select/index.js +4 -4
  163. package/dist/s-multi-select/s-multi-select.js +4 -82
  164. package/dist/s-multi-select-CUsIS9dm.js +64 -0
  165. package/dist/s-no-ssr/index.js +3 -4
  166. package/dist/s-no-ssr/s-no-ssr.js +14 -15
  167. package/dist/s-overlay-scrollbar/index.js +3 -4
  168. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.js +34 -37
  169. package/dist/s-pagination/index.js +3 -4
  170. package/dist/s-pagination/s-pagination.js +31 -14
  171. package/dist/s-pixel-reveal/index.js +4 -4
  172. package/dist/s-pixel-reveal/s-pixel-reveal.js +138 -156
  173. package/dist/s-radial-pulse-animate/index.js +4 -4
  174. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.js +80 -122
  175. package/dist/s-rating/index.js +2 -3
  176. package/dist/s-rating/s-rating.js +11 -9
  177. package/dist/s-review/index.js +4 -4
  178. package/dist/s-review/s-review.js +4 -160
  179. package/dist/s-review-C1E6ASin.js +241 -0
  180. package/dist/s-scroll-reveal/index.js +3 -4
  181. package/dist/s-scroll-reveal/s-scroll-reveal.js +68 -64
  182. package/dist/s-scroll-to-top/index.js +4 -4
  183. package/dist/s-scroll-to-top/s-scroll-to-top.js +45 -44
  184. package/dist/s-scroll-velocity/index.js +5 -8
  185. package/dist/s-scroll-velocity/s-scroll-velocity.js +14 -8
  186. package/dist/s-scroll-velocity/scroll-velocity-container.js +25 -30
  187. package/dist/s-scroll-velocity/scroll-velocity-row.js +97 -118
  188. package/dist/s-select/index.js +4 -4
  189. package/dist/s-select/s-select.js +4 -112
  190. package/dist/s-select-CmsTrYmx.js +110 -0
  191. package/dist/s-select-list/index.js +3 -4
  192. package/dist/s-select-list/s-select-list.js +44 -49
  193. package/dist/s-skeleton/index.js +3 -4
  194. package/dist/s-skeleton/s-skeleton.js +69 -35
  195. package/dist/s-snackbar-message/index.js +3 -6
  196. package/dist/s-snackbar-message/s-snackbar-message.js +48 -61
  197. package/dist/s-spotlight-cursor/index.js +3 -4
  198. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +58 -61
  199. package/dist/s-stripe/index.js +7 -10
  200. package/dist/s-stripe/s-stripe-cvc.js +15 -10
  201. package/dist/s-stripe/s-stripe-expiry.js +15 -10
  202. package/dist/s-stripe/s-stripe-number.js +13 -8
  203. package/dist/s-stripe/s-stripe.js +31 -37
  204. package/dist/s-stripe/stripe-input.js +57 -81
  205. package/dist/s-switch/index.js +2 -3
  206. package/dist/s-switch/s-switch.js +27 -17
  207. package/dist/s-tabs/index.js +5 -8
  208. package/dist/s-tabs/s-tab-panel.js +23 -29
  209. package/dist/s-tabs/s-tab.js +10 -7
  210. package/dist/s-tabs/s-tabs.js +39 -35
  211. package/dist/s-text-editor/index.js +4 -5
  212. package/dist/s-text-editor/s-text-editor-toolbar.js +4 -207
  213. package/dist/s-text-editor/s-text-editor.js +74 -80
  214. package/dist/s-text-editor-toolbar-DC-dnSBG.js +177 -0
  215. package/dist/s-text-field/index.js +4 -4
  216. package/dist/s-text-field/s-text-field.js +4 -49
  217. package/dist/s-text-field-C2WdBxNO.js +41 -0
  218. package/dist/s-text-shimmer/index.js +4 -4
  219. package/dist/s-text-shimmer/s-text-shimmer.js +31 -32
  220. package/dist/s-text-truncation/index.js +2 -3
  221. package/dist/s-text-truncation/s-text-truncation.js +79 -81
  222. package/dist/s-theme-demo/index.js +4 -4
  223. package/dist/s-theme-demo/s-theme-demo.js +4 -380
  224. package/dist/s-theme-demo-ChEG6wog.js +828 -0
  225. package/dist/s-theme-provider/index.js +4 -4
  226. package/dist/s-theme-provider/s-theme-provider.js +35 -50
  227. package/dist/s-theme-switch/index.js +4 -4
  228. package/dist/s-theme-switch/s-theme-switch.js +4 -41
  229. package/dist/s-theme-switch-uXRVJIf_.js +37 -0
  230. package/dist/s-tip/index.js +4 -4
  231. package/dist/s-tip/s-tip.js +4 -34
  232. package/dist/s-tip-oiH-79gR.js +34 -0
  233. package/dist/s-tool-bar/index.js +4 -4
  234. package/dist/s-tool-bar/s-tool-bar.js +4 -478
  235. package/dist/s-tool-bar-CM-cxOkI.js +404 -0
  236. package/dist/s-two-pane-layout/index.js +3 -3
  237. package/dist/s-two-pane-layout/s-two-pane-layout.js +101 -100
  238. package/dist/s-typewriter-text/index.js +3 -4
  239. package/dist/s-typewriter-text/s-typewriter-text.js +39 -45
  240. package/dist/s-zoom-image/index.js +2 -3
  241. package/dist/s-zoom-image/s-zoom-image.js +62 -88
  242. package/dist/select-CjaxyZK_.js +11 -0
  243. package/dist/styled-CjUxhIJh.js +168 -0
  244. package/dist/svgIconClasses-DOmb6RsS.js +20 -0
  245. package/dist/tabClasses-DoD3-n6K.js +21 -0
  246. package/dist/theme/components/accordion-details.js +7 -8
  247. package/dist/theme/components/accordion-summary.js +12 -17
  248. package/dist/theme/components/accordion.js +24 -32
  249. package/dist/theme/components/alert.js +45 -72
  250. package/dist/theme/components/app-bar.js +12 -18
  251. package/dist/theme/components/autocomplete.js +19 -30
  252. package/dist/theme/components/avatar.js +4 -13
  253. package/dist/theme/components/backdrop.js +13 -12
  254. package/dist/theme/components/button-base.js +12 -14
  255. package/dist/theme/components/button.js +92 -138
  256. package/dist/theme/components/card-actions.js +4 -10
  257. package/dist/theme/components/card-content.js +4 -11
  258. package/dist/theme/components/card-header.js +4 -10
  259. package/dist/theme/components/card.js +23 -35
  260. package/dist/theme/components/checkbox.js +4 -65
  261. package/dist/theme/components/chip.js +67 -106
  262. package/dist/theme/components/components.js +113 -111
  263. package/dist/theme/components/container.js +4 -6
  264. package/dist/theme/components/dialog-actions.js +4 -10
  265. package/dist/theme/components/dialog.js +11 -17
  266. package/dist/theme/components/drawer.js +4 -10
  267. package/dist/theme/components/form-control.js +4 -10
  268. package/dist/theme/components/form-label.js +7 -11
  269. package/dist/theme/components/icon-button.js +82 -132
  270. package/dist/theme/components/icon.js +9 -21
  271. package/dist/theme/components/input-adornment.js +7 -13
  272. package/dist/theme/components/input-base.js +10 -16
  273. package/dist/theme/components/linear-progress.js +11 -16
  274. package/dist/theme/components/link.js +31 -37
  275. package/dist/theme/components/list-item-button.js +27 -44
  276. package/dist/theme/components/list-item-icon.js +4 -10
  277. package/dist/theme/components/list-item-text.js +14 -16
  278. package/dist/theme/components/list-item.js +12 -20
  279. package/dist/theme/components/list-subheader.js +10 -14
  280. package/dist/theme/components/list.js +9 -13
  281. package/dist/theme/components/menu-item.js +7 -8
  282. package/dist/theme/components/menu.js +20 -22
  283. package/dist/theme/components/outlined-input.js +41 -64
  284. package/dist/theme/components/pagination-item.js +8 -18
  285. package/dist/theme/components/paper.js +4 -8
  286. package/dist/theme/components/popover.js +11 -13
  287. package/dist/theme/components/rating.js +4 -8
  288. package/dist/theme/components/select.js +4 -13
  289. package/dist/theme/components/skeleton.js +4 -10
  290. package/dist/theme/components/slider.js +4 -8
  291. package/dist/theme/components/step-connector.js +9 -13
  292. package/dist/theme/components/step-icon.js +39 -46
  293. package/dist/theme/components/step-label.js +7 -13
  294. package/dist/theme/components/svg-icon.js +20 -37
  295. package/dist/theme/components/tab.js +20 -34
  296. package/dist/theme/components/table-cell.js +4 -10
  297. package/dist/theme/components/table-pagination.js +14 -18
  298. package/dist/theme/components/tabs.js +20 -24
  299. package/dist/theme/components/toggle-button-group.js +3 -23
  300. package/dist/theme/components/toggle-button.js +3 -21
  301. package/dist/theme/components/tooltip.js +23 -23
  302. package/dist/theme/theme-primitives.js +3 -410
  303. package/dist/theme-primitives-Csxbv-2Y.js +398 -0
  304. package/dist/toggle-button-CAcYep44.js +26 -0
  305. package/dist/toggle-button-group-BCHnFS_B.js +28 -0
  306. package/dist/typographyClasses-YJ-sLvHS.js +32 -0
  307. package/dist/useControlled-DZKvfhNx.js +32 -0
  308. package/dist/useEnhancedEffect-C_B_y6Db.js +5 -0
  309. package/dist/useFormControl-y5Pput5X.js +11 -0
  310. package/dist/useMobilePicker-CVsWEjX5.js +10635 -0
  311. package/dist/useTheme-B8aCSYJ4.js +34 -0
  312. package/dist/useThemeProps-CeO0wKq2.js +19 -0
  313. package/dist/utils/dayjs.js +161 -113
  314. package/dist/utils/index.js +3 -11
  315. package/dist/utils/logger.js +45 -46
  316. package/dist/utils-Cj6R-BZe.js +72 -0
  317. package/dist/warning-Bc_24lbr.js +110 -0
  318. package/package.json +29 -29
  319. package/dist/ArrowUpward-D8eqD-si.js +0 -8
  320. package/dist/Box-BkXoTbe8.js +0 -62
  321. package/dist/ButtonBase-D73M0QY5.js +0 -1099
  322. package/dist/ChevronLeft-BmgmPHp9.js +0 -8
  323. package/dist/ChevronRight-DbWSr8yz.js +0 -8
  324. package/dist/Close-lHCUMitI.js +0 -8
  325. package/dist/ContentCopy-D4SuJd86.js +0 -11
  326. package/dist/DefaultPropsProvider-DPuuPIbS.js +0 -64
  327. package/dist/Download-BoRQUwCf.js +0 -8
  328. package/dist/ExpandMore-C7yRQv1-.js +0 -8
  329. package/dist/Favorite-Bz_HcMgN.js +0 -8
  330. package/dist/Menu-GVFDMHCN.js +0 -2441
  331. package/dist/MenuItem-2wG8I2HO.js +0 -269
  332. package/dist/Paper-CR019bki.js +0 -553
  333. package/dist/Select-D2l9rDWL.js +0 -3966
  334. package/dist/Stack-Dfjnuorw.js +0 -174
  335. package/dist/Typography-PcmlIqm1.js +0 -253
  336. package/dist/_commonjsHelpers-ByX85dGu.js +0 -33
  337. package/dist/buttonBaseClasses-jtnoTmPn.js +0 -10
  338. package/dist/clsx-OuTLNxxd.js +0 -16
  339. package/dist/createSimplePaletteValueFilter-B7--0ryQ.js +0 -17
  340. package/dist/createSvgIcon-BkbeLOhM.js +0 -242
  341. package/dist/createTheme-DgoJyWM-.js +0 -2929
  342. package/dist/defaultTheme-CulFxfLR.js +0 -5
  343. package/dist/extendSxProp-BJEIxcAx.js +0 -36
  344. package/dist/generateUtilityClass-BhfUaMgk.js +0 -35
  345. package/dist/generateUtilityClasses-E9gROIFd.js +0 -10
  346. package/dist/iconButtonClasses-BMfIhNTh.js +0 -10
  347. package/dist/identifier-BKLqN993.js +0 -4
  348. package/dist/index-D3G5Rwl-.js +0 -211
  349. package/dist/index-DtGYsHSv.js +0 -94
  350. package/dist/jsx-runtime-tc70JA_2.js +0 -264
  351. package/dist/mergeSlotProps-CuzBQdlp.js +0 -62
  352. package/dist/objectWithoutPropertiesLoose-DiWPeE4c.js +0 -22
  353. package/dist/outlinedInputClasses-DnwW3ujt.js +0 -19
  354. package/dist/resolveProps-BDH0VJjn.js +0 -39
  355. package/dist/styled-8Y5KoVix.js +0 -203
  356. package/dist/svgIconClasses-C6auqaBA.js +0 -10
  357. package/dist/tabClasses-DFvXsFrN.js +0 -10
  358. package/dist/typographyClasses-jmoWZuXc.js +0 -10
  359. package/dist/useControlled-D1L5tREc.js +0 -31
  360. package/dist/useEnhancedEffect-CJGo-L3B.js +0 -5
  361. package/dist/useFormControl-CatNKXAi.js +0 -10
  362. package/dist/useMobilePicker-B-bNHHXB.js +0 -13498
  363. package/dist/useTheme-CWPkv7g3.js +0 -18
  364. package/dist/useThemeProps-XYgXGzjS.js +0 -27
  365. package/dist/utils-D1UMIV0b.js +0 -40
  366. package/dist/warning-Ba-7BBAN.js +0 -135
@@ -1,1099 +0,0 @@
1
- import { c as M } from "./clsx-OuTLNxxd.js";
2
- import * as f from "react";
3
- import X, { isValidElement as q, cloneElement as G, Children as Ve } from "react";
4
- import { P as o } from "./createTheme-DgoJyWM-.js";
5
- import { j as B } from "./jsx-runtime-tc70JA_2.js";
6
- import { g as ke } from "./generateUtilityClasses-E9gROIFd.js";
7
- import { u as de, c as Ie } from "./DefaultPropsProvider-DPuuPIbS.js";
8
- import { s as oe } from "./styled-8Y5KoVix.js";
9
- import { a as Fe, _ as Le } from "./objectWithoutPropertiesLoose-DiWPeE4c.js";
10
- import { keyframes as re } from "@emotion/react";
11
- import { g as Be, b as $e } from "./buttonBaseClasses-jtnoTmPn.js";
12
- import { u as _e } from "./useEnhancedEffect-CJGo-L3B.js";
13
- function Z(e) {
14
- const t = f.useRef(e);
15
- return _e(() => {
16
- t.current = e;
17
- }), f.useRef((...n) => (
18
- // @ts-expect-error hide `this`
19
- (0, t.current)(...n)
20
- )).current;
21
- }
22
- function ee(...e) {
23
- const t = f.useRef(void 0), n = f.useCallback((r) => {
24
- const s = e.map((i) => {
25
- if (i == null)
26
- return null;
27
- if (typeof i == "function") {
28
- const u = i, l = u(r);
29
- return typeof l == "function" ? l : () => {
30
- u(null);
31
- };
32
- }
33
- return i.current = r, () => {
34
- i.current = null;
35
- };
36
- });
37
- return () => {
38
- s.forEach((i) => i?.());
39
- };
40
- }, e);
41
- return f.useMemo(() => e.every((r) => r == null) ? null : (r) => {
42
- t.current && (t.current(), t.current = void 0), r != null && (t.current = n(r));
43
- }, e);
44
- }
45
- function Ae(e, t) {
46
- return process.env.NODE_ENV === "production" ? () => null : function(...r) {
47
- return e(...r) || t(...r);
48
- };
49
- }
50
- function te(e, t) {
51
- return te = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(n, r) {
52
- return n.__proto__ = r, n;
53
- }, te(e, t);
54
- }
55
- function Ue(e, t) {
56
- e.prototype = Object.create(t.prototype), e.prototype.constructor = e, te(e, t);
57
- }
58
- const le = X.createContext(null);
59
- function ze(e) {
60
- if (e === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
61
- return e;
62
- }
63
- function se(e, t) {
64
- var n = function(i) {
65
- return t && q(i) ? t(i) : i;
66
- }, r = /* @__PURE__ */ Object.create(null);
67
- return e && Ve.map(e, function(s) {
68
- return s;
69
- }).forEach(function(s) {
70
- r[s.key] = n(s);
71
- }), r;
72
- }
73
- function He(e, t) {
74
- e = e || {}, t = t || {};
75
- function n(d) {
76
- return d in t ? t[d] : e[d];
77
- }
78
- var r = /* @__PURE__ */ Object.create(null), s = [];
79
- for (var i in e)
80
- i in t ? s.length && (r[i] = s, s = []) : s.push(i);
81
- var u, l = {};
82
- for (var c in t) {
83
- if (r[c])
84
- for (u = 0; u < r[c].length; u++) {
85
- var p = r[c][u];
86
- l[r[c][u]] = n(p);
87
- }
88
- l[c] = n(c);
89
- }
90
- for (u = 0; u < s.length; u++)
91
- l[s[u]] = n(s[u]);
92
- return l;
93
- }
94
- function L(e, t, n) {
95
- return n[t] != null ? n[t] : e.props[t];
96
- }
97
- function Ye(e, t) {
98
- return se(e.children, function(n) {
99
- return G(n, {
100
- onExited: t.bind(null, n),
101
- in: !0,
102
- appear: L(n, "appear", e),
103
- enter: L(n, "enter", e),
104
- exit: L(n, "exit", e)
105
- });
106
- });
107
- }
108
- function Xe(e, t, n) {
109
- var r = se(e.children), s = He(t, r);
110
- return Object.keys(s).forEach(function(i) {
111
- var u = s[i];
112
- if (q(u)) {
113
- var l = i in t, c = i in r, p = t[i], d = q(p) && !p.props.in;
114
- c && (!l || d) ? s[i] = G(u, {
115
- onExited: n.bind(null, u),
116
- in: !0,
117
- exit: L(u, "exit", e),
118
- enter: L(u, "enter", e)
119
- }) : !c && l && !d ? s[i] = G(u, {
120
- in: !1
121
- }) : c && l && q(p) && (s[i] = G(u, {
122
- onExited: n.bind(null, u),
123
- in: p.props.in,
124
- exit: L(u, "exit", e),
125
- enter: L(u, "enter", e)
126
- }));
127
- }
128
- }), s;
129
- }
130
- var Ke = Object.values || function(e) {
131
- return Object.keys(e).map(function(t) {
132
- return e[t];
133
- });
134
- }, We = {
135
- component: "div",
136
- childFactory: function(t) {
137
- return t;
138
- }
139
- }, ie = /* @__PURE__ */ (function(e) {
140
- Ue(t, e);
141
- function t(r, s) {
142
- var i;
143
- i = e.call(this, r, s) || this;
144
- var u = i.handleExited.bind(ze(i));
145
- return i.state = {
146
- contextValue: {
147
- isMounting: !0
148
- },
149
- handleExited: u,
150
- firstRender: !0
151
- }, i;
152
- }
153
- var n = t.prototype;
154
- return n.componentDidMount = function() {
155
- this.mounted = !0, this.setState({
156
- contextValue: {
157
- isMounting: !1
158
- }
159
- });
160
- }, n.componentWillUnmount = function() {
161
- this.mounted = !1;
162
- }, t.getDerivedStateFromProps = function(s, i) {
163
- var u = i.children, l = i.handleExited, c = i.firstRender;
164
- return {
165
- children: c ? Ye(s, l) : Xe(s, u, l),
166
- firstRender: !1
167
- };
168
- }, n.handleExited = function(s, i) {
169
- var u = se(this.props.children);
170
- s.key in u || (s.props.onExited && s.props.onExited(i), this.mounted && this.setState(function(l) {
171
- var c = Fe({}, l.children);
172
- return delete c[s.key], {
173
- children: c
174
- };
175
- }));
176
- }, n.render = function() {
177
- var s = this.props, i = s.component, u = s.childFactory, l = Le(s, ["component", "childFactory"]), c = this.state.contextValue, p = Ke(this.state.children).map(u);
178
- return delete l.appear, delete l.enter, delete l.exit, i === null ? /* @__PURE__ */ X.createElement(le.Provider, {
179
- value: c
180
- }, p) : /* @__PURE__ */ X.createElement(le.Provider, {
181
- value: c
182
- }, /* @__PURE__ */ X.createElement(i, l, p));
183
- }, t;
184
- })(X.Component);
185
- ie.propTypes = process.env.NODE_ENV !== "production" ? {
186
- /**
187
- * `<TransitionGroup>` renders a `<div>` by default. You can change this
188
- * behavior by providing a `component` prop.
189
- * If you use React v16+ and would like to avoid a wrapping `<div>` element
190
- * you can pass in `component={null}`. This is useful if the wrapping div
191
- * borks your css styles.
192
- */
193
- component: o.any,
194
- /**
195
- * A set of `<Transition>` components, that are toggled `in` and out as they
196
- * leave. the `<TransitionGroup>` will inject specific transition props, so
197
- * remember to spread them through if you are wrapping the `<Transition>` as
198
- * with our `<Fade>` example.
199
- *
200
- * While this component is meant for multiple `Transition` or `CSSTransition`
201
- * children, sometimes you may want to have a single transition child with
202
- * content that you want to be transitioned out and in when you change it
203
- * (e.g. routes, images etc.) In that case you can change the `key` prop of
204
- * the transition child as you change its content, this will cause
205
- * `TransitionGroup` to transition the child out and back in.
206
- */
207
- children: o.node,
208
- /**
209
- * A convenience prop that enables or disables appear animations
210
- * for all children. Note that specifying this will override any defaults set
211
- * on individual children Transitions.
212
- */
213
- appear: o.bool,
214
- /**
215
- * A convenience prop that enables or disables enter animations
216
- * for all children. Note that specifying this will override any defaults set
217
- * on individual children Transitions.
218
- */
219
- enter: o.bool,
220
- /**
221
- * A convenience prop that enables or disables exit animations
222
- * for all children. Note that specifying this will override any defaults set
223
- * on individual children Transitions.
224
- */
225
- exit: o.bool,
226
- /**
227
- * You may need to apply reactive updates to a child as it is exiting.
228
- * This is generally done by using `cloneElement` however in the case of an exiting
229
- * child the element has already been removed and not accessible to the consumer.
230
- *
231
- * If you do need to update a child as it leaves you can provide a `childFactory`
232
- * to wrap every child, even the ones that are leaving.
233
- *
234
- * @type Function(child: ReactElement) -> ReactElement
235
- */
236
- childFactory: o.func
237
- } : {};
238
- ie.defaultProps = We;
239
- const ce = {};
240
- function he(e, t) {
241
- const n = f.useRef(ce);
242
- return n.current === ce && (n.current = e(t)), n;
243
- }
244
- const qe = [];
245
- function Ge(e) {
246
- f.useEffect(e, qe);
247
- }
248
- class ue {
249
- static create() {
250
- return new ue();
251
- }
252
- currentId = null;
253
- /**
254
- * Executes `fn` after `delay`, clearing any previously scheduled call.
255
- */
256
- start(t, n) {
257
- this.clear(), this.currentId = setTimeout(() => {
258
- this.currentId = null, n();
259
- }, t);
260
- }
261
- clear = () => {
262
- this.currentId !== null && (clearTimeout(this.currentId), this.currentId = null);
263
- };
264
- disposeEffect = () => this.clear;
265
- }
266
- function Ze() {
267
- const e = he(ue.create).current;
268
- return Ge(e.disposeEffect), e;
269
- }
270
- function Je(e) {
271
- const {
272
- prototype: t = {}
273
- } = e;
274
- return !!t.isReactComponent;
275
- }
276
- function Qe(e, t, n, r, s) {
277
- const i = e[t], u = s || t;
278
- if (i == null || // When server-side rendering React doesn't warn either.
279
- // This is not an accurate check for SSR.
280
- // This is only in place for emotion compat.
281
- // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
282
- typeof window > "u")
283
- return null;
284
- let l;
285
- return typeof i == "function" && !Je(i) && (l = "Did you accidentally provide a plain function component instead?"), i === f.Fragment && (l = "Did you accidentally provide a React.Fragment instead?"), l !== void 0 ? new Error(`Invalid ${r} \`${u}\` supplied to \`${n}\`. Expected an element type that can hold a ref. ${l} For more information see https://mui.com/r/caveat-with-refs-guide`) : null;
286
- }
287
- const et = Ae(o.elementType, Qe);
288
- function tt(e) {
289
- return typeof e == "string";
290
- }
291
- function nt(e, t, n) {
292
- return e === void 0 || tt(e) ? t : {
293
- ...t,
294
- ownerState: {
295
- ...t.ownerState,
296
- ...n
297
- }
298
- };
299
- }
300
- function ot(e, t, n) {
301
- return typeof e == "function" ? e(t, n) : e;
302
- }
303
- function rt(e, t = []) {
304
- if (e === void 0)
305
- return {};
306
- const n = {};
307
- return Object.keys(e).filter((r) => r.match(/^on[A-Z]/) && typeof e[r] == "function" && !t.includes(r)).forEach((r) => {
308
- n[r] = e[r];
309
- }), n;
310
- }
311
- function pe(e) {
312
- if (e === void 0)
313
- return {};
314
- const t = {};
315
- return Object.keys(e).filter((n) => !(n.match(/^on[A-Z]/) && typeof e[n] == "function")).forEach((n) => {
316
- t[n] = e[n];
317
- }), t;
318
- }
319
- function st(e) {
320
- const {
321
- getSlotProps: t,
322
- additionalProps: n,
323
- externalSlotProps: r,
324
- externalForwardedProps: s,
325
- className: i
326
- } = e;
327
- if (!t) {
328
- const R = M(n?.className, i, s?.className, r?.className), b = {
329
- ...n?.style,
330
- ...s?.style,
331
- ...r?.style
332
- }, E = {
333
- ...n,
334
- ...s,
335
- ...r
336
- };
337
- return R.length > 0 && (E.className = R), Object.keys(b).length > 0 && (E.style = b), {
338
- props: E,
339
- internalRef: void 0
340
- };
341
- }
342
- const u = rt({
343
- ...s,
344
- ...r
345
- }), l = pe(r), c = pe(s), p = t(u), d = M(p?.className, n?.className, i, s?.className, r?.className), h = {
346
- ...p?.style,
347
- ...n?.style,
348
- ...s?.style,
349
- ...r?.style
350
- }, y = {
351
- ...p,
352
- ...n,
353
- ...c,
354
- ...l
355
- };
356
- return d.length > 0 && (y.className = d), Object.keys(h).length > 0 && (y.style = h), {
357
- props: y,
358
- internalRef: p.ref
359
- };
360
- }
361
- function St(e, t) {
362
- const {
363
- className: n,
364
- elementType: r,
365
- ownerState: s,
366
- externalForwardedProps: i,
367
- internalForwardedProps: u,
368
- shouldForwardComponentProp: l = !1,
369
- ...c
370
- } = t, {
371
- component: p,
372
- slots: d = {
373
- [e]: void 0
374
- },
375
- slotProps: h = {
376
- [e]: void 0
377
- },
378
- ...y
379
- } = i, R = d[e] || r, b = ot(h[e], s), {
380
- props: {
381
- component: E,
382
- ...C
383
- },
384
- internalRef: O
385
- } = st({
386
- className: n,
387
- ...c,
388
- externalForwardedProps: e === "root" ? y : void 0,
389
- externalSlotProps: b
390
- }), $ = ee(O, b?.ref, t.ref), v = e === "root" ? E || p : E, m = nt(R, {
391
- ...e === "root" && !p && !d[e] && u,
392
- ...e !== "root" && !d[e] && u,
393
- ...C,
394
- ...v && !l && {
395
- as: v
396
- },
397
- ...v && l && {
398
- component: v
399
- },
400
- ref: $
401
- }, s);
402
- return [R, m];
403
- }
404
- const it = o.oneOfType([o.func, o.object]);
405
- function fe(e) {
406
- try {
407
- return e.matches(":focus-visible");
408
- } catch {
409
- process.env.NODE_ENV !== "production" && !window.navigator.userAgent.includes("jsdom") && console.warn(["MUI: The `:focus-visible` pseudo class is not supported in this browser.", "Some components rely on this feature to work properly."].join(`
410
- `));
411
- }
412
- return !1;
413
- }
414
- class J {
415
- /** React ref to the ripple instance */
416
- /** If the ripple component should be mounted */
417
- /** Promise that resolves when the ripple component is mounted */
418
- /** If the ripple component has been mounted */
419
- /** React state hook setter */
420
- static create() {
421
- return new J();
422
- }
423
- static use() {
424
- const t = he(J.create).current, [n, r] = f.useState(!1);
425
- return t.shouldMount = n, t.setShouldMount = r, f.useEffect(t.mountEffect, [n]), t;
426
- }
427
- constructor() {
428
- this.ref = {
429
- current: null
430
- }, this.mounted = null, this.didMount = !1, this.shouldMount = !1, this.setShouldMount = null;
431
- }
432
- mount() {
433
- return this.mounted || (this.mounted = at(), this.shouldMount = !0, this.setShouldMount(this.shouldMount)), this.mounted;
434
- }
435
- mountEffect = () => {
436
- this.shouldMount && !this.didMount && this.ref.current !== null && (this.didMount = !0, this.mounted.resolve());
437
- };
438
- /* Ripple API */
439
- start(...t) {
440
- this.mount().then(() => this.ref.current?.start(...t));
441
- }
442
- stop(...t) {
443
- this.mount().then(() => this.ref.current?.stop(...t));
444
- }
445
- pulsate(...t) {
446
- this.mount().then(() => this.ref.current?.pulsate(...t));
447
- }
448
- }
449
- function ut() {
450
- return J.use();
451
- }
452
- function at() {
453
- let e, t;
454
- const n = new Promise((r, s) => {
455
- e = r, t = s;
456
- });
457
- return n.resolve = e, n.reject = t, n;
458
- }
459
- function me(e) {
460
- const {
461
- className: t,
462
- classes: n,
463
- pulsate: r = !1,
464
- rippleX: s,
465
- rippleY: i,
466
- rippleSize: u,
467
- in: l,
468
- onExited: c,
469
- timeout: p
470
- } = e, [d, h] = f.useState(!1), y = M(t, n.ripple, n.rippleVisible, r && n.ripplePulsate), R = {
471
- width: u,
472
- height: u,
473
- top: -(u / 2) + i,
474
- left: -(u / 2) + s
475
- }, b = M(n.child, d && n.childLeaving, r && n.childPulsate);
476
- return !l && !d && h(!0), f.useEffect(() => {
477
- if (!l && c != null) {
478
- const E = setTimeout(c, p);
479
- return () => {
480
- clearTimeout(E);
481
- };
482
- }
483
- }, [c, l, p]), /* @__PURE__ */ B.jsx("span", {
484
- className: y,
485
- style: R,
486
- children: /* @__PURE__ */ B.jsx("span", {
487
- className: b
488
- })
489
- });
490
- }
491
- process.env.NODE_ENV !== "production" && (me.propTypes = {
492
- /**
493
- * Override or extend the styles applied to the component.
494
- */
495
- classes: o.object.isRequired,
496
- className: o.string,
497
- /**
498
- * @ignore - injected from TransitionGroup
499
- */
500
- in: o.bool,
501
- /**
502
- * @ignore - injected from TransitionGroup
503
- */
504
- onExited: o.func,
505
- /**
506
- * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.
507
- */
508
- pulsate: o.bool,
509
- /**
510
- * Diameter of the ripple.
511
- */
512
- rippleSize: o.number,
513
- /**
514
- * Horizontal position of the ripple center.
515
- */
516
- rippleX: o.number,
517
- /**
518
- * Vertical position of the ripple center.
519
- */
520
- rippleY: o.number,
521
- /**
522
- * exit delay
523
- */
524
- timeout: o.number.isRequired
525
- });
526
- const T = ke("MuiTouchRipple", ["root", "ripple", "rippleVisible", "ripplePulsate", "child", "childLeaving", "childPulsate"]), ne = 550, lt = 80, ct = re`
527
- 0% {
528
- transform: scale(0);
529
- opacity: 0.1;
530
- }
531
-
532
- 100% {
533
- transform: scale(1);
534
- opacity: 0.3;
535
- }
536
- `, pt = re`
537
- 0% {
538
- opacity: 1;
539
- }
540
-
541
- 100% {
542
- opacity: 0;
543
- }
544
- `, ft = re`
545
- 0% {
546
- transform: scale(1);
547
- }
548
-
549
- 50% {
550
- transform: scale(0.92);
551
- }
552
-
553
- 100% {
554
- transform: scale(1);
555
- }
556
- `, dt = oe("span", {
557
- name: "MuiTouchRipple",
558
- slot: "Root"
559
- })({
560
- overflow: "hidden",
561
- pointerEvents: "none",
562
- position: "absolute",
563
- zIndex: 0,
564
- top: 0,
565
- right: 0,
566
- bottom: 0,
567
- left: 0,
568
- borderRadius: "inherit"
569
- }), ht = oe(me, {
570
- name: "MuiTouchRipple",
571
- slot: "Ripple"
572
- })`
573
- opacity: 0;
574
- position: absolute;
575
-
576
- &.${T.rippleVisible} {
577
- opacity: 0.3;
578
- transform: scale(1);
579
- animation-name: ${ct};
580
- animation-duration: ${ne}ms;
581
- animation-timing-function: ${({
582
- theme: e
583
- }) => e.transitions.easing.easeInOut};
584
- }
585
-
586
- &.${T.ripplePulsate} {
587
- animation-duration: ${({
588
- theme: e
589
- }) => e.transitions.duration.shorter}ms;
590
- }
591
-
592
- & .${T.child} {
593
- opacity: 1;
594
- display: block;
595
- width: 100%;
596
- height: 100%;
597
- border-radius: 50%;
598
- background-color: currentColor;
599
- }
600
-
601
- & .${T.childLeaving} {
602
- opacity: 0;
603
- animation-name: ${pt};
604
- animation-duration: ${ne}ms;
605
- animation-timing-function: ${({
606
- theme: e
607
- }) => e.transitions.easing.easeInOut};
608
- }
609
-
610
- & .${T.childPulsate} {
611
- position: absolute;
612
- /* @noflip */
613
- left: 0px;
614
- top: 0;
615
- animation-name: ${ft};
616
- animation-duration: 2500ms;
617
- animation-timing-function: ${({
618
- theme: e
619
- }) => e.transitions.easing.easeInOut};
620
- animation-iteration-count: infinite;
621
- animation-delay: 200ms;
622
- }
623
- `, be = /* @__PURE__ */ f.forwardRef(function(t, n) {
624
- const r = de({
625
- props: t,
626
- name: "MuiTouchRipple"
627
- }), {
628
- center: s = !1,
629
- classes: i = {},
630
- className: u,
631
- ...l
632
- } = r, [c, p] = f.useState([]), d = f.useRef(0), h = f.useRef(null);
633
- f.useEffect(() => {
634
- h.current && (h.current(), h.current = null);
635
- }, [c]);
636
- const y = f.useRef(!1), R = Ze(), b = f.useRef(null), E = f.useRef(null), C = f.useCallback((m) => {
637
- const {
638
- pulsate: P,
639
- rippleX: x,
640
- rippleY: _,
641
- rippleSize: k,
642
- cb: U
643
- } = m;
644
- p((N) => [...N, /* @__PURE__ */ B.jsx(ht, {
645
- classes: {
646
- ripple: M(i.ripple, T.ripple),
647
- rippleVisible: M(i.rippleVisible, T.rippleVisible),
648
- ripplePulsate: M(i.ripplePulsate, T.ripplePulsate),
649
- child: M(i.child, T.child),
650
- childLeaving: M(i.childLeaving, T.childLeaving),
651
- childPulsate: M(i.childPulsate, T.childPulsate)
652
- },
653
- timeout: ne,
654
- pulsate: P,
655
- rippleX: x,
656
- rippleY: _,
657
- rippleSize: k
658
- }, d.current)]), d.current += 1, h.current = U;
659
- }, [i]), O = f.useCallback((m = {}, P = {}, x = () => {
660
- }) => {
661
- const {
662
- pulsate: _ = !1,
663
- center: k = s || P.pulsate,
664
- fakeElement: U = !1
665
- // For test purposes
666
- } = P;
667
- if (m?.type === "mousedown" && y.current) {
668
- y.current = !1;
669
- return;
670
- }
671
- m?.type === "touchstart" && (y.current = !0);
672
- const N = U ? null : E.current, D = N ? N.getBoundingClientRect() : {
673
- width: 0,
674
- height: 0,
675
- left: 0,
676
- top: 0
677
- };
678
- let j, w, V;
679
- if (k || m === void 0 || m.clientX === 0 && m.clientY === 0 || !m.clientX && !m.touches)
680
- j = Math.round(D.width / 2), w = Math.round(D.height / 2);
681
- else {
682
- const {
683
- clientX: z,
684
- clientY: I
685
- } = m.touches && m.touches.length > 0 ? m.touches[0] : m;
686
- j = Math.round(z - D.left), w = Math.round(I - D.top);
687
- }
688
- if (k)
689
- V = Math.sqrt((2 * D.width ** 2 + D.height ** 2) / 3), V % 2 === 0 && (V += 1);
690
- else {
691
- const z = Math.max(Math.abs((N ? N.clientWidth : 0) - j), j) * 2 + 2, I = Math.max(Math.abs((N ? N.clientHeight : 0) - w), w) * 2 + 2;
692
- V = Math.sqrt(z ** 2 + I ** 2);
693
- }
694
- m?.touches ? b.current === null && (b.current = () => {
695
- C({
696
- pulsate: _,
697
- rippleX: j,
698
- rippleY: w,
699
- rippleSize: V,
700
- cb: x
701
- });
702
- }, R.start(lt, () => {
703
- b.current && (b.current(), b.current = null);
704
- })) : C({
705
- pulsate: _,
706
- rippleX: j,
707
- rippleY: w,
708
- rippleSize: V,
709
- cb: x
710
- });
711
- }, [s, C, R]), $ = f.useCallback(() => {
712
- O({}, {
713
- pulsate: !0
714
- });
715
- }, [O]), v = f.useCallback((m, P) => {
716
- if (R.clear(), m?.type === "touchend" && b.current) {
717
- b.current(), b.current = null, R.start(0, () => {
718
- v(m, P);
719
- });
720
- return;
721
- }
722
- b.current = null, p((x) => x.length > 0 ? x.slice(1) : x), h.current = P;
723
- }, [R]);
724
- return f.useImperativeHandle(n, () => ({
725
- pulsate: $,
726
- start: O,
727
- stop: v
728
- }), [$, O, v]), /* @__PURE__ */ B.jsx(dt, {
729
- className: M(T.root, i.root, u),
730
- ref: E,
731
- ...l,
732
- children: /* @__PURE__ */ B.jsx(ie, {
733
- component: null,
734
- exit: !0,
735
- children: c
736
- })
737
- });
738
- });
739
- process.env.NODE_ENV !== "production" && (be.propTypes = {
740
- /**
741
- * If `true`, the ripple starts at the center of the component
742
- * rather than at the point of interaction.
743
- */
744
- center: o.bool,
745
- /**
746
- * Override or extend the styles applied to the component.
747
- */
748
- classes: o.object,
749
- /**
750
- * @ignore
751
- */
752
- className: o.string
753
- });
754
- const mt = (e) => {
755
- const {
756
- disabled: t,
757
- focusVisible: n,
758
- focusVisibleClassName: r,
759
- classes: s
760
- } = e, u = Ie({
761
- root: ["root", t && "disabled", n && "focusVisible"]
762
- }, Be, s);
763
- return n && r && (u.root += ` ${r}`), u;
764
- }, bt = oe("button", {
765
- name: "MuiButtonBase",
766
- slot: "Root"
767
- })({
768
- display: "inline-flex",
769
- alignItems: "center",
770
- justifyContent: "center",
771
- position: "relative",
772
- boxSizing: "border-box",
773
- WebkitTapHighlightColor: "transparent",
774
- backgroundColor: "transparent",
775
- // Reset default value
776
- // We disable the focus ring for mouse, touch and keyboard users.
777
- outline: 0,
778
- border: 0,
779
- margin: 0,
780
- // Remove the margin in Safari
781
- borderRadius: 0,
782
- padding: 0,
783
- // Remove the padding in Firefox
784
- cursor: "pointer",
785
- userSelect: "none",
786
- verticalAlign: "middle",
787
- MozAppearance: "none",
788
- // Reset
789
- WebkitAppearance: "none",
790
- // Reset
791
- textDecoration: "none",
792
- // So we take precedent over the style of a native <a /> element.
793
- color: "inherit",
794
- "&::-moz-focus-inner": {
795
- borderStyle: "none"
796
- // Remove Firefox dotted outline.
797
- },
798
- [`&.${$e.disabled}`]: {
799
- pointerEvents: "none",
800
- // Disable link interactions
801
- cursor: "default"
802
- },
803
- "@media print": {
804
- colorAdjust: "exact"
805
- }
806
- }), yt = /* @__PURE__ */ f.forwardRef(function(t, n) {
807
- const r = de({
808
- props: t,
809
- name: "MuiButtonBase"
810
- }), {
811
- action: s,
812
- centerRipple: i = !1,
813
- children: u,
814
- className: l,
815
- component: c = "button",
816
- disabled: p = !1,
817
- disableRipple: d = !1,
818
- disableTouchRipple: h = !1,
819
- focusRipple: y = !1,
820
- focusVisibleClassName: R,
821
- LinkComponent: b = "a",
822
- onBlur: E,
823
- onClick: C,
824
- onContextMenu: O,
825
- onDragLeave: $,
826
- onFocus: v,
827
- onFocusVisible: m,
828
- onKeyDown: P,
829
- onKeyUp: x,
830
- onMouseDown: _,
831
- onMouseLeave: k,
832
- onMouseUp: U,
833
- onTouchEnd: N,
834
- onTouchMove: D,
835
- onTouchStart: j,
836
- tabIndex: w = 0,
837
- TouchRippleProps: V,
838
- touchRippleRef: z,
839
- type: I,
840
- ...A
841
- } = r, H = f.useRef(null), g = ut(), ye = ee(g.ref, z), [F, K] = f.useState(!1);
842
- p && F && K(!1), f.useImperativeHandle(s, () => ({
843
- focusVisible: () => {
844
- K(!0), H.current.focus();
845
- }
846
- }), []);
847
- const ge = g.shouldMount && !d && !p;
848
- f.useEffect(() => {
849
- F && y && !d && g.pulsate();
850
- }, [d, y, F, g]);
851
- const Re = S(g, "start", _, h), Ee = S(g, "stop", O, h), Me = S(g, "stop", $, h), Te = S(g, "stop", U, h), Ce = S(g, "stop", (a) => {
852
- F && a.preventDefault(), k && k(a);
853
- }, h), ve = S(g, "start", j, h), xe = S(g, "stop", N, h), Pe = S(g, "stop", D, h), Ne = S(g, "stop", (a) => {
854
- fe(a.target) || K(!1), E && E(a);
855
- }, !1), we = Z((a) => {
856
- H.current || (H.current = a.currentTarget), fe(a.target) && (K(!0), m && m(a)), v && v(a);
857
- }), Q = () => {
858
- const a = H.current;
859
- return c && c !== "button" && !(a.tagName === "A" && a.href);
860
- }, Se = Z((a) => {
861
- y && !a.repeat && F && a.key === " " && g.stop(a, () => {
862
- g.start(a);
863
- }), a.target === a.currentTarget && Q() && a.key === " " && a.preventDefault(), P && P(a), a.target === a.currentTarget && Q() && a.key === "Enter" && !p && (a.preventDefault(), C && C(a));
864
- }), Oe = Z((a) => {
865
- y && a.key === " " && F && !a.defaultPrevented && g.stop(a, () => {
866
- g.pulsate(a);
867
- }), x && x(a), C && a.target === a.currentTarget && Q() && a.key === " " && !a.defaultPrevented && C(a);
868
- });
869
- let W = c;
870
- W === "button" && (A.href || A.to) && (W = b);
871
- const Y = {};
872
- if (W === "button") {
873
- const a = !!A.formAction;
874
- Y.type = I === void 0 && !a ? "button" : I, Y.disabled = p;
875
- } else
876
- !A.href && !A.to && (Y.role = "button"), p && (Y["aria-disabled"] = p);
877
- const De = ee(n, H), ae = {
878
- ...r,
879
- centerRipple: i,
880
- component: c,
881
- disabled: p,
882
- disableRipple: d,
883
- disableTouchRipple: h,
884
- focusRipple: y,
885
- tabIndex: w,
886
- focusVisible: F
887
- }, je = mt(ae);
888
- return /* @__PURE__ */ B.jsxs(bt, {
889
- as: W,
890
- className: M(je.root, l),
891
- ownerState: ae,
892
- onBlur: Ne,
893
- onClick: C,
894
- onContextMenu: Ee,
895
- onFocus: we,
896
- onKeyDown: Se,
897
- onKeyUp: Oe,
898
- onMouseDown: Re,
899
- onMouseLeave: Ce,
900
- onMouseUp: Te,
901
- onDragLeave: Me,
902
- onTouchEnd: xe,
903
- onTouchMove: Pe,
904
- onTouchStart: ve,
905
- ref: De,
906
- tabIndex: p ? -1 : w,
907
- type: I,
908
- ...Y,
909
- ...A,
910
- children: [u, ge ? /* @__PURE__ */ B.jsx(be, {
911
- ref: ye,
912
- center: i,
913
- ...V
914
- }) : null]
915
- });
916
- });
917
- function S(e, t, n, r = !1) {
918
- return Z((s) => (n && n(s), r || e[t](s), !0));
919
- }
920
- process.env.NODE_ENV !== "production" && (yt.propTypes = {
921
- // ┌────────────────────────────── Warning ──────────────────────────────┐
922
- // │ These PropTypes are generated from the TypeScript type definitions. │
923
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
924
- // └─────────────────────────────────────────────────────────────────────┘
925
- /**
926
- * A ref for imperative actions.
927
- * It currently only supports `focusVisible()` action.
928
- */
929
- action: it,
930
- /**
931
- * If `true`, the ripples are centered.
932
- * They won't start at the cursor interaction position.
933
- * @default false
934
- */
935
- centerRipple: o.bool,
936
- /**
937
- * The content of the component.
938
- */
939
- children: o.node,
940
- /**
941
- * Override or extend the styles applied to the component.
942
- */
943
- classes: o.object,
944
- /**
945
- * @ignore
946
- */
947
- className: o.string,
948
- /**
949
- * The component used for the root node.
950
- * Either a string to use a HTML element or a component.
951
- */
952
- component: et,
953
- /**
954
- * If `true`, the component is disabled.
955
- * @default false
956
- */
957
- disabled: o.bool,
958
- /**
959
- * If `true`, the ripple effect is disabled.
960
- *
961
- * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
962
- * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
963
- * @default false
964
- */
965
- disableRipple: o.bool,
966
- /**
967
- * If `true`, the touch ripple effect is disabled.
968
- * @default false
969
- */
970
- disableTouchRipple: o.bool,
971
- /**
972
- * If `true`, the base button will have a keyboard focus ripple.
973
- * @default false
974
- */
975
- focusRipple: o.bool,
976
- /**
977
- * This prop can help identify which element has keyboard focus.
978
- * The class name will be applied when the element gains the focus through keyboard interaction.
979
- * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
980
- * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/HEAD/explainer.md).
981
- * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components
982
- * if needed.
983
- */
984
- focusVisibleClassName: o.string,
985
- /**
986
- * @ignore
987
- */
988
- formAction: o.oneOfType([o.func, o.string]),
989
- /**
990
- * @ignore
991
- */
992
- href: o.any,
993
- /**
994
- * The component used to render a link when the `href` prop is provided.
995
- * @default 'a'
996
- */
997
- LinkComponent: o.elementType,
998
- /**
999
- * @ignore
1000
- */
1001
- onBlur: o.func,
1002
- /**
1003
- * @ignore
1004
- */
1005
- onClick: o.func,
1006
- /**
1007
- * @ignore
1008
- */
1009
- onContextMenu: o.func,
1010
- /**
1011
- * @ignore
1012
- */
1013
- onDragLeave: o.func,
1014
- /**
1015
- * @ignore
1016
- */
1017
- onFocus: o.func,
1018
- /**
1019
- * Callback fired when the component is focused with a keyboard.
1020
- * We trigger a `onFocus` callback too.
1021
- */
1022
- onFocusVisible: o.func,
1023
- /**
1024
- * @ignore
1025
- */
1026
- onKeyDown: o.func,
1027
- /**
1028
- * @ignore
1029
- */
1030
- onKeyUp: o.func,
1031
- /**
1032
- * @ignore
1033
- */
1034
- onMouseDown: o.func,
1035
- /**
1036
- * @ignore
1037
- */
1038
- onMouseLeave: o.func,
1039
- /**
1040
- * @ignore
1041
- */
1042
- onMouseUp: o.func,
1043
- /**
1044
- * @ignore
1045
- */
1046
- onTouchEnd: o.func,
1047
- /**
1048
- * @ignore
1049
- */
1050
- onTouchMove: o.func,
1051
- /**
1052
- * @ignore
1053
- */
1054
- onTouchStart: o.func,
1055
- /**
1056
- * The system prop that allows defining system overrides as well as additional CSS styles.
1057
- */
1058
- sx: o.oneOfType([o.arrayOf(o.oneOfType([o.func, o.object, o.bool])), o.func, o.object]),
1059
- /**
1060
- * @default 0
1061
- */
1062
- tabIndex: o.number,
1063
- /**
1064
- * Props applied to the `TouchRipple` element.
1065
- */
1066
- TouchRippleProps: o.object,
1067
- /**
1068
- * A ref that points to the `TouchRipple` element.
1069
- */
1070
- touchRippleRef: o.oneOfType([o.func, o.shape({
1071
- current: o.shape({
1072
- pulsate: o.func.isRequired,
1073
- start: o.func.isRequired,
1074
- stop: o.func.isRequired
1075
- })
1076
- })]),
1077
- /**
1078
- * @ignore
1079
- */
1080
- type: o.oneOfType([o.oneOf(["button", "reset", "submit"]), o.string])
1081
- });
1082
- export {
1083
- yt as B,
1084
- le as T,
1085
- Ue as _,
1086
- Ze as a,
1087
- St as b,
1088
- Ae as c,
1089
- Z as d,
1090
- et as e,
1091
- ot as f,
1092
- nt as g,
1093
- rt as h,
1094
- tt as i,
1095
- ie as j,
1096
- st as m,
1097
- it as r,
1098
- ee as u
1099
- };