@cgi-learning-hub/ui 1.3.3 → 1.3.4-dev.1733911143

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 (270) hide show
  1. package/dist/Backdrop-DqUdx8FP.cjs +1 -0
  2. package/dist/Backdrop-ZqzrnV2E.js +360 -0
  3. package/dist/Box-Be6jhcmK.cjs +1 -0
  4. package/dist/{Box-UE-zctbJ.js → Box-DN_2fcm9.js} +9 -9
  5. package/dist/Button-C6UXybBV.cjs +1 -0
  6. package/dist/{Button-Bjy0iPNm.js → Button-CL9rFoOY.js} +152 -118
  7. package/dist/{ButtonBase-CFD7NVUc.js → ButtonBase-CYkLbJ0U.js} +232 -240
  8. package/dist/ButtonBase-DzK1n18b.cjs +74 -0
  9. package/dist/Card-DO4cAmNC.js +74 -0
  10. package/dist/Card-DsmqVSx1.cjs +1 -0
  11. package/dist/Checkbox-Btg05OjV.cjs +1 -0
  12. package/dist/{Checkbox-Ct5E_6h7.js → Checkbox-CLM5GjuC.js} +27 -26
  13. package/dist/CircularProgress-BfbGcmHT.cjs +28 -0
  14. package/dist/{CircularProgress-By02Sdoh.js → CircularProgress-C4xtwh4E.js} +28 -27
  15. package/dist/DatePicker-BXTOQETi.cjs +14 -0
  16. package/dist/DatePicker-D9suyaUZ.js +10846 -0
  17. package/dist/DefaultPropsProvider-DE-Tx_ov.cjs +17 -0
  18. package/dist/DefaultPropsProvider-DUWovK-8.js +454 -0
  19. package/dist/Delete-CpADFuIX.cjs +1 -0
  20. package/dist/Delete-DWXEW4-c.js +8 -0
  21. package/dist/DialogContent-D_JmqJt6.js +603 -0
  22. package/dist/DialogContent-gRISmOoj.cjs +1 -0
  23. package/dist/DialogTitle-CID6RFNo.js +134 -0
  24. package/dist/DialogTitle-Dhxh1DVb.cjs +1 -0
  25. package/dist/Divider-BjxxEFnr.cjs +1 -0
  26. package/dist/Divider-HhF8ckeh.js +296 -0
  27. package/dist/FormControlLabel-0-cflTuo.js +262 -0
  28. package/dist/FormControlLabel-C-eZV5Xc.cjs +1 -0
  29. package/dist/FormGroup-Ck7StJ6i.cjs +1 -0
  30. package/dist/FormGroup-DIP4u-gv.js +95 -0
  31. package/dist/FormLabel-Ch103TK-.cjs +2 -0
  32. package/dist/{FormLabel-B4QlkhhB.js → FormLabel-X7FN1eBV.js} +39 -44
  33. package/dist/Grow-BgMSa0P2.js +193 -0
  34. package/dist/Grow-D7OAahbU.cjs +1 -0
  35. package/dist/{IconButton-Av8eJ5IG.js → IconButton-CMwpC2Co.js} +10 -9
  36. package/dist/IconButton-DbWtCGLB.cjs +2 -0
  37. package/dist/{InputAdornment-COPtZlSD.js → InputAdornment-B4hI0-Jz.js} +9 -8
  38. package/dist/InputAdornment-Cl2OaKlw.cjs +1 -0
  39. package/dist/InputBase-BuVAuMNp.cjs +3 -0
  40. package/dist/{InputBase-Bbgoz8GV.js → InputBase-DrofJ7xL.js} +60 -59
  41. package/dist/Link-AXhb0uJT.cjs +1 -0
  42. package/dist/Link-Bdupo_fW.js +267 -0
  43. package/dist/Menu-DR-xtxpt.js +966 -0
  44. package/dist/Menu-_chQG-Za.cjs +7 -0
  45. package/dist/{MenuItem-D7HWYhF3.js → MenuItem-C_d0Sc_L.js} +69 -74
  46. package/dist/MenuItem-De6eStq9.cjs +1 -0
  47. package/dist/Modal-C4Jb6sd1.js +750 -0
  48. package/dist/Modal-GXSEk85U.cjs +2 -0
  49. package/dist/Paper-CH4BABUB.cjs +2 -0
  50. package/dist/Paper-nlWPEgQh.js +185 -0
  51. package/dist/Popper-CjTplNLW.cjs +4 -0
  52. package/dist/Popper-CkAj_qw_.js +1407 -0
  53. package/dist/Portal-BcFwfiTx.js +86 -0
  54. package/dist/Portal-BruYsISj.cjs +1 -0
  55. package/dist/Radio-B0v6nDvz.js +313 -0
  56. package/dist/Radio-BbZnB74m.cjs +1 -0
  57. package/dist/Select-BFGwwKap.cjs +3 -0
  58. package/dist/Select-D9fwtA9U.js +2604 -0
  59. package/dist/{Stack-y1PjTHKX.js → Stack-C1i6_V9e.js} +105 -60
  60. package/dist/Stack-DMNZvXss.cjs +1 -0
  61. package/dist/SwitchBase-BpMNk4XV.cjs +1 -0
  62. package/dist/{SwitchBase-yCuH0Tqk.js → SwitchBase-DfbwljzN.js} +25 -24
  63. package/dist/{Tooltip-DO9GIhWC.js → TableSortLabel-DwnLOHOy.js} +2645 -3965
  64. package/dist/TableSortLabel-lnTBXy-V.cjs +98 -0
  65. package/dist/{Tabs-DK4Bc5xo.js → Tabs-BoFP2RHv.js} +333 -329
  66. package/dist/Tabs-DEvwJheI.cjs +4 -0
  67. package/dist/{TextField-C-B529_r.js → TextField-kwhzNVAL.js} +35 -34
  68. package/dist/TextField-waKWSLD4.cjs +1 -0
  69. package/dist/Tooltip-CFyOA9CT.cjs +4 -0
  70. package/dist/Tooltip-tgkiC77d.js +721 -0
  71. package/dist/Typography-B6KFjCtE.cjs +1 -0
  72. package/dist/{Typography-C_ESP41L.js → Typography-DWXYj92v.js} +13 -12
  73. package/dist/assets/styles.css +1 -1
  74. package/dist/assets/styles2.css +1 -1
  75. package/dist/capitalize-DASFtB-F.cjs +1 -0
  76. package/dist/capitalize-NmHVRYy8.js +9 -0
  77. package/dist/chainPropTypes-CEUi6Jb4.cjs +1 -0
  78. package/dist/chainPropTypes-D9lkm76m.js +8 -0
  79. package/dist/components/Button/Button.cjs.js +1 -1
  80. package/dist/components/Button/Button.es.js +28 -27
  81. package/dist/components/DatePicker/DatePicker.cjs.js +1 -1
  82. package/dist/components/DatePicker/DatePicker.es.js +2 -2
  83. package/dist/components/DatePicker/index.cjs.js +1 -1
  84. package/dist/components/DatePicker/index.es.js +1 -1
  85. package/dist/components/Dropzone/Dropzone.cjs.js +1 -5
  86. package/dist/components/Dropzone/Dropzone.es.js +24 -2162
  87. package/dist/components/EmptyState/EmptyState.cjs.js +1 -1
  88. package/dist/components/EmptyState/EmptyState.es.js +2 -2
  89. package/dist/components/FileList/FileList.cjs.js +1 -1
  90. package/dist/components/FileList/FileList.es.js +1 -1
  91. package/dist/components/FileList/FileListItem.cjs.js +1 -1
  92. package/dist/components/FileList/FileListItem.es.js +21 -22
  93. package/dist/components/Heading/Heading.cjs.js +1 -1
  94. package/dist/components/Heading/Heading.es.js +2 -2
  95. package/dist/components/ImagePicker/ImagePicker.cjs.js +1 -0
  96. package/dist/components/ImagePicker/ImagePicker.d.ts +12 -0
  97. package/dist/components/ImagePicker/ImagePicker.es.js +174 -0
  98. package/dist/components/ImagePicker/index.cjs.js +1 -0
  99. package/dist/components/ImagePicker/index.d.ts +2 -0
  100. package/dist/components/ImagePicker/index.es.js +4 -0
  101. package/dist/components/Loader/Loader.cjs.js +1 -1
  102. package/dist/components/Loader/Loader.es.js +2 -2
  103. package/dist/components/LoaderBackdrop/LoaderBackdrop.cjs.js +1 -1
  104. package/dist/components/LoaderBackdrop/LoaderBackdrop.es.js +3 -3
  105. package/dist/components/PasswordInput/PasswordInput.cjs.js +1 -1
  106. package/dist/components/PasswordInput/PasswordInput.es.js +8 -7
  107. package/dist/components/SearchInput/SearchInput.cjs.js +1 -1
  108. package/dist/components/SearchInput/SearchInput.es.js +4 -4
  109. package/dist/components/TextInput/TextInput.cjs.js +1 -1
  110. package/dist/components/TextInput/TextInput.es.js +1 -1
  111. package/dist/components/index.cjs.js +1 -1
  112. package/dist/components/index.d.ts +3 -0
  113. package/dist/components/index.es.js +276 -262
  114. package/dist/components/stories/Button.stories.cjs.js +1 -1
  115. package/dist/components/stories/Button.stories.es.js +1 -1
  116. package/dist/components/stories/Card.stories.cjs.js +1 -0
  117. package/dist/components/stories/Card.stories.d.ts +7 -0
  118. package/dist/components/stories/Card.stories.es.js +193 -0
  119. package/dist/components/stories/Checkbox.stories.cjs.js +1 -1
  120. package/dist/components/stories/Checkbox.stories.es.js +41 -12
  121. package/dist/components/stories/DatePicker.stories.cjs.js +1 -1
  122. package/dist/components/stories/DatePicker.stories.es.js +1 -1
  123. package/dist/components/stories/Dialog.stories.cjs.js +1 -0
  124. package/dist/components/stories/Dialog.stories.d.ts +7 -0
  125. package/dist/components/stories/Dialog.stories.es.js +53 -0
  126. package/dist/components/stories/Divider.stories.cjs.js +1 -0
  127. package/dist/components/stories/Divider.stories.d.ts +6 -0
  128. package/dist/components/stories/Divider.stories.es.js +41 -0
  129. package/dist/components/stories/FormControlLabel.stories.cjs.js +1 -0
  130. package/dist/components/stories/FormControlLabel.stories.d.ts +9 -0
  131. package/dist/components/stories/FormControlLabel.stories.es.js +379 -0
  132. package/dist/components/stories/Heading.stories.cjs.js +1 -1
  133. package/dist/components/stories/Heading.stories.es.js +2 -2
  134. package/dist/components/stories/IconButton.stories.cjs.js +1 -1
  135. package/dist/components/stories/IconButton.stories.es.js +47 -11
  136. package/dist/components/stories/ImagePicker.stories.cjs.js +1 -0
  137. package/dist/components/stories/ImagePicker.stories.d.ts +6 -0
  138. package/dist/components/stories/ImagePicker.stories.es.js +50 -0
  139. package/dist/components/stories/Link.stories.cjs.js +1 -0
  140. package/dist/components/stories/Link.stories.d.ts +7 -0
  141. package/dist/components/stories/Link.stories.es.js +43 -0
  142. package/dist/components/stories/Menu.stories.cjs.js +1 -0
  143. package/dist/components/stories/Menu.stories.d.ts +7 -0
  144. package/dist/components/stories/Menu.stories.es.js +51 -0
  145. package/dist/components/stories/Paper.stories.cjs.js +1 -0
  146. package/dist/components/stories/Paper.stories.d.ts +7 -0
  147. package/dist/components/stories/Paper.stories.es.js +28 -0
  148. package/dist/components/stories/RadioGroup.stories.cjs.js +1 -1
  149. package/dist/components/stories/RadioGroup.stories.es.js +70 -371
  150. package/dist/components/stories/Select.stories.cjs.js +1 -1
  151. package/dist/components/stories/Select.stories.es.js +3 -3
  152. package/dist/components/stories/TabList.stories.cjs.js +1 -1
  153. package/dist/components/stories/TabList.stories.es.js +140 -90
  154. package/dist/components/stories/TextField.stories.cjs.js +1 -1
  155. package/dist/components/stories/TextField.stories.es.js +1 -1
  156. package/dist/components/stories/Tooltip.stories.cjs.js +1 -0
  157. package/dist/components/stories/Tooltip.stories.d.ts +7 -0
  158. package/dist/components/stories/Tooltip.stories.es.js +46 -0
  159. package/dist/components/stories/Typography.stories.cjs.js +1 -0
  160. package/dist/components/stories/Typography.stories.d.ts +6 -0
  161. package/dist/components/stories/Typography.stories.es.js +65 -0
  162. package/dist/createChainedFunction-C0nujS3O.js +9 -0
  163. package/dist/createChainedFunction-CJmlQuW8.cjs +1 -0
  164. package/dist/{createSvgIcon-DxbvMQd7.js → createSvgIcon-CeuAoIMQ.js} +6 -5
  165. package/dist/createSvgIcon-eUfAcV0x.cjs +1 -0
  166. package/dist/debounce-46wSf_lW.js +15 -0
  167. package/dist/debounce-DpCj7ugL.cjs +1 -0
  168. package/dist/dividerClasses-CSD96RzX.cjs +1 -0
  169. package/dist/dividerClasses-DrJ5oIdP.js +9 -0
  170. package/dist/elementTypeAcceptingRef-Cz_FeG92.cjs +1 -0
  171. package/dist/elementTypeAcceptingRef-HBfwF2vD.js +23 -0
  172. package/dist/extendSxProp-Fr1MMO0I.cjs +1 -0
  173. package/dist/{extendSxProp-XQwkK0m7.js → extendSxProp-NjjUyYdB.js} +1 -1
  174. package/dist/formControlState-CuX6WjAX.cjs +1 -0
  175. package/dist/formControlState-vgaj2ksH.js +10 -0
  176. package/dist/fr-ChrHtTbj.cjs +1 -0
  177. package/dist/fr-rmVQsNbI.js +312 -0
  178. package/dist/{identifier-BqadgaK7.js → generateUtilityClasses--6MLb_cS.js} +990 -956
  179. package/dist/generateUtilityClasses-DEQ18TAF.cjs +59 -0
  180. package/dist/{index-BUxqDIr9.js → index-B4GmPutS.js} +6 -5
  181. package/dist/index-BGCIdIru.js +2152 -0
  182. package/dist/index-BoQHt8iN.cjs +1 -0
  183. package/dist/index-CRdsZkOC.cjs +17 -0
  184. package/dist/index-CmEzEdk2.cjs +5 -0
  185. package/dist/index-XYfXmNqA.js +186 -0
  186. package/dist/index.cjs.js +1 -1
  187. package/dist/index.es.js +276 -262
  188. package/dist/isFocusVisible-CPZqtjv2.js +12 -0
  189. package/dist/isFocusVisible-DlSijby6.cjs +2 -0
  190. package/dist/isHostComponent-PydJW4A4.cjs +1 -0
  191. package/dist/isHostComponent-kiaBvYVo.js +6 -0
  192. package/dist/{memoTheme-B6o2KVgJ.cjs → memoTheme-D99chbOP.cjs} +1 -1
  193. package/dist/{memoTheme-DfGVDRrB.js → memoTheme-o8RCKrNG.js} +1 -1
  194. package/dist/mergeSlotProps-DSv3FKLb.cjs +1 -0
  195. package/dist/{resolveComponentProps-CxJ2yAJn.js → mergeSlotProps-KHPCviGJ.js} +7 -7
  196. package/dist/ownerDocument-4MViGo3k.cjs +1 -0
  197. package/dist/ownerDocument-CUrv0DIK.js +6 -0
  198. package/dist/ownerWindow-DDHucZi0.cjs +1 -0
  199. package/dist/ownerWindow-niciwP7I.js +7 -0
  200. package/dist/useEnhancedEffect-C9MKL5N4.cjs +1 -0
  201. package/dist/useEnhancedEffect-DlS7O_-p.js +7 -0
  202. package/dist/useForkRef-CTI33h-3.cjs +1 -0
  203. package/dist/useForkRef-C_4o__cU.js +15 -0
  204. package/dist/useSlot-DsW0udy9.cjs +1 -0
  205. package/dist/{useSlot-Co14PUn6.js → useSlot-eWxwpnv1.js} +2 -2
  206. package/dist/useSlotProps--FPRW1CI.cjs +1 -0
  207. package/dist/{index-CRT92bm7.js → useSlotProps-C7zjg7t9.js} +26 -26
  208. package/dist/useTheme-B1YEBlI0.cjs +1 -0
  209. package/dist/useTheme-BXzyKigM.js +11 -0
  210. package/dist/{useTheme-oM_SFWy4.js → useTheme-D0ITn2Re.js} +1 -1
  211. package/dist/useTheme-DFJNv-zn.cjs +1 -0
  212. package/dist/useThemeProps-BwyYDczI.cjs +1 -0
  213. package/dist/{useThemeProps-BlQ3SLfB.js → useThemeProps-DrCROxdY.js} +2 -2
  214. package/dist/{useThemeProps-FiA8ivG-.js → useThemeProps-DsDeaP0E.js} +3 -3
  215. package/dist/{useThemeProps-HLq2mDKk.cjs → useThemeProps-j-HQOOfB.cjs} +1 -1
  216. package/dist/{useTimeout-D16vpBhn.js → useTimeout-FkIxJmTC.js} +4 -4
  217. package/dist/useTimeout-NIA-3R5R.cjs +1 -0
  218. package/dist/utils-70jLtOQP.js +391 -0
  219. package/dist/utils-BWx1W_q1.cjs +1 -0
  220. package/dist/utils-DWqc1kRF.js +13 -0
  221. package/dist/utils-DlWHEABQ.cjs +1 -0
  222. package/package.json +5 -5
  223. package/dist/Backdrop-KAJqifAq.cjs +0 -1
  224. package/dist/Backdrop-RBPtVAPX.js +0 -744
  225. package/dist/Box-H49yQEt_.cjs +0 -1
  226. package/dist/Button-qc45QbX6.cjs +0 -1
  227. package/dist/ButtonBase-UEHzzfUL.cjs +0 -75
  228. package/dist/Checkbox-CuYTY0gd.cjs +0 -1
  229. package/dist/CircularProgress-BPHINMQw.cjs +0 -28
  230. package/dist/DatePicker-rhgpaD-r.cjs +0 -17
  231. package/dist/DatePicker-u4rtXGeo.js +0 -12791
  232. package/dist/DefaultPropsProvider-BrX6iuA3.cjs +0 -17
  233. package/dist/DefaultPropsProvider-CaRoy5OV.js +0 -484
  234. package/dist/FormGroup-BBYEQB4C.cjs +0 -1
  235. package/dist/FormGroup-BVtE8Mrv.js +0 -348
  236. package/dist/FormLabel-D8jYibc1.cjs +0 -2
  237. package/dist/IconButton-CVyLtjcH.cjs +0 -2
  238. package/dist/InputAdornment-BJfpEQAa.cjs +0 -1
  239. package/dist/InputBase-Ctmib7Br.cjs +0 -3
  240. package/dist/MenuItem-Els-vJZW.cjs +0 -1
  241. package/dist/Select-BlPQngVF.js +0 -4720
  242. package/dist/Select-ipcMZ4iK.cjs +0 -11
  243. package/dist/Stack-CEjx3KHM.cjs +0 -1
  244. package/dist/SwitchBase-URM3X3YZ.cjs +0 -1
  245. package/dist/Tabs-Nvk94RTW.cjs +0 -4
  246. package/dist/TextField-BVAkADOb.cjs +0 -1
  247. package/dist/Tooltip-DvPL2M0E.cjs +0 -100
  248. package/dist/Typography-5OodZ94T.cjs +0 -1
  249. package/dist/createSvgIcon-GU7fqNnI.cjs +0 -1
  250. package/dist/extendSxProp-D11-pC6h.cjs +0 -1
  251. package/dist/formControlState-DCkDUdfO.cjs +0 -1
  252. package/dist/formControlState-DdQP43Uo.js +0 -21
  253. package/dist/fr-B8_MxRl5.js +0 -307
  254. package/dist/fr-Nvp7C-vS.cjs +0 -1
  255. package/dist/identifier-BQH88SE0.cjs +0 -59
  256. package/dist/index-CNv8ppur.cjs +0 -1
  257. package/dist/index-D7nFYLYq.cjs +0 -1
  258. package/dist/ownerWindow-BoRkeomM.js +0 -23
  259. package/dist/ownerWindow-Dk_4aaak.cjs +0 -1
  260. package/dist/refType-DlHf9HvO.js +0 -27
  261. package/dist/refType-Do7KaOvv.cjs +0 -1
  262. package/dist/resolveComponentProps-DTv6xPbb.cjs +0 -1
  263. package/dist/useForkRef-D-DyzOXj.js +0 -21
  264. package/dist/useForkRef-D81w5oMb.cjs +0 -1
  265. package/dist/useSlot-42jgZftI.cjs +0 -1
  266. package/dist/useTheme-CtT7O-Wk.js +0 -11
  267. package/dist/useTheme-cVN-YQNB.cjs +0 -1
  268. package/dist/useTheme-tZYpFplW.cjs +0 -1
  269. package/dist/useThemeProps-r0DnR8FJ.cjs +0 -1
  270. package/dist/useTimeout-DWEGwfTA.cjs +0 -1
@@ -0,0 +1,966 @@
1
+ import * as s from "react";
2
+ import { r as ye } from "./index-XYfXmNqA.js";
3
+ import { H as ee, I as oe, G as Y, P as e } from "./generateUtilityClasses--6MLb_cS.js";
4
+ import { u as Le, a as fe } from "./useSlotProps-C7zjg7t9.js";
5
+ import { s as V, u as te, c as ne, r as je } from "./DefaultPropsProvider-DUWovK-8.js";
6
+ import { jsx as z, jsxs as ke } from "react/jsx-runtime";
7
+ import { i as Fe } from "./isHostComponent-kiaBvYVo.js";
8
+ import { u as de } from "./useSlot-eWxwpnv1.js";
9
+ import { g as ze, M as Ke } from "./Modal-C4Jb6sd1.js";
10
+ import { P as He, i as Ue } from "./Paper-nlWPEgQh.js";
11
+ import { o as J } from "./ownerDocument-CUrv0DIK.js";
12
+ import { o as Q } from "./ownerWindow-niciwP7I.js";
13
+ import { d as Ve } from "./debounce-46wSf_lW.js";
14
+ import { u as ve } from "./useForkRef-C_4o__cU.js";
15
+ import { u as _e, r as Ae } from "./useEnhancedEffect-DlS7O_-p.js";
16
+ import { c as We } from "./chainPropTypes-D9lkm76m.js";
17
+ import { H as Z } from "./Portal-BcFwfiTx.js";
18
+ import { e as $e } from "./elementTypeAcceptingRef-HBfwF2vD.js";
19
+ import { G as qe } from "./Grow-BgMSa0P2.js";
20
+ const Pe = /* @__PURE__ */ s.createContext({});
21
+ process.env.NODE_ENV !== "production" && (Pe.displayName = "ListContext");
22
+ function Be(t) {
23
+ return ee("MuiList", t);
24
+ }
25
+ const wo = oe("MuiList", ["root", "padding", "dense", "subheader"]), Ge = (t) => {
26
+ const {
27
+ classes: o,
28
+ disablePadding: n,
29
+ dense: y,
30
+ subheader: g
31
+ } = t;
32
+ return ne({
33
+ root: ["root", !n && "padding", y && "dense", g && "subheader"]
34
+ }, Be, o);
35
+ }, Ye = V("ul", {
36
+ name: "MuiList",
37
+ slot: "Root",
38
+ overridesResolver: (t, o) => {
39
+ const {
40
+ ownerState: n
41
+ } = t;
42
+ return [o.root, !n.disablePadding && o.padding, n.dense && o.dense, n.subheader && o.subheader];
43
+ }
44
+ })({
45
+ listStyle: "none",
46
+ margin: 0,
47
+ padding: 0,
48
+ position: "relative",
49
+ variants: [{
50
+ props: ({
51
+ ownerState: t
52
+ }) => !t.disablePadding,
53
+ style: {
54
+ paddingTop: 8,
55
+ paddingBottom: 8
56
+ }
57
+ }, {
58
+ props: ({
59
+ ownerState: t
60
+ }) => t.subheader,
61
+ style: {
62
+ paddingTop: 0
63
+ }
64
+ }]
65
+ }), Te = /* @__PURE__ */ s.forwardRef(function(o, n) {
66
+ const y = te({
67
+ props: o,
68
+ name: "MuiList"
69
+ }), {
70
+ children: g,
71
+ className: h,
72
+ component: b = "ul",
73
+ dense: a = !1,
74
+ disablePadding: m = !1,
75
+ subheader: E,
76
+ ...O
77
+ } = y, S = s.useMemo(() => ({
78
+ dense: a
79
+ }), [a]), D = {
80
+ ...y,
81
+ component: b,
82
+ dense: a,
83
+ disablePadding: m
84
+ }, i = Ge(D);
85
+ return /* @__PURE__ */ z(Pe.Provider, {
86
+ value: S,
87
+ children: /* @__PURE__ */ ke(Ye, {
88
+ as: b,
89
+ className: Y(i.root, h),
90
+ ref: n,
91
+ ownerState: D,
92
+ ...O,
93
+ children: [E, g]
94
+ })
95
+ });
96
+ });
97
+ process.env.NODE_ENV !== "production" && (Te.propTypes = {
98
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
99
+ // │ These PropTypes are generated from the TypeScript type definitions. │
100
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
101
+ // └─────────────────────────────────────────────────────────────────────┘
102
+ /**
103
+ * The content of the component.
104
+ */
105
+ children: e.node,
106
+ /**
107
+ * Override or extend the styles applied to the component.
108
+ */
109
+ classes: e.object,
110
+ /**
111
+ * @ignore
112
+ */
113
+ className: e.string,
114
+ /**
115
+ * The component used for the root node.
116
+ * Either a string to use a HTML element or a component.
117
+ */
118
+ component: e.elementType,
119
+ /**
120
+ * If `true`, compact vertical padding designed for keyboard and mouse input is used for
121
+ * the list and list items.
122
+ * The prop is available to descendant components as the `dense` context.
123
+ * @default false
124
+ */
125
+ dense: e.bool,
126
+ /**
127
+ * If `true`, vertical padding is removed from the list.
128
+ * @default false
129
+ */
130
+ disablePadding: e.bool,
131
+ /**
132
+ * The content of the subheader, normally `ListSubheader`.
133
+ */
134
+ subheader: e.node,
135
+ /**
136
+ * The system prop that allows defining system overrides as well as additional CSS styles.
137
+ */
138
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object])
139
+ });
140
+ function X(t, o, n) {
141
+ return t === o ? t.firstChild : o && o.nextElementSibling ? o.nextElementSibling : n ? null : t.firstChild;
142
+ }
143
+ function he(t, o, n) {
144
+ return t === o ? n ? t.firstChild : t.lastChild : o && o.previousElementSibling ? o.previousElementSibling : n ? null : t.lastChild;
145
+ }
146
+ function Ee(t, o) {
147
+ if (o === void 0)
148
+ return !0;
149
+ let n = t.innerText;
150
+ return n === void 0 && (n = t.textContent), n = n.trim().toLowerCase(), n.length === 0 ? !1 : o.repeating ? n[0] === o.keys[0] : n.startsWith(o.keys.join(""));
151
+ }
152
+ function W(t, o, n, y, g, h) {
153
+ let b = !1, a = g(t, o, o ? n : !1);
154
+ for (; a; ) {
155
+ if (a === t.firstChild) {
156
+ if (b)
157
+ return !1;
158
+ b = !0;
159
+ }
160
+ const m = y ? !1 : a.disabled || a.getAttribute("aria-disabled") === "true";
161
+ if (!a.hasAttribute("tabindex") || !Ee(a, h) || m)
162
+ a = g(t, a, n);
163
+ else
164
+ return a.focus(), !0;
165
+ }
166
+ return !1;
167
+ }
168
+ const Me = /* @__PURE__ */ s.forwardRef(function(o, n) {
169
+ const {
170
+ // private
171
+ // eslint-disable-next-line react/prop-types
172
+ actions: y,
173
+ autoFocus: g = !1,
174
+ autoFocusItem: h = !1,
175
+ children: b,
176
+ className: a,
177
+ disabledItemsFocusable: m = !1,
178
+ disableListWrap: E = !1,
179
+ onKeyDown: O,
180
+ variant: S = "selectedMenu",
181
+ ...D
182
+ } = o, i = s.useRef(null), v = s.useRef({
183
+ keys: [],
184
+ repeating: !0,
185
+ previousKeyMatched: !0,
186
+ lastTime: null
187
+ });
188
+ _e(() => {
189
+ g && i.current.focus();
190
+ }, [g]), s.useImperativeHandle(y, () => ({
191
+ adjustStyleForScrollbar: (r, {
192
+ direction: l
193
+ }) => {
194
+ const f = !i.current.style.width;
195
+ if (r.clientHeight < i.current.clientHeight && f) {
196
+ const N = `${ze(Q(r))}px`;
197
+ i.current.style[l === "rtl" ? "paddingLeft" : "paddingRight"] = N, i.current.style.width = `calc(100% + ${N})`;
198
+ }
199
+ return i.current;
200
+ }
201
+ }), []);
202
+ const K = (r) => {
203
+ const l = i.current, f = r.key;
204
+ if (r.ctrlKey || r.metaKey || r.altKey) {
205
+ O && O(r);
206
+ return;
207
+ }
208
+ const R = J(l).activeElement;
209
+ if (f === "ArrowDown")
210
+ r.preventDefault(), W(l, R, E, m, X);
211
+ else if (f === "ArrowUp")
212
+ r.preventDefault(), W(l, R, E, m, he);
213
+ else if (f === "Home")
214
+ r.preventDefault(), W(l, null, E, m, X);
215
+ else if (f === "End")
216
+ r.preventDefault(), W(l, null, E, m, he);
217
+ else if (f.length === 1) {
218
+ const p = v.current, M = f.toLowerCase(), L = performance.now();
219
+ p.keys.length > 0 && (L - p.lastTime > 500 ? (p.keys = [], p.repeating = !0, p.previousKeyMatched = !0) : p.repeating && M !== p.keys[0] && (p.repeating = !1)), p.lastTime = L, p.keys.push(M);
220
+ const x = R && !p.repeating && Ee(R, p);
221
+ p.previousKeyMatched && (x || W(l, R, !1, m, X, p)) ? r.preventDefault() : p.previousKeyMatched = !1;
222
+ }
223
+ O && O(r);
224
+ }, j = ve(i, n);
225
+ let c = -1;
226
+ s.Children.forEach(b, (r, l) => {
227
+ if (!/* @__PURE__ */ s.isValidElement(r)) {
228
+ c === l && (c += 1, c >= b.length && (c = -1));
229
+ return;
230
+ }
231
+ process.env.NODE_ENV !== "production" && ye.isFragment(r) && console.error(["MUI: The Menu component doesn't accept a Fragment as a child.", "Consider providing an array instead."].join(`
232
+ `)), r.props.disabled || (S === "selectedMenu" && r.props.selected || c === -1) && (c = l), c === l && (r.props.disabled || r.props.muiSkipListHighlight || r.type.muiSkipListHighlight) && (c += 1, c >= b.length && (c = -1));
233
+ });
234
+ const C = s.Children.map(b, (r, l) => {
235
+ if (l === c) {
236
+ const f = {};
237
+ return h && (f.autoFocus = !0), r.props.tabIndex === void 0 && S === "selectedMenu" && (f.tabIndex = 0), /* @__PURE__ */ s.cloneElement(r, f);
238
+ }
239
+ return r;
240
+ });
241
+ return /* @__PURE__ */ z(Te, {
242
+ role: "menu",
243
+ ref: j,
244
+ className: a,
245
+ onKeyDown: K,
246
+ tabIndex: g ? 0 : -1,
247
+ ...D,
248
+ children: C
249
+ });
250
+ });
251
+ process.env.NODE_ENV !== "production" && (Me.propTypes = {
252
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
253
+ // │ These PropTypes are generated from the TypeScript type definitions. │
254
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
255
+ // └─────────────────────────────────────────────────────────────────────┘
256
+ /**
257
+ * If `true`, will focus the `[role="menu"]` container and move into tab order.
258
+ * @default false
259
+ */
260
+ autoFocus: e.bool,
261
+ /**
262
+ * If `true`, will focus the first menuitem if `variant="menu"` or selected item
263
+ * if `variant="selectedMenu"`.
264
+ * @default false
265
+ */
266
+ autoFocusItem: e.bool,
267
+ /**
268
+ * MenuList contents, normally `MenuItem`s.
269
+ */
270
+ children: e.node,
271
+ /**
272
+ * @ignore
273
+ */
274
+ className: e.string,
275
+ /**
276
+ * If `true`, will allow focus on disabled items.
277
+ * @default false
278
+ */
279
+ disabledItemsFocusable: e.bool,
280
+ /**
281
+ * If `true`, the menu items will not wrap focus.
282
+ * @default false
283
+ */
284
+ disableListWrap: e.bool,
285
+ /**
286
+ * @ignore
287
+ */
288
+ onKeyDown: e.func,
289
+ /**
290
+ * The variant to use. Use `menu` to prevent selected items from impacting the initial focus
291
+ * and the vertical alignment relative to the anchor element.
292
+ * @default 'selectedMenu'
293
+ */
294
+ variant: e.oneOf(["menu", "selectedMenu"])
295
+ });
296
+ function Xe(t) {
297
+ return ee("MuiPopover", t);
298
+ }
299
+ oe("MuiPopover", ["root", "paper"]);
300
+ function me(t, o) {
301
+ let n = 0;
302
+ return typeof o == "number" ? n = o : o === "center" ? n = t.height / 2 : o === "bottom" && (n = t.height), n;
303
+ }
304
+ function be(t, o) {
305
+ let n = 0;
306
+ return typeof o == "number" ? n = o : o === "center" ? n = t.width / 2 : o === "right" && (n = t.width), n;
307
+ }
308
+ function ge(t) {
309
+ return [t.horizontal, t.vertical].map((o) => typeof o == "number" ? `${o}px` : o).join(" ");
310
+ }
311
+ function G(t) {
312
+ return typeof t == "function" ? t() : t;
313
+ }
314
+ const Je = (t) => {
315
+ const {
316
+ classes: o
317
+ } = t;
318
+ return ne({
319
+ root: ["root"],
320
+ paper: ["paper"]
321
+ }, Xe, o);
322
+ }, Qe = V(Ke, {
323
+ name: "MuiPopover",
324
+ slot: "Root",
325
+ overridesResolver: (t, o) => o.root
326
+ })({}), Oe = V(He, {
327
+ name: "MuiPopover",
328
+ slot: "Paper",
329
+ overridesResolver: (t, o) => o.paper
330
+ })({
331
+ position: "absolute",
332
+ overflowY: "auto",
333
+ overflowX: "hidden",
334
+ // So we see the popover when it's empty.
335
+ // It's most likely on issue on userland.
336
+ minWidth: 16,
337
+ minHeight: 16,
338
+ maxWidth: "calc(100% - 32px)",
339
+ maxHeight: "calc(100% - 32px)",
340
+ // We disable the focus ring for mouse, touch and keyboard users.
341
+ outline: 0
342
+ }), Re = /* @__PURE__ */ s.forwardRef(function(o, n) {
343
+ const y = te({
344
+ props: o,
345
+ name: "MuiPopover"
346
+ }), {
347
+ action: g,
348
+ anchorEl: h,
349
+ anchorOrigin: b = {
350
+ vertical: "top",
351
+ horizontal: "left"
352
+ },
353
+ anchorPosition: a,
354
+ anchorReference: m = "anchorEl",
355
+ children: E,
356
+ className: O,
357
+ container: S,
358
+ elevation: D = 8,
359
+ marginThreshold: i = 16,
360
+ open: v,
361
+ PaperProps: K = {},
362
+ slots: j = {},
363
+ slotProps: c = {},
364
+ transformOrigin: C = {
365
+ vertical: "top",
366
+ horizontal: "left"
367
+ },
368
+ TransitionComponent: r = qe,
369
+ transitionDuration: l = "auto",
370
+ TransitionProps: {
371
+ onEntering: f,
372
+ ...N
373
+ } = {},
374
+ disableScrollLock: R = !1,
375
+ ...p
376
+ } = y, M = (c == null ? void 0 : c.paper) ?? K, L = s.useRef(), x = {
377
+ ...y,
378
+ anchorOrigin: b,
379
+ anchorReference: m,
380
+ elevation: D,
381
+ marginThreshold: i,
382
+ externalPaperSlotProps: M,
383
+ transformOrigin: C,
384
+ TransitionComponent: r,
385
+ transitionDuration: l,
386
+ TransitionProps: N
387
+ }, _ = Je(x), $ = s.useCallback(() => {
388
+ if (m === "anchorPosition")
389
+ return process.env.NODE_ENV !== "production" && (a || console.error('MUI: You need to provide a `anchorPosition` prop when using <Popover anchorReference="anchorPosition" />.')), a;
390
+ const u = G(h), d = u && u.nodeType === 1 ? u : J(L.current).body, T = d.getBoundingClientRect();
391
+ if (process.env.NODE_ENV !== "production") {
392
+ const F = d.getBoundingClientRect();
393
+ process.env.NODE_ENV !== "test" && F.top === 0 && F.left === 0 && F.right === 0 && F.bottom === 0 && console.warn(["MUI: The `anchorEl` prop provided to the component is invalid.", "The anchor element should be part of the document layout.", "Make sure the element is present in the document or that it's not display none."].join(`
394
+ `));
395
+ }
396
+ return {
397
+ top: T.top + me(T, b.vertical),
398
+ left: T.left + be(T, b.horizontal)
399
+ };
400
+ }, [h, b.horizontal, b.vertical, a, m]), q = s.useCallback((u) => ({
401
+ vertical: me(u, C.vertical),
402
+ horizontal: be(u, C.horizontal)
403
+ }), [C.horizontal, C.vertical]), B = s.useCallback((u) => {
404
+ const d = {
405
+ width: u.offsetWidth,
406
+ height: u.offsetHeight
407
+ }, T = q(d);
408
+ if (m === "none")
409
+ return {
410
+ top: null,
411
+ left: null,
412
+ transformOrigin: ge(T)
413
+ };
414
+ const F = $();
415
+ let H = F.top - T.vertical, U = F.left - T.horizontal;
416
+ const le = H + d.height, ce = U + d.width, pe = Q(G(h)), A = pe.innerHeight - i, ue = pe.innerWidth - i;
417
+ if (i !== null && H < i) {
418
+ const w = H - i;
419
+ H -= w, T.vertical += w;
420
+ } else if (i !== null && le > A) {
421
+ const w = le - A;
422
+ H -= w, T.vertical += w;
423
+ }
424
+ if (process.env.NODE_ENV !== "production" && d.height > A && d.height && A && console.error(["MUI: The popover component is too tall.", `Some part of it can not be seen on the screen (${d.height - A}px).`, "Please consider adding a `max-height` to improve the user-experience."].join(`
425
+ `)), i !== null && U < i) {
426
+ const w = U - i;
427
+ U -= w, T.horizontal += w;
428
+ } else if (ce > ue) {
429
+ const w = ce - ue;
430
+ U -= w, T.horizontal += w;
431
+ }
432
+ return {
433
+ top: `${Math.round(H)}px`,
434
+ left: `${Math.round(U)}px`,
435
+ transformOrigin: ge(T)
436
+ };
437
+ }, [h, m, $, q, i]), [P, k] = s.useState(v), I = s.useCallback(() => {
438
+ const u = L.current;
439
+ if (!u)
440
+ return;
441
+ const d = B(u);
442
+ d.top !== null && u.style.setProperty("top", d.top), d.left !== null && (u.style.left = d.left), u.style.transformOrigin = d.transformOrigin, k(!0);
443
+ }, [B]);
444
+ s.useEffect(() => (R && window.addEventListener("scroll", I), () => window.removeEventListener("scroll", I)), [h, R, I]);
445
+ const we = (u, d) => {
446
+ f && f(u, d), I();
447
+ }, Ce = () => {
448
+ k(!1);
449
+ };
450
+ s.useEffect(() => {
451
+ v && I();
452
+ }), s.useImperativeHandle(g, () => v ? {
453
+ updatePosition: () => {
454
+ I();
455
+ }
456
+ } : null, [v, I]), s.useEffect(() => {
457
+ if (!v)
458
+ return;
459
+ const u = Ve(() => {
460
+ I();
461
+ }), d = Q(h);
462
+ return d.addEventListener("resize", u), () => {
463
+ u.clear(), d.removeEventListener("resize", u);
464
+ };
465
+ }, [h, v, I]);
466
+ let re = l;
467
+ l === "auto" && !r.muiSupportAuto && (re = void 0);
468
+ const Ne = S || (h ? J(G(h)).body : void 0), se = {
469
+ slots: j,
470
+ slotProps: {
471
+ ...c,
472
+ paper: M
473
+ }
474
+ }, [xe, ie] = de("paper", {
475
+ elementType: Oe,
476
+ externalForwardedProps: se,
477
+ additionalProps: {
478
+ elevation: D,
479
+ className: Y(_.paper, M == null ? void 0 : M.className),
480
+ style: P ? M.style : {
481
+ ...M.style,
482
+ opacity: 0
483
+ }
484
+ },
485
+ ownerState: x
486
+ }), [ae, {
487
+ slotProps: Se,
488
+ ...De
489
+ }] = de("root", {
490
+ elementType: Qe,
491
+ externalForwardedProps: se,
492
+ additionalProps: {
493
+ slotProps: {
494
+ backdrop: {
495
+ invisible: !0
496
+ }
497
+ },
498
+ container: Ne,
499
+ open: v
500
+ },
501
+ ownerState: x,
502
+ className: Y(_.root, O)
503
+ }), Ie = ve(L, ie.ref);
504
+ return /* @__PURE__ */ z(ae, {
505
+ ...De,
506
+ ...!Fe(ae) && {
507
+ slotProps: Se,
508
+ disableScrollLock: R
509
+ },
510
+ ...p,
511
+ ref: n,
512
+ children: /* @__PURE__ */ z(r, {
513
+ appear: !0,
514
+ in: v,
515
+ onEntering: we,
516
+ onExited: Ce,
517
+ timeout: re,
518
+ ...N,
519
+ children: /* @__PURE__ */ z(xe, {
520
+ ...ie,
521
+ ref: Ie,
522
+ children: E
523
+ })
524
+ })
525
+ });
526
+ });
527
+ process.env.NODE_ENV !== "production" && (Re.propTypes = {
528
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
529
+ // │ These PropTypes are generated from the TypeScript type definitions. │
530
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
531
+ // └─────────────────────────────────────────────────────────────────────┘
532
+ /**
533
+ * A ref for imperative actions.
534
+ * It currently only supports updatePosition() action.
535
+ */
536
+ action: Ae,
537
+ /**
538
+ * An HTML element, [PopoverVirtualElement](https://mui.com/material-ui/react-popover/#virtual-element),
539
+ * or a function that returns either.
540
+ * It's used to set the position of the popover.
541
+ */
542
+ anchorEl: We(e.oneOfType([Z, e.func]), (t) => {
543
+ if (t.open && (!t.anchorReference || t.anchorReference === "anchorEl")) {
544
+ const o = G(t.anchorEl);
545
+ if (o && o.nodeType === 1) {
546
+ const n = o.getBoundingClientRect();
547
+ if (process.env.NODE_ENV !== "test" && n.top === 0 && n.left === 0 && n.right === 0 && n.bottom === 0)
548
+ return new Error(["MUI: The `anchorEl` prop provided to the component is invalid.", "The anchor element should be part of the document layout.", "Make sure the element is present in the document or that it's not display none."].join(`
549
+ `));
550
+ } else
551
+ return new Error(["MUI: The `anchorEl` prop provided to the component is invalid.", `It should be an Element or PopoverVirtualElement instance but it's \`${o}\` instead.`].join(`
552
+ `));
553
+ }
554
+ return null;
555
+ }),
556
+ /**
557
+ * This is the point on the anchor where the popover's
558
+ * `anchorEl` will attach to. This is not used when the
559
+ * anchorReference is 'anchorPosition'.
560
+ *
561
+ * Options:
562
+ * vertical: [top, center, bottom];
563
+ * horizontal: [left, center, right].
564
+ * @default {
565
+ * vertical: 'top',
566
+ * horizontal: 'left',
567
+ * }
568
+ */
569
+ anchorOrigin: e.shape({
570
+ horizontal: e.oneOfType([e.oneOf(["center", "left", "right"]), e.number]).isRequired,
571
+ vertical: e.oneOfType([e.oneOf(["bottom", "center", "top"]), e.number]).isRequired
572
+ }),
573
+ /**
574
+ * This is the position that may be used to set the position of the popover.
575
+ * The coordinates are relative to the application's client area.
576
+ */
577
+ anchorPosition: e.shape({
578
+ left: e.number.isRequired,
579
+ top: e.number.isRequired
580
+ }),
581
+ /**
582
+ * This determines which anchor prop to refer to when setting
583
+ * the position of the popover.
584
+ * @default 'anchorEl'
585
+ */
586
+ anchorReference: e.oneOf(["anchorEl", "anchorPosition", "none"]),
587
+ /**
588
+ * A backdrop component. This prop enables custom backdrop rendering.
589
+ * @deprecated Use `slotProps.root.slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
590
+ * Use the `slotProps.root.slots.backdrop` prop to make your application ready for the next version of Material UI.
591
+ * @default styled(Backdrop, {
592
+ * name: 'MuiModal',
593
+ * slot: 'Backdrop',
594
+ * overridesResolver: (props, styles) => {
595
+ * return styles.backdrop;
596
+ * },
597
+ * })({
598
+ * zIndex: -1,
599
+ * })
600
+ */
601
+ BackdropComponent: e.elementType,
602
+ /**
603
+ * Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.
604
+ * @deprecated Use `slotProps.root.slotProps.backdrop` instead.
605
+ */
606
+ BackdropProps: e.object,
607
+ /**
608
+ * The content of the component.
609
+ */
610
+ children: e.node,
611
+ /**
612
+ * Override or extend the styles applied to the component.
613
+ */
614
+ classes: e.object,
615
+ /**
616
+ * @ignore
617
+ */
618
+ className: e.string,
619
+ /**
620
+ * An HTML element, component instance, or function that returns either.
621
+ * The `container` will passed to the Modal component.
622
+ *
623
+ * By default, it uses the body of the anchorEl's top-level document object,
624
+ * so it's simply `document.body` most of the time.
625
+ */
626
+ container: e.oneOfType([Z, e.func]),
627
+ /**
628
+ * Disable the scroll lock behavior.
629
+ * @default false
630
+ */
631
+ disableScrollLock: e.bool,
632
+ /**
633
+ * The elevation of the popover.
634
+ * @default 8
635
+ */
636
+ elevation: Ue,
637
+ /**
638
+ * Specifies how close to the edge of the window the popover can appear.
639
+ * If null, the popover will not be constrained by the window.
640
+ * @default 16
641
+ */
642
+ marginThreshold: e.number,
643
+ /**
644
+ * Callback fired when the component requests to be closed.
645
+ * The `reason` parameter can optionally be used to control the response to `onClose`.
646
+ */
647
+ onClose: e.func,
648
+ /**
649
+ * If `true`, the component is shown.
650
+ */
651
+ open: e.bool.isRequired,
652
+ /**
653
+ * Props applied to the [`Paper`](https://mui.com/material-ui/api/paper/) element.
654
+ *
655
+ * This prop is an alias for `slotProps.paper` and will be overriden by it if both are used.
656
+ * @deprecated Use `slotProps.paper` instead.
657
+ *
658
+ * @default {}
659
+ */
660
+ PaperProps: e.shape({
661
+ component: $e
662
+ }),
663
+ /**
664
+ * The props used for each slot inside.
665
+ * @default {}
666
+ */
667
+ slotProps: e.shape({
668
+ paper: e.oneOfType([e.func, e.object]),
669
+ root: e.oneOfType([e.func, e.object])
670
+ }),
671
+ /**
672
+ * The components used for each slot inside.
673
+ * @default {}
674
+ */
675
+ slots: e.shape({
676
+ paper: e.elementType,
677
+ root: e.elementType
678
+ }),
679
+ /**
680
+ * The system prop that allows defining system overrides as well as additional CSS styles.
681
+ */
682
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
683
+ /**
684
+ * This is the point on the popover which
685
+ * will attach to the anchor's origin.
686
+ *
687
+ * Options:
688
+ * vertical: [top, center, bottom, x(px)];
689
+ * horizontal: [left, center, right, x(px)].
690
+ * @default {
691
+ * vertical: 'top',
692
+ * horizontal: 'left',
693
+ * }
694
+ */
695
+ transformOrigin: e.shape({
696
+ horizontal: e.oneOfType([e.oneOf(["center", "left", "right"]), e.number]).isRequired,
697
+ vertical: e.oneOfType([e.oneOf(["bottom", "center", "top"]), e.number]).isRequired
698
+ }),
699
+ /**
700
+ * The component used for the transition.
701
+ * [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
702
+ * @default Grow
703
+ */
704
+ TransitionComponent: e.elementType,
705
+ /**
706
+ * Set to 'auto' to automatically calculate transition time based on height.
707
+ * @default 'auto'
708
+ */
709
+ transitionDuration: e.oneOfType([e.oneOf(["auto"]), e.number, e.shape({
710
+ appear: e.number,
711
+ enter: e.number,
712
+ exit: e.number
713
+ })]),
714
+ /**
715
+ * Props applied to the transition element.
716
+ * By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
717
+ * @default {}
718
+ */
719
+ TransitionProps: e.object
720
+ });
721
+ function Ze(t) {
722
+ return ee("MuiMenu", t);
723
+ }
724
+ const Co = oe("MuiMenu", ["root", "paper", "list"]), eo = {
725
+ vertical: "top",
726
+ horizontal: "right"
727
+ }, oo = {
728
+ vertical: "top",
729
+ horizontal: "left"
730
+ }, to = (t) => {
731
+ const {
732
+ classes: o
733
+ } = t;
734
+ return ne({
735
+ root: ["root"],
736
+ paper: ["paper"],
737
+ list: ["list"]
738
+ }, Ze, o);
739
+ }, no = V(Re, {
740
+ shouldForwardProp: (t) => je(t) || t === "classes",
741
+ name: "MuiMenu",
742
+ slot: "Root",
743
+ overridesResolver: (t, o) => o.root
744
+ })({}), ro = V(Oe, {
745
+ name: "MuiMenu",
746
+ slot: "Paper",
747
+ overridesResolver: (t, o) => o.paper
748
+ })({
749
+ // specZ: The maximum height of a simple menu should be one or more rows less than the view
750
+ // height. This ensures a tappable area outside of the simple menu with which to dismiss
751
+ // the menu.
752
+ maxHeight: "calc(100% - 96px)",
753
+ // Add iOS momentum scrolling for iOS < 13.0
754
+ WebkitOverflowScrolling: "touch"
755
+ }), so = V(Me, {
756
+ name: "MuiMenu",
757
+ slot: "List",
758
+ overridesResolver: (t, o) => o.list
759
+ })({
760
+ // We disable the focus ring for mouse, touch and keyboard users.
761
+ outline: 0
762
+ }), io = /* @__PURE__ */ s.forwardRef(function(o, n) {
763
+ const y = te({
764
+ props: o,
765
+ name: "MuiMenu"
766
+ }), {
767
+ autoFocus: g = !0,
768
+ children: h,
769
+ className: b,
770
+ disableAutoFocusItem: a = !1,
771
+ MenuListProps: m = {},
772
+ onClose: E,
773
+ open: O,
774
+ PaperProps: S = {},
775
+ PopoverClasses: D,
776
+ transitionDuration: i = "auto",
777
+ TransitionProps: {
778
+ onEntering: v,
779
+ ...K
780
+ } = {},
781
+ variant: j = "selectedMenu",
782
+ slots: c = {},
783
+ slotProps: C = {},
784
+ ...r
785
+ } = y, l = Le(), f = {
786
+ ...y,
787
+ autoFocus: g,
788
+ disableAutoFocusItem: a,
789
+ MenuListProps: m,
790
+ onEntering: v,
791
+ PaperProps: S,
792
+ transitionDuration: i,
793
+ TransitionProps: K,
794
+ variant: j
795
+ }, N = to(f), R = g && !a && O, p = s.useRef(null), M = (P, k) => {
796
+ p.current && p.current.adjustStyleForScrollbar(P, {
797
+ direction: l ? "rtl" : "ltr"
798
+ }), v && v(P, k);
799
+ }, L = (P) => {
800
+ P.key === "Tab" && (P.preventDefault(), E && E(P, "tabKeyDown"));
801
+ };
802
+ let x = -1;
803
+ s.Children.map(h, (P, k) => {
804
+ /* @__PURE__ */ s.isValidElement(P) && (process.env.NODE_ENV !== "production" && ye.isFragment(P) && console.error(["MUI: The Menu component doesn't accept a Fragment as a child.", "Consider providing an array instead."].join(`
805
+ `)), P.props.disabled || (j === "selectedMenu" && P.props.selected || x === -1) && (x = k));
806
+ });
807
+ const _ = c.paper ?? ro, $ = C.paper ?? S, q = fe({
808
+ elementType: c.root,
809
+ externalSlotProps: C.root,
810
+ ownerState: f,
811
+ className: [N.root, b]
812
+ }), B = fe({
813
+ elementType: _,
814
+ externalSlotProps: $,
815
+ ownerState: f,
816
+ className: N.paper
817
+ });
818
+ return /* @__PURE__ */ z(no, {
819
+ onClose: E,
820
+ anchorOrigin: {
821
+ vertical: "bottom",
822
+ horizontal: l ? "right" : "left"
823
+ },
824
+ transformOrigin: l ? eo : oo,
825
+ slots: {
826
+ paper: _,
827
+ root: c.root
828
+ },
829
+ slotProps: {
830
+ root: q,
831
+ paper: B
832
+ },
833
+ open: O,
834
+ ref: n,
835
+ transitionDuration: i,
836
+ TransitionProps: {
837
+ onEntering: M,
838
+ ...K
839
+ },
840
+ ownerState: f,
841
+ ...r,
842
+ classes: D,
843
+ children: /* @__PURE__ */ z(so, {
844
+ onKeyDown: L,
845
+ actions: p,
846
+ autoFocus: g && (x === -1 || a),
847
+ autoFocusItem: R,
848
+ variant: j,
849
+ ...m,
850
+ className: Y(N.list, m.className),
851
+ children: h
852
+ })
853
+ });
854
+ });
855
+ process.env.NODE_ENV !== "production" && (io.propTypes = {
856
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
857
+ // │ These PropTypes are generated from the TypeScript type definitions. │
858
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
859
+ // └─────────────────────────────────────────────────────────────────────┘
860
+ /**
861
+ * An HTML element, or a function that returns one.
862
+ * It's used to set the position of the menu.
863
+ */
864
+ anchorEl: e.oneOfType([Z, e.func]),
865
+ /**
866
+ * If `true` (Default) will focus the `[role="menu"]` if no focusable child is found. Disabled
867
+ * children are not focusable. If you set this prop to `false` focus will be placed
868
+ * on the parent modal container. This has severe accessibility implications
869
+ * and should only be considered if you manage focus otherwise.
870
+ * @default true
871
+ */
872
+ autoFocus: e.bool,
873
+ /**
874
+ * Menu contents, normally `MenuItem`s.
875
+ */
876
+ children: e.node,
877
+ /**
878
+ * Override or extend the styles applied to the component.
879
+ */
880
+ classes: e.object,
881
+ /**
882
+ * @ignore
883
+ */
884
+ className: e.string,
885
+ /**
886
+ * When opening the menu will not focus the active item but the `[role="menu"]`
887
+ * unless `autoFocus` is also set to `false`. Not using the default means not
888
+ * following WAI-ARIA authoring practices. Please be considerate about possible
889
+ * accessibility implications.
890
+ * @default false
891
+ */
892
+ disableAutoFocusItem: e.bool,
893
+ /**
894
+ * Props applied to the [`MenuList`](https://mui.com/material-ui/api/menu-list/) element.
895
+ * @default {}
896
+ */
897
+ MenuListProps: e.object,
898
+ /**
899
+ * Callback fired when the component requests to be closed.
900
+ *
901
+ * @param {object} event The event source of the callback.
902
+ * @param {string} reason Can be: `"escapeKeyDown"`, `"backdropClick"`, `"tabKeyDown"`.
903
+ */
904
+ onClose: e.func,
905
+ /**
906
+ * If `true`, the component is shown.
907
+ */
908
+ open: e.bool.isRequired,
909
+ /**
910
+ * @ignore
911
+ */
912
+ PaperProps: e.object,
913
+ /**
914
+ * `classes` prop applied to the [`Popover`](https://mui.com/material-ui/api/popover/) element.
915
+ */
916
+ PopoverClasses: e.object,
917
+ /**
918
+ * The props used for each slot inside.
919
+ * @default {}
920
+ */
921
+ slotProps: e.shape({
922
+ paper: e.oneOfType([e.func, e.object]),
923
+ root: e.oneOfType([e.func, e.object])
924
+ }),
925
+ /**
926
+ * The components used for each slot inside.
927
+ * @default {}
928
+ */
929
+ slots: e.shape({
930
+ paper: e.elementType,
931
+ root: e.elementType
932
+ }),
933
+ /**
934
+ * The system prop that allows defining system overrides as well as additional CSS styles.
935
+ */
936
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
937
+ /**
938
+ * The length of the transition in `ms`, or 'auto'
939
+ * @default 'auto'
940
+ */
941
+ transitionDuration: e.oneOfType([e.oneOf(["auto"]), e.number, e.shape({
942
+ appear: e.number,
943
+ enter: e.number,
944
+ exit: e.number
945
+ })]),
946
+ /**
947
+ * Props applied to the transition element.
948
+ * By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.
949
+ * @default {}
950
+ */
951
+ TransitionProps: e.object,
952
+ /**
953
+ * The variant to use. Use `menu` to prevent selected items from impacting the initial focus.
954
+ * @default 'selectedMenu'
955
+ */
956
+ variant: e.oneOf(["menu", "selectedMenu"])
957
+ });
958
+ export {
959
+ Te as L,
960
+ io as M,
961
+ Ze as a,
962
+ Pe as b,
963
+ Be as g,
964
+ wo as l,
965
+ Co as m
966
+ };