@solostylist/ui-kit 1.0.203 → 1.0.205

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/dist/ArrowUpward-CDLbIMHR.js +6 -0
  2. package/dist/Box-CCxGQYgC.js +46 -0
  3. package/dist/ButtonBase-BpUvp8ep.js +801 -0
  4. package/dist/ChevronLeft-C7DUyLoc.js +6 -0
  5. package/dist/ChevronRight-VFk57Tte.js +6 -0
  6. package/dist/Close-OtVsJy75.js +6 -0
  7. package/dist/ContentCopy-DHDP4d6g.js +6 -0
  8. package/dist/DefaultPropsProvider-DpRXvTbj.js +157 -0
  9. package/dist/Download-Bbx6BZUJ.js +6 -0
  10. package/dist/ExpandMore-BTC1yHzp.js +6 -0
  11. package/dist/Favorite-mcH9KX-m.js +6 -0
  12. package/dist/Menu-Dhh4e9H1.js +1662 -0
  13. package/dist/MenuItem-aaIy8lan.js +213 -0
  14. package/dist/Paper--8Q3qCqb.js +329 -0
  15. package/dist/Select-B5RvkbDO.js +2545 -0
  16. package/dist/Stack-D-aoKnaS.js +158 -0
  17. package/dist/Typography-CswuXQLF.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-BVV8tT0K.js +10 -0
  22. package/dist/buttonBaseClasses-CzfJbQi5.js +13 -0
  23. package/dist/checkbox-Dd2nIREk.js +57 -0
  24. package/dist/chunk-efA98nb6.js +13 -0
  25. package/dist/createSimplePaletteValueFilter-dAWZ3p3z.js +14 -0
  26. package/dist/createSvgIcon-KjKEsKNV.js +153 -0
  27. package/dist/createTheme-DuS5_nJb.js +2430 -0
  28. package/dist/defaultTheme-DBynruYK.js +5 -0
  29. package/dist/entries/carousel.js +3 -4
  30. package/dist/entries/chat.js +3 -4
  31. package/dist/entries/code.js +3 -4
  32. package/dist/entries/core.js +56 -122
  33. package/dist/entries/dates.js +7 -12
  34. package/dist/entries/dropzone.js +3 -4
  35. package/dist/entries/editor.js +2 -4
  36. package/dist/entries/gallery.js +7 -13
  37. package/dist/entries/i18n.js +3 -7
  38. package/dist/entries/motion.js +14 -27
  39. package/dist/entries/scrollbar.js +2 -4
  40. package/dist/entries/stripe.js +6 -10
  41. package/dist/extendSxProp-YPyfzlEb.js +29 -0
  42. package/dist/generateUtilityClass-DdqZpZoW.js +34 -0
  43. package/dist/generateUtilityClasses-BMwEKe3O.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-ApDUTw5e.js +27 -0
  51. package/dist/identifier-_S1f0Pg2.js +190 -0
  52. package/dist/main.js +103 -196
  53. package/dist/mergeSlotProps-BG-pTgpj.js +48 -0
  54. package/dist/objectWithoutPropertiesLoose-BdL2_POW.js +23 -0
  55. package/dist/outlinedInputClasses-bgmdcolQ.js +43 -0
  56. package/dist/resolveProps-CcZ6Bxlf.js +30 -0
  57. package/dist/s-accordion/index.js +3 -4
  58. package/dist/s-accordion/s-accordion.js +3 -949
  59. package/dist/s-accordion-Da1IZflX.js +712 -0
  60. package/dist/s-action-overlay/index.js +2 -4
  61. package/dist/s-action-overlay/s-action-overlay.js +108 -109
  62. package/dist/s-autocomplete/index.js +2 -4
  63. package/dist/s-autocomplete/s-autocomplete.js +25 -31
  64. package/dist/s-avatar/index.js +2 -4
  65. package/dist/s-avatar/s-avatar.js +32 -22
  66. package/dist/s-blur-text/index.js +2 -4
  67. package/dist/s-blur-text/s-blur-text.js +67 -81
  68. package/dist/s-breadcrumbs/index.js +2 -3
  69. package/dist/s-breadcrumbs/s-breadcrumbs.js +49 -44
  70. package/dist/s-button/index.js +2 -4
  71. package/dist/s-button/s-button.js +11 -9
  72. package/dist/s-carousel/index.js +3 -4
  73. package/dist/s-carousel/s-carousel.js +3 -2480
  74. package/dist/s-carousel-BoDg9pKU.js +125 -0
  75. package/dist/s-category-card/index.js +1 -3
  76. package/dist/s-category-card/s-category-card.js +70 -105
  77. package/dist/s-chat-input/index.js +3 -4
  78. package/dist/s-chat-input/s-chat-input.js +3 -319
  79. package/dist/s-chat-input-v_XIZVGk.js +283 -0
  80. package/dist/s-chat-message/index.js +3 -4
  81. package/dist/s-chat-message/s-chat-message.js +3 -283
  82. package/dist/s-chat-message-CWtxsicj.js +281 -0
  83. package/dist/s-checkbox/index.js +2 -4
  84. package/dist/s-checkbox/s-checkbox.js +27 -17
  85. package/dist/s-chip/index.js +2 -4
  86. package/dist/s-chip/s-chip.js +11 -9
  87. package/dist/s-chips/index.js +2 -4
  88. package/dist/s-chips/s-chips.js +91 -86
  89. package/dist/s-code-block/index.js +3 -4
  90. package/dist/s-code-block/s-code-block.js +3 -1052
  91. package/dist/s-code-block-BqYdR0Em.js +608 -0
  92. package/dist/s-comment-message/index.js +3 -4
  93. package/dist/s-comment-message/s-comment-message.js +3 -123
  94. package/dist/s-comment-message-DDAHdQqY.js +195 -0
  95. package/dist/s-copyable-text/index.js +3 -4
  96. package/dist/s-copyable-text/s-copyable-text.js +50 -54
  97. package/dist/s-countdown/index.js +3 -5
  98. package/dist/s-countdown/s-count-box.js +102 -106
  99. package/dist/s-countdown/s-count-down.js +101 -109
  100. package/dist/s-data-table/index.js +3 -4
  101. package/dist/s-data-table/s-data-table.js +3 -1291
  102. package/dist/s-data-table-BjqqIsFX.js +893 -0
  103. package/dist/s-date-picker/index.js +3 -4
  104. package/dist/s-date-picker/s-date-picker.js +3 -1521
  105. package/dist/s-date-picker-BYqxsjPU.js +581 -0
  106. package/dist/s-datetime-picker/index.js +3 -4
  107. package/dist/s-datetime-picker/s-datetime-picker.js +3 -5180
  108. package/dist/s-datetime-picker-BtwGoxL3.js +3808 -0
  109. package/dist/s-dialog/index.js +2 -3
  110. package/dist/s-dialog/s-dialog.js +44 -36
  111. package/dist/s-dialog-confirm/index.js +3 -6
  112. package/dist/s-dialog-confirm/s-dialog-confirm.js +85 -74
  113. package/dist/s-dialog-message/index.js +3 -6
  114. package/dist/s-dialog-message/s-dialog-message.js +75 -66
  115. package/dist/s-empty/index.js +1 -3
  116. package/dist/s-empty/s-empty.js +13 -8
  117. package/dist/s-error/index.js +2 -4
  118. package/dist/s-error/s-error.js +31 -20
  119. package/dist/s-error-layout/index.js +2 -4
  120. package/dist/s-error-layout/s-error-layout.js +78 -56
  121. package/dist/s-file-dropzone/index.js +3 -4
  122. package/dist/s-file-dropzone/s-file-dropzone.js +3 -124
  123. package/dist/s-file-dropzone-BJBNFC_b.js +134 -0
  124. package/dist/s-file-icon/index.js +3 -4
  125. package/dist/s-file-icon/s-file-icon.js +327 -272
  126. package/dist/s-flex-box/index.js +3 -4
  127. package/dist/s-flex-box/s-flex-box.js +12 -8
  128. package/dist/s-form/index.js +2 -4
  129. package/dist/s-form/s-form.js +23 -15
  130. package/dist/s-gallery/index.js +3 -5
  131. package/dist/s-gallery/s-gallery.js +310 -346
  132. package/dist/s-glow-button/index.js +3 -4
  133. package/dist/s-glow-button/s-glow-button.js +29 -42
  134. package/dist/s-gradient-icon/index.js +2 -4
  135. package/dist/s-gradient-icon/s-gradient-icon.js +124 -79
  136. package/dist/s-i18n-provider/index.js +2 -4
  137. package/dist/s-i18n-provider/s-i18n-provider.js +23 -27
  138. package/dist/s-icon-button/index.js +2 -4
  139. package/dist/s-icon-button/s-icon-button.js +11 -8
  140. package/dist/s-image-comparison/index.js +3 -4
  141. package/dist/s-image-comparison/s-image-comparison.js +169 -207
  142. package/dist/s-image-modal/index.js +3 -5
  143. package/dist/s-image-modal/s-image-modal.js +396 -387
  144. package/dist/s-item-not-found/index.js +1 -3
  145. package/dist/s-item-not-found/s-item-not-found.js +240 -262
  146. package/dist/s-label/index.js +3 -4
  147. package/dist/s-label/s-label.js +3 -17
  148. package/dist/s-label-Bt4vQGGN.js +30 -0
  149. package/dist/s-language-switcher/index.js +3 -6
  150. package/dist/s-language-switcher/s-language-switcher.js +3 -252
  151. package/dist/s-language-switcher-BJP1r1la.js +198 -0
  152. package/dist/s-lazy-image/index.js +2 -4
  153. package/dist/s-lazy-image/s-lazy-image.js +41 -56
  154. package/dist/s-link/index.js +2 -4
  155. package/dist/s-link/s-link.js +30 -37
  156. package/dist/s-localization-provider/index.js +3 -4
  157. package/dist/s-localization-provider/s-localization-provider.js +3 -562
  158. package/dist/s-localization-provider-CeOR72Ti.js +537 -0
  159. package/dist/s-moving-border/index.js +1 -3
  160. package/dist/s-moving-border/s-moving-border.js +117 -131
  161. package/dist/s-multi-select/index.js +3 -4
  162. package/dist/s-multi-select/s-multi-select.js +3 -82
  163. package/dist/s-multi-select-xKP4heeG.js +64 -0
  164. package/dist/s-no-ssr/index.js +2 -4
  165. package/dist/s-no-ssr/s-no-ssr.js +13 -14
  166. package/dist/s-overlay-scrollbar/index.js +2 -4
  167. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.js +34 -37
  168. package/dist/s-pagination/index.js +2 -4
  169. package/dist/s-pagination/s-pagination.js +32 -15
  170. package/dist/s-pixel-reveal/index.js +3 -4
  171. package/dist/s-pixel-reveal/s-pixel-reveal.js +138 -156
  172. package/dist/s-radial-pulse-animate/index.js +3 -4
  173. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.js +80 -122
  174. package/dist/s-rating/index.js +1 -3
  175. package/dist/s-rating/s-rating.js +11 -9
  176. package/dist/s-review/index.js +3 -4
  177. package/dist/s-review/s-review.js +3 -160
  178. package/dist/s-review-DOBlCEU2.js +241 -0
  179. package/dist/s-scroll-reveal/index.js +2 -4
  180. package/dist/s-scroll-reveal/s-scroll-reveal.js +68 -64
  181. package/dist/s-scroll-to-top/index.js +3 -4
  182. package/dist/s-scroll-to-top/s-scroll-to-top.js +45 -44
  183. package/dist/s-scroll-velocity/index.js +4 -8
  184. package/dist/s-scroll-velocity/s-scroll-velocity.js +14 -8
  185. package/dist/s-scroll-velocity/scroll-velocity-container.js +25 -30
  186. package/dist/s-scroll-velocity/scroll-velocity-row.js +97 -118
  187. package/dist/s-select/index.js +3 -4
  188. package/dist/s-select/s-select.js +3 -112
  189. package/dist/s-select-DXbeZ0CG.js +110 -0
  190. package/dist/s-select-list/index.js +2 -4
  191. package/dist/s-select-list/s-select-list.js +44 -49
  192. package/dist/s-skeleton/index.js +2 -4
  193. package/dist/s-skeleton/s-skeleton.js +69 -35
  194. package/dist/s-snackbar-message/index.js +2 -6
  195. package/dist/s-snackbar-message/s-snackbar-message.js +48 -61
  196. package/dist/s-spotlight-cursor/index.js +2 -4
  197. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +58 -61
  198. package/dist/s-stripe/index.js +6 -10
  199. package/dist/s-stripe/s-stripe-cvc.js +14 -10
  200. package/dist/s-stripe/s-stripe-expiry.js +14 -10
  201. package/dist/s-stripe/s-stripe-number.js +14 -10
  202. package/dist/s-stripe/s-stripe.js +31 -37
  203. package/dist/s-stripe/stripe-input.js +57 -81
  204. package/dist/s-switch/index.js +1 -3
  205. package/dist/s-switch/s-switch.js +27 -17
  206. package/dist/s-tabs/index.js +4 -8
  207. package/dist/s-tabs/s-tab-panel.js +23 -29
  208. package/dist/s-tabs/s-tab.js +11 -8
  209. package/dist/s-tabs/s-tabs.js +39 -35
  210. package/dist/s-text-editor/index.js +3 -5
  211. package/dist/s-text-editor/s-text-editor-toolbar.js +3 -207
  212. package/dist/s-text-editor/s-text-editor.js +75 -81
  213. package/dist/s-text-editor-toolbar-BDDttdIt.js +177 -0
  214. package/dist/s-text-field/index.js +3 -4
  215. package/dist/s-text-field/s-text-field.js +3 -49
  216. package/dist/s-text-field-ni42E-1x.js +41 -0
  217. package/dist/s-text-shimmer/index.js +3 -4
  218. package/dist/s-text-shimmer/s-text-shimmer.js +31 -32
  219. package/dist/s-text-truncation/index.js +1 -3
  220. package/dist/s-text-truncation/s-text-truncation.js +79 -81
  221. package/dist/s-theme-demo/index.js +3 -4
  222. package/dist/s-theme-demo/s-theme-demo.js +3 -380
  223. package/dist/s-theme-demo-B4pz6fse.js +828 -0
  224. package/dist/s-theme-provider/index.js +3 -4
  225. package/dist/s-theme-provider/s-theme-provider.js +35 -50
  226. package/dist/s-theme-switch/index.js +3 -4
  227. package/dist/s-theme-switch/s-theme-switch.js +3 -41
  228. package/dist/s-theme-switch-CCEdponC.js +37 -0
  229. package/dist/s-tip/index.js +3 -4
  230. package/dist/s-tip/s-tip.js +3 -34
  231. package/dist/s-tip-CG51Q6oR.js +34 -0
  232. package/dist/s-tool-bar/index.js +3 -4
  233. package/dist/s-tool-bar/s-tool-bar.js +3 -478
  234. package/dist/s-tool-bar-C2lZhhJm.js +404 -0
  235. package/dist/s-two-pane-layout/index.js +2 -3
  236. package/dist/s-two-pane-layout/s-two-pane-layout.js +102 -101
  237. package/dist/s-typewriter-text/index.js +2 -4
  238. package/dist/s-typewriter-text/s-typewriter-text.js +39 -45
  239. package/dist/s-zoom-image/index.js +1 -3
  240. package/dist/s-zoom-image/s-zoom-image.js +62 -88
  241. package/dist/select-D9KH9LAz.js +11 -0
  242. package/dist/styled-Dz7rwAje.js +168 -0
  243. package/dist/svgIconClasses-CygVMw0E.js +20 -0
  244. package/dist/tabClasses-CIRFQ-PB.js +21 -0
  245. package/dist/theme/components/accordion-details.js +7 -8
  246. package/dist/theme/components/accordion-summary.js +12 -17
  247. package/dist/theme/components/accordion.js +24 -32
  248. package/dist/theme/components/alert.js +45 -72
  249. package/dist/theme/components/app-bar.js +12 -18
  250. package/dist/theme/components/autocomplete.js +19 -30
  251. package/dist/theme/components/avatar.js +3 -13
  252. package/dist/theme/components/backdrop.js +13 -12
  253. package/dist/theme/components/button-base.js +12 -14
  254. package/dist/theme/components/button.js +92 -138
  255. package/dist/theme/components/card-actions.js +4 -10
  256. package/dist/theme/components/card-content.js +4 -11
  257. package/dist/theme/components/card-header.js +4 -10
  258. package/dist/theme/components/card.js +23 -35
  259. package/dist/theme/components/checkbox.js +3 -65
  260. package/dist/theme/components/chip.js +67 -106
  261. package/dist/theme/components/components.js +112 -111
  262. package/dist/theme/components/container.js +4 -6
  263. package/dist/theme/components/dialog-actions.js +4 -10
  264. package/dist/theme/components/dialog.js +11 -17
  265. package/dist/theme/components/drawer.js +4 -10
  266. package/dist/theme/components/form-control.js +4 -10
  267. package/dist/theme/components/form-label.js +7 -11
  268. package/dist/theme/components/icon-button.js +82 -132
  269. package/dist/theme/components/icon.js +9 -21
  270. package/dist/theme/components/input-adornment.js +7 -13
  271. package/dist/theme/components/input-base.js +10 -16
  272. package/dist/theme/components/linear-progress.js +11 -16
  273. package/dist/theme/components/link.js +31 -37
  274. package/dist/theme/components/list-item-button.js +27 -44
  275. package/dist/theme/components/list-item-icon.js +4 -10
  276. package/dist/theme/components/list-item-text.js +14 -16
  277. package/dist/theme/components/list-item.js +12 -20
  278. package/dist/theme/components/list-subheader.js +10 -14
  279. package/dist/theme/components/list.js +9 -13
  280. package/dist/theme/components/menu-item.js +7 -8
  281. package/dist/theme/components/menu.js +20 -22
  282. package/dist/theme/components/outlined-input.js +41 -64
  283. package/dist/theme/components/pagination-item.js +8 -18
  284. package/dist/theme/components/paper.js +4 -8
  285. package/dist/theme/components/popover.js +11 -13
  286. package/dist/theme/components/rating.js +4 -8
  287. package/dist/theme/components/select.js +3 -13
  288. package/dist/theme/components/skeleton.js +4 -10
  289. package/dist/theme/components/slider.js +4 -8
  290. package/dist/theme/components/step-connector.js +9 -13
  291. package/dist/theme/components/step-icon.js +39 -46
  292. package/dist/theme/components/step-label.js +7 -13
  293. package/dist/theme/components/svg-icon.js +20 -37
  294. package/dist/theme/components/tab.js +20 -34
  295. package/dist/theme/components/table-cell.js +4 -10
  296. package/dist/theme/components/table-pagination.js +14 -18
  297. package/dist/theme/components/tabs.js +20 -24
  298. package/dist/theme/components/toggle-button-group.js +3 -23
  299. package/dist/theme/components/toggle-button.js +3 -21
  300. package/dist/theme/components/tooltip.js +23 -23
  301. package/dist/theme/theme-primitives.js +3 -410
  302. package/dist/theme-primitives-BG66N-x4.js +398 -0
  303. package/dist/toggle-button-BI6z89CX.js +26 -0
  304. package/dist/toggle-button-group-Dzzh9mXv.js +28 -0
  305. package/dist/typographyClasses-C0nDz5e6.js +32 -0
  306. package/dist/useControlled-CvWtMQJF.js +32 -0
  307. package/dist/useEnhancedEffect-NLLl34XR.js +5 -0
  308. package/dist/useFormControl-ngLNi8dL.js +11 -0
  309. package/dist/useMobilePicker-DdH0AzNe.js +10635 -0
  310. package/dist/useTheme-BES_k_99.js +34 -0
  311. package/dist/useThemeProps-CJRFdjVv.js +19 -0
  312. package/dist/utils/dayjs.js +161 -113
  313. package/dist/utils/index.js +3 -11
  314. package/dist/utils/logger.js +45 -46
  315. package/dist/utils-Cu16ybRR.js +72 -0
  316. package/dist/warning-D7iWhOZI.js +110 -0
  317. package/package.json +29 -29
  318. package/dist/ArrowUpward-D8eqD-si.js +0 -8
  319. package/dist/Box-BkXoTbe8.js +0 -62
  320. package/dist/ButtonBase-D73M0QY5.js +0 -1099
  321. package/dist/ChevronLeft-BmgmPHp9.js +0 -8
  322. package/dist/ChevronRight-DbWSr8yz.js +0 -8
  323. package/dist/Close-lHCUMitI.js +0 -8
  324. package/dist/ContentCopy-D4SuJd86.js +0 -11
  325. package/dist/DefaultPropsProvider-DPuuPIbS.js +0 -64
  326. package/dist/Download-BoRQUwCf.js +0 -8
  327. package/dist/ExpandMore-C7yRQv1-.js +0 -8
  328. package/dist/Favorite-Bz_HcMgN.js +0 -8
  329. package/dist/Menu-GVFDMHCN.js +0 -2441
  330. package/dist/MenuItem-2wG8I2HO.js +0 -269
  331. package/dist/Paper-CR019bki.js +0 -553
  332. package/dist/Select-D2l9rDWL.js +0 -3966
  333. package/dist/Stack-Dfjnuorw.js +0 -174
  334. package/dist/Typography-PcmlIqm1.js +0 -253
  335. package/dist/_commonjsHelpers-ByX85dGu.js +0 -33
  336. package/dist/buttonBaseClasses-jtnoTmPn.js +0 -10
  337. package/dist/clsx-OuTLNxxd.js +0 -16
  338. package/dist/createSimplePaletteValueFilter-B7--0ryQ.js +0 -17
  339. package/dist/createSvgIcon-BkbeLOhM.js +0 -242
  340. package/dist/createTheme-DgoJyWM-.js +0 -2929
  341. package/dist/defaultTheme-CulFxfLR.js +0 -5
  342. package/dist/extendSxProp-BJEIxcAx.js +0 -36
  343. package/dist/generateUtilityClass-BhfUaMgk.js +0 -35
  344. package/dist/generateUtilityClasses-E9gROIFd.js +0 -10
  345. package/dist/iconButtonClasses-BMfIhNTh.js +0 -10
  346. package/dist/identifier-BKLqN993.js +0 -4
  347. package/dist/index-D3G5Rwl-.js +0 -211
  348. package/dist/index-DtGYsHSv.js +0 -94
  349. package/dist/jsx-runtime-tc70JA_2.js +0 -264
  350. package/dist/mergeSlotProps-CuzBQdlp.js +0 -62
  351. package/dist/objectWithoutPropertiesLoose-DiWPeE4c.js +0 -22
  352. package/dist/outlinedInputClasses-DnwW3ujt.js +0 -19
  353. package/dist/resolveProps-BDH0VJjn.js +0 -39
  354. package/dist/styled-8Y5KoVix.js +0 -203
  355. package/dist/svgIconClasses-C6auqaBA.js +0 -10
  356. package/dist/tabClasses-DFvXsFrN.js +0 -10
  357. package/dist/typographyClasses-jmoWZuXc.js +0 -10
  358. package/dist/useControlled-D1L5tREc.js +0 -31
  359. package/dist/useEnhancedEffect-CJGo-L3B.js +0 -5
  360. package/dist/useFormControl-CatNKXAi.js +0 -10
  361. package/dist/useMobilePicker-B-bNHHXB.js +0 -13498
  362. package/dist/useTheme-CWPkv7g3.js +0 -18
  363. package/dist/useThemeProps-XYgXGzjS.js +0 -27
  364. package/dist/utils-D1UMIV0b.js +0 -40
  365. package/dist/warning-Ba-7BBAN.js +0 -135
@@ -1,3966 +0,0 @@
1
- import * as s from "react";
2
- import { P as e, c as F, o as wo, g as eo, k as Do } from "./createTheme-DgoJyWM-.js";
3
- import { c as ie } from "./clsx-OuTLNxxd.js";
4
- import { m as U, u as ae, c as Q } from "./DefaultPropsProvider-DPuuPIbS.js";
5
- import { c as be } from "./createSimplePaletteValueFilter-B7--0ryQ.js";
6
- import { g as Lo, i as uo } from "./iconButtonClasses-BMfIhNTh.js";
7
- import { j as m } from "./jsx-runtime-tc70JA_2.js";
8
- import { s as N, r as ue, a as Uo } from "./styled-8Y5KoVix.js";
9
- import { u as We, d as Vo, i as po, r as ge, e as Ho, b as _o, c as Io, B as qo } from "./ButtonBase-D73M0QY5.js";
10
- import { g as ye } from "./generateUtilityClass-BhfUaMgk.js";
11
- import { g as he } from "./generateUtilityClasses-E9gROIFd.js";
12
- import { css as Ro, keyframes as To } from "@emotion/react";
13
- import { u as oo, F as No } from "./useFormControl-CatNKXAi.js";
14
- import { o as fo, d as Ko, a as Go, M as Xo, g as Yo } from "./Menu-GVFDMHCN.js";
15
- import { u as mo } from "./useControlled-D1L5tREc.js";
16
- import { c as Zo } from "./createSvgIcon-BkbeLOhM.js";
17
- import { i as je, g as Jo, a as Qo, o as J } from "./outlinedInputClasses-DnwW3ujt.js";
18
- import { g as et } from "./index-DtGYsHSv.js";
19
- import { u as Ze } from "./useEnhancedEffect-CJGo-L3B.js";
20
- let bo = 0;
21
- function ot(o) {
22
- const [t, n] = s.useState(o), r = o || t;
23
- return s.useEffect(() => {
24
- t == null && (bo += 1, n(`mui-${bo}`));
25
- }, [t]), r;
26
- }
27
- const tt = {
28
- ...s
29
- }, go = tt.useId;
30
- function ko(o) {
31
- if (go !== void 0) {
32
- const t = go();
33
- return o ?? t;
34
- }
35
- return ot(o);
36
- }
37
- function Ye(o, t) {
38
- return /* @__PURE__ */ s.isValidElement(o) && t.indexOf(
39
- // For server components `muiName` is available in element.type._payload.value.muiName
40
- // relevant info - https://github.com/facebook/react/blob/2807d781a08db8e9873687fccc25c0f12b4fb3d4/packages/react/src/ReactLazy.js#L45
41
- // eslint-disable-next-line no-underscore-dangle
42
- o.type.muiName ?? o.type?._payload?.value?.muiName
43
- ) !== -1;
44
- }
45
- var yo;
46
- const nt = N("fieldset", {
47
- name: "MuiNotchedOutlined",
48
- shouldForwardProp: ue
49
- })({
50
- textAlign: "left",
51
- position: "absolute",
52
- bottom: 0,
53
- right: 0,
54
- top: -5,
55
- left: 0,
56
- margin: 0,
57
- padding: "0 8px",
58
- pointerEvents: "none",
59
- borderRadius: "inherit",
60
- borderStyle: "solid",
61
- borderWidth: 1,
62
- overflow: "hidden",
63
- minWidth: "0%"
64
- }), rt = N("legend", {
65
- name: "MuiNotchedOutlined",
66
- shouldForwardProp: ue
67
- })(U(({
68
- theme: o
69
- }) => ({
70
- float: "unset",
71
- // Fix conflict with bootstrap
72
- width: "auto",
73
- // Fix conflict with bootstrap
74
- overflow: "hidden",
75
- // Fix Horizontal scroll when label too long
76
- variants: [{
77
- props: ({
78
- ownerState: t
79
- }) => !t.withLabel,
80
- style: {
81
- padding: 0,
82
- lineHeight: "11px",
83
- // sync with `height` in `legend` styles
84
- transition: o.transitions.create("width", {
85
- duration: 150,
86
- easing: o.transitions.easing.easeOut
87
- })
88
- }
89
- }, {
90
- props: ({
91
- ownerState: t
92
- }) => t.withLabel,
93
- style: {
94
- display: "block",
95
- // Fix conflict with normalize.css and sanitize.css
96
- padding: 0,
97
- height: 11,
98
- // sync with `lineHeight` in `legend` styles
99
- fontSize: "0.75em",
100
- visibility: "hidden",
101
- maxWidth: 0.01,
102
- transition: o.transitions.create("max-width", {
103
- duration: 50,
104
- easing: o.transitions.easing.easeOut
105
- }),
106
- whiteSpace: "nowrap",
107
- "& > span": {
108
- paddingLeft: 5,
109
- paddingRight: 5,
110
- display: "inline-block",
111
- opacity: 0,
112
- visibility: "visible"
113
- }
114
- }
115
- }, {
116
- props: ({
117
- ownerState: t
118
- }) => t.withLabel && t.notched,
119
- style: {
120
- maxWidth: "100%",
121
- transition: o.transitions.create("max-width", {
122
- duration: 100,
123
- easing: o.transitions.easing.easeOut,
124
- delay: 50
125
- })
126
- }
127
- }]
128
- })));
129
- function Po(o) {
130
- const {
131
- children: t,
132
- classes: n,
133
- className: r,
134
- label: a,
135
- notched: d,
136
- ...i
137
- } = o, u = a != null && a !== "", v = {
138
- ...o,
139
- notched: d,
140
- withLabel: u
141
- };
142
- return /* @__PURE__ */ m.jsx(nt, {
143
- "aria-hidden": !0,
144
- className: r,
145
- ownerState: v,
146
- ...i,
147
- children: /* @__PURE__ */ m.jsx(rt, {
148
- ownerState: v,
149
- children: u ? /* @__PURE__ */ m.jsx("span", {
150
- children: a
151
- }) : (
152
- // notranslate needed while Google Translate will not fix zero-width space issue
153
- yo || (yo = /* @__PURE__ */ m.jsx("span", {
154
- className: "notranslate",
155
- "aria-hidden": !0,
156
- children: "​"
157
- }))
158
- )
159
- })
160
- });
161
- }
162
- process.env.NODE_ENV !== "production" && (Po.propTypes = {
163
- /**
164
- * The content of the component.
165
- */
166
- children: e.node,
167
- /**
168
- * Override or extend the styles applied to the component.
169
- */
170
- classes: e.object,
171
- /**
172
- * @ignore
173
- */
174
- className: e.string,
175
- /**
176
- * The label.
177
- */
178
- label: e.node,
179
- /**
180
- * If `true`, the outline is notched to accommodate the label.
181
- */
182
- notched: e.bool.isRequired,
183
- /**
184
- * @ignore
185
- */
186
- style: e.object
187
- });
188
- function to({
189
- props: o,
190
- states: t,
191
- muiFormControl: n
192
- }) {
193
- return t.reduce((r, a) => (r[a] = o[a], n && typeof o[a] > "u" && (r[a] = n[a]), r), {});
194
- }
195
- function Me(o) {
196
- return parseInt(o, 10) || 0;
197
- }
198
- const st = {
199
- shadow: {
200
- // Visibility needed to hide the extra text area on iPads
201
- visibility: "hidden",
202
- // Remove from the content flow
203
- position: "absolute",
204
- // Ignore the scrollbar width
205
- overflow: "hidden",
206
- height: 0,
207
- top: 0,
208
- left: 0,
209
- // Create a new layer, increase the isolation of the computed values
210
- transform: "translateZ(0)"
211
- }
212
- };
213
- function it(o) {
214
- for (const t in o)
215
- return !1;
216
- return !0;
217
- }
218
- function ho(o) {
219
- return it(o) || o.outerHeightStyle === 0 && !o.overflowing;
220
- }
221
- const jo = /* @__PURE__ */ s.forwardRef(function(t, n) {
222
- const {
223
- onChange: r,
224
- maxRows: a,
225
- minRows: d = 1,
226
- style: i,
227
- value: u,
228
- ...v
229
- } = t, {
230
- current: S
231
- } = s.useRef(u != null), f = s.useRef(null), y = We(n, f), b = s.useRef(null), R = s.useRef(null), C = s.useCallback(() => {
232
- const c = f.current, p = R.current;
233
- if (!c || !p)
234
- return;
235
- const w = fo(c).getComputedStyle(c);
236
- if (w.width === "0px")
237
- return {
238
- outerHeightStyle: 0,
239
- overflowing: !1
240
- };
241
- p.style.width = w.width, p.value = c.value || t.placeholder || "x", p.value.slice(-1) === `
242
- ` && (p.value += " ");
243
- const V = w.boxSizing, H = Me(w.paddingBottom) + Me(w.paddingTop), _ = Me(w.borderBottomWidth) + Me(w.borderTopWidth), B = p.scrollHeight;
244
- p.value = "x";
245
- const D = p.scrollHeight;
246
- let E = B;
247
- d && (E = Math.max(Number(d) * D, E)), a && (E = Math.min(Number(a) * D, E)), E = Math.max(E, D);
248
- const W = E + (V === "border-box" ? H + _ : 0), L = Math.abs(E - B) <= 1;
249
- return {
250
- outerHeightStyle: W,
251
- overflowing: L
252
- };
253
- }, [a, d, t.placeholder]), T = Vo(() => {
254
- const c = f.current, p = C();
255
- if (!c || !p || ho(p))
256
- return !1;
257
- const P = p.outerHeightStyle;
258
- return b.current != null && b.current !== P;
259
- }), g = s.useCallback(() => {
260
- const c = f.current, p = C();
261
- if (!c || !p || ho(p))
262
- return;
263
- const P = p.outerHeightStyle;
264
- b.current !== P && (b.current = P, c.style.height = `${P}px`), c.style.overflow = p.overflowing ? "hidden" : "";
265
- }, [C]), h = s.useRef(-1);
266
- Ze(() => {
267
- const c = Ko(g), p = f?.current;
268
- if (!p)
269
- return;
270
- const P = fo(p);
271
- P.addEventListener("resize", c);
272
- let w;
273
- return typeof ResizeObserver < "u" && (w = new ResizeObserver(() => {
274
- T() && (w.unobserve(p), cancelAnimationFrame(h.current), g(), h.current = requestAnimationFrame(() => {
275
- w.observe(p);
276
- }));
277
- }), w.observe(p)), () => {
278
- c.clear(), cancelAnimationFrame(h.current), P.removeEventListener("resize", c), w && w.disconnect();
279
- };
280
- }, [C, g, T]), Ze(() => {
281
- g();
282
- });
283
- const O = (c) => {
284
- S || g();
285
- const p = c.target, P = p.value.length, w = p.value.endsWith(`
286
- `), V = p.selectionStart === P;
287
- w && V && p.setSelectionRange(P, P), r && r(c);
288
- };
289
- return /* @__PURE__ */ m.jsxs(s.Fragment, {
290
- children: [/* @__PURE__ */ m.jsx("textarea", {
291
- value: u,
292
- onChange: O,
293
- ref: y,
294
- rows: d,
295
- style: i,
296
- ...v
297
- }), /* @__PURE__ */ m.jsx("textarea", {
298
- "aria-hidden": !0,
299
- className: t.className,
300
- readOnly: !0,
301
- ref: R,
302
- tabIndex: -1,
303
- style: {
304
- ...st.shadow,
305
- ...i,
306
- paddingTop: 0,
307
- paddingBottom: 0
308
- }
309
- })]
310
- });
311
- });
312
- process.env.NODE_ENV !== "production" && (jo.propTypes = {
313
- // ┌────────────────────────────── Warning ──────────────────────────────┐
314
- // │ These PropTypes are generated from the TypeScript type definitions. │
315
- // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
316
- // └─────────────────────────────────────────────────────────────────────┘
317
- /**
318
- * @ignore
319
- */
320
- className: e.string,
321
- /**
322
- * Maximum number of rows to display.
323
- */
324
- maxRows: e.oneOfType([e.number, e.string]),
325
- /**
326
- * Minimum number of rows to display.
327
- * @default 1
328
- */
329
- minRows: e.oneOfType([e.number, e.string]),
330
- /**
331
- * @ignore
332
- */
333
- onChange: e.func,
334
- /**
335
- * @ignore
336
- */
337
- placeholder: e.string,
338
- /**
339
- * @ignore
340
- */
341
- style: e.object,
342
- /**
343
- * @ignore
344
- */
345
- value: e.oneOfType([e.arrayOf(e.string), e.number, e.string])
346
- });
347
- function vo(o) {
348
- return o != null && !(Array.isArray(o) && o.length === 0);
349
- }
350
- function Be(o, t = !1) {
351
- return o && (vo(o.value) && o.value !== "" || t && vo(o.defaultValue) && o.defaultValue !== "");
352
- }
353
- function at(o) {
354
- return o.startAdornment;
355
- }
356
- var So;
357
- const Ae = (o, t) => {
358
- const {
359
- ownerState: n
360
- } = o;
361
- return [t.root, n.formControl && t.formControl, n.startAdornment && t.adornedStart, n.endAdornment && t.adornedEnd, n.error && t.error, n.size === "small" && t.sizeSmall, n.multiline && t.multiline, n.color && t[`color${F(n.color)}`], n.fullWidth && t.fullWidth, n.hiddenLabel && t.hiddenLabel];
362
- }, ze = (o, t) => {
363
- const {
364
- ownerState: n
365
- } = o;
366
- return [t.input, n.size === "small" && t.inputSizeSmall, n.multiline && t.inputMultiline, n.type === "search" && t.inputTypeSearch, n.startAdornment && t.inputAdornedStart, n.endAdornment && t.inputAdornedEnd, n.hiddenLabel && t.inputHiddenLabel];
367
- }, lt = (o) => {
368
- const {
369
- classes: t,
370
- color: n,
371
- disabled: r,
372
- error: a,
373
- endAdornment: d,
374
- focused: i,
375
- formControl: u,
376
- fullWidth: v,
377
- hiddenLabel: S,
378
- multiline: f,
379
- readOnly: y,
380
- size: b,
381
- startAdornment: R,
382
- type: C
383
- } = o, T = {
384
- root: ["root", `color${F(n)}`, r && "disabled", a && "error", v && "fullWidth", i && "focused", u && "formControl", b && b !== "medium" && `size${F(b)}`, f && "multiline", R && "adornedStart", d && "adornedEnd", S && "hiddenLabel", y && "readOnly"],
385
- input: ["input", r && "disabled", C === "search" && "inputTypeSearch", f && "inputMultiline", b === "small" && "inputSizeSmall", S && "inputHiddenLabel", R && "inputAdornedStart", d && "inputAdornedEnd", y && "readOnly"]
386
- };
387
- return Q(T, Jo, t);
388
- }, De = N("div", {
389
- name: "MuiInputBase",
390
- slot: "Root",
391
- overridesResolver: Ae
392
- })(U(({
393
- theme: o
394
- }) => ({
395
- ...o.typography.body1,
396
- color: (o.vars || o).palette.text.primary,
397
- lineHeight: "1.4375em",
398
- // 23px
399
- boxSizing: "border-box",
400
- // Prevent padding issue with fullWidth.
401
- position: "relative",
402
- cursor: "text",
403
- display: "inline-flex",
404
- alignItems: "center",
405
- [`&.${je.disabled}`]: {
406
- color: (o.vars || o).palette.text.disabled,
407
- cursor: "default"
408
- },
409
- variants: [{
410
- props: ({
411
- ownerState: t
412
- }) => t.multiline,
413
- style: {
414
- padding: "4px 0 5px"
415
- }
416
- }, {
417
- props: ({
418
- ownerState: t,
419
- size: n
420
- }) => t.multiline && n === "small",
421
- style: {
422
- paddingTop: 1
423
- }
424
- }, {
425
- props: ({
426
- ownerState: t
427
- }) => t.fullWidth,
428
- style: {
429
- width: "100%"
430
- }
431
- }]
432
- }))), Le = N("input", {
433
- name: "MuiInputBase",
434
- slot: "Input",
435
- overridesResolver: ze
436
- })(U(({
437
- theme: o
438
- }) => {
439
- const t = o.palette.mode === "light", n = {
440
- color: "currentColor",
441
- ...o.vars ? {
442
- opacity: o.vars.opacity.inputPlaceholder
443
- } : {
444
- opacity: t ? 0.42 : 0.5
445
- },
446
- transition: o.transitions.create("opacity", {
447
- duration: o.transitions.duration.shorter
448
- })
449
- }, r = {
450
- opacity: "0 !important"
451
- }, a = o.vars ? {
452
- opacity: o.vars.opacity.inputPlaceholder
453
- } : {
454
- opacity: t ? 0.42 : 0.5
455
- };
456
- return {
457
- font: "inherit",
458
- letterSpacing: "inherit",
459
- color: "currentColor",
460
- padding: "4px 0 5px",
461
- border: 0,
462
- boxSizing: "content-box",
463
- background: "none",
464
- height: "1.4375em",
465
- // Reset 23pxthe native input line-height
466
- margin: 0,
467
- // Reset for Safari
468
- WebkitTapHighlightColor: "transparent",
469
- display: "block",
470
- // Make the flex item shrink with Firefox
471
- minWidth: 0,
472
- width: "100%",
473
- "&::-webkit-input-placeholder": n,
474
- "&::-moz-placeholder": n,
475
- // Firefox 19+
476
- "&::-ms-input-placeholder": n,
477
- // Edge
478
- "&:focus": {
479
- outline: 0
480
- },
481
- // Reset Firefox invalid required input style
482
- "&:invalid": {
483
- boxShadow: "none"
484
- },
485
- "&::-webkit-search-decoration": {
486
- // Remove the padding when type=search.
487
- WebkitAppearance: "none"
488
- },
489
- // Show and hide the placeholder logic
490
- [`label[data-shrink=false] + .${je.formControl} &`]: {
491
- "&::-webkit-input-placeholder": r,
492
- "&::-moz-placeholder": r,
493
- // Firefox 19+
494
- "&::-ms-input-placeholder": r,
495
- // Edge
496
- "&:focus::-webkit-input-placeholder": a,
497
- "&:focus::-moz-placeholder": a,
498
- // Firefox 19+
499
- "&:focus::-ms-input-placeholder": a
500
- // Edge
501
- },
502
- [`&.${je.disabled}`]: {
503
- opacity: 1,
504
- // Reset iOS opacity
505
- WebkitTextFillColor: (o.vars || o).palette.text.disabled
506
- // Fix opacity Safari bug
507
- },
508
- variants: [{
509
- props: ({
510
- ownerState: d
511
- }) => !d.disableInjectingGlobalStyles,
512
- style: {
513
- animationName: "mui-auto-fill-cancel",
514
- animationDuration: "10ms",
515
- "&:-webkit-autofill": {
516
- animationDuration: "5000s",
517
- animationName: "mui-auto-fill"
518
- }
519
- }
520
- }, {
521
- props: {
522
- size: "small"
523
- },
524
- style: {
525
- paddingTop: 1
526
- }
527
- }, {
528
- props: ({
529
- ownerState: d
530
- }) => d.multiline,
531
- style: {
532
- height: "auto",
533
- resize: "none",
534
- padding: 0,
535
- paddingTop: 0
536
- }
537
- }, {
538
- props: {
539
- type: "search"
540
- },
541
- style: {
542
- MozAppearance: "textfield"
543
- // Improve type search style.
544
- }
545
- }]
546
- };
547
- })), Co = et({
548
- "@keyframes mui-auto-fill": {
549
- from: {
550
- display: "block"
551
- }
552
- },
553
- "@keyframes mui-auto-fill-cancel": {
554
- from: {
555
- display: "block"
556
- }
557
- }
558
- }), Ue = /* @__PURE__ */ s.forwardRef(function(t, n) {
559
- const r = ae({
560
- props: t,
561
- name: "MuiInputBase"
562
- }), {
563
- "aria-describedby": a,
564
- autoComplete: d,
565
- autoFocus: i,
566
- className: u,
567
- color: v,
568
- components: S = {},
569
- componentsProps: f = {},
570
- defaultValue: y,
571
- disabled: b,
572
- disableInjectingGlobalStyles: R,
573
- endAdornment: C,
574
- error: T,
575
- fullWidth: g = !1,
576
- id: h,
577
- inputComponent: O = "input",
578
- inputProps: c = {},
579
- inputRef: p,
580
- margin: P,
581
- maxRows: w,
582
- minRows: V,
583
- multiline: H = !1,
584
- name: _,
585
- onBlur: B,
586
- onChange: D,
587
- onClick: E,
588
- onFocus: W,
589
- onKeyDown: L,
590
- onKeyUp: X,
591
- placeholder: q,
592
- readOnly: A,
593
- renderSuffix: K,
594
- rows: te,
595
- size: Ve,
596
- slotProps: j = {},
597
- slots: ve = {},
598
- startAdornment: ne,
599
- type: Ee = "text",
600
- value: Fe,
601
- ...ee
602
- } = r, Y = c.value != null ? c.value : Fe, {
603
- current: Se
604
- } = s.useRef(Y != null), Z = s.useRef(), He = s.useCallback((k) => {
605
- process.env.NODE_ENV !== "production" && k && k.nodeName !== "INPUT" && !k.focus && console.error(["MUI: You have provided a `inputComponent` to the input component", "that does not correctly handle the `ref` prop.", "Make sure the `ref` prop is called with a HTMLInputElement."].join(`
606
- `));
607
- }, []), Ce = We(Z, p, c.ref, He), [xe, Oe] = s.useState(!1), I = oo();
608
- process.env.NODE_ENV !== "production" && s.useEffect(() => {
609
- if (I)
610
- return I.registerEffect();
611
- }, [I]);
612
- const $ = to({
613
- props: r,
614
- muiFormControl: I,
615
- states: ["color", "disabled", "error", "hiddenLabel", "size", "required", "filled"]
616
- });
617
- $.focused = I ? I.focused : xe, s.useEffect(() => {
618
- !I && b && xe && (Oe(!1), B && B());
619
- }, [I, b, xe, B]);
620
- const re = I && I.onFilled, we = I && I.onEmpty, le = s.useCallback((k) => {
621
- Be(k) ? re && re() : we && we();
622
- }, [re, we]);
623
- Ze(() => {
624
- Se && le({
625
- value: Y
626
- });
627
- }, [Y, le, Se]);
628
- const pe = (k) => {
629
- W && W(k), c.onFocus && c.onFocus(k), I && I.onFocus ? I.onFocus(k) : Oe(!0);
630
- }, _e = (k) => {
631
- B && B(k), c.onBlur && c.onBlur(k), I && I.onBlur ? I.onBlur(k) : Oe(!1);
632
- }, qe = (k, ...Ne) => {
633
- if (!Se) {
634
- const oe = k.target || Z.current;
635
- if (oe == null)
636
- throw new Error(process.env.NODE_ENV !== "production" ? "MUI: Expected valid input target. Did you use a custom `inputComponent` and forget to forward refs? See https://mui.com/r/input-component-ref-interface for more info." : wo(1));
637
- le({
638
- value: oe.value
639
- });
640
- }
641
- c.onChange && c.onChange(k, ...Ne), D && D(k, ...Ne);
642
- };
643
- s.useEffect(() => {
644
- le(Z.current);
645
- }, []);
646
- const Ke = (k) => {
647
- Z.current && k.currentTarget === k.target && Z.current.focus(), E && E(k);
648
- };
649
- let Ie = O, z = c;
650
- H && Ie === "input" && (te ? (process.env.NODE_ENV !== "production" && (V || w) && console.warn("MUI: You can not use the `minRows` or `maxRows` props when the input `rows` prop is set."), z = {
651
- type: void 0,
652
- minRows: te,
653
- maxRows: te,
654
- ...z
655
- }) : z = {
656
- type: void 0,
657
- maxRows: w,
658
- minRows: V,
659
- ...z
660
- }, Ie = jo);
661
- const $e = (k) => {
662
- le(k.animationName === "mui-auto-fill-cancel" ? Z.current : {
663
- value: "x"
664
- });
665
- };
666
- s.useEffect(() => {
667
- I && I.setAdornedStart(!!ne);
668
- }, [I, ne]);
669
- const se = {
670
- ...r,
671
- color: $.color || "primary",
672
- disabled: $.disabled,
673
- endAdornment: C,
674
- error: $.error,
675
- focused: $.focused,
676
- formControl: I,
677
- fullWidth: g,
678
- hiddenLabel: $.hiddenLabel,
679
- multiline: H,
680
- size: $.size,
681
- startAdornment: ne,
682
- type: Ee
683
- }, de = lt(se), fe = ve.root || S.Root || De, Re = j.root || f.root || {}, Te = ve.input || S.Input || Le;
684
- return z = {
685
- ...z,
686
- ...j.input ?? f.input
687
- }, /* @__PURE__ */ m.jsxs(s.Fragment, {
688
- children: [!R && typeof Co == "function" && // For Emotion/Styled-components, InputGlobalStyles will be a function
689
- // For Pigment CSS, this has no effect because the InputGlobalStyles will be null.
690
- (So || (So = /* @__PURE__ */ m.jsx(Co, {}))), /* @__PURE__ */ m.jsxs(fe, {
691
- ...Re,
692
- ref: n,
693
- onClick: Ke,
694
- ...ee,
695
- ...!po(fe) && {
696
- ownerState: {
697
- ...se,
698
- ...Re.ownerState
699
- }
700
- },
701
- className: ie(de.root, Re.className, u, A && "MuiInputBase-readOnly"),
702
- children: [ne, /* @__PURE__ */ m.jsx(No.Provider, {
703
- value: null,
704
- children: /* @__PURE__ */ m.jsx(Te, {
705
- "aria-invalid": $.error,
706
- "aria-describedby": a,
707
- autoComplete: d,
708
- autoFocus: i,
709
- defaultValue: y,
710
- disabled: $.disabled,
711
- id: h,
712
- onAnimationStart: $e,
713
- name: _,
714
- placeholder: q,
715
- readOnly: A,
716
- required: $.required,
717
- rows: te,
718
- value: Y,
719
- onKeyDown: L,
720
- onKeyUp: X,
721
- type: Ee,
722
- ...z,
723
- ...!po(Te) && {
724
- as: Ie,
725
- ownerState: {
726
- ...se,
727
- ...z.ownerState
728
- }
729
- },
730
- ref: Ce,
731
- className: ie(de.input, z.className, A && "MuiInputBase-readOnly"),
732
- onBlur: _e,
733
- onChange: qe,
734
- onFocus: pe
735
- })
736
- }), C, K ? K({
737
- ...$,
738
- startAdornment: ne
739
- }) : null]
740
- })]
741
- });
742
- });
743
- process.env.NODE_ENV !== "production" && (Ue.propTypes = {
744
- // ┌────────────────────────────── Warning ──────────────────────────────┐
745
- // │ These PropTypes are generated from the TypeScript type definitions. │
746
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
747
- // └─────────────────────────────────────────────────────────────────────┘
748
- /**
749
- * @ignore
750
- */
751
- "aria-describedby": e.string,
752
- /**
753
- * This prop helps users to fill forms faster, especially on mobile devices.
754
- * The name can be confusing, as it's more like an autofill.
755
- * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
756
- */
757
- autoComplete: e.string,
758
- /**
759
- * If `true`, the `input` element is focused during the first mount.
760
- */
761
- autoFocus: e.bool,
762
- /**
763
- * Override or extend the styles applied to the component.
764
- */
765
- classes: e.object,
766
- /**
767
- * @ignore
768
- */
769
- className: e.string,
770
- /**
771
- * The color of the component.
772
- * It supports both default and custom theme colors, which can be added as shown in the
773
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
774
- * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.
775
- */
776
- color: e.oneOfType([e.oneOf(["primary", "secondary", "error", "info", "success", "warning"]), e.string]),
777
- /**
778
- * The components used for each slot inside.
779
- *
780
- * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
781
- *
782
- * @default {}
783
- */
784
- components: e.shape({
785
- Input: e.elementType,
786
- Root: e.elementType
787
- }),
788
- /**
789
- * The extra props for the slot components.
790
- * You can override the existing props or add new ones.
791
- *
792
- * @deprecated use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
793
- *
794
- * @default {}
795
- */
796
- componentsProps: e.shape({
797
- input: e.object,
798
- root: e.object
799
- }),
800
- /**
801
- * The default value. Use when the component is not controlled.
802
- */
803
- defaultValue: e.any,
804
- /**
805
- * If `true`, the component is disabled.
806
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
807
- */
808
- disabled: e.bool,
809
- /**
810
- * If `true`, GlobalStyles for the auto-fill keyframes will not be injected/removed on mount/unmount. Make sure to inject them at the top of your application.
811
- * This option is intended to help with boosting the initial rendering performance if you are loading a big amount of Input components at once.
812
- * @default false
813
- */
814
- disableInjectingGlobalStyles: e.bool,
815
- /**
816
- * End `InputAdornment` for this component.
817
- */
818
- endAdornment: e.node,
819
- /**
820
- * If `true`, the `input` will indicate an error.
821
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
822
- */
823
- error: e.bool,
824
- /**
825
- * If `true`, the `input` will take up the full width of its container.
826
- * @default false
827
- */
828
- fullWidth: e.bool,
829
- /**
830
- * The id of the `input` element.
831
- */
832
- id: e.string,
833
- /**
834
- * The component used for the `input` element.
835
- * Either a string to use a HTML element or a component.
836
- * @default 'input'
837
- */
838
- inputComponent: Ho,
839
- /**
840
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
841
- * @default {}
842
- */
843
- inputProps: e.object,
844
- /**
845
- * Pass a ref to the `input` element.
846
- */
847
- inputRef: ge,
848
- /**
849
- * If `dense`, will adjust vertical spacing. This is normally obtained via context from
850
- * FormControl.
851
- * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.
852
- */
853
- margin: e.oneOf(["dense", "none"]),
854
- /**
855
- * Maximum number of rows to display when multiline option is set to true.
856
- */
857
- maxRows: e.oneOfType([e.number, e.string]),
858
- /**
859
- * Minimum number of rows to display when multiline option is set to true.
860
- */
861
- minRows: e.oneOfType([e.number, e.string]),
862
- /**
863
- * If `true`, a [TextareaAutosize](https://mui.com/material-ui/react-textarea-autosize/) element is rendered.
864
- * @default false
865
- */
866
- multiline: e.bool,
867
- /**
868
- * Name attribute of the `input` element.
869
- */
870
- name: e.string,
871
- /**
872
- * Callback fired when the `input` is blurred.
873
- *
874
- * Notice that the first argument (event) might be undefined.
875
- */
876
- onBlur: e.func,
877
- /**
878
- * Callback fired when the value is changed.
879
- *
880
- * @param {React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>} event The event source of the callback.
881
- * You can pull out the new value by accessing `event.target.value` (string).
882
- */
883
- onChange: e.func,
884
- /**
885
- * @ignore
886
- */
887
- onClick: e.func,
888
- /**
889
- * @ignore
890
- */
891
- onFocus: e.func,
892
- /**
893
- * Callback fired when the `input` doesn't satisfy its constraints.
894
- */
895
- onInvalid: e.func,
896
- /**
897
- * @ignore
898
- */
899
- onKeyDown: e.func,
900
- /**
901
- * @ignore
902
- */
903
- onKeyUp: e.func,
904
- /**
905
- * The short hint displayed in the `input` before the user enters a value.
906
- */
907
- placeholder: e.string,
908
- /**
909
- * It prevents the user from changing the value of the field
910
- * (not from interacting with the field).
911
- */
912
- readOnly: e.bool,
913
- /**
914
- * @ignore
915
- */
916
- renderSuffix: e.func,
917
- /**
918
- * If `true`, the `input` element is required.
919
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
920
- */
921
- required: e.bool,
922
- /**
923
- * Number of rows to display when multiline option is set to true.
924
- */
925
- rows: e.oneOfType([e.number, e.string]),
926
- /**
927
- * The size of the component.
928
- */
929
- size: e.oneOfType([e.oneOf(["medium", "small"]), e.string]),
930
- /**
931
- * The extra props for the slot components.
932
- * You can override the existing props or add new ones.
933
- *
934
- * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
935
- *
936
- * @default {}
937
- */
938
- slotProps: e.shape({
939
- input: e.object,
940
- root: e.object
941
- }),
942
- /**
943
- * The components used for each slot inside.
944
- *
945
- * This prop is an alias for the `components` prop, which will be deprecated in the future.
946
- *
947
- * @default {}
948
- */
949
- slots: e.shape({
950
- input: e.elementType,
951
- root: e.elementType
952
- }),
953
- /**
954
- * Start `InputAdornment` for this component.
955
- */
956
- startAdornment: e.node,
957
- /**
958
- * The system prop that allows defining system overrides as well as additional CSS styles.
959
- */
960
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
961
- /**
962
- * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
963
- * @default 'text'
964
- */
965
- type: e.string,
966
- /**
967
- * The value of the `input` element, required for a controlled component.
968
- */
969
- value: e.any
970
- });
971
- const dt = (o) => {
972
- const {
973
- classes: t
974
- } = o, r = Q({
975
- root: ["root"],
976
- notchedOutline: ["notchedOutline"],
977
- input: ["input"]
978
- }, Qo, t);
979
- return {
980
- ...t,
981
- // forward classes to the InputBase
982
- ...r
983
- };
984
- }, ct = N(De, {
985
- shouldForwardProp: (o) => ue(o) || o === "classes",
986
- name: "MuiOutlinedInput",
987
- slot: "Root",
988
- overridesResolver: Ae
989
- })(U(({
990
- theme: o
991
- }) => {
992
- const t = o.palette.mode === "light" ? "rgba(0, 0, 0, 0.23)" : "rgba(255, 255, 255, 0.23)";
993
- return {
994
- position: "relative",
995
- borderRadius: (o.vars || o).shape.borderRadius,
996
- [`&:hover .${J.notchedOutline}`]: {
997
- borderColor: (o.vars || o).palette.text.primary
998
- },
999
- // Reset on touch devices, it doesn't add specificity
1000
- "@media (hover: none)": {
1001
- [`&:hover .${J.notchedOutline}`]: {
1002
- borderColor: o.vars ? o.alpha(o.vars.palette.common.onBackground, 0.23) : t
1003
- }
1004
- },
1005
- [`&.${J.focused} .${J.notchedOutline}`]: {
1006
- borderWidth: 2
1007
- },
1008
- variants: [...Object.entries(o.palette).filter(be()).map(([n]) => ({
1009
- props: {
1010
- color: n
1011
- },
1012
- style: {
1013
- [`&.${J.focused} .${J.notchedOutline}`]: {
1014
- borderColor: (o.vars || o).palette[n].main
1015
- }
1016
- }
1017
- })), {
1018
- props: {},
1019
- // to override the above style
1020
- style: {
1021
- [`&.${J.error} .${J.notchedOutline}`]: {
1022
- borderColor: (o.vars || o).palette.error.main
1023
- },
1024
- [`&.${J.disabled} .${J.notchedOutline}`]: {
1025
- borderColor: (o.vars || o).palette.action.disabled
1026
- }
1027
- }
1028
- }, {
1029
- props: ({
1030
- ownerState: n
1031
- }) => n.startAdornment,
1032
- style: {
1033
- paddingLeft: 14
1034
- }
1035
- }, {
1036
- props: ({
1037
- ownerState: n
1038
- }) => n.endAdornment,
1039
- style: {
1040
- paddingRight: 14
1041
- }
1042
- }, {
1043
- props: ({
1044
- ownerState: n
1045
- }) => n.multiline,
1046
- style: {
1047
- padding: "16.5px 14px"
1048
- }
1049
- }, {
1050
- props: ({
1051
- ownerState: n,
1052
- size: r
1053
- }) => n.multiline && r === "small",
1054
- style: {
1055
- padding: "8.5px 14px"
1056
- }
1057
- }]
1058
- };
1059
- })), ut = N(Po, {
1060
- name: "MuiOutlinedInput",
1061
- slot: "NotchedOutline"
1062
- })(U(({
1063
- theme: o
1064
- }) => {
1065
- const t = o.palette.mode === "light" ? "rgba(0, 0, 0, 0.23)" : "rgba(255, 255, 255, 0.23)";
1066
- return {
1067
- borderColor: o.vars ? o.alpha(o.vars.palette.common.onBackground, 0.23) : t
1068
- };
1069
- })), pt = N(Le, {
1070
- name: "MuiOutlinedInput",
1071
- slot: "Input",
1072
- overridesResolver: ze
1073
- })(U(({
1074
- theme: o
1075
- }) => ({
1076
- padding: "16.5px 14px",
1077
- ...!o.vars && {
1078
- "&:-webkit-autofill": {
1079
- WebkitBoxShadow: o.palette.mode === "light" ? null : "0 0 0 100px #266798 inset",
1080
- WebkitTextFillColor: o.palette.mode === "light" ? null : "#fff",
1081
- caretColor: o.palette.mode === "light" ? null : "#fff",
1082
- borderRadius: "inherit"
1083
- }
1084
- },
1085
- ...o.vars && {
1086
- "&:-webkit-autofill": {
1087
- borderRadius: "inherit"
1088
- },
1089
- [o.getColorSchemeSelector("dark")]: {
1090
- "&:-webkit-autofill": {
1091
- WebkitBoxShadow: "0 0 0 100px #266798 inset",
1092
- WebkitTextFillColor: "#fff",
1093
- caretColor: "#fff"
1094
- }
1095
- }
1096
- },
1097
- variants: [{
1098
- props: {
1099
- size: "small"
1100
- },
1101
- style: {
1102
- padding: "8.5px 14px"
1103
- }
1104
- }, {
1105
- props: ({
1106
- ownerState: t
1107
- }) => t.multiline,
1108
- style: {
1109
- padding: 0
1110
- }
1111
- }, {
1112
- props: ({
1113
- ownerState: t
1114
- }) => t.startAdornment,
1115
- style: {
1116
- paddingLeft: 0
1117
- }
1118
- }, {
1119
- props: ({
1120
- ownerState: t
1121
- }) => t.endAdornment,
1122
- style: {
1123
- paddingRight: 0
1124
- }
1125
- }]
1126
- }))), no = /* @__PURE__ */ s.forwardRef(function(t, n) {
1127
- const r = ae({
1128
- props: t,
1129
- name: "MuiOutlinedInput"
1130
- }), {
1131
- components: a = {},
1132
- fullWidth: d = !1,
1133
- inputComponent: i = "input",
1134
- label: u,
1135
- multiline: v = !1,
1136
- notched: S,
1137
- slots: f = {},
1138
- slotProps: y = {},
1139
- type: b = "text",
1140
- ...R
1141
- } = r, C = dt(r), T = oo(), g = to({
1142
- props: r,
1143
- muiFormControl: T,
1144
- states: ["color", "disabled", "error", "focused", "hiddenLabel", "size", "required"]
1145
- }), h = {
1146
- ...r,
1147
- color: g.color || "primary",
1148
- disabled: g.disabled,
1149
- error: g.error,
1150
- focused: g.focused,
1151
- formControl: T,
1152
- fullWidth: d,
1153
- hiddenLabel: g.hiddenLabel,
1154
- multiline: v,
1155
- size: g.size,
1156
- type: b
1157
- }, O = f.root ?? a.Root ?? ct, c = f.input ?? a.Input ?? pt, [p, P] = _o("notchedOutline", {
1158
- elementType: ut,
1159
- className: C.notchedOutline,
1160
- shouldForwardComponentProp: !0,
1161
- ownerState: h,
1162
- externalForwardedProps: {
1163
- slots: f,
1164
- slotProps: y
1165
- },
1166
- additionalProps: {
1167
- label: u != null && u !== "" && g.required ? /* @__PURE__ */ m.jsxs(s.Fragment, {
1168
- children: [u, " ", "*"]
1169
- }) : u
1170
- }
1171
- });
1172
- return /* @__PURE__ */ m.jsx(Ue, {
1173
- slots: {
1174
- root: O,
1175
- input: c
1176
- },
1177
- slotProps: y,
1178
- renderSuffix: (w) => /* @__PURE__ */ m.jsx(p, {
1179
- ...P,
1180
- notched: typeof S < "u" ? S : !!(w.startAdornment || w.filled || w.focused)
1181
- }),
1182
- fullWidth: d,
1183
- inputComponent: i,
1184
- multiline: v,
1185
- ref: n,
1186
- type: b,
1187
- ...R,
1188
- classes: {
1189
- ...C,
1190
- notchedOutline: null
1191
- }
1192
- });
1193
- });
1194
- process.env.NODE_ENV !== "production" && (no.propTypes = {
1195
- // ┌────────────────────────────── Warning ──────────────────────────────┐
1196
- // │ These PropTypes are generated from the TypeScript type definitions. │
1197
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1198
- // └─────────────────────────────────────────────────────────────────────┘
1199
- /**
1200
- * This prop helps users to fill forms faster, especially on mobile devices.
1201
- * The name can be confusing, as it's more like an autofill.
1202
- * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
1203
- */
1204
- autoComplete: e.string,
1205
- /**
1206
- * If `true`, the `input` element is focused during the first mount.
1207
- */
1208
- autoFocus: e.bool,
1209
- /**
1210
- * Override or extend the styles applied to the component.
1211
- */
1212
- classes: e.object,
1213
- /**
1214
- * The color of the component.
1215
- * It supports both default and custom theme colors, which can be added as shown in the
1216
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1217
- * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.
1218
- */
1219
- color: e.oneOfType([e.oneOf(["primary", "secondary"]), e.string]),
1220
- /**
1221
- * The components used for each slot inside.
1222
- *
1223
- * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
1224
- *
1225
- * @default {}
1226
- */
1227
- components: e.shape({
1228
- Input: e.elementType,
1229
- Root: e.elementType
1230
- }),
1231
- /**
1232
- * The default value. Use when the component is not controlled.
1233
- */
1234
- defaultValue: e.any,
1235
- /**
1236
- * If `true`, the component is disabled.
1237
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
1238
- */
1239
- disabled: e.bool,
1240
- /**
1241
- * End `InputAdornment` for this component.
1242
- */
1243
- endAdornment: e.node,
1244
- /**
1245
- * If `true`, the `input` will indicate an error.
1246
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
1247
- */
1248
- error: e.bool,
1249
- /**
1250
- * If `true`, the `input` will take up the full width of its container.
1251
- * @default false
1252
- */
1253
- fullWidth: e.bool,
1254
- /**
1255
- * The id of the `input` element.
1256
- */
1257
- id: e.string,
1258
- /**
1259
- * The component used for the `input` element.
1260
- * Either a string to use a HTML element or a component.
1261
- * @default 'input'
1262
- */
1263
- inputComponent: e.elementType,
1264
- /**
1265
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
1266
- * @default {}
1267
- */
1268
- inputProps: e.object,
1269
- /**
1270
- * Pass a ref to the `input` element.
1271
- */
1272
- inputRef: ge,
1273
- /**
1274
- * The label of the `input`. It is only used for layout. The actual labelling
1275
- * is handled by `InputLabel`.
1276
- */
1277
- label: e.node,
1278
- /**
1279
- * If `dense`, will adjust vertical spacing. This is normally obtained via context from
1280
- * FormControl.
1281
- * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.
1282
- */
1283
- margin: e.oneOf(["dense", "none"]),
1284
- /**
1285
- * Maximum number of rows to display when multiline option is set to true.
1286
- */
1287
- maxRows: e.oneOfType([e.number, e.string]),
1288
- /**
1289
- * Minimum number of rows to display when multiline option is set to true.
1290
- */
1291
- minRows: e.oneOfType([e.number, e.string]),
1292
- /**
1293
- * If `true`, a [TextareaAutosize](https://mui.com/material-ui/react-textarea-autosize/) element is rendered.
1294
- * @default false
1295
- */
1296
- multiline: e.bool,
1297
- /**
1298
- * Name attribute of the `input` element.
1299
- */
1300
- name: e.string,
1301
- /**
1302
- * If `true`, the outline is notched to accommodate the label.
1303
- */
1304
- notched: e.bool,
1305
- /**
1306
- * Callback fired when the value is changed.
1307
- *
1308
- * @param {React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>} event The event source of the callback.
1309
- * You can pull out the new value by accessing `event.target.value` (string).
1310
- */
1311
- onChange: e.func,
1312
- /**
1313
- * The short hint displayed in the `input` before the user enters a value.
1314
- */
1315
- placeholder: e.string,
1316
- /**
1317
- * It prevents the user from changing the value of the field
1318
- * (not from interacting with the field).
1319
- */
1320
- readOnly: e.bool,
1321
- /**
1322
- * If `true`, the `input` element is required.
1323
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
1324
- */
1325
- required: e.bool,
1326
- /**
1327
- * Number of rows to display when multiline option is set to true.
1328
- */
1329
- rows: e.oneOfType([e.number, e.string]),
1330
- /**
1331
- * The props used for each slot inside.
1332
- * @default {}
1333
- */
1334
- slotProps: e.shape({
1335
- input: e.object,
1336
- notchedOutline: e.oneOfType([e.func, e.object]),
1337
- root: e.object
1338
- }),
1339
- /**
1340
- * The components used for each slot inside.
1341
- * @default {}
1342
- */
1343
- slots: e.shape({
1344
- input: e.elementType,
1345
- notchedOutline: e.elementType,
1346
- root: e.elementType
1347
- }),
1348
- /**
1349
- * Start `InputAdornment` for this component.
1350
- */
1351
- startAdornment: e.node,
1352
- /**
1353
- * The system prop that allows defining system overrides as well as additional CSS styles.
1354
- */
1355
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
1356
- /**
1357
- * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
1358
- * @default 'text'
1359
- */
1360
- type: e.string,
1361
- /**
1362
- * The value of the `input` element, required for a controlled component.
1363
- */
1364
- value: e.any
1365
- });
1366
- no.muiName = "Input";
1367
- function ft(o) {
1368
- return ye("MuiCircularProgress", o);
1369
- }
1370
- he("MuiCircularProgress", ["root", "determinate", "indeterminate", "colorPrimary", "colorSecondary", "svg", "track", "circle", "circleDeterminate", "circleIndeterminate", "circleDisableShrink"]);
1371
- const G = 44, Je = To`
1372
- 0% {
1373
- transform: rotate(0deg);
1374
- }
1375
-
1376
- 100% {
1377
- transform: rotate(360deg);
1378
- }
1379
- `, Qe = To`
1380
- 0% {
1381
- stroke-dasharray: 1px, 200px;
1382
- stroke-dashoffset: 0;
1383
- }
1384
-
1385
- 50% {
1386
- stroke-dasharray: 100px, 200px;
1387
- stroke-dashoffset: -15px;
1388
- }
1389
-
1390
- 100% {
1391
- stroke-dasharray: 1px, 200px;
1392
- stroke-dashoffset: -126px;
1393
- }
1394
- `, mt = typeof Je != "string" ? Ro`
1395
- animation: ${Je} 1.4s linear infinite;
1396
- ` : null, bt = typeof Qe != "string" ? Ro`
1397
- animation: ${Qe} 1.4s ease-in-out infinite;
1398
- ` : null, gt = (o) => {
1399
- const {
1400
- classes: t,
1401
- variant: n,
1402
- color: r,
1403
- disableShrink: a
1404
- } = o, d = {
1405
- root: ["root", n, `color${F(r)}`],
1406
- svg: ["svg"],
1407
- track: ["track"],
1408
- circle: ["circle", `circle${F(n)}`, a && "circleDisableShrink"]
1409
- };
1410
- return Q(d, ft, t);
1411
- }, yt = N("span", {
1412
- name: "MuiCircularProgress",
1413
- slot: "Root",
1414
- overridesResolver: (o, t) => {
1415
- const {
1416
- ownerState: n
1417
- } = o;
1418
- return [t.root, t[n.variant], t[`color${F(n.color)}`]];
1419
- }
1420
- })(U(({
1421
- theme: o
1422
- }) => ({
1423
- display: "inline-block",
1424
- variants: [{
1425
- props: {
1426
- variant: "determinate"
1427
- },
1428
- style: {
1429
- transition: o.transitions.create("transform")
1430
- }
1431
- }, {
1432
- props: {
1433
- variant: "indeterminate"
1434
- },
1435
- style: mt || {
1436
- animation: `${Je} 1.4s linear infinite`
1437
- }
1438
- }, ...Object.entries(o.palette).filter(be()).map(([t]) => ({
1439
- props: {
1440
- color: t
1441
- },
1442
- style: {
1443
- color: (o.vars || o).palette[t].main
1444
- }
1445
- }))]
1446
- }))), ht = N("svg", {
1447
- name: "MuiCircularProgress",
1448
- slot: "Svg"
1449
- })({
1450
- display: "block"
1451
- // Keeps the progress centered
1452
- }), vt = N("circle", {
1453
- name: "MuiCircularProgress",
1454
- slot: "Circle",
1455
- overridesResolver: (o, t) => {
1456
- const {
1457
- ownerState: n
1458
- } = o;
1459
- return [t.circle, t[`circle${F(n.variant)}`], n.disableShrink && t.circleDisableShrink];
1460
- }
1461
- })(U(({
1462
- theme: o
1463
- }) => ({
1464
- stroke: "currentColor",
1465
- variants: [{
1466
- props: {
1467
- variant: "determinate"
1468
- },
1469
- style: {
1470
- transition: o.transitions.create("stroke-dashoffset")
1471
- }
1472
- }, {
1473
- props: {
1474
- variant: "indeterminate"
1475
- },
1476
- style: {
1477
- // Some default value that looks fine waiting for the animation to kicks in.
1478
- strokeDasharray: "80px, 200px",
1479
- strokeDashoffset: 0
1480
- // Add the unit to fix a Edge 16 and below bug.
1481
- }
1482
- }, {
1483
- props: ({
1484
- ownerState: t
1485
- }) => t.variant === "indeterminate" && !t.disableShrink,
1486
- style: bt || {
1487
- // At runtime for Pigment CSS, `bufferAnimation` will be null and the generated keyframe will be used.
1488
- animation: `${Qe} 1.4s ease-in-out infinite`
1489
- }
1490
- }]
1491
- }))), St = N("circle", {
1492
- name: "MuiCircularProgress",
1493
- slot: "Track"
1494
- })(U(({
1495
- theme: o
1496
- }) => ({
1497
- stroke: "currentColor",
1498
- opacity: (o.vars || o).palette.action.activatedOpacity
1499
- }))), Eo = /* @__PURE__ */ s.forwardRef(function(t, n) {
1500
- const r = ae({
1501
- props: t,
1502
- name: "MuiCircularProgress"
1503
- }), {
1504
- className: a,
1505
- color: d = "primary",
1506
- disableShrink: i = !1,
1507
- enableTrackSlot: u = !1,
1508
- size: v = 40,
1509
- style: S,
1510
- thickness: f = 3.6,
1511
- value: y = 0,
1512
- variant: b = "indeterminate",
1513
- ...R
1514
- } = r, C = {
1515
- ...r,
1516
- color: d,
1517
- disableShrink: i,
1518
- size: v,
1519
- thickness: f,
1520
- value: y,
1521
- variant: b,
1522
- enableTrackSlot: u
1523
- }, T = gt(C), g = {}, h = {}, O = {};
1524
- if (b === "determinate") {
1525
- const c = 2 * Math.PI * ((G - f) / 2);
1526
- g.strokeDasharray = c.toFixed(3), O["aria-valuenow"] = Math.round(y), g.strokeDashoffset = `${((100 - y) / 100 * c).toFixed(3)}px`, h.transform = "rotate(-90deg)";
1527
- }
1528
- return /* @__PURE__ */ m.jsx(yt, {
1529
- className: ie(T.root, a),
1530
- style: {
1531
- width: v,
1532
- height: v,
1533
- ...h,
1534
- ...S
1535
- },
1536
- ownerState: C,
1537
- ref: n,
1538
- role: "progressbar",
1539
- ...O,
1540
- ...R,
1541
- children: /* @__PURE__ */ m.jsxs(ht, {
1542
- className: T.svg,
1543
- ownerState: C,
1544
- viewBox: `${G / 2} ${G / 2} ${G} ${G}`,
1545
- children: [u ? /* @__PURE__ */ m.jsx(St, {
1546
- className: T.track,
1547
- ownerState: C,
1548
- cx: G,
1549
- cy: G,
1550
- r: (G - f) / 2,
1551
- fill: "none",
1552
- strokeWidth: f,
1553
- "aria-hidden": "true"
1554
- }) : null, /* @__PURE__ */ m.jsx(vt, {
1555
- className: T.circle,
1556
- style: g,
1557
- ownerState: C,
1558
- cx: G,
1559
- cy: G,
1560
- r: (G - f) / 2,
1561
- fill: "none",
1562
- strokeWidth: f
1563
- })]
1564
- })
1565
- });
1566
- });
1567
- process.env.NODE_ENV !== "production" && (Eo.propTypes = {
1568
- // ┌────────────────────────────── Warning ──────────────────────────────┐
1569
- // │ These PropTypes are generated from the TypeScript type definitions. │
1570
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1571
- // └─────────────────────────────────────────────────────────────────────┘
1572
- /**
1573
- * Override or extend the styles applied to the component.
1574
- */
1575
- classes: e.object,
1576
- /**
1577
- * @ignore
1578
- */
1579
- className: e.string,
1580
- /**
1581
- * The color of the component.
1582
- * It supports both default and custom theme colors, which can be added as shown in the
1583
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1584
- * @default 'primary'
1585
- */
1586
- color: e.oneOfType([e.oneOf(["inherit", "primary", "secondary", "error", "info", "success", "warning"]), e.string]),
1587
- /**
1588
- * If `true`, the shrink animation is disabled.
1589
- * This only works if variant is `indeterminate`.
1590
- * @default false
1591
- */
1592
- disableShrink: Io(e.bool, (o) => o.disableShrink && o.variant && o.variant !== "indeterminate" ? new Error("MUI: You have provided the `disableShrink` prop with a variant other than `indeterminate`. This will have no effect.") : null),
1593
- /**
1594
- * If `true`, a track circle slot is mounted to show a subtle background for the progress.
1595
- * The `size` and `thickness` apply to the track slot to be consistent with the progress circle.
1596
- * @default false
1597
- */
1598
- enableTrackSlot: e.bool,
1599
- /**
1600
- * The size of the component.
1601
- * If using a number, the pixel unit is assumed.
1602
- * If using a string, you need to provide the CSS unit, for example '3rem'.
1603
- * @default 40
1604
- */
1605
- size: e.oneOfType([e.number, e.string]),
1606
- /**
1607
- * @ignore
1608
- */
1609
- style: e.object,
1610
- /**
1611
- * The system prop that allows defining system overrides as well as additional CSS styles.
1612
- */
1613
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
1614
- /**
1615
- * The thickness of the circle.
1616
- * @default 3.6
1617
- */
1618
- thickness: e.number,
1619
- /**
1620
- * The value of the progress indicator for the determinate variant.
1621
- * Value between 0 and 100.
1622
- * @default 0
1623
- */
1624
- value: e.number,
1625
- /**
1626
- * The variant to use.
1627
- * Use indeterminate when there is no progress value.
1628
- * @default 'indeterminate'
1629
- */
1630
- variant: e.oneOf(["determinate", "indeterminate"])
1631
- });
1632
- const Ct = (o) => {
1633
- const {
1634
- classes: t,
1635
- disabled: n,
1636
- color: r,
1637
- edge: a,
1638
- size: d,
1639
- loading: i
1640
- } = o, u = {
1641
- root: ["root", i && "loading", n && "disabled", r !== "default" && `color${F(r)}`, a && `edge${F(a)}`, `size${F(d)}`],
1642
- loadingIndicator: ["loadingIndicator"],
1643
- loadingWrapper: ["loadingWrapper"]
1644
- };
1645
- return Q(u, Lo, t);
1646
- }, xt = N(qo, {
1647
- name: "MuiIconButton",
1648
- slot: "Root",
1649
- overridesResolver: (o, t) => {
1650
- const {
1651
- ownerState: n
1652
- } = o;
1653
- return [t.root, n.loading && t.loading, n.color !== "default" && t[`color${F(n.color)}`], n.edge && t[`edge${F(n.edge)}`], t[`size${F(n.size)}`]];
1654
- }
1655
- })(U(({
1656
- theme: o
1657
- }) => ({
1658
- textAlign: "center",
1659
- flex: "0 0 auto",
1660
- fontSize: o.typography.pxToRem(24),
1661
- padding: 8,
1662
- borderRadius: "50%",
1663
- color: (o.vars || o).palette.action.active,
1664
- transition: o.transitions.create("background-color", {
1665
- duration: o.transitions.duration.shortest
1666
- }),
1667
- variants: [{
1668
- props: (t) => !t.disableRipple,
1669
- style: {
1670
- "--IconButton-hoverBg": o.alpha((o.vars || o).palette.action.active, (o.vars || o).palette.action.hoverOpacity),
1671
- "&:hover": {
1672
- backgroundColor: "var(--IconButton-hoverBg)",
1673
- // Reset on touch devices, it doesn't add specificity
1674
- "@media (hover: none)": {
1675
- backgroundColor: "transparent"
1676
- }
1677
- }
1678
- }
1679
- }, {
1680
- props: {
1681
- edge: "start"
1682
- },
1683
- style: {
1684
- marginLeft: -12
1685
- }
1686
- }, {
1687
- props: {
1688
- edge: "start",
1689
- size: "small"
1690
- },
1691
- style: {
1692
- marginLeft: -3
1693
- }
1694
- }, {
1695
- props: {
1696
- edge: "end"
1697
- },
1698
- style: {
1699
- marginRight: -12
1700
- }
1701
- }, {
1702
- props: {
1703
- edge: "end",
1704
- size: "small"
1705
- },
1706
- style: {
1707
- marginRight: -3
1708
- }
1709
- }]
1710
- })), U(({
1711
- theme: o
1712
- }) => ({
1713
- variants: [{
1714
- props: {
1715
- color: "inherit"
1716
- },
1717
- style: {
1718
- color: "inherit"
1719
- }
1720
- }, ...Object.entries(o.palette).filter(be()).map(([t]) => ({
1721
- props: {
1722
- color: t
1723
- },
1724
- style: {
1725
- color: (o.vars || o).palette[t].main
1726
- }
1727
- })), ...Object.entries(o.palette).filter(be()).map(([t]) => ({
1728
- props: {
1729
- color: t
1730
- },
1731
- style: {
1732
- "--IconButton-hoverBg": o.alpha((o.vars || o).palette[t].main, (o.vars || o).palette.action.hoverOpacity)
1733
- }
1734
- })), {
1735
- props: {
1736
- size: "small"
1737
- },
1738
- style: {
1739
- padding: 5,
1740
- fontSize: o.typography.pxToRem(18)
1741
- }
1742
- }, {
1743
- props: {
1744
- size: "large"
1745
- },
1746
- style: {
1747
- padding: 12,
1748
- fontSize: o.typography.pxToRem(28)
1749
- }
1750
- }],
1751
- [`&.${uo.disabled}`]: {
1752
- backgroundColor: "transparent",
1753
- color: (o.vars || o).palette.action.disabled
1754
- },
1755
- [`&.${uo.loading}`]: {
1756
- color: "transparent"
1757
- }
1758
- }))), Ot = N("span", {
1759
- name: "MuiIconButton",
1760
- slot: "LoadingIndicator"
1761
- })(({
1762
- theme: o
1763
- }) => ({
1764
- display: "none",
1765
- position: "absolute",
1766
- visibility: "visible",
1767
- top: "50%",
1768
- left: "50%",
1769
- transform: "translate(-50%, -50%)",
1770
- color: (o.vars || o).palette.action.disabled,
1771
- variants: [{
1772
- props: {
1773
- loading: !0
1774
- },
1775
- style: {
1776
- display: "flex"
1777
- }
1778
- }]
1779
- })), wt = /* @__PURE__ */ s.forwardRef(function(t, n) {
1780
- const r = ae({
1781
- props: t,
1782
- name: "MuiIconButton"
1783
- }), {
1784
- edge: a = !1,
1785
- children: d,
1786
- className: i,
1787
- color: u = "default",
1788
- disabled: v = !1,
1789
- disableFocusRipple: S = !1,
1790
- size: f = "medium",
1791
- id: y,
1792
- loading: b = null,
1793
- loadingIndicator: R,
1794
- ...C
1795
- } = r, T = ko(y), g = R ?? /* @__PURE__ */ m.jsx(Eo, {
1796
- "aria-labelledby": T,
1797
- color: "inherit",
1798
- size: 16
1799
- }), h = {
1800
- ...r,
1801
- edge: a,
1802
- color: u,
1803
- disabled: v,
1804
- disableFocusRipple: S,
1805
- loading: b,
1806
- loadingIndicator: g,
1807
- size: f
1808
- }, O = Ct(h);
1809
- return /* @__PURE__ */ m.jsxs(xt, {
1810
- id: b ? T : y,
1811
- className: ie(O.root, i),
1812
- centerRipple: !0,
1813
- focusRipple: !S,
1814
- disabled: v || b,
1815
- ref: n,
1816
- ...C,
1817
- ownerState: h,
1818
- children: [typeof b == "boolean" && // use plain HTML span to minimize the runtime overhead
1819
- /* @__PURE__ */ m.jsx("span", {
1820
- className: O.loadingWrapper,
1821
- style: {
1822
- display: "contents"
1823
- },
1824
- children: /* @__PURE__ */ m.jsx(Ot, {
1825
- className: O.loadingIndicator,
1826
- ownerState: h,
1827
- children: b && g
1828
- })
1829
- }), d]
1830
- });
1831
- });
1832
- process.env.NODE_ENV !== "production" && (wt.propTypes = {
1833
- // ┌────────────────────────────── Warning ──────────────────────────────┐
1834
- // │ These PropTypes are generated from the TypeScript type definitions. │
1835
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1836
- // └─────────────────────────────────────────────────────────────────────┘
1837
- /**
1838
- * The icon to display.
1839
- */
1840
- children: Io(e.node, (o) => s.Children.toArray(o.children).some((n) => /* @__PURE__ */ s.isValidElement(n) && n.props.onClick) ? new Error(["MUI: You are providing an onClick event listener to a child of a button element.", "Prefer applying it to the IconButton directly.", "This guarantees that the whole <button> will be responsive to click events."].join(`
1841
- `)) : null),
1842
- /**
1843
- * Override or extend the styles applied to the component.
1844
- */
1845
- classes: e.object,
1846
- /**
1847
- * @ignore
1848
- */
1849
- className: e.string,
1850
- /**
1851
- * The color of the component.
1852
- * It supports both default and custom theme colors, which can be added as shown in the
1853
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1854
- * @default 'default'
1855
- */
1856
- color: e.oneOfType([e.oneOf(["inherit", "default", "primary", "secondary", "error", "info", "success", "warning"]), e.string]),
1857
- /**
1858
- * If `true`, the component is disabled.
1859
- * @default false
1860
- */
1861
- disabled: e.bool,
1862
- /**
1863
- * If `true`, the keyboard focus ripple is disabled.
1864
- * @default false
1865
- */
1866
- disableFocusRipple: e.bool,
1867
- /**
1868
- * If `true`, the ripple effect is disabled.
1869
- *
1870
- * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
1871
- * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
1872
- * @default false
1873
- */
1874
- disableRipple: e.bool,
1875
- /**
1876
- * If given, uses a negative margin to counteract the padding on one
1877
- * side (this is often helpful for aligning the left or right
1878
- * side of the icon with content above or below, without ruining the border
1879
- * size and shape).
1880
- * @default false
1881
- */
1882
- edge: e.oneOf(["end", "start", !1]),
1883
- /**
1884
- * @ignore
1885
- */
1886
- id: e.string,
1887
- /**
1888
- * If `true`, the loading indicator is visible and the button is disabled.
1889
- * If `true | false`, the loading wrapper is always rendered before the children to prevent [Google Translation Crash](https://github.com/mui/material-ui/issues/27853).
1890
- * @default null
1891
- */
1892
- loading: e.bool,
1893
- /**
1894
- * Element placed before the children if the button is in loading state.
1895
- * The node should contain an element with `role="progressbar"` with an accessible name.
1896
- * By default, it renders a `CircularProgress` that is labeled by the button itself.
1897
- * @default <CircularProgress color="inherit" size={16} />
1898
- */
1899
- loadingIndicator: e.node,
1900
- /**
1901
- * The size of the component.
1902
- * `small` is equivalent to the dense button styling.
1903
- * @default 'medium'
1904
- */
1905
- size: e.oneOfType([e.oneOf(["small", "medium", "large"]), e.string]),
1906
- /**
1907
- * The system prop that allows defining system overrides as well as additional CSS styles.
1908
- */
1909
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object])
1910
- });
1911
- function It(o) {
1912
- return ye("MuiInput", o);
1913
- }
1914
- const ke = {
1915
- ...je,
1916
- ...he("MuiInput", ["root", "underline", "input"])
1917
- }, Rt = (o) => {
1918
- const {
1919
- classes: t,
1920
- disableUnderline: n
1921
- } = o, a = Q({
1922
- root: ["root", !n && "underline"],
1923
- input: ["input"]
1924
- }, It, t);
1925
- return {
1926
- ...t,
1927
- // forward classes to the InputBase
1928
- ...a
1929
- };
1930
- }, Tt = N(De, {
1931
- shouldForwardProp: (o) => ue(o) || o === "classes",
1932
- name: "MuiInput",
1933
- slot: "Root",
1934
- overridesResolver: (o, t) => {
1935
- const {
1936
- ownerState: n
1937
- } = o;
1938
- return [...Ae(o, t), !n.disableUnderline && t.underline];
1939
- }
1940
- })(U(({
1941
- theme: o
1942
- }) => {
1943
- let n = o.palette.mode === "light" ? "rgba(0, 0, 0, 0.42)" : "rgba(255, 255, 255, 0.7)";
1944
- return o.vars && (n = o.alpha(o.vars.palette.common.onBackground, o.vars.opacity.inputUnderline)), {
1945
- position: "relative",
1946
- variants: [{
1947
- props: ({
1948
- ownerState: r
1949
- }) => r.formControl,
1950
- style: {
1951
- "label + &": {
1952
- marginTop: 16
1953
- }
1954
- }
1955
- }, {
1956
- props: ({
1957
- ownerState: r
1958
- }) => !r.disableUnderline,
1959
- style: {
1960
- "&::after": {
1961
- left: 0,
1962
- bottom: 0,
1963
- content: '""',
1964
- position: "absolute",
1965
- right: 0,
1966
- transform: "scaleX(0)",
1967
- transition: o.transitions.create("transform", {
1968
- duration: o.transitions.duration.shorter,
1969
- easing: o.transitions.easing.easeOut
1970
- }),
1971
- pointerEvents: "none"
1972
- // Transparent to the hover style.
1973
- },
1974
- [`&.${ke.focused}:after`]: {
1975
- // translateX(0) is a workaround for Safari transform scale bug
1976
- // See https://github.com/mui/material-ui/issues/31766
1977
- transform: "scaleX(1) translateX(0)"
1978
- },
1979
- [`&.${ke.error}`]: {
1980
- "&::before, &::after": {
1981
- borderBottomColor: (o.vars || o).palette.error.main
1982
- }
1983
- },
1984
- "&::before": {
1985
- borderBottom: `1px solid ${n}`,
1986
- left: 0,
1987
- bottom: 0,
1988
- content: '"\\00a0"',
1989
- position: "absolute",
1990
- right: 0,
1991
- transition: o.transitions.create("border-bottom-color", {
1992
- duration: o.transitions.duration.shorter
1993
- }),
1994
- pointerEvents: "none"
1995
- // Transparent to the hover style.
1996
- },
1997
- [`&:hover:not(.${ke.disabled}, .${ke.error}):before`]: {
1998
- borderBottom: `2px solid ${(o.vars || o).palette.text.primary}`,
1999
- // Reset on touch devices, it doesn't add specificity
2000
- "@media (hover: none)": {
2001
- borderBottom: `1px solid ${n}`
2002
- }
2003
- },
2004
- [`&.${ke.disabled}:before`]: {
2005
- borderBottomStyle: "dotted"
2006
- }
2007
- }
2008
- }, ...Object.entries(o.palette).filter(be()).map(([r]) => ({
2009
- props: {
2010
- color: r,
2011
- disableUnderline: !1
2012
- },
2013
- style: {
2014
- "&::after": {
2015
- borderBottom: `2px solid ${(o.vars || o).palette[r].main}`
2016
- }
2017
- }
2018
- }))]
2019
- };
2020
- })), Nt = N(Le, {
2021
- name: "MuiInput",
2022
- slot: "Input",
2023
- overridesResolver: ze
2024
- })({}), ro = /* @__PURE__ */ s.forwardRef(function(t, n) {
2025
- const r = ae({
2026
- props: t,
2027
- name: "MuiInput"
2028
- }), {
2029
- disableUnderline: a = !1,
2030
- components: d = {},
2031
- componentsProps: i,
2032
- fullWidth: u = !1,
2033
- inputComponent: v = "input",
2034
- multiline: S = !1,
2035
- slotProps: f,
2036
- slots: y = {},
2037
- type: b = "text",
2038
- ...R
2039
- } = r, C = Rt(r), g = {
2040
- root: {
2041
- ownerState: {
2042
- disableUnderline: a
2043
- }
2044
- }
2045
- }, h = f ?? i ? eo(f ?? i, g) : g, O = y.root ?? d.Root ?? Tt, c = y.input ?? d.Input ?? Nt;
2046
- return /* @__PURE__ */ m.jsx(Ue, {
2047
- slots: {
2048
- root: O,
2049
- input: c
2050
- },
2051
- slotProps: h,
2052
- fullWidth: u,
2053
- inputComponent: v,
2054
- multiline: S,
2055
- ref: n,
2056
- type: b,
2057
- ...R,
2058
- classes: C
2059
- });
2060
- });
2061
- process.env.NODE_ENV !== "production" && (ro.propTypes = {
2062
- // ┌────────────────────────────── Warning ──────────────────────────────┐
2063
- // │ These PropTypes are generated from the TypeScript type definitions. │
2064
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
2065
- // └─────────────────────────────────────────────────────────────────────┘
2066
- /**
2067
- * This prop helps users to fill forms faster, especially on mobile devices.
2068
- * The name can be confusing, as it's more like an autofill.
2069
- * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
2070
- */
2071
- autoComplete: e.string,
2072
- /**
2073
- * If `true`, the `input` element is focused during the first mount.
2074
- */
2075
- autoFocus: e.bool,
2076
- /**
2077
- * Override or extend the styles applied to the component.
2078
- */
2079
- classes: e.object,
2080
- /**
2081
- * The color of the component.
2082
- * It supports both default and custom theme colors, which can be added as shown in the
2083
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
2084
- * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.
2085
- */
2086
- color: e.oneOfType([e.oneOf(["primary", "secondary"]), e.string]),
2087
- /**
2088
- * The components used for each slot inside.
2089
- *
2090
- * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
2091
- *
2092
- * @default {}
2093
- */
2094
- components: e.shape({
2095
- Input: e.elementType,
2096
- Root: e.elementType
2097
- }),
2098
- /**
2099
- * The extra props for the slot components.
2100
- * You can override the existing props or add new ones.
2101
- *
2102
- * @deprecated use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
2103
- *
2104
- * @default {}
2105
- */
2106
- componentsProps: e.shape({
2107
- input: e.object,
2108
- root: e.object
2109
- }),
2110
- /**
2111
- * The default value. Use when the component is not controlled.
2112
- */
2113
- defaultValue: e.any,
2114
- /**
2115
- * If `true`, the component is disabled.
2116
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2117
- */
2118
- disabled: e.bool,
2119
- /**
2120
- * If `true`, the `input` will not have an underline.
2121
- * @default false
2122
- */
2123
- disableUnderline: e.bool,
2124
- /**
2125
- * End `InputAdornment` for this component.
2126
- */
2127
- endAdornment: e.node,
2128
- /**
2129
- * If `true`, the `input` will indicate an error.
2130
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2131
- */
2132
- error: e.bool,
2133
- /**
2134
- * If `true`, the `input` will take up the full width of its container.
2135
- * @default false
2136
- */
2137
- fullWidth: e.bool,
2138
- /**
2139
- * The id of the `input` element.
2140
- */
2141
- id: e.string,
2142
- /**
2143
- * The component used for the `input` element.
2144
- * Either a string to use a HTML element or a component.
2145
- * @default 'input'
2146
- */
2147
- inputComponent: e.elementType,
2148
- /**
2149
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
2150
- * @default {}
2151
- */
2152
- inputProps: e.object,
2153
- /**
2154
- * Pass a ref to the `input` element.
2155
- */
2156
- inputRef: ge,
2157
- /**
2158
- * If `dense`, will adjust vertical spacing. This is normally obtained via context from
2159
- * FormControl.
2160
- * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.
2161
- */
2162
- margin: e.oneOf(["dense", "none"]),
2163
- /**
2164
- * Maximum number of rows to display when multiline option is set to true.
2165
- */
2166
- maxRows: e.oneOfType([e.number, e.string]),
2167
- /**
2168
- * Minimum number of rows to display when multiline option is set to true.
2169
- */
2170
- minRows: e.oneOfType([e.number, e.string]),
2171
- /**
2172
- * If `true`, a [TextareaAutosize](https://mui.com/material-ui/react-textarea-autosize/) element is rendered.
2173
- * @default false
2174
- */
2175
- multiline: e.bool,
2176
- /**
2177
- * Name attribute of the `input` element.
2178
- */
2179
- name: e.string,
2180
- /**
2181
- * Callback fired when the value is changed.
2182
- *
2183
- * @param {React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>} event The event source of the callback.
2184
- * You can pull out the new value by accessing `event.target.value` (string).
2185
- */
2186
- onChange: e.func,
2187
- /**
2188
- * The short hint displayed in the `input` before the user enters a value.
2189
- */
2190
- placeholder: e.string,
2191
- /**
2192
- * It prevents the user from changing the value of the field
2193
- * (not from interacting with the field).
2194
- */
2195
- readOnly: e.bool,
2196
- /**
2197
- * If `true`, the `input` element is required.
2198
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2199
- */
2200
- required: e.bool,
2201
- /**
2202
- * Number of rows to display when multiline option is set to true.
2203
- */
2204
- rows: e.oneOfType([e.number, e.string]),
2205
- /**
2206
- * The extra props for the slot components.
2207
- * You can override the existing props or add new ones.
2208
- *
2209
- * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
2210
- *
2211
- * @default {}
2212
- */
2213
- slotProps: e.shape({
2214
- input: e.object,
2215
- root: e.object
2216
- }),
2217
- /**
2218
- * The components used for each slot inside.
2219
- *
2220
- * This prop is an alias for the `components` prop, which will be deprecated in the future.
2221
- *
2222
- * @default {}
2223
- */
2224
- slots: e.shape({
2225
- input: e.elementType,
2226
- root: e.elementType
2227
- }),
2228
- /**
2229
- * Start `InputAdornment` for this component.
2230
- */
2231
- startAdornment: e.node,
2232
- /**
2233
- * The system prop that allows defining system overrides as well as additional CSS styles.
2234
- */
2235
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
2236
- /**
2237
- * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
2238
- * @default 'text'
2239
- */
2240
- type: e.string,
2241
- /**
2242
- * The value of the `input` element, required for a controlled component.
2243
- */
2244
- value: e.any
2245
- });
2246
- ro.muiName = "Input";
2247
- function kt(o) {
2248
- return ye("MuiFilledInput", o);
2249
- }
2250
- const ce = {
2251
- ...je,
2252
- ...he("MuiFilledInput", ["root", "underline", "input", "adornedStart", "adornedEnd", "sizeSmall", "multiline", "hiddenLabel"])
2253
- }, Pt = (o) => {
2254
- const {
2255
- classes: t,
2256
- disableUnderline: n,
2257
- startAdornment: r,
2258
- endAdornment: a,
2259
- size: d,
2260
- hiddenLabel: i,
2261
- multiline: u
2262
- } = o, v = {
2263
- root: ["root", !n && "underline", r && "adornedStart", a && "adornedEnd", d === "small" && `size${F(d)}`, i && "hiddenLabel", u && "multiline"],
2264
- input: ["input"]
2265
- }, S = Q(v, kt, t);
2266
- return {
2267
- ...t,
2268
- // forward classes to the InputBase
2269
- ...S
2270
- };
2271
- }, jt = N(De, {
2272
- shouldForwardProp: (o) => ue(o) || o === "classes",
2273
- name: "MuiFilledInput",
2274
- slot: "Root",
2275
- overridesResolver: (o, t) => {
2276
- const {
2277
- ownerState: n
2278
- } = o;
2279
- return [...Ae(o, t), !n.disableUnderline && t.underline];
2280
- }
2281
- })(U(({
2282
- theme: o
2283
- }) => {
2284
- const t = o.palette.mode === "light", n = t ? "rgba(0, 0, 0, 0.42)" : "rgba(255, 255, 255, 0.7)", r = t ? "rgba(0, 0, 0, 0.06)" : "rgba(255, 255, 255, 0.09)", a = t ? "rgba(0, 0, 0, 0.09)" : "rgba(255, 255, 255, 0.13)", d = t ? "rgba(0, 0, 0, 0.12)" : "rgba(255, 255, 255, 0.12)";
2285
- return {
2286
- position: "relative",
2287
- backgroundColor: o.vars ? o.vars.palette.FilledInput.bg : r,
2288
- borderTopLeftRadius: (o.vars || o).shape.borderRadius,
2289
- borderTopRightRadius: (o.vars || o).shape.borderRadius,
2290
- transition: o.transitions.create("background-color", {
2291
- duration: o.transitions.duration.shorter,
2292
- easing: o.transitions.easing.easeOut
2293
- }),
2294
- "&:hover": {
2295
- backgroundColor: o.vars ? o.vars.palette.FilledInput.hoverBg : a,
2296
- // Reset on touch devices, it doesn't add specificity
2297
- "@media (hover: none)": {
2298
- backgroundColor: o.vars ? o.vars.palette.FilledInput.bg : r
2299
- }
2300
- },
2301
- [`&.${ce.focused}`]: {
2302
- backgroundColor: o.vars ? o.vars.palette.FilledInput.bg : r
2303
- },
2304
- [`&.${ce.disabled}`]: {
2305
- backgroundColor: o.vars ? o.vars.palette.FilledInput.disabledBg : d
2306
- },
2307
- variants: [{
2308
- props: ({
2309
- ownerState: i
2310
- }) => !i.disableUnderline,
2311
- style: {
2312
- "&::after": {
2313
- left: 0,
2314
- bottom: 0,
2315
- content: '""',
2316
- position: "absolute",
2317
- right: 0,
2318
- transform: "scaleX(0)",
2319
- transition: o.transitions.create("transform", {
2320
- duration: o.transitions.duration.shorter,
2321
- easing: o.transitions.easing.easeOut
2322
- }),
2323
- pointerEvents: "none"
2324
- // Transparent to the hover style.
2325
- },
2326
- [`&.${ce.focused}:after`]: {
2327
- // translateX(0) is a workaround for Safari transform scale bug
2328
- // See https://github.com/mui/material-ui/issues/31766
2329
- transform: "scaleX(1) translateX(0)"
2330
- },
2331
- [`&.${ce.error}`]: {
2332
- "&::before, &::after": {
2333
- borderBottomColor: (o.vars || o).palette.error.main
2334
- }
2335
- },
2336
- "&::before": {
2337
- borderBottom: `1px solid ${o.vars ? o.alpha(o.vars.palette.common.onBackground, o.vars.opacity.inputUnderline) : n}`,
2338
- left: 0,
2339
- bottom: 0,
2340
- content: '"\\00a0"',
2341
- position: "absolute",
2342
- right: 0,
2343
- transition: o.transitions.create("border-bottom-color", {
2344
- duration: o.transitions.duration.shorter
2345
- }),
2346
- pointerEvents: "none"
2347
- // Transparent to the hover style.
2348
- },
2349
- [`&:hover:not(.${ce.disabled}, .${ce.error}):before`]: {
2350
- borderBottom: `1px solid ${(o.vars || o).palette.text.primary}`
2351
- },
2352
- [`&.${ce.disabled}:before`]: {
2353
- borderBottomStyle: "dotted"
2354
- }
2355
- }
2356
- }, ...Object.entries(o.palette).filter(be()).map(([i]) => ({
2357
- props: {
2358
- disableUnderline: !1,
2359
- color: i
2360
- },
2361
- style: {
2362
- "&::after": {
2363
- borderBottom: `2px solid ${(o.vars || o).palette[i]?.main}`
2364
- }
2365
- }
2366
- })), {
2367
- props: ({
2368
- ownerState: i
2369
- }) => i.startAdornment,
2370
- style: {
2371
- paddingLeft: 12
2372
- }
2373
- }, {
2374
- props: ({
2375
- ownerState: i
2376
- }) => i.endAdornment,
2377
- style: {
2378
- paddingRight: 12
2379
- }
2380
- }, {
2381
- props: ({
2382
- ownerState: i
2383
- }) => i.multiline,
2384
- style: {
2385
- padding: "25px 12px 8px"
2386
- }
2387
- }, {
2388
- props: ({
2389
- ownerState: i,
2390
- size: u
2391
- }) => i.multiline && u === "small",
2392
- style: {
2393
- paddingTop: 21,
2394
- paddingBottom: 4
2395
- }
2396
- }, {
2397
- props: ({
2398
- ownerState: i
2399
- }) => i.multiline && i.hiddenLabel,
2400
- style: {
2401
- paddingTop: 16,
2402
- paddingBottom: 17
2403
- }
2404
- }, {
2405
- props: ({
2406
- ownerState: i
2407
- }) => i.multiline && i.hiddenLabel && i.size === "small",
2408
- style: {
2409
- paddingTop: 8,
2410
- paddingBottom: 9
2411
- }
2412
- }]
2413
- };
2414
- })), Et = N(Le, {
2415
- name: "MuiFilledInput",
2416
- slot: "Input",
2417
- overridesResolver: ze
2418
- })(U(({
2419
- theme: o
2420
- }) => ({
2421
- paddingTop: 25,
2422
- paddingRight: 12,
2423
- paddingBottom: 8,
2424
- paddingLeft: 12,
2425
- ...!o.vars && {
2426
- "&:-webkit-autofill": {
2427
- WebkitBoxShadow: o.palette.mode === "light" ? null : "0 0 0 100px #266798 inset",
2428
- WebkitTextFillColor: o.palette.mode === "light" ? null : "#fff",
2429
- caretColor: o.palette.mode === "light" ? null : "#fff",
2430
- borderTopLeftRadius: "inherit",
2431
- borderTopRightRadius: "inherit"
2432
- }
2433
- },
2434
- ...o.vars && {
2435
- "&:-webkit-autofill": {
2436
- borderTopLeftRadius: "inherit",
2437
- borderTopRightRadius: "inherit"
2438
- },
2439
- [o.getColorSchemeSelector("dark")]: {
2440
- "&:-webkit-autofill": {
2441
- WebkitBoxShadow: "0 0 0 100px #266798 inset",
2442
- WebkitTextFillColor: "#fff",
2443
- caretColor: "#fff"
2444
- }
2445
- }
2446
- },
2447
- variants: [{
2448
- props: {
2449
- size: "small"
2450
- },
2451
- style: {
2452
- paddingTop: 21,
2453
- paddingBottom: 4
2454
- }
2455
- }, {
2456
- props: ({
2457
- ownerState: t
2458
- }) => t.hiddenLabel,
2459
- style: {
2460
- paddingTop: 16,
2461
- paddingBottom: 17
2462
- }
2463
- }, {
2464
- props: ({
2465
- ownerState: t
2466
- }) => t.startAdornment,
2467
- style: {
2468
- paddingLeft: 0
2469
- }
2470
- }, {
2471
- props: ({
2472
- ownerState: t
2473
- }) => t.endAdornment,
2474
- style: {
2475
- paddingRight: 0
2476
- }
2477
- }, {
2478
- props: ({
2479
- ownerState: t
2480
- }) => t.hiddenLabel && t.size === "small",
2481
- style: {
2482
- paddingTop: 8,
2483
- paddingBottom: 9
2484
- }
2485
- }, {
2486
- props: ({
2487
- ownerState: t
2488
- }) => t.multiline,
2489
- style: {
2490
- paddingTop: 0,
2491
- paddingBottom: 0,
2492
- paddingLeft: 0,
2493
- paddingRight: 0
2494
- }
2495
- }]
2496
- }))), so = /* @__PURE__ */ s.forwardRef(function(t, n) {
2497
- const r = ae({
2498
- props: t,
2499
- name: "MuiFilledInput"
2500
- }), {
2501
- disableUnderline: a = !1,
2502
- components: d = {},
2503
- componentsProps: i,
2504
- fullWidth: u = !1,
2505
- hiddenLabel: v,
2506
- // declare here to prevent spreading to DOM
2507
- inputComponent: S = "input",
2508
- multiline: f = !1,
2509
- slotProps: y,
2510
- slots: b = {},
2511
- type: R = "text",
2512
- ...C
2513
- } = r, T = {
2514
- ...r,
2515
- disableUnderline: a,
2516
- fullWidth: u,
2517
- inputComponent: S,
2518
- multiline: f,
2519
- type: R
2520
- }, g = Pt(r), h = {
2521
- root: {
2522
- ownerState: T
2523
- },
2524
- input: {
2525
- ownerState: T
2526
- }
2527
- }, O = y ?? i ? eo(h, y ?? i) : h, c = b.root ?? d.Root ?? jt, p = b.input ?? d.Input ?? Et;
2528
- return /* @__PURE__ */ m.jsx(Ue, {
2529
- slots: {
2530
- root: c,
2531
- input: p
2532
- },
2533
- slotProps: O,
2534
- fullWidth: u,
2535
- inputComponent: S,
2536
- multiline: f,
2537
- ref: n,
2538
- type: R,
2539
- ...C,
2540
- classes: g
2541
- });
2542
- });
2543
- process.env.NODE_ENV !== "production" && (so.propTypes = {
2544
- // ┌────────────────────────────── Warning ──────────────────────────────┐
2545
- // │ These PropTypes are generated from the TypeScript type definitions. │
2546
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
2547
- // └─────────────────────────────────────────────────────────────────────┘
2548
- /**
2549
- * This prop helps users to fill forms faster, especially on mobile devices.
2550
- * The name can be confusing, as it's more like an autofill.
2551
- * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
2552
- */
2553
- autoComplete: e.string,
2554
- /**
2555
- * If `true`, the `input` element is focused during the first mount.
2556
- */
2557
- autoFocus: e.bool,
2558
- /**
2559
- * Override or extend the styles applied to the component.
2560
- */
2561
- classes: e.object,
2562
- /**
2563
- * The color of the component.
2564
- * It supports both default and custom theme colors, which can be added as shown in the
2565
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
2566
- * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.
2567
- */
2568
- color: e.oneOfType([e.oneOf(["primary", "secondary"]), e.string]),
2569
- /**
2570
- * The components used for each slot inside.
2571
- *
2572
- * @deprecated use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
2573
- *
2574
- * @default {}
2575
- */
2576
- components: e.shape({
2577
- Input: e.elementType,
2578
- Root: e.elementType
2579
- }),
2580
- /**
2581
- * The extra props for the slot components.
2582
- * You can override the existing props or add new ones.
2583
- *
2584
- * @deprecated use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
2585
- *
2586
- * @default {}
2587
- */
2588
- componentsProps: e.shape({
2589
- input: e.object,
2590
- root: e.object
2591
- }),
2592
- /**
2593
- * The default value. Use when the component is not controlled.
2594
- */
2595
- defaultValue: e.any,
2596
- /**
2597
- * If `true`, the component is disabled.
2598
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2599
- */
2600
- disabled: e.bool,
2601
- /**
2602
- * If `true`, the input will not have an underline.
2603
- * @default false
2604
- */
2605
- disableUnderline: e.bool,
2606
- /**
2607
- * End `InputAdornment` for this component.
2608
- */
2609
- endAdornment: e.node,
2610
- /**
2611
- * If `true`, the `input` will indicate an error.
2612
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2613
- */
2614
- error: e.bool,
2615
- /**
2616
- * If `true`, the `input` will take up the full width of its container.
2617
- * @default false
2618
- */
2619
- fullWidth: e.bool,
2620
- /**
2621
- * If `true`, the label is hidden.
2622
- * This is used to increase density for a `FilledInput`.
2623
- * Be sure to add `aria-label` to the `input` element.
2624
- * @default false
2625
- */
2626
- hiddenLabel: e.bool,
2627
- /**
2628
- * The id of the `input` element.
2629
- */
2630
- id: e.string,
2631
- /**
2632
- * The component used for the `input` element.
2633
- * Either a string to use a HTML element or a component.
2634
- * @default 'input'
2635
- */
2636
- inputComponent: e.elementType,
2637
- /**
2638
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
2639
- * @default {}
2640
- */
2641
- inputProps: e.object,
2642
- /**
2643
- * Pass a ref to the `input` element.
2644
- */
2645
- inputRef: ge,
2646
- /**
2647
- * If `dense`, will adjust vertical spacing. This is normally obtained via context from
2648
- * FormControl.
2649
- * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.
2650
- */
2651
- margin: e.oneOf(["dense", "none"]),
2652
- /**
2653
- * Maximum number of rows to display when multiline option is set to true.
2654
- */
2655
- maxRows: e.oneOfType([e.number, e.string]),
2656
- /**
2657
- * Minimum number of rows to display when multiline option is set to true.
2658
- */
2659
- minRows: e.oneOfType([e.number, e.string]),
2660
- /**
2661
- * If `true`, a [TextareaAutosize](https://mui.com/material-ui/react-textarea-autosize/) element is rendered.
2662
- * @default false
2663
- */
2664
- multiline: e.bool,
2665
- /**
2666
- * Name attribute of the `input` element.
2667
- */
2668
- name: e.string,
2669
- /**
2670
- * Callback fired when the value is changed.
2671
- *
2672
- * @param {React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>} event The event source of the callback.
2673
- * You can pull out the new value by accessing `event.target.value` (string).
2674
- */
2675
- onChange: e.func,
2676
- /**
2677
- * The short hint displayed in the `input` before the user enters a value.
2678
- */
2679
- placeholder: e.string,
2680
- /**
2681
- * It prevents the user from changing the value of the field
2682
- * (not from interacting with the field).
2683
- */
2684
- readOnly: e.bool,
2685
- /**
2686
- * If `true`, the `input` element is required.
2687
- * The prop defaults to the value (`false`) inherited from the parent FormControl component.
2688
- */
2689
- required: e.bool,
2690
- /**
2691
- * Number of rows to display when multiline option is set to true.
2692
- */
2693
- rows: e.oneOfType([e.number, e.string]),
2694
- /**
2695
- * The extra props for the slot components.
2696
- * You can override the existing props or add new ones.
2697
- *
2698
- * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
2699
- *
2700
- * @default {}
2701
- */
2702
- slotProps: e.shape({
2703
- input: e.object,
2704
- root: e.object
2705
- }),
2706
- /**
2707
- * The components used for each slot inside.
2708
- *
2709
- * This prop is an alias for the `components` prop, which will be deprecated in the future.
2710
- *
2711
- * @default {}
2712
- */
2713
- slots: e.shape({
2714
- input: e.elementType,
2715
- root: e.elementType
2716
- }),
2717
- /**
2718
- * Start `InputAdornment` for this component.
2719
- */
2720
- startAdornment: e.node,
2721
- /**
2722
- * The system prop that allows defining system overrides as well as additional CSS styles.
2723
- */
2724
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
2725
- /**
2726
- * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
2727
- * @default 'text'
2728
- */
2729
- type: e.string,
2730
- /**
2731
- * The value of the `input` element, required for a controlled component.
2732
- */
2733
- value: e.any
2734
- });
2735
- so.muiName = "Input";
2736
- function Ft(o) {
2737
- return ye("MuiFormControl", o);
2738
- }
2739
- he("MuiFormControl", ["root", "marginNone", "marginNormal", "marginDense", "fullWidth", "disabled"]);
2740
- const $t = (o) => {
2741
- const {
2742
- classes: t,
2743
- margin: n,
2744
- fullWidth: r
2745
- } = o, a = {
2746
- root: ["root", n !== "none" && `margin${F(n)}`, r && "fullWidth"]
2747
- };
2748
- return Q(a, Ft, t);
2749
- }, Mt = N("div", {
2750
- name: "MuiFormControl",
2751
- slot: "Root",
2752
- overridesResolver: (o, t) => {
2753
- const {
2754
- ownerState: n
2755
- } = o;
2756
- return [t.root, t[`margin${F(n.margin)}`], n.fullWidth && t.fullWidth];
2757
- }
2758
- })({
2759
- display: "inline-flex",
2760
- flexDirection: "column",
2761
- position: "relative",
2762
- // Reset fieldset default style.
2763
- minWidth: 0,
2764
- padding: 0,
2765
- margin: 0,
2766
- border: 0,
2767
- verticalAlign: "top",
2768
- // Fix alignment issue on Safari.
2769
- variants: [{
2770
- props: {
2771
- margin: "normal"
2772
- },
2773
- style: {
2774
- marginTop: 16,
2775
- marginBottom: 8
2776
- }
2777
- }, {
2778
- props: {
2779
- margin: "dense"
2780
- },
2781
- style: {
2782
- marginTop: 8,
2783
- marginBottom: 4
2784
- }
2785
- }, {
2786
- props: {
2787
- fullWidth: !0
2788
- },
2789
- style: {
2790
- width: "100%"
2791
- }
2792
- }]
2793
- }), Bt = /* @__PURE__ */ s.forwardRef(function(t, n) {
2794
- const r = ae({
2795
- props: t,
2796
- name: "MuiFormControl"
2797
- }), {
2798
- children: a,
2799
- className: d,
2800
- color: i = "primary",
2801
- component: u = "div",
2802
- disabled: v = !1,
2803
- error: S = !1,
2804
- focused: f,
2805
- fullWidth: y = !1,
2806
- hiddenLabel: b = !1,
2807
- margin: R = "none",
2808
- required: C = !1,
2809
- size: T = "medium",
2810
- variant: g = "outlined",
2811
- ...h
2812
- } = r, O = {
2813
- ...r,
2814
- color: i,
2815
- component: u,
2816
- disabled: v,
2817
- error: S,
2818
- fullWidth: y,
2819
- hiddenLabel: b,
2820
- margin: R,
2821
- required: C,
2822
- size: T,
2823
- variant: g
2824
- }, c = $t(O), [p, P] = s.useState(() => {
2825
- let q = !1;
2826
- return a && s.Children.forEach(a, (A) => {
2827
- if (!Ye(A, ["Input", "Select"]))
2828
- return;
2829
- const K = Ye(A, ["Select"]) ? A.props.input : A;
2830
- K && at(K.props) && (q = !0);
2831
- }), q;
2832
- }), [w, V] = s.useState(() => {
2833
- let q = !1;
2834
- return a && s.Children.forEach(a, (A) => {
2835
- Ye(A, ["Input", "Select"]) && (Be(A.props, !0) || Be(A.props.inputProps, !0)) && (q = !0);
2836
- }), q;
2837
- }), [H, _] = s.useState(!1);
2838
- v && H && _(!1);
2839
- const B = f !== void 0 && !v ? f : H;
2840
- let D;
2841
- const E = s.useRef(!1);
2842
- process.env.NODE_ENV !== "production" && (D = () => (E.current && console.error(["MUI: There are multiple `InputBase` components inside a FormControl.", "This creates visual inconsistencies, only use one `InputBase`."].join(`
2843
- `)), E.current = !0, () => {
2844
- E.current = !1;
2845
- }));
2846
- const W = s.useCallback(() => {
2847
- V(!0);
2848
- }, []), L = s.useCallback(() => {
2849
- V(!1);
2850
- }, []), X = s.useMemo(() => ({
2851
- adornedStart: p,
2852
- setAdornedStart: P,
2853
- color: i,
2854
- disabled: v,
2855
- error: S,
2856
- filled: w,
2857
- focused: B,
2858
- fullWidth: y,
2859
- hiddenLabel: b,
2860
- size: T,
2861
- onBlur: () => {
2862
- _(!1);
2863
- },
2864
- onFocus: () => {
2865
- _(!0);
2866
- },
2867
- onEmpty: L,
2868
- onFilled: W,
2869
- registerEffect: D,
2870
- required: C,
2871
- variant: g
2872
- }), [p, i, v, S, w, B, y, b, D, L, W, C, T, g]);
2873
- return /* @__PURE__ */ m.jsx(No.Provider, {
2874
- value: X,
2875
- children: /* @__PURE__ */ m.jsx(Mt, {
2876
- as: u,
2877
- ownerState: O,
2878
- className: ie(c.root, d),
2879
- ref: n,
2880
- ...h,
2881
- children: a
2882
- })
2883
- });
2884
- });
2885
- process.env.NODE_ENV !== "production" && (Bt.propTypes = {
2886
- // ┌────────────────────────────── Warning ──────────────────────────────┐
2887
- // │ These PropTypes are generated from the TypeScript type definitions. │
2888
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
2889
- // └─────────────────────────────────────────────────────────────────────┘
2890
- /**
2891
- * The content of the component.
2892
- */
2893
- children: e.node,
2894
- /**
2895
- * Override or extend the styles applied to the component.
2896
- */
2897
- classes: e.object,
2898
- /**
2899
- * @ignore
2900
- */
2901
- className: e.string,
2902
- /**
2903
- * The color of the component.
2904
- * It supports both default and custom theme colors, which can be added as shown in the
2905
- * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
2906
- * @default 'primary'
2907
- */
2908
- color: e.oneOfType([e.oneOf(["primary", "secondary", "error", "info", "success", "warning"]), e.string]),
2909
- /**
2910
- * The component used for the root node.
2911
- * Either a string to use a HTML element or a component.
2912
- */
2913
- component: e.elementType,
2914
- /**
2915
- * If `true`, the label, input and helper text should be displayed in a disabled state.
2916
- * @default false
2917
- */
2918
- disabled: e.bool,
2919
- /**
2920
- * If `true`, the label is displayed in an error state.
2921
- * @default false
2922
- */
2923
- error: e.bool,
2924
- /**
2925
- * If `true`, the component is displayed in focused state.
2926
- */
2927
- focused: e.bool,
2928
- /**
2929
- * If `true`, the component will take up the full width of its container.
2930
- * @default false
2931
- */
2932
- fullWidth: e.bool,
2933
- /**
2934
- * If `true`, the label is hidden.
2935
- * This is used to increase density for a `FilledInput`.
2936
- * Be sure to add `aria-label` to the `input` element.
2937
- * @default false
2938
- */
2939
- hiddenLabel: e.bool,
2940
- /**
2941
- * If `dense` or `normal`, will adjust vertical spacing of this and contained components.
2942
- * @default 'none'
2943
- */
2944
- margin: e.oneOf(["dense", "none", "normal"]),
2945
- /**
2946
- * If `true`, the label will indicate that the `input` is required.
2947
- * @default false
2948
- */
2949
- required: e.bool,
2950
- /**
2951
- * The size of the component.
2952
- * @default 'medium'
2953
- */
2954
- size: e.oneOfType([e.oneOf(["medium", "small"]), e.string]),
2955
- /**
2956
- * The system prop that allows defining system overrides as well as additional CSS styles.
2957
- */
2958
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
2959
- /**
2960
- * The variant to use.
2961
- * @default 'outlined'
2962
- */
2963
- variant: e.oneOf(["filled", "outlined", "standard"])
2964
- });
2965
- function Wt(o) {
2966
- return ye("MuiNativeSelect", o);
2967
- }
2968
- const io = he("MuiNativeSelect", ["root", "select", "multiple", "filled", "outlined", "standard", "disabled", "icon", "iconOpen", "iconFilled", "iconOutlined", "iconStandard", "nativeInput", "error"]), At = (o) => {
2969
- const {
2970
- classes: t,
2971
- variant: n,
2972
- disabled: r,
2973
- multiple: a,
2974
- open: d,
2975
- error: i
2976
- } = o, u = {
2977
- select: ["select", n, r && "disabled", a && "multiple", i && "error"],
2978
- icon: ["icon", `icon${F(n)}`, d && "iconOpen", r && "disabled"]
2979
- };
2980
- return Q(u, Wt, t);
2981
- }, Fo = N("select", {
2982
- name: "MuiNativeSelect"
2983
- })(({
2984
- theme: o
2985
- }) => ({
2986
- // Reset
2987
- MozAppearance: "none",
2988
- // Reset
2989
- WebkitAppearance: "none",
2990
- // When interacting quickly, the text can end up selected.
2991
- // Native select can't be selected either.
2992
- userSelect: "none",
2993
- // Reset
2994
- borderRadius: 0,
2995
- cursor: "pointer",
2996
- "&:focus": {
2997
- // Reset Chrome style
2998
- borderRadius: 0
2999
- },
3000
- [`&.${io.disabled}`]: {
3001
- cursor: "default"
3002
- },
3003
- "&[multiple]": {
3004
- height: "auto"
3005
- },
3006
- "&:not([multiple]) option, &:not([multiple]) optgroup": {
3007
- backgroundColor: (o.vars || o).palette.background.paper
3008
- },
3009
- variants: [{
3010
- props: ({
3011
- ownerState: t
3012
- }) => t.variant !== "filled" && t.variant !== "outlined",
3013
- style: {
3014
- // Bump specificity to allow extending custom inputs
3015
- "&&&": {
3016
- paddingRight: 24,
3017
- minWidth: 16
3018
- // So it doesn't collapse.
3019
- }
3020
- }
3021
- }, {
3022
- props: {
3023
- variant: "filled"
3024
- },
3025
- style: {
3026
- "&&&": {
3027
- paddingRight: 32
3028
- }
3029
- }
3030
- }, {
3031
- props: {
3032
- variant: "outlined"
3033
- },
3034
- style: {
3035
- borderRadius: (o.vars || o).shape.borderRadius,
3036
- "&:focus": {
3037
- borderRadius: (o.vars || o).shape.borderRadius
3038
- // Reset the reset for Chrome style
3039
- },
3040
- "&&&": {
3041
- paddingRight: 32
3042
- }
3043
- }
3044
- }]
3045
- })), zt = N(Fo, {
3046
- name: "MuiNativeSelect",
3047
- slot: "Select",
3048
- shouldForwardProp: ue,
3049
- overridesResolver: (o, t) => {
3050
- const {
3051
- ownerState: n
3052
- } = o;
3053
- return [t.select, t[n.variant], n.error && t.error, {
3054
- [`&.${io.multiple}`]: t.multiple
3055
- }];
3056
- }
3057
- })({}), $o = N("svg", {
3058
- name: "MuiNativeSelect"
3059
- })(({
3060
- theme: o
3061
- }) => ({
3062
- // We use a position absolute over a flexbox in order to forward the pointer events
3063
- // to the input and to support wrapping tags..
3064
- position: "absolute",
3065
- right: 0,
3066
- // Center vertically, height is 1em
3067
- top: "calc(50% - .5em)",
3068
- // Don't block pointer events on the select under the icon.
3069
- pointerEvents: "none",
3070
- color: (o.vars || o).palette.action.active,
3071
- [`&.${io.disabled}`]: {
3072
- color: (o.vars || o).palette.action.disabled
3073
- },
3074
- variants: [{
3075
- props: ({
3076
- ownerState: t
3077
- }) => t.open,
3078
- style: {
3079
- transform: "rotate(180deg)"
3080
- }
3081
- }, {
3082
- props: {
3083
- variant: "filled"
3084
- },
3085
- style: {
3086
- right: 7
3087
- }
3088
- }, {
3089
- props: {
3090
- variant: "outlined"
3091
- },
3092
- style: {
3093
- right: 7
3094
- }
3095
- }]
3096
- })), Dt = N($o, {
3097
- name: "MuiNativeSelect",
3098
- slot: "Icon",
3099
- overridesResolver: (o, t) => {
3100
- const {
3101
- ownerState: n
3102
- } = o;
3103
- return [t.icon, n.variant && t[`icon${F(n.variant)}`], n.open && t.iconOpen];
3104
- }
3105
- })({}), Mo = /* @__PURE__ */ s.forwardRef(function(t, n) {
3106
- const {
3107
- className: r,
3108
- disabled: a,
3109
- error: d,
3110
- IconComponent: i,
3111
- inputRef: u,
3112
- variant: v = "standard",
3113
- ...S
3114
- } = t, f = {
3115
- ...t,
3116
- disabled: a,
3117
- variant: v,
3118
- error: d
3119
- }, y = At(f);
3120
- return /* @__PURE__ */ m.jsxs(s.Fragment, {
3121
- children: [/* @__PURE__ */ m.jsx(zt, {
3122
- ownerState: f,
3123
- className: ie(y.select, r),
3124
- disabled: a,
3125
- ref: u || n,
3126
- ...S
3127
- }), t.multiple ? null : /* @__PURE__ */ m.jsx(Dt, {
3128
- as: i,
3129
- ownerState: f,
3130
- className: y.icon
3131
- })]
3132
- });
3133
- });
3134
- process.env.NODE_ENV !== "production" && (Mo.propTypes = {
3135
- /**
3136
- * The option elements to populate the select with.
3137
- * Can be some `<option>` elements.
3138
- */
3139
- children: e.node,
3140
- /**
3141
- * Override or extend the styles applied to the component.
3142
- */
3143
- classes: e.object,
3144
- /**
3145
- * The CSS class name of the select element.
3146
- */
3147
- className: e.string,
3148
- /**
3149
- * If `true`, the select is disabled.
3150
- */
3151
- disabled: e.bool,
3152
- /**
3153
- * If `true`, the `select input` will indicate an error.
3154
- */
3155
- error: e.bool,
3156
- /**
3157
- * The icon that displays the arrow.
3158
- */
3159
- IconComponent: e.elementType.isRequired,
3160
- /**
3161
- * Use that prop to pass a ref to the native select element.
3162
- * @deprecated
3163
- */
3164
- inputRef: ge,
3165
- /**
3166
- * @ignore
3167
- */
3168
- multiple: e.bool,
3169
- /**
3170
- * Name attribute of the `select` or hidden `input` element.
3171
- */
3172
- name: e.string,
3173
- /**
3174
- * Callback fired when a menu item is selected.
3175
- *
3176
- * @param {object} event The event source of the callback.
3177
- * You can pull out the new value by accessing `event.target.value` (string).
3178
- */
3179
- onChange: e.func,
3180
- /**
3181
- * The input value.
3182
- */
3183
- value: e.any,
3184
- /**
3185
- * The variant to use.
3186
- */
3187
- variant: e.oneOf(["standard", "outlined", "filled"])
3188
- });
3189
- function Bo(o) {
3190
- return ye("MuiSelect", o);
3191
- }
3192
- const Pe = he("MuiSelect", ["root", "select", "multiple", "filled", "outlined", "standard", "disabled", "focused", "icon", "iconOpen", "iconFilled", "iconOutlined", "iconStandard", "nativeInput", "error"]);
3193
- var xo;
3194
- const Lt = N(Fo, {
3195
- name: "MuiSelect",
3196
- slot: "Select",
3197
- overridesResolver: (o, t) => {
3198
- const {
3199
- ownerState: n
3200
- } = o;
3201
- return [
3202
- // Win specificity over the input base
3203
- {
3204
- [`&.${Pe.select}`]: t.select
3205
- },
3206
- {
3207
- [`&.${Pe.select}`]: t[n.variant]
3208
- },
3209
- {
3210
- [`&.${Pe.error}`]: t.error
3211
- },
3212
- {
3213
- [`&.${Pe.multiple}`]: t.multiple
3214
- }
3215
- ];
3216
- }
3217
- })({
3218
- // Win specificity over the input base
3219
- [`&.${Pe.select}`]: {
3220
- height: "auto",
3221
- // Resets for multiple select with chips
3222
- minHeight: "1.4375em",
3223
- // Required for select\text-field height consistency
3224
- textOverflow: "ellipsis",
3225
- whiteSpace: "nowrap",
3226
- overflow: "hidden"
3227
- }
3228
- }), Ut = N($o, {
3229
- name: "MuiSelect",
3230
- slot: "Icon",
3231
- overridesResolver: (o, t) => {
3232
- const {
3233
- ownerState: n
3234
- } = o;
3235
- return [t.icon, n.variant && t[`icon${F(n.variant)}`], n.open && t.iconOpen];
3236
- }
3237
- })({}), Vt = N("input", {
3238
- shouldForwardProp: (o) => Uo(o) && o !== "classes",
3239
- name: "MuiSelect",
3240
- slot: "NativeInput"
3241
- })({
3242
- bottom: 0,
3243
- left: 0,
3244
- position: "absolute",
3245
- opacity: 0,
3246
- pointerEvents: "none",
3247
- width: "100%",
3248
- boxSizing: "border-box"
3249
- });
3250
- function Oo(o, t) {
3251
- return typeof t == "object" && t !== null ? o === t : String(o) === String(t);
3252
- }
3253
- function Ht(o) {
3254
- return o == null || typeof o == "string" && !o.trim();
3255
- }
3256
- const _t = (o) => {
3257
- const {
3258
- classes: t,
3259
- variant: n,
3260
- disabled: r,
3261
- multiple: a,
3262
- open: d,
3263
- error: i
3264
- } = o, u = {
3265
- select: ["select", n, r && "disabled", a && "multiple", i && "error"],
3266
- icon: ["icon", `icon${F(n)}`, d && "iconOpen", r && "disabled"],
3267
- nativeInput: ["nativeInput"]
3268
- };
3269
- return Q(u, Bo, t);
3270
- }, Wo = /* @__PURE__ */ s.forwardRef(function(t, n) {
3271
- const {
3272
- "aria-describedby": r,
3273
- "aria-label": a,
3274
- autoFocus: d,
3275
- autoWidth: i,
3276
- children: u,
3277
- className: v,
3278
- defaultOpen: S,
3279
- defaultValue: f,
3280
- disabled: y,
3281
- displayEmpty: b,
3282
- error: R = !1,
3283
- IconComponent: C,
3284
- inputRef: T,
3285
- labelId: g,
3286
- MenuProps: h = {},
3287
- multiple: O,
3288
- name: c,
3289
- onBlur: p,
3290
- onChange: P,
3291
- onClose: w,
3292
- onFocus: V,
3293
- // eslint-disable-next-line react/prop-types
3294
- onKeyDown: H,
3295
- // eslint-disable-next-line react/prop-types
3296
- onMouseDown: _,
3297
- onOpen: B,
3298
- open: D,
3299
- readOnly: E,
3300
- renderValue: W,
3301
- required: L,
3302
- SelectDisplayProps: X = {},
3303
- tabIndex: q,
3304
- // catching `type` from Input which makes no sense for SelectInput
3305
- type: A,
3306
- value: K,
3307
- variant: te = "standard",
3308
- ...Ve
3309
- } = t, [j, ve] = mo({
3310
- controlled: K,
3311
- default: f,
3312
- name: "Select"
3313
- }), [ne, Ee] = mo({
3314
- controlled: D,
3315
- default: S,
3316
- name: "Select"
3317
- }), Fe = s.useRef(null), ee = s.useRef(null), [Y, Se] = s.useState(null), {
3318
- current: Z
3319
- } = s.useRef(D != null), [He, Ce] = s.useState(), xe = We(n, T), Oe = s.useCallback((l) => {
3320
- ee.current = l, l && Se(l);
3321
- }, []), I = Y?.parentNode;
3322
- s.useImperativeHandle(xe, () => ({
3323
- focus: () => {
3324
- ee.current.focus();
3325
- },
3326
- node: Fe.current,
3327
- value: j
3328
- }), [j]);
3329
- const $ = Y !== null && ne;
3330
- s.useEffect(() => {
3331
- if (!$ || !I || i || typeof ResizeObserver > "u")
3332
- return;
3333
- const l = new ResizeObserver(() => {
3334
- Ce(I.clientWidth);
3335
- });
3336
- return l.observe(I), () => {
3337
- l.disconnect();
3338
- };
3339
- }, [$, I, i]), s.useEffect(() => {
3340
- S && ne && Y && !Z && (Ce(i ? null : I.clientWidth), ee.current.focus());
3341
- }, [Y, i]), s.useEffect(() => {
3342
- d && ee.current.focus();
3343
- }, [d]), s.useEffect(() => {
3344
- if (!g)
3345
- return;
3346
- const l = Go(ee.current).getElementById(g);
3347
- if (l) {
3348
- const x = () => {
3349
- getSelection().isCollapsed && ee.current.focus();
3350
- };
3351
- return l.addEventListener("click", x), () => {
3352
- l.removeEventListener("click", x);
3353
- };
3354
- }
3355
- }, [g]);
3356
- const re = (l, x) => {
3357
- l ? B && B(x) : w && w(x), Z || (Ce(i ? null : I.clientWidth), Ee(l));
3358
- }, we = (l) => {
3359
- _?.(l), l.button === 0 && (l.preventDefault(), ee.current.focus(), re(!0, l));
3360
- }, le = (l) => {
3361
- re(!1, l);
3362
- }, pe = s.Children.toArray(u), _e = (l) => {
3363
- const x = pe.find((M) => M.props.value === l.target.value);
3364
- x !== void 0 && (ve(x.props.value), P && P(l, x));
3365
- }, qe = (l) => (x) => {
3366
- let M;
3367
- if (x.currentTarget.hasAttribute("tabindex")) {
3368
- if (O) {
3369
- M = Array.isArray(j) ? j.slice() : [];
3370
- const me = j.indexOf(l.props.value);
3371
- me === -1 ? M.push(l.props.value) : M.splice(me, 1);
3372
- } else
3373
- M = l.props.value;
3374
- if (l.props.onClick && l.props.onClick(x), j !== M && (ve(M), P)) {
3375
- const me = x.nativeEvent || x, co = new me.constructor(me.type, me);
3376
- Object.defineProperty(co, "target", {
3377
- writable: !0,
3378
- value: {
3379
- value: M,
3380
- name: c
3381
- }
3382
- }), P(co, l);
3383
- }
3384
- O || re(!1, x);
3385
- }
3386
- }, Ke = (l) => {
3387
- E || ([
3388
- " ",
3389
- "ArrowUp",
3390
- "ArrowDown",
3391
- // The native select doesn't respond to enter on macOS, but it's recommended by
3392
- // https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-select-only/
3393
- "Enter"
3394
- ].includes(l.key) && (l.preventDefault(), re(!0, l)), H?.(l));
3395
- }, Ie = (l) => {
3396
- !$ && p && (Object.defineProperty(l, "target", {
3397
- writable: !0,
3398
- value: {
3399
- value: j,
3400
- name: c
3401
- }
3402
- }), p(l));
3403
- };
3404
- delete Ve["aria-invalid"];
3405
- let z, $e;
3406
- const se = [];
3407
- let de = !1, fe = !1;
3408
- (Be({
3409
- value: j
3410
- }) || b) && (W ? z = W(j) : de = !0);
3411
- const Re = pe.map((l) => {
3412
- if (!/* @__PURE__ */ s.isValidElement(l))
3413
- return null;
3414
- process.env.NODE_ENV !== "production" && Do.isFragment(l) && console.error(["MUI: The Select component doesn't accept a Fragment as a child.", "Consider providing an array instead."].join(`
3415
- `));
3416
- let x;
3417
- if (O) {
3418
- if (!Array.isArray(j))
3419
- throw new Error(process.env.NODE_ENV !== "production" ? "MUI: The `value` prop must be an array when using the `Select` component with `multiple`." : wo(2));
3420
- x = j.some((M) => Oo(M, l.props.value)), x && de && se.push(l.props.children);
3421
- } else
3422
- x = Oo(j, l.props.value), x && de && ($e = l.props.children);
3423
- return x && (fe = !0), /* @__PURE__ */ s.cloneElement(l, {
3424
- "aria-selected": x ? "true" : "false",
3425
- onClick: qe(l),
3426
- onKeyUp: (M) => {
3427
- M.key === " " && M.preventDefault(), l.props.onKeyUp && l.props.onKeyUp(M);
3428
- },
3429
- role: "option",
3430
- selected: x,
3431
- value: void 0,
3432
- // The value is most likely not a valid HTML attribute.
3433
- "data-value": l.props.value
3434
- // Instead, we provide it as a data attribute.
3435
- });
3436
- });
3437
- process.env.NODE_ENV !== "production" && s.useEffect(() => {
3438
- if (!fe && !O && j !== "") {
3439
- const l = pe.map((x) => x.props.value);
3440
- console.warn([`MUI: You have provided an out-of-range value \`${j}\` for the select ${c ? `(name="${c}") ` : ""}component.`, "Consider providing a value that matches one of the available options or ''.", `The available values are ${l.filter((x) => x != null).map((x) => `\`${x}\``).join(", ") || '""'}.`].join(`
3441
- `));
3442
- }
3443
- }, [fe, pe, O, c, j]), de && (O ? se.length === 0 ? z = null : z = se.reduce((l, x, M) => (l.push(x), M < se.length - 1 && l.push(", "), l), []) : z = $e);
3444
- let Te = He;
3445
- !i && Z && Y && (Te = I.clientWidth);
3446
- let k;
3447
- typeof q < "u" ? k = q : k = y ? null : 0;
3448
- const Ne = X.id || (c ? `mui-component-select-${c}` : void 0), oe = {
3449
- ...t,
3450
- variant: te,
3451
- value: j,
3452
- open: $,
3453
- error: R
3454
- }, Ge = _t(oe), Xe = {
3455
- ...h.PaperProps,
3456
- ...typeof h.slotProps?.paper == "function" ? h.slotProps.paper(oe) : h.slotProps?.paper
3457
- }, zo = {
3458
- ...h.MenuListProps,
3459
- ...typeof h.slotProps?.list == "function" ? h.slotProps.list(oe) : h.slotProps?.list
3460
- }, lo = ko();
3461
- return /* @__PURE__ */ m.jsxs(s.Fragment, {
3462
- children: [/* @__PURE__ */ m.jsx(Lt, {
3463
- as: "div",
3464
- ref: Oe,
3465
- tabIndex: k,
3466
- role: "combobox",
3467
- "aria-controls": $ ? lo : void 0,
3468
- "aria-disabled": y ? "true" : void 0,
3469
- "aria-expanded": $ ? "true" : "false",
3470
- "aria-haspopup": "listbox",
3471
- "aria-label": a,
3472
- "aria-labelledby": [g, Ne].filter(Boolean).join(" ") || void 0,
3473
- "aria-describedby": r,
3474
- "aria-required": L ? "true" : void 0,
3475
- "aria-invalid": R ? "true" : void 0,
3476
- onKeyDown: Ke,
3477
- onMouseDown: y || E ? null : we,
3478
- onBlur: Ie,
3479
- onFocus: V,
3480
- ...X,
3481
- ownerState: oe,
3482
- className: ie(X.className, Ge.select, v),
3483
- id: Ne,
3484
- children: Ht(z) ? (
3485
- // notranslate needed while Google Translate will not fix zero-width space issue
3486
- xo || (xo = /* @__PURE__ */ m.jsx("span", {
3487
- className: "notranslate",
3488
- "aria-hidden": !0,
3489
- children: "​"
3490
- }))
3491
- ) : z
3492
- }), /* @__PURE__ */ m.jsx(Vt, {
3493
- "aria-invalid": R,
3494
- value: Array.isArray(j) ? j.join(",") : j,
3495
- name: c,
3496
- ref: Fe,
3497
- "aria-hidden": !0,
3498
- onChange: _e,
3499
- tabIndex: -1,
3500
- disabled: y,
3501
- className: Ge.nativeInput,
3502
- autoFocus: d,
3503
- required: L,
3504
- ...Ve,
3505
- ownerState: oe
3506
- }), /* @__PURE__ */ m.jsx(Ut, {
3507
- as: C,
3508
- className: Ge.icon,
3509
- ownerState: oe
3510
- }), /* @__PURE__ */ m.jsx(Xo, {
3511
- id: `menu-${c || ""}`,
3512
- anchorEl: I,
3513
- open: $,
3514
- onClose: le,
3515
- anchorOrigin: {
3516
- vertical: "bottom",
3517
- horizontal: "center"
3518
- },
3519
- transformOrigin: {
3520
- vertical: "top",
3521
- horizontal: "center"
3522
- },
3523
- ...h,
3524
- slotProps: {
3525
- ...h.slotProps,
3526
- list: {
3527
- "aria-labelledby": g,
3528
- role: "listbox",
3529
- "aria-multiselectable": O ? "true" : void 0,
3530
- disableListWrap: !0,
3531
- id: lo,
3532
- ...zo
3533
- },
3534
- paper: {
3535
- ...Xe,
3536
- style: {
3537
- minWidth: Te,
3538
- ...Xe != null ? Xe.style : null
3539
- }
3540
- }
3541
- },
3542
- children: Re
3543
- })]
3544
- });
3545
- });
3546
- process.env.NODE_ENV !== "production" && (Wo.propTypes = {
3547
- /**
3548
- * @ignore
3549
- */
3550
- "aria-describedby": e.string,
3551
- /**
3552
- * @ignore
3553
- */
3554
- "aria-label": e.string,
3555
- /**
3556
- * @ignore
3557
- */
3558
- autoFocus: e.bool,
3559
- /**
3560
- * If `true`, the width of the popover will automatically be set according to the items inside the
3561
- * menu, otherwise it will be at least the width of the select input.
3562
- */
3563
- autoWidth: e.bool,
3564
- /**
3565
- * The option elements to populate the select with.
3566
- * Can be some `<MenuItem>` elements.
3567
- */
3568
- children: e.node,
3569
- /**
3570
- * Override or extend the styles applied to the component.
3571
- */
3572
- classes: e.object,
3573
- /**
3574
- * The CSS class name of the select element.
3575
- */
3576
- className: e.string,
3577
- /**
3578
- * If `true`, the component is toggled on mount. Use when the component open state is not controlled.
3579
- * You can only use it when the `native` prop is `false` (default).
3580
- */
3581
- defaultOpen: e.bool,
3582
- /**
3583
- * The default value. Use when the component is not controlled.
3584
- */
3585
- defaultValue: e.any,
3586
- /**
3587
- * If `true`, the select is disabled.
3588
- */
3589
- disabled: e.bool,
3590
- /**
3591
- * If `true`, the selected item is displayed even if its value is empty.
3592
- */
3593
- displayEmpty: e.bool,
3594
- /**
3595
- * If `true`, the `select input` will indicate an error.
3596
- */
3597
- error: e.bool,
3598
- /**
3599
- * The icon that displays the arrow.
3600
- */
3601
- IconComponent: e.elementType.isRequired,
3602
- /**
3603
- * Imperative handle implementing `{ value: T, node: HTMLElement, focus(): void }`
3604
- * Equivalent to `ref`
3605
- */
3606
- inputRef: ge,
3607
- /**
3608
- * The ID of an element that acts as an additional label. The Select will
3609
- * be labelled by the additional label and the selected value.
3610
- */
3611
- labelId: e.string,
3612
- /**
3613
- * Props applied to the [`Menu`](/material-ui/api/menu/) element.
3614
- */
3615
- MenuProps: e.object,
3616
- /**
3617
- * If `true`, `value` must be an array and the menu will support multiple selections.
3618
- */
3619
- multiple: e.bool,
3620
- /**
3621
- * Name attribute of the `select` or hidden `input` element.
3622
- */
3623
- name: e.string,
3624
- /**
3625
- * @ignore
3626
- */
3627
- onBlur: e.func,
3628
- /**
3629
- * Callback fired when a menu item is selected.
3630
- *
3631
- * @param {object} event The event source of the callback.
3632
- * You can pull out the new value by accessing `event.target.value` (any).
3633
- * @param {object} [child] The react element that was selected.
3634
- */
3635
- onChange: e.func,
3636
- /**
3637
- * Callback fired when the component requests to be closed.
3638
- * Use in controlled mode (see open).
3639
- *
3640
- * @param {object} event The event source of the callback.
3641
- */
3642
- onClose: e.func,
3643
- /**
3644
- * @ignore
3645
- */
3646
- onFocus: e.func,
3647
- /**
3648
- * Callback fired when the component requests to be opened.
3649
- * Use in controlled mode (see open).
3650
- *
3651
- * @param {object} event The event source of the callback.
3652
- */
3653
- onOpen: e.func,
3654
- /**
3655
- * If `true`, the component is shown.
3656
- */
3657
- open: e.bool,
3658
- /**
3659
- * @ignore
3660
- */
3661
- readOnly: e.bool,
3662
- /**
3663
- * Render the selected value.
3664
- *
3665
- * @param {any} value The `value` provided to the component.
3666
- * @returns {ReactNode}
3667
- */
3668
- renderValue: e.func,
3669
- /**
3670
- * If `true`, the component is required.
3671
- */
3672
- required: e.bool,
3673
- /**
3674
- * Props applied to the clickable div element.
3675
- */
3676
- SelectDisplayProps: e.object,
3677
- /**
3678
- * @ignore
3679
- */
3680
- tabIndex: e.oneOfType([e.number, e.string]),
3681
- /**
3682
- * @ignore
3683
- */
3684
- type: e.any,
3685
- /**
3686
- * The input value.
3687
- */
3688
- value: e.any,
3689
- /**
3690
- * The variant to use.
3691
- */
3692
- variant: e.oneOf(["standard", "outlined", "filled"])
3693
- });
3694
- const qt = Zo(/* @__PURE__ */ m.jsx("path", {
3695
- d: "M7 10l5 5 5-5z"
3696
- }), "ArrowDropDown"), Kt = (o) => {
3697
- const {
3698
- classes: t
3699
- } = o, r = Q({
3700
- root: ["root"]
3701
- }, Bo, t);
3702
- return {
3703
- ...t,
3704
- ...r
3705
- };
3706
- }, ao = {
3707
- name: "MuiSelect",
3708
- slot: "Root",
3709
- shouldForwardProp: (o) => ue(o) && o !== "variant"
3710
- }, Gt = N(ro, ao)(""), Xt = N(no, ao)(""), Yt = N(so, ao)(""), Ao = /* @__PURE__ */ s.forwardRef(function(t, n) {
3711
- const r = ae({
3712
- name: "MuiSelect",
3713
- props: t
3714
- }), {
3715
- autoWidth: a = !1,
3716
- children: d,
3717
- classes: i = {},
3718
- className: u,
3719
- defaultOpen: v = !1,
3720
- displayEmpty: S = !1,
3721
- IconComponent: f = qt,
3722
- id: y,
3723
- input: b,
3724
- inputProps: R,
3725
- label: C,
3726
- labelId: T,
3727
- MenuProps: g,
3728
- multiple: h = !1,
3729
- native: O = !1,
3730
- onClose: c,
3731
- onOpen: p,
3732
- open: P,
3733
- renderValue: w,
3734
- SelectDisplayProps: V,
3735
- variant: H = "outlined",
3736
- ..._
3737
- } = r, B = O ? Mo : Wo, D = oo(), E = to({
3738
- props: r,
3739
- muiFormControl: D,
3740
- states: ["variant", "error"]
3741
- }), W = E.variant || H, L = {
3742
- ...r,
3743
- variant: W,
3744
- classes: i
3745
- }, X = Kt(L), {
3746
- root: q,
3747
- ...A
3748
- } = X, K = b || {
3749
- standard: /* @__PURE__ */ m.jsx(Gt, {
3750
- ownerState: L
3751
- }),
3752
- outlined: /* @__PURE__ */ m.jsx(Xt, {
3753
- label: C,
3754
- ownerState: L
3755
- }),
3756
- filled: /* @__PURE__ */ m.jsx(Yt, {
3757
- ownerState: L
3758
- })
3759
- }[W], te = We(n, Yo(K));
3760
- return /* @__PURE__ */ m.jsx(s.Fragment, {
3761
- children: /* @__PURE__ */ s.cloneElement(K, {
3762
- // Most of the logic is implemented in `SelectInput`.
3763
- // The `Select` component is a simple API wrapper to expose something better to play with.
3764
- inputComponent: B,
3765
- inputProps: {
3766
- children: d,
3767
- error: E.error,
3768
- IconComponent: f,
3769
- variant: W,
3770
- type: void 0,
3771
- // We render a select. We can ignore the type provided by the `Input`.
3772
- multiple: h,
3773
- ...O ? {
3774
- id: y
3775
- } : {
3776
- autoWidth: a,
3777
- defaultOpen: v,
3778
- displayEmpty: S,
3779
- labelId: T,
3780
- MenuProps: g,
3781
- onClose: c,
3782
- onOpen: p,
3783
- open: P,
3784
- renderValue: w,
3785
- SelectDisplayProps: {
3786
- id: y,
3787
- ...V
3788
- }
3789
- },
3790
- ...R,
3791
- classes: R ? eo(A, R.classes) : A,
3792
- ...b ? b.props.inputProps : {}
3793
- },
3794
- ...(h && O || S) && W === "outlined" ? {
3795
- notched: !0
3796
- } : {},
3797
- ref: te,
3798
- className: ie(K.props.className, u, X.root),
3799
- // If a custom input is provided via 'input' prop, do not allow 'variant' to be propagated to it's root element. See https://github.com/mui/material-ui/issues/33894.
3800
- ...!b && {
3801
- variant: W
3802
- },
3803
- ..._
3804
- })
3805
- });
3806
- });
3807
- process.env.NODE_ENV !== "production" && (Ao.propTypes = {
3808
- // ┌────────────────────────────── Warning ──────────────────────────────┐
3809
- // │ These PropTypes are generated from the TypeScript type definitions. │
3810
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
3811
- // └─────────────────────────────────────────────────────────────────────┘
3812
- /**
3813
- * If `true`, the width of the popover will automatically be set according to the items inside the
3814
- * menu, otherwise it will be at least the width of the select input.
3815
- * @default false
3816
- */
3817
- autoWidth: e.bool,
3818
- /**
3819
- * The option elements to populate the select with.
3820
- * Can be some `MenuItem` when `native` is false and `option` when `native` is true.
3821
- *
3822
- * ⚠️The `MenuItem` elements **must** be direct descendants when `native` is false.
3823
- */
3824
- children: e.node,
3825
- /**
3826
- * Override or extend the styles applied to the component.
3827
- * @default {}
3828
- */
3829
- classes: e.object,
3830
- /**
3831
- * @ignore
3832
- */
3833
- className: e.string,
3834
- /**
3835
- * If `true`, the component is initially open. Use when the component open state is not controlled (i.e. the `open` prop is not defined).
3836
- * You can only use it when the `native` prop is `false` (default).
3837
- * @default false
3838
- */
3839
- defaultOpen: e.bool,
3840
- /**
3841
- * The default value. Use when the component is not controlled.
3842
- */
3843
- defaultValue: e.any,
3844
- /**
3845
- * If `true`, a value is displayed even if no items are selected.
3846
- *
3847
- * In order to display a meaningful value, a function can be passed to the `renderValue` prop which
3848
- * returns the value to be displayed when no items are selected.
3849
- *
3850
- * ⚠️ When using this prop, make sure the label doesn't overlap with the empty displayed value.
3851
- * The label should either be hidden or forced to a shrunk state.
3852
- * @default false
3853
- */
3854
- displayEmpty: e.bool,
3855
- /**
3856
- * The icon that displays the arrow.
3857
- * @default ArrowDropDownIcon
3858
- */
3859
- IconComponent: e.elementType,
3860
- /**
3861
- * The `id` of the wrapper element or the `select` element when `native`.
3862
- */
3863
- id: e.string,
3864
- /**
3865
- * An `Input` element; does not have to be a material-ui specific `Input`.
3866
- */
3867
- input: e.element,
3868
- /**
3869
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
3870
- * When `native` is `true`, the attributes are applied on the `select` element.
3871
- */
3872
- inputProps: e.object,
3873
- /**
3874
- * See [OutlinedInput#label](https://mui.com/material-ui/api/outlined-input/#props)
3875
- */
3876
- label: e.node,
3877
- /**
3878
- * The ID of an element that acts as an additional label. The Select will
3879
- * be labelled by the additional label and the selected value.
3880
- */
3881
- labelId: e.string,
3882
- /**
3883
- * Props applied to the [`Menu`](https://mui.com/material-ui/api/menu/) element.
3884
- */
3885
- MenuProps: e.object,
3886
- /**
3887
- * If `true`, `value` must be an array and the menu will support multiple selections.
3888
- * @default false
3889
- */
3890
- multiple: e.bool,
3891
- /**
3892
- * If `true`, the component uses a native `select` element.
3893
- * @default false
3894
- */
3895
- native: e.bool,
3896
- /**
3897
- * Callback fired when a menu item is selected.
3898
- *
3899
- * @param {SelectChangeEvent<Value>} event The event source of the callback.
3900
- * You can pull out the new value by accessing `event.target.value` (any).
3901
- * **Warning**: This is a generic event, not a change event, unless the change event is caused by browser autofill.
3902
- * @param {object} [child] The react element that was selected when `native` is `false` (default).
3903
- */
3904
- onChange: e.func,
3905
- /**
3906
- * Callback fired when the component requests to be closed.
3907
- * Use it in either controlled (see the `open` prop), or uncontrolled mode (to detect when the Select collapses).
3908
- *
3909
- * @param {object} event The event source of the callback.
3910
- */
3911
- onClose: e.func,
3912
- /**
3913
- * Callback fired when the component requests to be opened.
3914
- * Use it in either controlled (see the `open` prop), or uncontrolled mode (to detect when the Select expands).
3915
- *
3916
- * @param {object} event The event source of the callback.
3917
- */
3918
- onOpen: e.func,
3919
- /**
3920
- * If `true`, the component is shown.
3921
- * You can only use it when the `native` prop is `false` (default).
3922
- */
3923
- open: e.bool,
3924
- /**
3925
- * Render the selected value.
3926
- * You can only use it when the `native` prop is `false` (default).
3927
- *
3928
- * @param {any} value The `value` provided to the component.
3929
- * @returns {ReactNode}
3930
- */
3931
- renderValue: e.func,
3932
- /**
3933
- * Props applied to the clickable div element.
3934
- */
3935
- SelectDisplayProps: e.object,
3936
- /**
3937
- * The system prop that allows defining system overrides as well as additional CSS styles.
3938
- */
3939
- sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
3940
- /**
3941
- * The `input` value. Providing an empty string will select no options.
3942
- * Set to an empty string `''` if you don't want any of the available options to be selected.
3943
- *
3944
- * If the value is an object it must have reference equality with the option in order to be selected.
3945
- * If the value is not an object, the string representation must match with the string representation of the option in order to be selected.
3946
- */
3947
- value: e.oneOfType([e.oneOf([""]), e.any]),
3948
- /**
3949
- * The variant to use.
3950
- * @default 'outlined'
3951
- */
3952
- variant: e.oneOf(["filled", "outlined", "standard"])
3953
- });
3954
- Ao.muiName = "Select";
3955
- export {
3956
- Eo as C,
3957
- Bt as F,
3958
- wt as I,
3959
- no as O,
3960
- Ao as S,
3961
- so as a,
3962
- ro as b,
3963
- to as f,
3964
- Ye as i,
3965
- ko as u
3966
- };