@cgi-learning-hub/ui 1.4.0-dev.1742217009 → 1.4.0-dev.1742230542

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 (236) hide show
  1. package/dist/{Alert-BCd1tHk0.js → Alert-CKb0chao.js} +9 -9
  2. package/dist/{Alert-Bsw5YTuJ.cjs → Alert-DG3eL-Ib.cjs} +1 -1
  3. package/dist/{Backdrop-DOdBqGqq.cjs → Backdrop-BstwstC2.cjs} +1 -1
  4. package/dist/{Backdrop-CjDitjBW.js → Backdrop-iPLBOqna.js} +6 -6
  5. package/dist/{Box-DYA49L7w.cjs → Box-Bur5FaJN.cjs} +1 -1
  6. package/dist/{Box-GMNejc_m.js → Box-WOWWyD8I.js} +3 -3
  7. package/dist/{Button-x5rtZxJN.js → Button-9t4F1m3f.js} +6 -6
  8. package/dist/{Button-UmeKHfcL.cjs → Button-BwM-MwfL.cjs} +1 -1
  9. package/dist/{ButtonBase-D6tfI-8D.cjs → ButtonBase-Dc0VLLRk.cjs} +1 -1
  10. package/dist/{ButtonBase-CU1npQuI.js → ButtonBase-_bcYKepP.js} +4 -4
  11. package/dist/{CardContent-5bW4A4d2.cjs → CardContent-BaDUN0u9.cjs} +1 -1
  12. package/dist/{CardContent-CL_61cm-.js → CardContent-Cqcej9rj.js} +3 -3
  13. package/dist/{Checkbox-DQgPXaym.cjs → Checkbox-Bg5Js3hU.cjs} +1 -1
  14. package/dist/{Checkbox-CtRSDqOe.js → Checkbox-BphoJHzz.js} +7 -7
  15. package/dist/{Chip-BTnuWGEU.cjs → Chip-BXh7lD_u.cjs} +1 -1
  16. package/dist/{Chip-ZIBpWC4I.js → Chip-CtTzX7L1.js} +6 -6
  17. package/dist/{CircularProgress-cPXhiRlM.cjs → CircularProgress-DzvDjNK5.cjs} +1 -1
  18. package/dist/{CircularProgress-B28FKeiH.js → CircularProgress-bjuAAr_2.js} +4 -4
  19. package/dist/{CloseRounded-pP8asZiP.js → CloseRounded-CH_wqyxH.js} +1 -1
  20. package/dist/{CloseRounded-BRXBizmR.cjs → CloseRounded-CpwMhnlE.cjs} +1 -1
  21. package/dist/CustomTreeItem-DLoOl_op.cjs +3 -0
  22. package/dist/CustomTreeItem-Dedtqa4t.js +1329 -0
  23. package/dist/{DatePicker-XdCuICxv.js → DatePicker-B7pz453y.js} +31 -31
  24. package/dist/{DatePicker-64gpvkmk.cjs → DatePicker-DfoPEGZZ.cjs} +1 -1
  25. package/dist/{DefaultPropsProvider-CQixa6JQ.js → DefaultPropsProvider-Dvh13KFH.js} +1 -1
  26. package/dist/{DefaultPropsProvider-wpBXjN8r.cjs → DefaultPropsProvider-DwzqwJhN.cjs} +1 -1
  27. package/dist/{Delete-DmeDAs0n.cjs → Delete-BFylYk6v.cjs} +1 -1
  28. package/dist/{Delete-BQA9--_t.js → Delete-DM9C9aQh.js} +1 -1
  29. package/dist/{Dialog-CgEvhrbZ.cjs → Dialog-DP022eS9.cjs} +1 -1
  30. package/dist/{Dialog-C-Ptqtq-.js → Dialog-n8vimrxc.js} +9 -9
  31. package/dist/{DialogContent-1sjO2rQK.js → DialogContent-BGSQL0RK.js} +3 -3
  32. package/dist/{DialogContent-DcZz4rBc.cjs → DialogContent-MuEOvxs_.cjs} +1 -1
  33. package/dist/{DialogTitle-F6JD1f_z.cjs → DialogTitle-0G76KDGl.cjs} +1 -1
  34. package/dist/{DialogTitle-CGpa_QH9.js → DialogTitle-ezVE1To8.js} +5 -5
  35. package/dist/{Divider-CNGfzZqD.js → Divider-Dsv97Wn2.js} +4 -4
  36. package/dist/{Divider-D3hPb7s4.cjs → Divider-R7sa-2lG.cjs} +1 -1
  37. package/dist/{Folder-DiQqYwXI.cjs → Folder-C3sJnRGB.cjs} +1 -1
  38. package/dist/{Folder-DXybV_jP.js → Folder-DYg6kxq4.js} +1 -1
  39. package/dist/{FormLabel-BlaPVlwX.js → FormLabel-CGGAOZFH.js} +4 -4
  40. package/dist/{FormLabel-XpwTqbs8.cjs → FormLabel-cq7UJ4go.cjs} +1 -1
  41. package/dist/{Grow-wjlsaPJ-.cjs → Grow-Cb2fuU7a.cjs} +1 -1
  42. package/dist/{Grow-D5UIC41W.js → Grow-pE2G14NE.js} +4 -4
  43. package/dist/{IconButton-CVOPR4EM.cjs → IconButton-BHDAW2iJ.cjs} +1 -1
  44. package/dist/{IconButton-CFUIddNg.js → IconButton-BakKGuRi.js} +6 -6
  45. package/dist/{InputAdornment-GcbiriFv.js → InputAdornment-Bkmq6VNk.js} +5 -5
  46. package/dist/{InputAdornment-CwFEJSXv.cjs → InputAdornment-DFDYHaYJ.cjs} +1 -1
  47. package/dist/{InputBase-Cejvjv1E.cjs → InputBase-BKnhhWZn.cjs} +1 -1
  48. package/dist/{InputBase-DJuF09Rf.js → InputBase-bnA8K4W2.js} +7 -7
  49. package/dist/{Link-2ncpUcIp.cjs → Link-0wJXqOAe.cjs} +1 -1
  50. package/dist/{Link-DtsZ0d_s.js → Link-DEU_DTLR.js} +7 -7
  51. package/dist/{List-Bo4pzQqG.cjs → List-COMUCfZk.cjs} +1 -1
  52. package/dist/{List-BTPrBGqY.js → List-oGUq0Gn0.js} +2 -2
  53. package/dist/{ListItem-CB4JyjSb.cjs → ListItem-CC-cmpXo.cjs} +1 -1
  54. package/dist/{ListItem-C9OfYRAP.js → ListItem-CMtCDluy.js} +5 -5
  55. package/dist/{ListItemText-B_hEVsaT.js → ListItemText-DKTxIs9G.js} +11 -11
  56. package/dist/{ListItemText-Bjd08uk4.cjs → ListItemText-kdAemcvv.cjs} +1 -1
  57. package/dist/{Menu-DD_bqi6q.js → Menu-BVTaox-P.js} +12 -12
  58. package/dist/{Menu-XypIRgTl.cjs → Menu-DTsiNh8Q.cjs} +1 -1
  59. package/dist/{MenuItem-vb36Ljmd.cjs → MenuItem-Cs5iZIh5.cjs} +1 -1
  60. package/dist/{MenuItem-Byj-2QQd.js → MenuItem-Do747s86.js} +7 -7
  61. package/dist/{Modal-S2P14Nsp.js → Modal-ByPqMZ34.js} +8 -8
  62. package/dist/{Modal-BG3hPYyH.cjs → Modal-CKhDE8dD.cjs} +1 -1
  63. package/dist/{MoreVert-rsN-POLa.js → MoreVert-BeKrLZJ3.js} +1 -1
  64. package/dist/{MoreVert-CxgmXooO.cjs → MoreVert-Y1VAw2HL.cjs} +1 -1
  65. package/dist/{Paper-BrsaeLlu.js → Paper-BjgQvh8P.js} +4 -4
  66. package/dist/{Paper-EvOTlB_Q.cjs → Paper-DUe1p9WA.cjs} +1 -1
  67. package/dist/{Popper-BaxEpkdE.cjs → Popper-B-PuE-bB.cjs} +1 -1
  68. package/dist/{Popper-BNftxeQ5.js → Popper-Ddr6kqA6.js} +6 -6
  69. package/dist/{Portal-Bw9XOIah.cjs → Portal-CRHmQs3P.cjs} +1 -1
  70. package/dist/{Portal-BLEnzj1v.js → Portal-DG6GhbHe.js} +2 -2
  71. package/dist/{Radio-CRTKwNe5.js → Radio-B3m8v75H.js} +9 -9
  72. package/dist/{Radio-CSl8GQNk.cjs → Radio-DzRo6qOl.cjs} +1 -1
  73. package/dist/{RadioGroup-NjI5PlIb.js → RadioGroup-CXVKYEdL.js} +3 -3
  74. package/dist/{RadioGroup-DL4hhZzK.cjs → RadioGroup-D3-QbdXe.cjs} +1 -1
  75. package/dist/{Select-8kBUq_SZ.cjs → Select-BNu0nA09.cjs} +1 -1
  76. package/dist/{Select-C0jrZLRg.js → Select-DNt8NZqc.js} +10 -10
  77. package/dist/{Stack-Bm7M81n8.js → Stack-CH8i1CHm.js} +4 -4
  78. package/dist/{Stack-B82ckLGm.cjs → Stack-DY5yaM_Q.cjs} +1 -1
  79. package/dist/{Switch-D5FnE7HW.js → Switch-CJAXOMfu.js} +6 -6
  80. package/dist/{Switch-DWKHe4z_.cjs → Switch-D8Pqg_PZ.cjs} +1 -1
  81. package/dist/{SwitchBase-CnA6TA2P.cjs → SwitchBase-7hTSk2Ag.cjs} +1 -1
  82. package/dist/{SwitchBase-91Mand9t.js → SwitchBase-CBcUUziU.js} +5 -5
  83. package/dist/Tab-BilrTZRW.js +1394 -0
  84. package/dist/Tab-DLYuqVH8.cjs +4 -0
  85. package/dist/{TextField-BzqflYRV.cjs → TextField-NFbVLcRr.cjs} +1 -1
  86. package/dist/{TextField-D5jS5WjF.js → TextField-lOgVscdx.js} +8 -8
  87. package/dist/ToggleButtonGroup-5yTr7ilf.cjs +142 -0
  88. package/dist/{ToggleButtonGroup-CipWZLXf.js → ToggleButtonGroup-B7yQDytL.js} +2746 -2483
  89. package/dist/{Tooltip-DgTrUaHJ.js → Tooltip-CzA_Asv5.js} +10 -10
  90. package/dist/{Tooltip-DJmbLjU6.cjs → Tooltip-m0ZCbyoe.cjs} +1 -1
  91. package/dist/{Typography-DPij13XT.cjs → Typography-D2e0HXGw.cjs} +1 -1
  92. package/dist/{Typography-Ct2Sc9KM.js → Typography-DVBKpN4u.js} +5 -5
  93. package/dist/{capitalize-CEByPz9F.cjs → capitalize-D-yulWPl.cjs} +1 -1
  94. package/dist/{capitalize-BJ0FEsU7.js → capitalize-P7jI1m0a.js} +1 -1
  95. package/dist/components/Alert/Alert.cjs.js +1 -1
  96. package/dist/components/Alert/Alert.es.js +1 -1
  97. package/dist/components/Alert/index.cjs.js +1 -1
  98. package/dist/components/Alert/index.es.js +1 -1
  99. package/dist/components/Button/Button.cjs.js +1 -1
  100. package/dist/components/Button/Button.es.js +2 -2
  101. package/dist/components/DatePicker/DatePicker.cjs.js +1 -1
  102. package/dist/components/DatePicker/DatePicker.es.js +1 -1
  103. package/dist/components/DatePicker/index.cjs.js +1 -1
  104. package/dist/components/DatePicker/index.es.js +1 -1
  105. package/dist/components/Dialog/Dialog.cjs.js +1 -1
  106. package/dist/components/Dialog/Dialog.es.js +2 -2
  107. package/dist/components/Dropzone/Dropzone.cjs.js +1 -1
  108. package/dist/components/Dropzone/Dropzone.es.js +4 -4
  109. package/dist/components/EmptyState/EmptyState.cjs.js +1 -1
  110. package/dist/components/EmptyState/EmptyState.es.js +3 -3
  111. package/dist/components/FileList/FileIcon.cjs.js +1 -1
  112. package/dist/components/FileList/FileIcon.es.js +1 -1
  113. package/dist/components/FileList/FileListItem.cjs.js +1 -1
  114. package/dist/components/FileList/FileListItem.es.js +4 -4
  115. package/dist/components/FolderCard/FolderCard.cjs.js +1 -1
  116. package/dist/components/FolderCard/FolderCard.es.js +2 -2
  117. package/dist/components/Heading/Heading.cjs.js +1 -1
  118. package/dist/components/Heading/Heading.es.js +2 -2
  119. package/dist/components/ImagePicker/ImagePicker.cjs.js +1 -1
  120. package/dist/components/ImagePicker/ImagePicker.es.js +5 -5
  121. package/dist/components/Loader/Loader.cjs.js +1 -1
  122. package/dist/components/Loader/Loader.es.js +1 -1
  123. package/dist/components/LoaderBackdrop/LoaderBackdrop.cjs.js +1 -1
  124. package/dist/components/LoaderBackdrop/LoaderBackdrop.es.js +2 -2
  125. package/dist/components/PasswordInput/PasswordInput.cjs.js +1 -1
  126. package/dist/components/PasswordInput/PasswordInput.es.js +4 -4
  127. package/dist/components/ResourceCard/ResourceCard.cjs.js +1 -1
  128. package/dist/components/ResourceCard/ResourceCard.es.js +1 -1
  129. package/dist/components/SearchInput/SearchInput.cjs.js +1 -1
  130. package/dist/components/SearchInput/SearchInput.es.js +4 -4
  131. package/dist/components/TreeView/TreeView.cjs.js +4 -4
  132. package/dist/components/TreeView/TreeView.es.js +27 -28
  133. package/dist/components/TreeView/components/CustomTreeItem.cjs.js +1 -1
  134. package/dist/components/TreeView/components/CustomTreeItem.es.js +2 -2
  135. package/dist/components/TreeView/utils.cjs.js +1 -1
  136. package/dist/components/TreeView/utils.es.js +3 -3
  137. package/dist/components/index.cjs.js +1 -1
  138. package/dist/components/index.d.ts +10 -1
  139. package/dist/components/index.es.js +365 -350
  140. package/dist/components/stories/Alert.stories.cjs.js +1 -1
  141. package/dist/components/stories/Alert.stories.es.js +1 -1
  142. package/dist/components/stories/Button.stories.cjs.js +1 -1
  143. package/dist/components/stories/Button.stories.es.js +1 -1
  144. package/dist/components/stories/Card.stories.cjs.js +1 -1
  145. package/dist/components/stories/Card.stories.es.js +2 -2
  146. package/dist/components/stories/Checkbox.stories.cjs.js +1 -1
  147. package/dist/components/stories/Checkbox.stories.es.js +1 -1
  148. package/dist/components/stories/Chip.stories.cjs.js +1 -1
  149. package/dist/components/stories/Chip.stories.es.js +1 -1
  150. package/dist/components/stories/DatePicker.stories.cjs.js +1 -1
  151. package/dist/components/stories/DatePicker.stories.es.js +1 -1
  152. package/dist/components/stories/Dialog.stories.cjs.js +1 -1
  153. package/dist/components/stories/Dialog.stories.es.js +2 -2
  154. package/dist/components/stories/Divider.stories.cjs.js +1 -1
  155. package/dist/components/stories/Divider.stories.es.js +1 -1
  156. package/dist/components/stories/FormControlLabel.stories.cjs.js +1 -1
  157. package/dist/components/stories/FormControlLabel.stories.es.js +3 -3
  158. package/dist/components/stories/Heading.stories.cjs.js +1 -1
  159. package/dist/components/stories/Heading.stories.es.js +2 -2
  160. package/dist/components/stories/IconButton.stories.cjs.js +1 -1
  161. package/dist/components/stories/IconButton.stories.es.js +2 -2
  162. package/dist/components/stories/Link.stories.cjs.js +1 -1
  163. package/dist/components/stories/Link.stories.es.js +1 -1
  164. package/dist/components/stories/Menu.stories.cjs.js +1 -1
  165. package/dist/components/stories/Menu.stories.es.js +2 -2
  166. package/dist/components/stories/Paper.stories.cjs.js +1 -1
  167. package/dist/components/stories/Paper.stories.es.js +1 -1
  168. package/dist/components/stories/RadioGroup.stories.cjs.js +1 -1
  169. package/dist/components/stories/RadioGroup.stories.es.js +3 -3
  170. package/dist/components/stories/ResourceCard.stories.cjs.js +1 -1
  171. package/dist/components/stories/ResourceCard.stories.es.js +1 -1
  172. package/dist/components/stories/Select.stories.cjs.js +1 -1
  173. package/dist/components/stories/Select.stories.es.js +3 -3
  174. package/dist/components/stories/TabList.stories.cjs.js +1 -1
  175. package/dist/components/stories/TabList.stories.es.js +21 -184
  176. package/dist/components/stories/TextField.stories.cjs.js +1 -1
  177. package/dist/components/stories/TextField.stories.es.js +1 -1
  178. package/dist/components/stories/Tooltip.stories.cjs.js +1 -1
  179. package/dist/components/stories/Tooltip.stories.es.js +2 -2
  180. package/dist/components/stories/TreeView.stories.cjs.js +1 -1
  181. package/dist/components/stories/TreeView.stories.es.js +9 -9
  182. package/dist/components/stories/Typography.stories.cjs.js +1 -1
  183. package/dist/components/stories/Typography.stories.es.js +1 -1
  184. package/dist/{createSvgIcon-DJMYlO0S.cjs → createSvgIcon-C-xu_b94.cjs} +1 -1
  185. package/dist/{createSvgIcon-B62eln-G.js → createSvgIcon-CJhvvvqA.js} +4 -4
  186. package/dist/{dividerClasses-DjJZQ2Lt.js → dividerClasses-8us6UU9a.js} +1 -1
  187. package/dist/{dividerClasses-Dq1bCO_s.cjs → dividerClasses-DjtRGgBE.cjs} +1 -1
  188. package/dist/{elementTypeAcceptingRef-B04tk6ag.js → elementTypeAcceptingRef-BKLM-XWC.js} +1 -1
  189. package/dist/{elementTypeAcceptingRef-BjgxF5Bq.cjs → elementTypeAcceptingRef-CUhueWZ_.cjs} +1 -1
  190. package/dist/{extendSxProp-D-oLUmkR.cjs → extendSxProp-B3iQ6W4H.cjs} +1 -1
  191. package/dist/{extendSxProp-CgS-3O19.js → extendSxProp-C0R7yiG4.js} +1 -1
  192. package/dist/{generateUtilityClasses-De8NU9_E.cjs → generateUtilityClasses-Bnvii3Zv.cjs} +4 -4
  193. package/dist/{getReactElementRef-DjLvttrJ.js → getReactElementRef-4PbLT8Hy.js} +1 -1
  194. package/dist/{getReactElementRef-CTRMtaOQ.cjs → getReactElementRef-IE1Keh2q.cjs} +1 -1
  195. package/dist/{index-BZ7ldAwE.js → index--jmdhZ-K.js} +4 -4
  196. package/dist/{index-DcwdJ8a_.js → index-BKqZ9KaQ.js} +1 -1
  197. package/dist/{index-Cr54V0sz.cjs → index-BeDJBhYu.cjs} +1 -1
  198. package/dist/{index-T-RSwkXB.cjs → index-CBgsstcV.cjs} +1 -1
  199. package/dist/{index-D_xl88AE.js → index-DiVU2T0K.js} +1 -1
  200. package/dist/{index-CVFzneYe.cjs → index-Dx_q65HZ.cjs} +1 -1
  201. package/dist/index.cjs.js +1 -1
  202. package/dist/index.es.js +365 -350
  203. package/dist/{listItemTextClasses-BCuJjsDp.cjs → listItemTextClasses-BIn6LnTI.cjs} +1 -1
  204. package/dist/{listItemTextClasses-Kxu3VILo.js → listItemTextClasses-DQ08IVSw.js} +1 -1
  205. package/dist/{memoTheme-DJWQ754x.js → memoTheme-Bdc3PRAw.js} +1 -1
  206. package/dist/{memoTheme-DrjvJtTP.cjs → memoTheme-tEno1c9b.cjs} +1 -1
  207. package/dist/{refType-Bpj8bod6.js → refType-B8r_q_30.js} +1 -1
  208. package/dist/{refType-BkobP3bK.cjs → refType-C8q8lKZo.cjs} +1 -1
  209. package/dist/{resolveComponentProps-PuUs-PsA.cjs → resolveComponentProps-DjrZpsT9.cjs} +1 -1
  210. package/dist/{resolveComponentProps-CIdMNno4.js → resolveComponentProps-Gcj9bqhP.js} +1 -1
  211. package/dist/{useSlot-RbAtahZu.js → useSlot--O8JIo9E.js} +1 -1
  212. package/dist/{useSlot-CC2AaOjN.cjs → useSlot-CZIukiuE.cjs} +1 -1
  213. package/dist/{useSlotProps-U2Iu6E0j.js → useSlotProps-6i1DWAkd.js} +1 -1
  214. package/dist/{useSlotProps-BTRhbYwP.cjs → useSlotProps-COYNTPfw.cjs} +1 -1
  215. package/dist/{useTheme-CUKf8NYA.js → useTheme-B1zgxKTF.js} +1 -1
  216. package/dist/useTheme-CJM-QIGb.js +11 -0
  217. package/dist/{useTheme-CIf2b2wK.cjs → useTheme-CobOLSlE.cjs} +1 -1
  218. package/dist/{useTheme-7RGQRN-h.cjs → useTheme-g_JWgLNP.cjs} +1 -1
  219. package/dist/useThemeProps-D1cSSjm5.js +17 -0
  220. package/dist/{useThemeProps-Bxjrhw9q.js → useThemeProps-DcCmn46r.js} +2 -2
  221. package/dist/useThemeProps-DewY2V1T.cjs +1 -0
  222. package/dist/{useThemeProps-AnS1uVAy.cjs → useThemeProps-Kq9aLb1W.cjs} +1 -1
  223. package/dist/{utils-B2jSugkj.js → utils-365il-YC.js} +1 -1
  224. package/dist/{utils-lBmb5bp_.cjs → utils-B7ix7w4M.cjs} +1 -1
  225. package/package.json +1 -1
  226. package/dist/Collapse-Bvxtq7n-.cjs +0 -1
  227. package/dist/Collapse-CcMCOZ3q.js +0 -334
  228. package/dist/CustomTreeItem-CG7mGHC9.cjs +0 -3
  229. package/dist/CustomTreeItem-PTf-e74x.js +0 -1003
  230. package/dist/Tabs-C5VIdTSp.js +0 -1227
  231. package/dist/Tabs-Csp29aqN.cjs +0 -4
  232. package/dist/ToggleButtonGroup-Bpi3kmko.cjs +0 -140
  233. package/dist/useTheme-Czi7oO55.js +0 -11
  234. package/dist/useThemeProps-DxBEHys5.cjs +0 -1
  235. package/dist/useThemeProps-v-SfXuGn.js +0 -17
  236. package/dist/{generateUtilityClasses-EXBFO7eY.js → generateUtilityClasses-qBH_3lvP.js} +22 -22
@@ -1,1227 +0,0 @@
1
- import * as c from "react";
2
- import { G as pt, H as ft, I as W, P as o, S as oo } from "./generateUtilityClasses-EXBFO7eY.js";
3
- import { m as bt } from "./memoTheme-DJWQ754x.js";
4
- import { jsxs as q, jsx as x } from "react/jsx-runtime";
5
- import { u as ht, s as j, c as mt } from "./DefaultPropsProvider-CQixa6JQ.js";
6
- import { c as Wt } from "./capitalize-BJ0FEsU7.js";
7
- import { B as kt } from "./ButtonBase-CU1npQuI.js";
8
- import { u as eo } from "./unsupportedProp-BuVD30Gh.js";
9
- import { u as zt } from "./index-D_xl88AE.js";
10
- import { u as ro } from "./useTheme-Czi7oO55.js";
11
- import { u as no } from "./useEnhancedEffect-CJGo-L3B.js";
12
- import { d as Dt } from "./debounce-46wSf_lW.js";
13
- import { o as $t } from "./ownerWindow-niciwP7I.js";
14
- import { c as At } from "./createSvgIcon-B62eln-G.js";
15
- import { u as rt } from "./useSlotProps-U2Iu6E0j.js";
16
- import { u as dt } from "./useEventCallback-BAQJJ3ye.js";
17
- import { o as lo } from "./ownerDocument-CUrv0DIK.js";
18
- import { r as so } from "./refType-Bpj8bod6.js";
19
- function ao(e) {
20
- return ft("MuiTab", e);
21
- }
22
- const T = pt("MuiTab", ["root", "labelIcon", "textColorInherit", "textColorPrimary", "textColorSecondary", "selected", "disabled", "fullWidth", "wrapped", "iconWrapper", "icon"]), io = (e) => {
23
- const {
24
- classes: t,
25
- textColor: l,
26
- fullWidth: d,
27
- wrapped: i,
28
- icon: u,
29
- label: b,
30
- selected: h,
31
- disabled: f
32
- } = e, S = {
33
- root: ["root", u && b && "labelIcon", `textColor${Wt(l)}`, d && "fullWidth", i && "wrapped", h && "selected", f && "disabled"],
34
- icon: ["iconWrapper", "icon"]
35
- };
36
- return mt(S, ao, t);
37
- }, co = j(kt, {
38
- name: "MuiTab",
39
- slot: "Root",
40
- overridesResolver: (e, t) => {
41
- const {
42
- ownerState: l
43
- } = e;
44
- return [t.root, l.label && l.icon && t.labelIcon, t[`textColor${Wt(l.textColor)}`], l.fullWidth && t.fullWidth, l.wrapped && t.wrapped, {
45
- [`& .${T.iconWrapper}`]: t.iconWrapper
46
- }, {
47
- [`& .${T.icon}`]: t.icon
48
- }];
49
- }
50
- })(bt(({
51
- theme: e
52
- }) => ({
53
- ...e.typography.button,
54
- maxWidth: 360,
55
- minWidth: 90,
56
- position: "relative",
57
- minHeight: 48,
58
- flexShrink: 0,
59
- padding: "12px 16px",
60
- overflow: "hidden",
61
- whiteSpace: "normal",
62
- textAlign: "center",
63
- lineHeight: 1.25,
64
- variants: [{
65
- props: ({
66
- ownerState: t
67
- }) => t.label && (t.iconPosition === "top" || t.iconPosition === "bottom"),
68
- style: {
69
- flexDirection: "column"
70
- }
71
- }, {
72
- props: ({
73
- ownerState: t
74
- }) => t.label && t.iconPosition !== "top" && t.iconPosition !== "bottom",
75
- style: {
76
- flexDirection: "row"
77
- }
78
- }, {
79
- props: ({
80
- ownerState: t
81
- }) => t.icon && t.label,
82
- style: {
83
- minHeight: 72,
84
- paddingTop: 9,
85
- paddingBottom: 9
86
- }
87
- }, {
88
- props: ({
89
- ownerState: t,
90
- iconPosition: l
91
- }) => t.icon && t.label && l === "top",
92
- style: {
93
- [`& > .${T.icon}`]: {
94
- marginBottom: 6
95
- }
96
- }
97
- }, {
98
- props: ({
99
- ownerState: t,
100
- iconPosition: l
101
- }) => t.icon && t.label && l === "bottom",
102
- style: {
103
- [`& > .${T.icon}`]: {
104
- marginTop: 6
105
- }
106
- }
107
- }, {
108
- props: ({
109
- ownerState: t,
110
- iconPosition: l
111
- }) => t.icon && t.label && l === "start",
112
- style: {
113
- [`& > .${T.icon}`]: {
114
- marginRight: e.spacing(1)
115
- }
116
- }
117
- }, {
118
- props: ({
119
- ownerState: t,
120
- iconPosition: l
121
- }) => t.icon && t.label && l === "end",
122
- style: {
123
- [`& > .${T.icon}`]: {
124
- marginLeft: e.spacing(1)
125
- }
126
- }
127
- }, {
128
- props: {
129
- textColor: "inherit"
130
- },
131
- style: {
132
- color: "inherit",
133
- opacity: 0.6,
134
- // same opacity as theme.palette.text.secondary
135
- [`&.${T.selected}`]: {
136
- opacity: 1
137
- },
138
- [`&.${T.disabled}`]: {
139
- opacity: (e.vars || e).palette.action.disabledOpacity
140
- }
141
- }
142
- }, {
143
- props: {
144
- textColor: "primary"
145
- },
146
- style: {
147
- color: (e.vars || e).palette.text.secondary,
148
- [`&.${T.selected}`]: {
149
- color: (e.vars || e).palette.primary.main
150
- },
151
- [`&.${T.disabled}`]: {
152
- color: (e.vars || e).palette.text.disabled
153
- }
154
- }
155
- }, {
156
- props: {
157
- textColor: "secondary"
158
- },
159
- style: {
160
- color: (e.vars || e).palette.text.secondary,
161
- [`&.${T.selected}`]: {
162
- color: (e.vars || e).palette.secondary.main
163
- },
164
- [`&.${T.disabled}`]: {
165
- color: (e.vars || e).palette.text.disabled
166
- }
167
- }
168
- }, {
169
- props: ({
170
- ownerState: t
171
- }) => t.fullWidth,
172
- style: {
173
- flexShrink: 1,
174
- flexGrow: 1,
175
- flexBasis: 0,
176
- maxWidth: "none"
177
- }
178
- }, {
179
- props: ({
180
- ownerState: t
181
- }) => t.wrapped,
182
- style: {
183
- fontSize: e.typography.pxToRem(12)
184
- }
185
- }]
186
- }))), uo = /* @__PURE__ */ c.forwardRef(function(t, l) {
187
- const d = ht({
188
- props: t,
189
- name: "MuiTab"
190
- }), {
191
- className: i,
192
- disabled: u = !1,
193
- disableFocusRipple: b = !1,
194
- // eslint-disable-next-line react/prop-types
195
- fullWidth: h,
196
- icon: f,
197
- iconPosition: S = "top",
198
- // eslint-disable-next-line react/prop-types
199
- indicator: v,
200
- label: y,
201
- onChange: m,
202
- onClick: C,
203
- onFocus: k,
204
- // eslint-disable-next-line react/prop-types
205
- selected: I,
206
- // eslint-disable-next-line react/prop-types
207
- selectionFollowsFocus: g,
208
- // eslint-disable-next-line react/prop-types
209
- textColor: L = "inherit",
210
- value: M,
211
- wrapped: nt = !1,
212
- ...H
213
- } = d, U = {
214
- ...d,
215
- disabled: u,
216
- disableFocusRipple: b,
217
- selected: I,
218
- icon: !!f,
219
- iconPosition: S,
220
- label: !!y,
221
- fullWidth: h,
222
- textColor: L,
223
- wrapped: nt
224
- }, V = io(U), z = f && y && /* @__PURE__ */ c.isValidElement(f) ? /* @__PURE__ */ c.cloneElement(f, {
225
- className: W(V.icon, f.props.className)
226
- }) : f, G = (R) => {
227
- !I && m && m(R, M), C && C(R);
228
- }, N = (R) => {
229
- g && !I && m && m(R, M), k && k(R);
230
- };
231
- return /* @__PURE__ */ q(co, {
232
- focusRipple: !b,
233
- className: W(V.root, i),
234
- ref: l,
235
- role: "tab",
236
- "aria-selected": I,
237
- disabled: u,
238
- onClick: G,
239
- onFocus: N,
240
- ownerState: U,
241
- tabIndex: I ? 0 : -1,
242
- ...H,
243
- children: [S === "top" || S === "start" ? /* @__PURE__ */ q(c.Fragment, {
244
- children: [z, y]
245
- }) : /* @__PURE__ */ q(c.Fragment, {
246
- children: [y, z]
247
- }), v]
248
- });
249
- });
250
- process.env.NODE_ENV !== "production" && (uo.propTypes = {
251
- // ┌────────────────────────────── Warning ──────────────────────────────┐
252
- // │ These PropTypes are generated from the TypeScript type definitions. │
253
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
254
- // └─────────────────────────────────────────────────────────────────────┘
255
- /**
256
- * This prop isn't supported.
257
- * Use the `component` prop if you need to change the children structure.
258
- */
259
- children: eo,
260
- /**
261
- * Override or extend the styles applied to the component.
262
- */
263
- classes: o.object,
264
- /**
265
- * @ignore
266
- */
267
- className: o.string,
268
- /**
269
- * If `true`, the component is disabled.
270
- * @default false
271
- */
272
- disabled: o.bool,
273
- /**
274
- * If `true`, the keyboard focus ripple is disabled.
275
- * @default false
276
- */
277
- disableFocusRipple: o.bool,
278
- /**
279
- * If `true`, the ripple effect is disabled.
280
- *
281
- * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
282
- * to highlight the element by applying separate styles with the `.Mui-focusVisible` class.
283
- * @default false
284
- */
285
- disableRipple: o.bool,
286
- /**
287
- * The icon to display.
288
- */
289
- icon: o.oneOfType([o.element, o.string]),
290
- /**
291
- * The position of the icon relative to the label.
292
- * @default 'top'
293
- */
294
- iconPosition: o.oneOf(["bottom", "end", "start", "top"]),
295
- /**
296
- * The label element.
297
- */
298
- label: o.node,
299
- /**
300
- * @ignore
301
- */
302
- onChange: o.func,
303
- /**
304
- * @ignore
305
- */
306
- onClick: o.func,
307
- /**
308
- * @ignore
309
- */
310
- onFocus: o.func,
311
- /**
312
- * The system prop that allows defining system overrides as well as additional CSS styles.
313
- */
314
- sx: o.oneOfType([o.arrayOf(o.oneOfType([o.func, o.object, o.bool])), o.func, o.object]),
315
- /**
316
- * You can provide your own value. Otherwise, we fallback to the child position index.
317
- */
318
- value: o.any,
319
- /**
320
- * Tab labels appear in a single row.
321
- * They can use a second line if needed.
322
- * @default false
323
- */
324
- wrapped: o.bool
325
- });
326
- const po = At(/* @__PURE__ */ x("path", {
327
- d: "M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"
328
- }), "KeyboardArrowLeft"), fo = At(/* @__PURE__ */ x("path", {
329
- d: "M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"
330
- }), "KeyboardArrowRight");
331
- function bo(e) {
332
- return (1 + Math.sin(Math.PI * e - Math.PI / 2)) / 2;
333
- }
334
- function ho(e, t, l, d = {}, i = () => {
335
- }) {
336
- const {
337
- ease: u = bo,
338
- duration: b = 300
339
- // standard
340
- } = d;
341
- let h = null;
342
- const f = t[e];
343
- let S = !1;
344
- const v = () => {
345
- S = !0;
346
- }, y = (m) => {
347
- if (S) {
348
- i(new Error("Animation cancelled"));
349
- return;
350
- }
351
- h === null && (h = m);
352
- const C = Math.min(1, (m - h) / b);
353
- if (t[e] = u(C) * (l - f) + f, C >= 1) {
354
- requestAnimationFrame(() => {
355
- i(null);
356
- });
357
- return;
358
- }
359
- requestAnimationFrame(y);
360
- };
361
- return f === l ? (i(new Error("Element already at target position")), v) : (requestAnimationFrame(y), v);
362
- }
363
- const mo = {
364
- width: 99,
365
- height: 99,
366
- position: "absolute",
367
- top: -9999,
368
- overflow: "scroll"
369
- };
370
- function Ft(e) {
371
- const {
372
- onChange: t,
373
- ...l
374
- } = e, d = c.useRef(), i = c.useRef(null), u = () => {
375
- d.current = i.current.offsetHeight - i.current.clientHeight;
376
- };
377
- return no(() => {
378
- const b = Dt(() => {
379
- const f = d.current;
380
- u(), f !== d.current && t(d.current);
381
- }), h = $t(i.current);
382
- return h.addEventListener("resize", b), () => {
383
- b.clear(), h.removeEventListener("resize", b);
384
- };
385
- }, [t]), c.useEffect(() => {
386
- u(), t(d.current);
387
- }, [t]), /* @__PURE__ */ x("div", {
388
- style: mo,
389
- ...l,
390
- ref: i
391
- });
392
- }
393
- process.env.NODE_ENV !== "production" && (Ft.propTypes = {
394
- onChange: o.func.isRequired
395
- });
396
- function So(e) {
397
- return ft("MuiTabScrollButton", e);
398
- }
399
- const vo = pt("MuiTabScrollButton", ["root", "vertical", "horizontal", "disabled"]), yo = (e) => {
400
- const {
401
- classes: t,
402
- orientation: l,
403
- disabled: d
404
- } = e;
405
- return mt({
406
- root: ["root", l, d && "disabled"]
407
- }, So, t);
408
- }, go = j(kt, {
409
- name: "MuiTabScrollButton",
410
- slot: "Root",
411
- overridesResolver: (e, t) => {
412
- const {
413
- ownerState: l
414
- } = e;
415
- return [t.root, l.orientation && t[l.orientation]];
416
- }
417
- })({
418
- width: 40,
419
- flexShrink: 0,
420
- opacity: 0.8,
421
- [`&.${vo.disabled}`]: {
422
- opacity: 0
423
- },
424
- variants: [{
425
- props: {
426
- orientation: "vertical"
427
- },
428
- style: {
429
- width: "100%",
430
- height: 40,
431
- "& svg": {
432
- transform: "var(--TabScrollButton-svgRotate)"
433
- }
434
- }
435
- }]
436
- }), jt = /* @__PURE__ */ c.forwardRef(function(t, l) {
437
- const d = ht({
438
- props: t,
439
- name: "MuiTabScrollButton"
440
- }), {
441
- className: i,
442
- slots: u = {},
443
- slotProps: b = {},
444
- direction: h,
445
- orientation: f,
446
- disabled: S,
447
- ...v
448
- } = d, y = zt(), m = {
449
- isRtl: y,
450
- ...d
451
- }, C = yo(m), k = u.StartScrollButtonIcon ?? po, I = u.EndScrollButtonIcon ?? fo, g = rt({
452
- elementType: k,
453
- externalSlotProps: b.startScrollButtonIcon,
454
- additionalProps: {
455
- fontSize: "small"
456
- },
457
- ownerState: m
458
- }), L = rt({
459
- elementType: I,
460
- externalSlotProps: b.endScrollButtonIcon,
461
- additionalProps: {
462
- fontSize: "small"
463
- },
464
- ownerState: m
465
- });
466
- return /* @__PURE__ */ x(go, {
467
- component: "div",
468
- className: W(C.root, i),
469
- ref: l,
470
- role: null,
471
- ownerState: m,
472
- tabIndex: null,
473
- ...v,
474
- style: {
475
- ...v.style,
476
- ...f === "vertical" && {
477
- "--TabScrollButton-svgRotate": `rotate(${y ? -90 : 90}deg)`
478
- }
479
- },
480
- children: h === "left" ? /* @__PURE__ */ x(k, {
481
- ...g
482
- }) : /* @__PURE__ */ x(I, {
483
- ...L
484
- })
485
- });
486
- });
487
- process.env.NODE_ENV !== "production" && (jt.propTypes = {
488
- // ┌────────────────────────────── Warning ──────────────────────────────┐
489
- // │ These PropTypes are generated from the TypeScript type definitions. │
490
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
491
- // └─────────────────────────────────────────────────────────────────────┘
492
- /**
493
- * The content of the component.
494
- */
495
- children: o.node,
496
- /**
497
- * Override or extend the styles applied to the component.
498
- */
499
- classes: o.object,
500
- /**
501
- * @ignore
502
- */
503
- className: o.string,
504
- /**
505
- * The direction the button should indicate.
506
- */
507
- direction: o.oneOf(["left", "right"]).isRequired,
508
- /**
509
- * If `true`, the component is disabled.
510
- * @default false
511
- */
512
- disabled: o.bool,
513
- /**
514
- * The component orientation (layout flow direction).
515
- */
516
- orientation: o.oneOf(["horizontal", "vertical"]).isRequired,
517
- /**
518
- * The extra props for the slot components.
519
- * You can override the existing props or add new ones.
520
- * @default {}
521
- */
522
- slotProps: o.shape({
523
- endScrollButtonIcon: o.oneOfType([o.func, o.object]),
524
- startScrollButtonIcon: o.oneOfType([o.func, o.object])
525
- }),
526
- /**
527
- * The components used for each slot inside.
528
- * @default {}
529
- */
530
- slots: o.shape({
531
- EndScrollButtonIcon: o.elementType,
532
- StartScrollButtonIcon: o.elementType
533
- }),
534
- /**
535
- * @ignore
536
- */
537
- style: o.object,
538
- /**
539
- * The system prop that allows defining system overrides as well as additional CSS styles.
540
- */
541
- sx: o.oneOfType([o.arrayOf(o.oneOfType([o.func, o.object, o.bool])), o.func, o.object])
542
- });
543
- function To(e) {
544
- return ft("MuiTabs", e);
545
- }
546
- const ut = pt("MuiTabs", ["root", "vertical", "flexContainer", "flexContainerVertical", "centered", "scroller", "fixed", "scrollableX", "scrollableY", "hideScrollbar", "scrollButtons", "scrollButtonsHideMobile", "indicator"]), Rt = (e, t) => e === t ? e.firstChild : t && t.nextElementSibling ? t.nextElementSibling : e.firstChild, Ot = (e, t) => e === t ? e.lastChild : t && t.previousElementSibling ? t.previousElementSibling : e.lastChild, et = (e, t, l) => {
547
- let d = !1, i = l(e, t);
548
- for (; i; ) {
549
- if (i === e.firstChild) {
550
- if (d)
551
- return;
552
- d = !0;
553
- }
554
- const u = i.disabled || i.getAttribute("aria-disabled") === "true";
555
- if (!i.hasAttribute("tabindex") || u)
556
- i = l(e, i);
557
- else {
558
- i.focus();
559
- return;
560
- }
561
- }
562
- }, wo = (e) => {
563
- const {
564
- vertical: t,
565
- fixed: l,
566
- hideScrollbar: d,
567
- scrollableX: i,
568
- scrollableY: u,
569
- centered: b,
570
- scrollButtonsHideMobile: h,
571
- classes: f
572
- } = e;
573
- return mt({
574
- root: ["root", t && "vertical"],
575
- scroller: ["scroller", l && "fixed", d && "hideScrollbar", i && "scrollableX", u && "scrollableY"],
576
- flexContainer: ["flexContainer", t && "flexContainerVertical", b && "centered"],
577
- indicator: ["indicator"],
578
- scrollButtons: ["scrollButtons", h && "scrollButtonsHideMobile"],
579
- scrollableX: [i && "scrollableX"],
580
- hideScrollbar: [d && "hideScrollbar"]
581
- }, To, f);
582
- }, Bo = j("div", {
583
- name: "MuiTabs",
584
- slot: "Root",
585
- overridesResolver: (e, t) => {
586
- const {
587
- ownerState: l
588
- } = e;
589
- return [{
590
- [`& .${ut.scrollButtons}`]: t.scrollButtons
591
- }, {
592
- [`& .${ut.scrollButtons}`]: l.scrollButtonsHideMobile && t.scrollButtonsHideMobile
593
- }, t.root, l.vertical && t.vertical];
594
- }
595
- })(bt(({
596
- theme: e
597
- }) => ({
598
- overflow: "hidden",
599
- minHeight: 48,
600
- // Add iOS momentum scrolling for iOS < 13.0
601
- WebkitOverflowScrolling: "touch",
602
- display: "flex",
603
- variants: [{
604
- props: ({
605
- ownerState: t
606
- }) => t.vertical,
607
- style: {
608
- flexDirection: "column"
609
- }
610
- }, {
611
- props: ({
612
- ownerState: t
613
- }) => t.scrollButtonsHideMobile,
614
- style: {
615
- [`& .${ut.scrollButtons}`]: {
616
- [e.breakpoints.down("sm")]: {
617
- display: "none"
618
- }
619
- }
620
- }
621
- }]
622
- }))), xo = j("div", {
623
- name: "MuiTabs",
624
- slot: "Scroller",
625
- overridesResolver: (e, t) => {
626
- const {
627
- ownerState: l
628
- } = e;
629
- return [t.scroller, l.fixed && t.fixed, l.hideScrollbar && t.hideScrollbar, l.scrollableX && t.scrollableX, l.scrollableY && t.scrollableY];
630
- }
631
- })({
632
- position: "relative",
633
- display: "inline-block",
634
- flex: "1 1 auto",
635
- whiteSpace: "nowrap",
636
- variants: [{
637
- props: ({
638
- ownerState: e
639
- }) => e.fixed,
640
- style: {
641
- overflowX: "hidden",
642
- width: "100%"
643
- }
644
- }, {
645
- props: ({
646
- ownerState: e
647
- }) => e.hideScrollbar,
648
- style: {
649
- // Hide dimensionless scrollbar on macOS
650
- scrollbarWidth: "none",
651
- // Firefox
652
- "&::-webkit-scrollbar": {
653
- display: "none"
654
- // Safari + Chrome
655
- }
656
- }
657
- }, {
658
- props: ({
659
- ownerState: e
660
- }) => e.scrollableX,
661
- style: {
662
- overflowX: "auto",
663
- overflowY: "hidden"
664
- }
665
- }, {
666
- props: ({
667
- ownerState: e
668
- }) => e.scrollableY,
669
- style: {
670
- overflowY: "auto",
671
- overflowX: "hidden"
672
- }
673
- }]
674
- }), Co = j("div", {
675
- name: "MuiTabs",
676
- slot: "FlexContainer",
677
- overridesResolver: (e, t) => {
678
- const {
679
- ownerState: l
680
- } = e;
681
- return [t.flexContainer, l.vertical && t.flexContainerVertical, l.centered && t.centered];
682
- }
683
- })({
684
- display: "flex",
685
- variants: [{
686
- props: ({
687
- ownerState: e
688
- }) => e.vertical,
689
- style: {
690
- flexDirection: "column"
691
- }
692
- }, {
693
- props: ({
694
- ownerState: e
695
- }) => e.centered,
696
- style: {
697
- justifyContent: "center"
698
- }
699
- }]
700
- }), Io = j("span", {
701
- name: "MuiTabs",
702
- slot: "Indicator",
703
- overridesResolver: (e, t) => t.indicator
704
- })(bt(({
705
- theme: e
706
- }) => ({
707
- position: "absolute",
708
- height: 2,
709
- bottom: 0,
710
- width: "100%",
711
- transition: e.transitions.create(),
712
- variants: [{
713
- props: {
714
- indicatorColor: "primary"
715
- },
716
- style: {
717
- backgroundColor: (e.vars || e).palette.primary.main
718
- }
719
- }, {
720
- props: {
721
- indicatorColor: "secondary"
722
- },
723
- style: {
724
- backgroundColor: (e.vars || e).palette.secondary.main
725
- }
726
- }, {
727
- props: ({
728
- ownerState: t
729
- }) => t.vertical,
730
- style: {
731
- height: "100%",
732
- width: 2,
733
- right: 0
734
- }
735
- }]
736
- }))), Eo = j(Ft)({
737
- overflowX: "auto",
738
- overflowY: "hidden",
739
- // Hide dimensionless scrollbar on macOS
740
- scrollbarWidth: "none",
741
- // Firefox
742
- "&::-webkit-scrollbar": {
743
- display: "none"
744
- // Safari + Chrome
745
- }
746
- }), Nt = {};
747
- let Pt = !1;
748
- const Mo = /* @__PURE__ */ c.forwardRef(function(t, l) {
749
- const d = ht({
750
- props: t,
751
- name: "MuiTabs"
752
- }), i = ro(), u = zt(), {
753
- "aria-label": b,
754
- "aria-labelledby": h,
755
- action: f,
756
- centered: S = !1,
757
- children: v,
758
- className: y,
759
- component: m = "div",
760
- allowScrollButtonsMobile: C = !1,
761
- indicatorColor: k = "primary",
762
- onChange: I,
763
- orientation: g = "horizontal",
764
- ScrollButtonComponent: L = jt,
765
- scrollButtons: M = "auto",
766
- selectionFollowsFocus: nt,
767
- slots: H = {},
768
- slotProps: U = {},
769
- TabIndicatorProps: V = {},
770
- TabScrollButtonProps: z = {},
771
- textColor: G = "primary",
772
- value: N,
773
- variant: R = "standard",
774
- visibleScrollbar: lt = !1,
775
- ...Lt
776
- } = d, w = R === "scrollable", B = g === "vertical", X = B ? "scrollTop" : "scrollLeft", J = B ? "top" : "left", Q = B ? "bottom" : "right", st = B ? "clientHeight" : "clientWidth", Y = B ? "height" : "width", D = {
777
- ...d,
778
- component: m,
779
- allowScrollButtonsMobile: C,
780
- indicatorColor: k,
781
- orientation: g,
782
- vertical: B,
783
- scrollButtons: M,
784
- textColor: G,
785
- variant: R,
786
- visibleScrollbar: lt,
787
- fixed: !w,
788
- hideScrollbar: w && !lt,
789
- scrollableX: w && !B,
790
- scrollableY: w && B,
791
- centered: S && !w,
792
- scrollButtonsHideMobile: !C
793
- }, P = wo(D), Ht = rt({
794
- elementType: H.StartScrollButtonIcon,
795
- externalSlotProps: U.startScrollButtonIcon,
796
- ownerState: D
797
- }), Vt = rt({
798
- elementType: H.EndScrollButtonIcon,
799
- externalSlotProps: U.endScrollButtonIcon,
800
- ownerState: D
801
- });
802
- process.env.NODE_ENV !== "production" && S && w && console.error('MUI: You can not use the `centered={true}` and `variant="scrollable"` properties at the same time on a `Tabs` component.');
803
- const [St, Ut] = c.useState(!1), [$, vt] = c.useState(Nt), [yt, Xt] = c.useState(!1), [gt, Yt] = c.useState(!1), [Tt, Kt] = c.useState(!1), [wt, _t] = c.useState({
804
- overflow: "hidden",
805
- scrollbarWidth: 0
806
- }), Z = /* @__PURE__ */ new Map(), O = c.useRef(null), A = c.useRef(null), Bt = () => {
807
- const r = O.current;
808
- let n;
809
- if (r) {
810
- const a = r.getBoundingClientRect();
811
- n = {
812
- clientWidth: r.clientWidth,
813
- scrollLeft: r.scrollLeft,
814
- scrollTop: r.scrollTop,
815
- scrollWidth: r.scrollWidth,
816
- top: a.top,
817
- bottom: a.bottom,
818
- left: a.left,
819
- right: a.right
820
- };
821
- }
822
- let s;
823
- if (r && N !== !1) {
824
- const a = A.current.children;
825
- if (a.length > 0) {
826
- const p = a[Z.get(N)];
827
- process.env.NODE_ENV !== "production" && (p || console.error(["MUI: The `value` provided to the Tabs component is invalid.", `None of the Tabs' children match with "${N}".`, Z.keys ? `You can provide one of the following values: ${Array.from(Z.keys()).join(", ")}.` : null].join(`
828
- `))), s = p ? p.getBoundingClientRect() : null, process.env.NODE_ENV !== "production" && process.env.NODE_ENV !== "test" && !Pt && s && s.width === 0 && s.height === 0 && // if the whole Tabs component is hidden, don't warn
829
- n.clientWidth !== 0 && (n = null, console.error(["MUI: The `value` provided to the Tabs component is invalid.", `The Tab with this \`value\` ("${N}") is not part of the document layout.`, "Make sure the tab item is present in the document or that it's not `display: none`."].join(`
830
- `)), Pt = !0);
831
- }
832
- }
833
- return {
834
- tabsMeta: n,
835
- tabMeta: s
836
- };
837
- }, K = dt(() => {
838
- const {
839
- tabsMeta: r,
840
- tabMeta: n
841
- } = Bt();
842
- let s = 0, a;
843
- B ? (a = "top", n && r && (s = n.top - r.top + r.scrollTop)) : (a = u ? "right" : "left", n && r && (s = (u ? -1 : 1) * (n[a] - r[a] + r.scrollLeft)));
844
- const p = {
845
- [a]: s,
846
- // May be wrong until the font is loaded.
847
- [Y]: n ? n[Y] : 0
848
- };
849
- if (typeof $[a] != "number" || typeof $[Y] != "number")
850
- vt(p);
851
- else {
852
- const E = Math.abs($[a] - p[a]), F = Math.abs($[Y] - p[Y]);
853
- (E >= 1 || F >= 1) && vt(p);
854
- }
855
- }), at = (r, {
856
- animation: n = !0
857
- } = {}) => {
858
- n ? ho(X, O.current, r, {
859
- duration: i.transitions.duration.standard
860
- }) : O.current[X] = r;
861
- }, xt = (r) => {
862
- let n = O.current[X];
863
- B ? n += r : n += r * (u ? -1 : 1), at(n);
864
- }, Ct = () => {
865
- const r = O.current[st];
866
- let n = 0;
867
- const s = Array.from(A.current.children);
868
- for (let a = 0; a < s.length; a += 1) {
869
- const p = s[a];
870
- if (n + p[st] > r) {
871
- a === 0 && (n = r);
872
- break;
873
- }
874
- n += p[st];
875
- }
876
- return n;
877
- }, qt = () => {
878
- xt(-1 * Ct());
879
- }, Gt = () => {
880
- xt(Ct());
881
- }, Jt = c.useCallback((r) => {
882
- _t({
883
- overflow: null,
884
- scrollbarWidth: r
885
- });
886
- }, []), Qt = () => {
887
- const r = {};
888
- r.scrollbarSizeListener = w ? /* @__PURE__ */ x(Eo, {
889
- onChange: Jt,
890
- className: W(P.scrollableX, P.hideScrollbar)
891
- }) : null;
892
- const s = w && (M === "auto" && (yt || gt) || M === !0);
893
- return r.scrollButtonStart = s ? /* @__PURE__ */ x(L, {
894
- slots: {
895
- StartScrollButtonIcon: H.StartScrollButtonIcon
896
- },
897
- slotProps: {
898
- startScrollButtonIcon: Ht
899
- },
900
- orientation: g,
901
- direction: u ? "right" : "left",
902
- onClick: qt,
903
- disabled: !yt,
904
- ...z,
905
- className: W(P.scrollButtons, z.className)
906
- }) : null, r.scrollButtonEnd = s ? /* @__PURE__ */ x(L, {
907
- slots: {
908
- EndScrollButtonIcon: H.EndScrollButtonIcon
909
- },
910
- slotProps: {
911
- endScrollButtonIcon: Vt
912
- },
913
- orientation: g,
914
- direction: u ? "left" : "right",
915
- onClick: Gt,
916
- disabled: !gt,
917
- ...z,
918
- className: W(P.scrollButtons, z.className)
919
- }) : null, r;
920
- }, It = dt((r) => {
921
- const {
922
- tabsMeta: n,
923
- tabMeta: s
924
- } = Bt();
925
- if (!(!s || !n)) {
926
- if (s[J] < n[J]) {
927
- const a = n[X] + (s[J] - n[J]);
928
- at(a, {
929
- animation: r
930
- });
931
- } else if (s[Q] > n[Q]) {
932
- const a = n[X] + (s[Q] - n[Q]);
933
- at(a, {
934
- animation: r
935
- });
936
- }
937
- }
938
- }), tt = dt(() => {
939
- w && M !== !1 && Kt(!Tt);
940
- });
941
- c.useEffect(() => {
942
- const r = Dt(() => {
943
- O.current && K();
944
- });
945
- let n;
946
- const s = (E) => {
947
- E.forEach((F) => {
948
- F.removedNodes.forEach((_) => {
949
- n == null || n.unobserve(_);
950
- }), F.addedNodes.forEach((_) => {
951
- n == null || n.observe(_);
952
- });
953
- }), r(), tt();
954
- }, a = $t(O.current);
955
- a.addEventListener("resize", r);
956
- let p;
957
- return typeof ResizeObserver < "u" && (n = new ResizeObserver(r), Array.from(A.current.children).forEach((E) => {
958
- n.observe(E);
959
- })), typeof MutationObserver < "u" && (p = new MutationObserver(s), p.observe(A.current, {
960
- childList: !0
961
- })), () => {
962
- r.clear(), a.removeEventListener("resize", r), p == null || p.disconnect(), n == null || n.disconnect();
963
- };
964
- }, [K, tt]), c.useEffect(() => {
965
- const r = Array.from(A.current.children), n = r.length;
966
- if (typeof IntersectionObserver < "u" && n > 0 && w && M !== !1) {
967
- const s = r[0], a = r[n - 1], p = {
968
- root: O.current,
969
- threshold: 0.99
970
- }, E = (ct) => {
971
- Xt(!ct[0].isIntersecting);
972
- }, F = new IntersectionObserver(E, p);
973
- F.observe(s);
974
- const _ = (ct) => {
975
- Yt(!ct[0].isIntersecting);
976
- }, Mt = new IntersectionObserver(_, p);
977
- return Mt.observe(a), () => {
978
- F.disconnect(), Mt.disconnect();
979
- };
980
- }
981
- }, [w, M, Tt, v == null ? void 0 : v.length]), c.useEffect(() => {
982
- Ut(!0);
983
- }, []), c.useEffect(() => {
984
- K();
985
- }), c.useEffect(() => {
986
- It(Nt !== $);
987
- }, [It, $]), c.useImperativeHandle(f, () => ({
988
- updateIndicator: K,
989
- updateScrollButtons: tt
990
- }), [K, tt]);
991
- const Et = /* @__PURE__ */ x(Io, {
992
- ...V,
993
- className: W(P.indicator, V.className),
994
- ownerState: D,
995
- style: {
996
- ...$,
997
- ...V.style
998
- }
999
- });
1000
- let ot = 0;
1001
- const Zt = c.Children.map(v, (r) => {
1002
- if (!/* @__PURE__ */ c.isValidElement(r))
1003
- return null;
1004
- process.env.NODE_ENV !== "production" && oo.isFragment(r) && console.error(["MUI: The Tabs component doesn't accept a Fragment as a child.", "Consider providing an array instead."].join(`
1005
- `));
1006
- const n = r.props.value === void 0 ? ot : r.props.value;
1007
- Z.set(n, ot);
1008
- const s = n === N;
1009
- return ot += 1, /* @__PURE__ */ c.cloneElement(r, {
1010
- fullWidth: R === "fullWidth",
1011
- indicator: s && !St && Et,
1012
- selected: s,
1013
- selectionFollowsFocus: nt,
1014
- onChange: I,
1015
- textColor: G,
1016
- value: n,
1017
- ...ot === 1 && N === !1 && !r.props.tabIndex ? {
1018
- tabIndex: 0
1019
- } : {}
1020
- });
1021
- }), to = (r) => {
1022
- const n = A.current, s = lo(n).activeElement;
1023
- if (s.getAttribute("role") !== "tab")
1024
- return;
1025
- let p = g === "horizontal" ? "ArrowLeft" : "ArrowUp", E = g === "horizontal" ? "ArrowRight" : "ArrowDown";
1026
- switch (g === "horizontal" && u && (p = "ArrowRight", E = "ArrowLeft"), r.key) {
1027
- case p:
1028
- r.preventDefault(), et(n, s, Ot);
1029
- break;
1030
- case E:
1031
- r.preventDefault(), et(n, s, Rt);
1032
- break;
1033
- case "Home":
1034
- r.preventDefault(), et(n, null, Rt);
1035
- break;
1036
- case "End":
1037
- r.preventDefault(), et(n, null, Ot);
1038
- break;
1039
- }
1040
- }, it = Qt();
1041
- return /* @__PURE__ */ q(Bo, {
1042
- className: W(P.root, y),
1043
- ownerState: D,
1044
- ref: l,
1045
- as: m,
1046
- ...Lt,
1047
- children: [it.scrollButtonStart, it.scrollbarSizeListener, /* @__PURE__ */ q(xo, {
1048
- className: P.scroller,
1049
- ownerState: D,
1050
- style: {
1051
- overflow: wt.overflow,
1052
- [B ? `margin${u ? "Left" : "Right"}` : "marginBottom"]: lt ? void 0 : -wt.scrollbarWidth
1053
- },
1054
- ref: O,
1055
- children: [/* @__PURE__ */ x(Co, {
1056
- "aria-label": b,
1057
- "aria-labelledby": h,
1058
- "aria-orientation": g === "vertical" ? "vertical" : null,
1059
- className: P.flexContainer,
1060
- ownerState: D,
1061
- onKeyDown: to,
1062
- ref: A,
1063
- role: "tablist",
1064
- children: Zt
1065
- }), St && Et]
1066
- }), it.scrollButtonEnd]
1067
- });
1068
- });
1069
- process.env.NODE_ENV !== "production" && (Mo.propTypes = {
1070
- // ┌────────────────────────────── Warning ──────────────────────────────┐
1071
- // │ These PropTypes are generated from the TypeScript type definitions. │
1072
- // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1073
- // └─────────────────────────────────────────────────────────────────────┘
1074
- /**
1075
- * Callback fired when the component mounts.
1076
- * This is useful when you want to trigger an action programmatically.
1077
- * It supports two actions: `updateIndicator()` and `updateScrollButtons()`
1078
- *
1079
- * @param {object} actions This object contains all possible actions
1080
- * that can be triggered programmatically.
1081
- */
1082
- action: so,
1083
- /**
1084
- * If `true`, the scroll buttons aren't forced hidden on mobile.
1085
- * By default the scroll buttons are hidden on mobile and takes precedence over `scrollButtons`.
1086
- * @default false
1087
- */
1088
- allowScrollButtonsMobile: o.bool,
1089
- /**
1090
- * The label for the Tabs as a string.
1091
- */
1092
- "aria-label": o.string,
1093
- /**
1094
- * An id or list of ids separated by a space that label the Tabs.
1095
- */
1096
- "aria-labelledby": o.string,
1097
- /**
1098
- * If `true`, the tabs are centered.
1099
- * This prop is intended for large views.
1100
- * @default false
1101
- */
1102
- centered: o.bool,
1103
- /**
1104
- * The content of the component.
1105
- */
1106
- children: o.node,
1107
- /**
1108
- * Override or extend the styles applied to the component.
1109
- */
1110
- classes: o.object,
1111
- /**
1112
- * @ignore
1113
- */
1114
- className: o.string,
1115
- /**
1116
- * The component used for the root node.
1117
- * Either a string to use a HTML element or a component.
1118
- */
1119
- component: o.elementType,
1120
- /**
1121
- * Determines the color of the indicator.
1122
- * @default 'primary'
1123
- */
1124
- indicatorColor: o.oneOfType([o.oneOf(["primary", "secondary"]), o.string]),
1125
- /**
1126
- * Callback fired when the value changes.
1127
- *
1128
- * @param {React.SyntheticEvent} event The event source of the callback. **Warning**: This is a generic event not a change event.
1129
- * @param {any} value We default to the index of the child (number)
1130
- */
1131
- onChange: o.func,
1132
- /**
1133
- * The component orientation (layout flow direction).
1134
- * @default 'horizontal'
1135
- */
1136
- orientation: o.oneOf(["horizontal", "vertical"]),
1137
- /**
1138
- * The component used to render the scroll buttons.
1139
- * @default TabScrollButton
1140
- */
1141
- ScrollButtonComponent: o.elementType,
1142
- /**
1143
- * Determine behavior of scroll buttons when tabs are set to scroll:
1144
- *
1145
- * - `auto` will only present them when not all the items are visible.
1146
- * - `true` will always present them.
1147
- * - `false` will never present them.
1148
- *
1149
- * By default the scroll buttons are hidden on mobile.
1150
- * This behavior can be disabled with `allowScrollButtonsMobile`.
1151
- * @default 'auto'
1152
- */
1153
- scrollButtons: o.oneOf(["auto", !1, !0]),
1154
- /**
1155
- * If `true` the selected tab changes on focus. Otherwise it only
1156
- * changes on activation.
1157
- */
1158
- selectionFollowsFocus: o.bool,
1159
- /**
1160
- * The extra props for the slot components.
1161
- * You can override the existing props or add new ones.
1162
- * @default {}
1163
- */
1164
- slotProps: o.shape({
1165
- endScrollButtonIcon: o.oneOfType([o.func, o.object]),
1166
- startScrollButtonIcon: o.oneOfType([o.func, o.object])
1167
- }),
1168
- /**
1169
- * The components used for each slot inside.
1170
- * @default {}
1171
- */
1172
- slots: o.shape({
1173
- EndScrollButtonIcon: o.elementType,
1174
- StartScrollButtonIcon: o.elementType
1175
- }),
1176
- /**
1177
- * The system prop that allows defining system overrides as well as additional CSS styles.
1178
- */
1179
- sx: o.oneOfType([o.arrayOf(o.oneOfType([o.func, o.object, o.bool])), o.func, o.object]),
1180
- /**
1181
- * Props applied to the tab indicator element.
1182
- * @default {}
1183
- */
1184
- TabIndicatorProps: o.object,
1185
- /**
1186
- * Props applied to the [`TabScrollButton`](https://mui.com/material-ui/api/tab-scroll-button/) element.
1187
- * @default {}
1188
- */
1189
- TabScrollButtonProps: o.object,
1190
- /**
1191
- * Determines the color of the `Tab`.
1192
- * @default 'primary'
1193
- */
1194
- textColor: o.oneOf(["inherit", "primary", "secondary"]),
1195
- /**
1196
- * The value of the currently selected `Tab`.
1197
- * If you don't want any selected `Tab`, you can set this prop to `false`.
1198
- */
1199
- value: o.any,
1200
- /**
1201
- * Determines additional display behavior of the tabs:
1202
- *
1203
- * - `scrollable` will invoke scrolling properties and allow for horizontally
1204
- * scrolling (or swiping) of the tab bar.
1205
- * - `fullWidth` will make the tabs grow to use all the available space,
1206
- * which should be used for small views, like on mobile.
1207
- * - `standard` will render the default state.
1208
- * @default 'standard'
1209
- */
1210
- variant: o.oneOf(["fullWidth", "scrollable", "standard"]),
1211
- /**
1212
- * If `true`, the scrollbar is visible. It can be useful when displaying
1213
- * a long vertical list of tabs.
1214
- * @default false
1215
- */
1216
- visibleScrollbar: o.bool
1217
- });
1218
- export {
1219
- fo as K,
1220
- uo as T,
1221
- Mo as a,
1222
- ut as b,
1223
- To as c,
1224
- po as d,
1225
- ao as g,
1226
- T as t
1227
- };