@mui/material 7.3.2 → 7.3.3

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 (274) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/CircularProgress/CircularProgress.d.ts +6 -0
  3. package/CircularProgress/CircularProgress.js +31 -4
  4. package/CircularProgress/circularProgressClasses.d.ts +2 -0
  5. package/CircularProgress/circularProgressClasses.js +1 -1
  6. package/Divider/Divider.js +1 -1
  7. package/MenuItem/MenuItem.js +1 -1
  8. package/SnackbarContent/SnackbarContent.js +1 -1
  9. package/Tabs/Tabs.js +5 -0
  10. package/TextField/TextField.js +1 -1
  11. package/esm/CircularProgress/CircularProgress.d.ts +6 -0
  12. package/esm/CircularProgress/CircularProgress.js +32 -5
  13. package/esm/CircularProgress/circularProgressClasses.d.ts +2 -0
  14. package/esm/CircularProgress/circularProgressClasses.js +1 -1
  15. package/esm/Divider/Divider.js +1 -1
  16. package/esm/MenuItem/MenuItem.js +1 -1
  17. package/esm/SnackbarContent/SnackbarContent.js +1 -1
  18. package/esm/Tabs/Tabs.js +5 -0
  19. package/esm/TextField/TextField.js +1 -1
  20. package/esm/index.js +1 -1
  21. package/esm/locale/amET.d.ts +2 -0
  22. package/esm/locale/amET.js +73 -0
  23. package/esm/locale/arEG.d.ts +2 -0
  24. package/esm/locale/arEG.js +73 -0
  25. package/esm/locale/arSA.d.ts +2 -0
  26. package/esm/locale/arSA.js +73 -0
  27. package/esm/locale/arSD.d.ts +2 -0
  28. package/esm/locale/arSD.js +73 -0
  29. package/esm/locale/azAZ.d.ts +2 -0
  30. package/esm/locale/azAZ.js +77 -0
  31. package/esm/locale/beBY.d.ts +2 -0
  32. package/esm/locale/beBY.js +85 -0
  33. package/esm/locale/bgBG.d.ts +2 -0
  34. package/esm/locale/bgBG.js +70 -0
  35. package/esm/locale/bnBD.d.ts +2 -0
  36. package/esm/locale/bnBD.js +73 -0
  37. package/esm/locale/caES.d.ts +2 -0
  38. package/esm/locale/caES.js +70 -0
  39. package/esm/locale/csCZ.d.ts +2 -0
  40. package/esm/locale/csCZ.js +81 -0
  41. package/esm/locale/daDK.d.ts +2 -0
  42. package/esm/locale/daDK.js +73 -0
  43. package/esm/locale/deDE.d.ts +2 -0
  44. package/esm/locale/deDE.js +73 -0
  45. package/esm/locale/elGR.d.ts +2 -0
  46. package/esm/locale/elGR.js +75 -0
  47. package/esm/locale/enUS.d.ts +2 -0
  48. package/esm/locale/enUS.js +61 -0
  49. package/esm/locale/esES.d.ts +2 -0
  50. package/esm/locale/esES.js +73 -0
  51. package/esm/locale/etEE.d.ts +2 -0
  52. package/esm/locale/etEE.js +73 -0
  53. package/esm/locale/faIR.d.ts +2 -0
  54. package/esm/locale/faIR.js +78 -0
  55. package/esm/locale/fiFI.d.ts +2 -0
  56. package/esm/locale/fiFI.js +73 -0
  57. package/esm/locale/frFR.d.ts +2 -0
  58. package/esm/locale/frFR.js +73 -0
  59. package/esm/locale/heIL.d.ts +2 -0
  60. package/esm/locale/heIL.js +73 -0
  61. package/esm/locale/hiIN.d.ts +2 -0
  62. package/esm/locale/hiIN.js +73 -0
  63. package/esm/locale/hrHR.d.ts +2 -0
  64. package/esm/locale/hrHR.js +81 -0
  65. package/esm/locale/huHU.d.ts +2 -0
  66. package/esm/locale/huHU.js +70 -0
  67. package/esm/locale/hyAM.d.ts +2 -0
  68. package/esm/locale/hyAM.js +70 -0
  69. package/esm/locale/idID.d.ts +2 -0
  70. package/esm/locale/idID.js +70 -0
  71. package/esm/locale/index.d.ts +60 -82
  72. package/esm/locale/index.js +60 -4327
  73. package/esm/locale/isIS.d.ts +2 -0
  74. package/esm/locale/isIS.js +73 -0
  75. package/esm/locale/itIT.d.ts +2 -0
  76. package/esm/locale/itIT.js +73 -0
  77. package/esm/locale/jaJP.d.ts +2 -0
  78. package/esm/locale/jaJP.js +73 -0
  79. package/esm/locale/khKH.d.ts +2 -0
  80. package/esm/locale/khKH.js +73 -0
  81. package/esm/locale/kkKZ.d.ts +2 -0
  82. package/esm/locale/kkKZ.js +76 -0
  83. package/esm/locale/koKR.d.ts +2 -0
  84. package/esm/locale/koKR.js +73 -0
  85. package/esm/locale/kuCKB.d.ts +2 -0
  86. package/esm/locale/kuCKB.js +73 -0
  87. package/esm/locale/kuLatn.d.ts +2 -0
  88. package/esm/locale/kuLatn.js +73 -0
  89. package/esm/locale/mkMK.d.ts +2 -0
  90. package/esm/locale/mkMK.js +77 -0
  91. package/esm/locale/msMS.d.ts +2 -0
  92. package/esm/locale/msMS.js +77 -0
  93. package/esm/locale/myMY.d.ts +2 -0
  94. package/esm/locale/myMY.js +77 -0
  95. package/esm/locale/nbNO.d.ts +2 -0
  96. package/esm/locale/nbNO.js +73 -0
  97. package/esm/locale/neNP.d.ts +2 -0
  98. package/esm/locale/neNP.js +77 -0
  99. package/esm/locale/nlNL.d.ts +2 -0
  100. package/esm/locale/nlNL.js +73 -0
  101. package/esm/locale/nnNO.d.ts +2 -0
  102. package/esm/locale/nnNO.js +73 -0
  103. package/esm/locale/plPL.d.ts +2 -0
  104. package/esm/locale/plPL.js +82 -0
  105. package/esm/locale/psAF.d.ts +2 -0
  106. package/esm/locale/psAF.js +73 -0
  107. package/esm/locale/ptBR.d.ts +2 -0
  108. package/esm/locale/ptBR.js +73 -0
  109. package/esm/locale/ptPT.d.ts +2 -0
  110. package/esm/locale/ptPT.js +73 -0
  111. package/esm/locale/roRO.d.ts +2 -0
  112. package/esm/locale/roRO.js +73 -0
  113. package/esm/locale/ruRU.d.ts +2 -0
  114. package/esm/locale/ruRU.js +85 -0
  115. package/esm/locale/siLK.d.ts +2 -0
  116. package/esm/locale/siLK.js +73 -0
  117. package/esm/locale/skSK.d.ts +2 -0
  118. package/esm/locale/skSK.js +81 -0
  119. package/esm/locale/srRS.d.ts +2 -0
  120. package/esm/locale/srRS.js +81 -0
  121. package/esm/locale/svSE.d.ts +2 -0
  122. package/esm/locale/svSE.js +73 -0
  123. package/esm/locale/thTH.d.ts +2 -0
  124. package/esm/locale/thTH.js +73 -0
  125. package/esm/locale/tlTL.d.ts +2 -0
  126. package/esm/locale/tlTL.js +74 -0
  127. package/esm/locale/trTR.d.ts +2 -0
  128. package/esm/locale/trTR.js +73 -0
  129. package/esm/locale/ukUA.d.ts +2 -0
  130. package/esm/locale/ukUA.js +82 -0
  131. package/esm/locale/urPK.d.ts +2 -0
  132. package/esm/locale/urPK.js +73 -0
  133. package/esm/locale/utils/LocaleTextApi.d.ts +23 -0
  134. package/esm/locale/utils/LocaleTextApi.js +1 -0
  135. package/esm/locale/viVN.d.ts +2 -0
  136. package/esm/locale/viVN.js +73 -0
  137. package/esm/locale/zhCN.d.ts +2 -0
  138. package/esm/locale/zhCN.js +51 -0
  139. package/esm/locale/zhHK.d.ts +2 -0
  140. package/esm/locale/zhHK.js +51 -0
  141. package/esm/locale/zhTW.d.ts +2 -0
  142. package/esm/locale/zhTW.js +51 -0
  143. package/esm/styles/createColorScheme.js +2 -2
  144. package/esm/styles/createTheme.js +2 -2
  145. package/esm/useAutocomplete/useAutocomplete.js +2 -2
  146. package/esm/version/index.js +2 -2
  147. package/index.js +1 -1
  148. package/locale/amET.d.ts +2 -0
  149. package/locale/amET.js +79 -0
  150. package/locale/arEG.d.ts +2 -0
  151. package/locale/arEG.js +79 -0
  152. package/locale/arSA.d.ts +2 -0
  153. package/locale/arSA.js +79 -0
  154. package/locale/arSD.d.ts +2 -0
  155. package/locale/arSD.js +79 -0
  156. package/locale/azAZ.d.ts +2 -0
  157. package/locale/azAZ.js +83 -0
  158. package/locale/beBY.d.ts +2 -0
  159. package/locale/beBY.js +91 -0
  160. package/locale/bgBG.d.ts +2 -0
  161. package/locale/bgBG.js +76 -0
  162. package/locale/bnBD.d.ts +2 -0
  163. package/locale/bnBD.js +79 -0
  164. package/locale/caES.d.ts +2 -0
  165. package/locale/caES.js +76 -0
  166. package/locale/csCZ.d.ts +2 -0
  167. package/locale/csCZ.js +87 -0
  168. package/locale/daDK.d.ts +2 -0
  169. package/locale/daDK.js +79 -0
  170. package/locale/deDE.d.ts +2 -0
  171. package/locale/deDE.js +79 -0
  172. package/locale/elGR.d.ts +2 -0
  173. package/locale/elGR.js +81 -0
  174. package/locale/enUS.d.ts +2 -0
  175. package/locale/enUS.js +67 -0
  176. package/locale/esES.d.ts +2 -0
  177. package/locale/esES.js +79 -0
  178. package/locale/etEE.d.ts +2 -0
  179. package/locale/etEE.js +79 -0
  180. package/locale/faIR.d.ts +2 -0
  181. package/locale/faIR.js +84 -0
  182. package/locale/fiFI.d.ts +2 -0
  183. package/locale/fiFI.js +79 -0
  184. package/locale/frFR.d.ts +2 -0
  185. package/locale/frFR.js +79 -0
  186. package/locale/heIL.d.ts +2 -0
  187. package/locale/heIL.js +79 -0
  188. package/locale/hiIN.d.ts +2 -0
  189. package/locale/hiIN.js +79 -0
  190. package/locale/hrHR.d.ts +2 -0
  191. package/locale/hrHR.js +87 -0
  192. package/locale/huHU.d.ts +2 -0
  193. package/locale/huHU.js +76 -0
  194. package/locale/hyAM.d.ts +2 -0
  195. package/locale/hyAM.js +76 -0
  196. package/locale/idID.d.ts +2 -0
  197. package/locale/idID.js +76 -0
  198. package/locale/index.d.ts +60 -82
  199. package/locale/index.js +660 -4328
  200. package/locale/isIS.d.ts +2 -0
  201. package/locale/isIS.js +79 -0
  202. package/locale/itIT.d.ts +2 -0
  203. package/locale/itIT.js +79 -0
  204. package/locale/jaJP.d.ts +2 -0
  205. package/locale/jaJP.js +79 -0
  206. package/locale/khKH.d.ts +2 -0
  207. package/locale/khKH.js +79 -0
  208. package/locale/kkKZ.d.ts +2 -0
  209. package/locale/kkKZ.js +82 -0
  210. package/locale/koKR.d.ts +2 -0
  211. package/locale/koKR.js +79 -0
  212. package/locale/kuCKB.d.ts +2 -0
  213. package/locale/kuCKB.js +79 -0
  214. package/locale/kuLatn.d.ts +2 -0
  215. package/locale/kuLatn.js +79 -0
  216. package/locale/mkMK.d.ts +2 -0
  217. package/locale/mkMK.js +83 -0
  218. package/locale/msMS.d.ts +2 -0
  219. package/locale/msMS.js +83 -0
  220. package/locale/myMY.d.ts +2 -0
  221. package/locale/myMY.js +83 -0
  222. package/locale/nbNO.d.ts +2 -0
  223. package/locale/nbNO.js +79 -0
  224. package/locale/neNP.d.ts +2 -0
  225. package/locale/neNP.js +83 -0
  226. package/locale/nlNL.d.ts +2 -0
  227. package/locale/nlNL.js +79 -0
  228. package/locale/nnNO.d.ts +2 -0
  229. package/locale/nnNO.js +79 -0
  230. package/locale/plPL.d.ts +2 -0
  231. package/locale/plPL.js +88 -0
  232. package/locale/psAF.d.ts +2 -0
  233. package/locale/psAF.js +79 -0
  234. package/locale/ptBR.d.ts +2 -0
  235. package/locale/ptBR.js +79 -0
  236. package/locale/ptPT.d.ts +2 -0
  237. package/locale/ptPT.js +79 -0
  238. package/locale/roRO.d.ts +2 -0
  239. package/locale/roRO.js +79 -0
  240. package/locale/ruRU.d.ts +2 -0
  241. package/locale/ruRU.js +91 -0
  242. package/locale/siLK.d.ts +2 -0
  243. package/locale/siLK.js +79 -0
  244. package/locale/skSK.d.ts +2 -0
  245. package/locale/skSK.js +87 -0
  246. package/locale/srRS.d.ts +2 -0
  247. package/locale/srRS.js +87 -0
  248. package/locale/svSE.d.ts +2 -0
  249. package/locale/svSE.js +79 -0
  250. package/locale/thTH.d.ts +2 -0
  251. package/locale/thTH.js +79 -0
  252. package/locale/tlTL.d.ts +2 -0
  253. package/locale/tlTL.js +80 -0
  254. package/locale/trTR.d.ts +2 -0
  255. package/locale/trTR.js +79 -0
  256. package/locale/ukUA.d.ts +2 -0
  257. package/locale/ukUA.js +88 -0
  258. package/locale/urPK.d.ts +2 -0
  259. package/locale/urPK.js +79 -0
  260. package/locale/utils/LocaleTextApi.d.ts +23 -0
  261. package/locale/utils/LocaleTextApi.js +5 -0
  262. package/locale/viVN.d.ts +2 -0
  263. package/locale/viVN.js +79 -0
  264. package/locale/zhCN.d.ts +2 -0
  265. package/locale/zhCN.js +57 -0
  266. package/locale/zhHK.d.ts +2 -0
  267. package/locale/zhHK.js +57 -0
  268. package/locale/zhTW.d.ts +2 -0
  269. package/locale/zhTW.js +57 -0
  270. package/package.json +8 -8
  271. package/styles/createColorScheme.js +2 -2
  272. package/styles/createTheme.js +2 -2
  273. package/useAutocomplete/useAutocomplete.js +2 -2
  274. package/version/index.js +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,66 @@
1
1
  # [Versions](https://mui.com/versions/)
2
2
 
3
+ ## 7.3.3
4
+
5
+ <!-- generated comparing v7.3.2..master -->
6
+
7
+ _Sep 30, 2025_
8
+
9
+ A big thanks to the 14 contributors who made this release possible.
10
+
11
+ ### `@mui/material@7.3.3`
12
+
13
+ - [Autocomplete] Sync highlighted index when popup is opened (#46894) @ZeeshanTamboli
14
+ - [CircularProgress] Add track slot via enableTrackSlot (#46907) @monam2
15
+ - [locale] Split locales into separate files (#46933) @christopherschroer
16
+ - [Tabs] Fix not scrolling to correct tab after refresh when auto scrollable (#46869) @Jayesh-11
17
+
18
+ ### Docs
19
+
20
+ - Add a guide for building extensible themes (#46896) @siriwatknp
21
+ - Add v7 community course to resources page (#46944) @alelthomas
22
+ - Improve performance of Default Theme Viewer (#46841) @sai6855
23
+ - Fix typo in blog component MainContent (#46868) @jonyen
24
+ - [Steppers] Replace TransitionProps with slotProps.transition (#46898) @sai6855
25
+
26
+ ### Core
27
+
28
+ - [blog] Fix year in Punta Cana retreat post (#46943) @mapache-salvaje
29
+ - [blog] Punta Cana retreat post (#46892) @mapache-salvaje
30
+ - [code-infra] Publish from CI (#46851) @Janpot
31
+ - [code-infra] Convert reportBrokenLink script to ts (#47002) @brijeshb42
32
+ - [code-infra] Update module resolution for typescript@next (#46940) @Janpot
33
+ - [code-infra] Run continuous releases during ci-check (#46948) @Janpot
34
+ - [code-infra] Fix github actions check for continuous release (#46941) @Janpot
35
+ - [code-infra] Address high/critical dependabot reports (#46937) @Janpot
36
+ - [code-infra] Update ci.yml triggers (#46860) @Janpot
37
+ - [code-infra] Exact match for renovate file name (#46916) @Janpot
38
+ - [code-infra] Disable dependency update for `@material-ui/core` in codemod (#46899) @Janpot
39
+ - [code-infra] Transpile `assertion-error` in karma tests (#46909) @Janpot
40
+ - [code-infra] Disable browserstack on circleci cron jobs (#46905) @Janpot
41
+ - [code-infra] Remove `copy-files` command usage from packages (#46902) @brijeshb42
42
+ - [code-infra] Low-hanging ts conversion (#46903) @Janpot
43
+ - [code-infra] Bring batch of changes from vitest PR (#46795) @Janpot
44
+ - [code-infra] Remove dependency on `fs-extra` (#46755) @bernardobelchior
45
+ - [code-infra] Make error code extraction independent of build (#46865) @brijeshb42
46
+ - [docs-infra] Fix markdown generation script to find correct files (#46954) @siriwatknp
47
+ - [docs-infra] Fix unnecessary redirects (#46951) @Janpot
48
+ - [docs-infra] Remove `dangerouslySetInnerHTML` for ad description (#46936) @Janpot
49
+ - [docs-infra] Display "View as Markdown" only on Material UI (#46861) @siriwatknp
50
+ - [infra] Fix JSON files not being imported in TS demos (#47000) @bernardobelchior
51
+ - [infra] Turn `literal | (string & {})` to `PropTypes.string` (#46934) @siriwatknp
52
+ - [infra] Bump node.js version and make local usage strict (#46834) @brijeshb42
53
+ - [infra] Remove "main" fields from publishable packages (#46856) @brijeshb42
54
+ - [internal] Refactor `useForkRef` TS types: tighten `cleanupRef` and simplify ref typing (#46967) @wo-o29
55
+ - [internal] Fix naming to match convention (2099cb0) @oliviertassinari
56
+ - [internal] Fix naming to match convention (29aad62) @oliviertassinari
57
+ - [internal] Use same option as other repositories (eabda77) @oliviertassinari
58
+ - [internal] Normalize <meta name='viewport' (9d1922a) @oliviertassinari
59
+ - [internal] Normalize charset='utf-8' (f1aae00) @oliviertassinari
60
+ - [test] Split infinitive (0237fda) @oliviertassinari
61
+
62
+ All contributors of this release in alphabetical order: @alelthomas, @bernardobelchior, @brijeshb42, @christopherschroer, @Janpot, @Jayesh-11, @jonyen, @mapache-salvaje, @monam2, @oliviertassinari, @sai6855, @siriwatknp, @wo-o29, @ZeeshanTamboli
63
+
3
64
  ## 7.3.2
4
65
 
5
66
  <!-- generated comparing v7.3.1..master -->
@@ -24,6 +24,12 @@ export interface CircularProgressProps extends StandardProps<React.HTMLAttribute
24
24
  * @default false
25
25
  */
26
26
  disableShrink?: boolean;
27
+ /**
28
+ * If `true`, a track circle slot is mounted to show a subtle background for the progress.
29
+ * The `size` and `thickness` apply to the track slot to be consistent with the progress circle.
30
+ * @default false
31
+ */
32
+ enableTrackSlot?: boolean;
27
33
  /**
28
34
  * The size of the component.
29
35
  * If using a number, the pixel unit is assumed.
@@ -65,6 +65,7 @@ const useUtilityClasses = ownerState => {
65
65
  const slots = {
66
66
  root: ['root', variant, `color${(0, _capitalize.default)(color)}`],
67
67
  svg: ['svg'],
68
+ track: ['track'],
68
69
  circle: ['circle', `circle${(0, _capitalize.default)(variant)}`, disableShrink && 'circleDisableShrink']
69
70
  };
70
71
  return (0, _composeClasses.default)(slots, _circularProgressClasses.getCircularProgressUtilityClass, classes);
@@ -150,6 +151,15 @@ const CircularProgressCircle = (0, _zeroStyled.styled)('circle', {
150
151
  }
151
152
  }]
152
153
  })));
154
+ const CircularProgressTrack = (0, _zeroStyled.styled)('circle', {
155
+ name: 'MuiCircularProgress',
156
+ slot: 'Track'
157
+ })((0, _memoTheme.default)(({
158
+ theme
159
+ }) => ({
160
+ stroke: 'currentColor',
161
+ opacity: (theme.vars || theme).palette.action.activatedOpacity
162
+ })));
153
163
 
154
164
  /**
155
165
  * ## ARIA
@@ -167,6 +177,7 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
167
177
  className,
168
178
  color = 'primary',
169
179
  disableShrink = false,
180
+ enableTrackSlot = false,
170
181
  size = 40,
171
182
  style,
172
183
  thickness = 3.6,
@@ -181,7 +192,8 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
181
192
  size,
182
193
  thickness,
183
194
  value,
184
- variant
195
+ variant,
196
+ enableTrackSlot
185
197
  };
186
198
  const classes = useUtilityClasses(ownerState);
187
199
  const circleStyle = {};
@@ -207,11 +219,20 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
207
219
  role: "progressbar",
208
220
  ...rootProps,
209
221
  ...other,
210
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CircularProgressSVG, {
222
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(CircularProgressSVG, {
211
223
  className: classes.svg,
212
224
  ownerState: ownerState,
213
225
  viewBox: `${SIZE / 2} ${SIZE / 2} ${SIZE} ${SIZE}`,
214
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CircularProgressCircle, {
226
+ children: [enableTrackSlot ? /*#__PURE__*/(0, _jsxRuntime.jsx)(CircularProgressTrack, {
227
+ className: classes.track,
228
+ ownerState: ownerState,
229
+ cx: SIZE,
230
+ cy: SIZE,
231
+ r: (SIZE - thickness) / 2,
232
+ fill: "none",
233
+ strokeWidth: thickness,
234
+ "aria-hidden": "true"
235
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(CircularProgressCircle, {
215
236
  className: classes.circle,
216
237
  style: circleStyle,
217
238
  ownerState: ownerState,
@@ -220,7 +241,7 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
220
241
  r: (SIZE - thickness) / 2,
221
242
  fill: "none",
222
243
  strokeWidth: thickness
223
- })
244
+ })]
224
245
  })
225
246
  });
226
247
  });
@@ -255,6 +276,12 @@ process.env.NODE_ENV !== "production" ? CircularProgress.propTypes /* remove-pro
255
276
  }
256
277
  return null;
257
278
  }),
279
+ /**
280
+ * If `true`, a track circle slot is mounted to show a subtle background for the progress.
281
+ * The `size` and `thickness` apply to the track slot to be consistent with the progress circle.
282
+ * @default false
283
+ */
284
+ enableTrackSlot: _propTypes.default.bool,
258
285
  /**
259
286
  * The size of the component.
260
287
  * If using a number, the pixel unit is assumed.
@@ -11,6 +11,8 @@ export interface CircularProgressClasses {
11
11
  colorSecondary: string;
12
12
  /** Styles applied to the svg element. */
13
13
  svg: string;
14
+ /** Styles applied to the track slot if `enableTrackSlot={true}`. */
15
+ track: string;
14
16
  /** Styles applied to the `circle` svg path. */
15
17
  circle: string;
16
18
  /** Styles applied to the `circle` svg path if `variant="determinate"`.
@@ -11,5 +11,5 @@ var _generateUtilityClass = _interopRequireDefault(require("@mui/utils/generateU
11
11
  function getCircularProgressUtilityClass(slot) {
12
12
  return (0, _generateUtilityClass.default)('MuiCircularProgress', slot);
13
13
  }
14
- const circularProgressClasses = (0, _generateUtilityClasses.default)('MuiCircularProgress', ['root', 'determinate', 'indeterminate', 'colorPrimary', 'colorSecondary', 'svg', 'circle', 'circleDeterminate', 'circleIndeterminate', 'circleDisableShrink']);
14
+ const circularProgressClasses = (0, _generateUtilityClasses.default)('MuiCircularProgress', ['root', 'determinate', 'indeterminate', 'colorPrimary', 'colorSecondary', 'svg', 'track', 'circle', 'circleDeterminate', 'circleIndeterminate', 'circleDisableShrink']);
15
15
  var _default = exports.default = circularProgressClasses;
@@ -301,7 +301,7 @@ process.env.NODE_ENV !== "production" ? Divider.propTypes /* remove-proptypes */
301
301
  /**
302
302
  * @ignore
303
303
  */
304
- role: _propTypes.default /* @typescript-to-proptypes-ignore */.string,
304
+ role: _propTypes.default.string,
305
305
  /**
306
306
  * The system prop that allows defining system overrides as well as additional CSS styles.
307
307
  */
@@ -272,7 +272,7 @@ process.env.NODE_ENV !== "production" ? MenuItem.propTypes /* remove-proptypes *
272
272
  /**
273
273
  * @ignore
274
274
  */
275
- role: _propTypes.default /* @typescript-to-proptypes-ignore */.string,
275
+ role: _propTypes.default.string,
276
276
  /**
277
277
  * If `true`, the component is selected.
278
278
  * @default false
@@ -124,7 +124,7 @@ process.env.NODE_ENV !== "production" ? SnackbarContent.propTypes /* remove-prop
124
124
  * The ARIA role attribute of the element.
125
125
  * @default 'alert'
126
126
  */
127
- role: _propTypes.default /* @typescript-to-proptypes-ignore */.string,
127
+ role: _propTypes.default.string,
128
128
  /**
129
129
  * The system prop that allows defining system overrides as well as additional CSS styles.
130
130
  */
package/Tabs/Tabs.js CHANGED
@@ -645,6 +645,11 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(inProps, ref) {
645
645
  }
646
646
  return undefined;
647
647
  }, [scrollable, scrollButtons, updateScrollObserver, childrenProp?.length]);
648
+ React.useEffect(() => {
649
+ if (scrollable && scrollButtons === 'auto' && (displayEndScroll || displayStartScroll)) {
650
+ scrollSelectedIntoView(true);
651
+ }
652
+ }, [displayEndScroll, displayStartScroll, scrollable, scrollButtons, scrollSelectedIntoView]);
648
653
  React.useEffect(() => {
649
654
  setMounted(true);
650
655
  }, []);
@@ -449,7 +449,7 @@ process.env.NODE_ENV !== "production" ? TextField.propTypes /* remove-proptypes
449
449
  /**
450
450
  * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
451
451
  */
452
- type: _propTypes.default /* @typescript-to-proptypes-ignore */.string,
452
+ type: _propTypes.default.string,
453
453
  /**
454
454
  * The value of the `input` element, required for a controlled component.
455
455
  */
@@ -24,6 +24,12 @@ export interface CircularProgressProps extends StandardProps<React.HTMLAttribute
24
24
  * @default false
25
25
  */
26
26
  disableShrink?: boolean;
27
+ /**
28
+ * If `true`, a track circle slot is mounted to show a subtle background for the progress.
29
+ * The `size` and `thickness` apply to the track slot to be consistent with the progress circle.
30
+ * @default false
31
+ */
32
+ enableTrackSlot?: boolean;
27
33
  /**
28
34
  * The size of the component.
29
35
  * If using a number, the pixel unit is assumed.
@@ -11,7 +11,7 @@ import { useDefaultProps } from "../DefaultPropsProvider/index.js";
11
11
  import capitalize from "../utils/capitalize.js";
12
12
  import createSimplePaletteValueFilter from "../utils/createSimplePaletteValueFilter.js";
13
13
  import { getCircularProgressUtilityClass } from "./circularProgressClasses.js";
14
- import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  const SIZE = 44;
16
16
  const circularRotateKeyframe = keyframes`
17
17
  0% {
@@ -58,6 +58,7 @@ const useUtilityClasses = ownerState => {
58
58
  const slots = {
59
59
  root: ['root', variant, `color${capitalize(color)}`],
60
60
  svg: ['svg'],
61
+ track: ['track'],
61
62
  circle: ['circle', `circle${capitalize(variant)}`, disableShrink && 'circleDisableShrink']
62
63
  };
63
64
  return composeClasses(slots, getCircularProgressUtilityClass, classes);
@@ -143,6 +144,15 @@ const CircularProgressCircle = styled('circle', {
143
144
  }
144
145
  }]
145
146
  })));
147
+ const CircularProgressTrack = styled('circle', {
148
+ name: 'MuiCircularProgress',
149
+ slot: 'Track'
150
+ })(memoTheme(({
151
+ theme
152
+ }) => ({
153
+ stroke: 'currentColor',
154
+ opacity: (theme.vars || theme).palette.action.activatedOpacity
155
+ })));
146
156
 
147
157
  /**
148
158
  * ## ARIA
@@ -160,6 +170,7 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
160
170
  className,
161
171
  color = 'primary',
162
172
  disableShrink = false,
173
+ enableTrackSlot = false,
163
174
  size = 40,
164
175
  style,
165
176
  thickness = 3.6,
@@ -174,7 +185,8 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
174
185
  size,
175
186
  thickness,
176
187
  value,
177
- variant
188
+ variant,
189
+ enableTrackSlot
178
190
  };
179
191
  const classes = useUtilityClasses(ownerState);
180
192
  const circleStyle = {};
@@ -200,11 +212,20 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
200
212
  role: "progressbar",
201
213
  ...rootProps,
202
214
  ...other,
203
- children: /*#__PURE__*/_jsx(CircularProgressSVG, {
215
+ children: /*#__PURE__*/_jsxs(CircularProgressSVG, {
204
216
  className: classes.svg,
205
217
  ownerState: ownerState,
206
218
  viewBox: `${SIZE / 2} ${SIZE / 2} ${SIZE} ${SIZE}`,
207
- children: /*#__PURE__*/_jsx(CircularProgressCircle, {
219
+ children: [enableTrackSlot ? /*#__PURE__*/_jsx(CircularProgressTrack, {
220
+ className: classes.track,
221
+ ownerState: ownerState,
222
+ cx: SIZE,
223
+ cy: SIZE,
224
+ r: (SIZE - thickness) / 2,
225
+ fill: "none",
226
+ strokeWidth: thickness,
227
+ "aria-hidden": "true"
228
+ }) : null, /*#__PURE__*/_jsx(CircularProgressCircle, {
208
229
  className: classes.circle,
209
230
  style: circleStyle,
210
231
  ownerState: ownerState,
@@ -213,7 +234,7 @@ const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress
213
234
  r: (SIZE - thickness) / 2,
214
235
  fill: "none",
215
236
  strokeWidth: thickness
216
- })
237
+ })]
217
238
  })
218
239
  });
219
240
  });
@@ -248,6 +269,12 @@ process.env.NODE_ENV !== "production" ? CircularProgress.propTypes /* remove-pro
248
269
  }
249
270
  return null;
250
271
  }),
272
+ /**
273
+ * If `true`, a track circle slot is mounted to show a subtle background for the progress.
274
+ * The `size` and `thickness` apply to the track slot to be consistent with the progress circle.
275
+ * @default false
276
+ */
277
+ enableTrackSlot: PropTypes.bool,
251
278
  /**
252
279
  * The size of the component.
253
280
  * If using a number, the pixel unit is assumed.
@@ -11,6 +11,8 @@ export interface CircularProgressClasses {
11
11
  colorSecondary: string;
12
12
  /** Styles applied to the svg element. */
13
13
  svg: string;
14
+ /** Styles applied to the track slot if `enableTrackSlot={true}`. */
15
+ track: string;
14
16
  /** Styles applied to the `circle` svg path. */
15
17
  circle: string;
16
18
  /** Styles applied to the `circle` svg path if `variant="determinate"`.
@@ -3,5 +3,5 @@ import generateUtilityClass from '@mui/utils/generateUtilityClass';
3
3
  export function getCircularProgressUtilityClass(slot) {
4
4
  return generateUtilityClass('MuiCircularProgress', slot);
5
5
  }
6
- const circularProgressClasses = generateUtilityClasses('MuiCircularProgress', ['root', 'determinate', 'indeterminate', 'colorPrimary', 'colorSecondary', 'svg', 'circle', 'circleDeterminate', 'circleIndeterminate', 'circleDisableShrink']);
6
+ const circularProgressClasses = generateUtilityClasses('MuiCircularProgress', ['root', 'determinate', 'indeterminate', 'colorPrimary', 'colorSecondary', 'svg', 'track', 'circle', 'circleDeterminate', 'circleIndeterminate', 'circleDisableShrink']);
7
7
  export default circularProgressClasses;
@@ -294,7 +294,7 @@ process.env.NODE_ENV !== "production" ? Divider.propTypes /* remove-proptypes */
294
294
  /**
295
295
  * @ignore
296
296
  */
297
- role: PropTypes /* @typescript-to-proptypes-ignore */.string,
297
+ role: PropTypes.string,
298
298
  /**
299
299
  * The system prop that allows defining system overrides as well as additional CSS styles.
300
300
  */
@@ -264,7 +264,7 @@ process.env.NODE_ENV !== "production" ? MenuItem.propTypes /* remove-proptypes *
264
264
  /**
265
265
  * @ignore
266
266
  */
267
- role: PropTypes /* @typescript-to-proptypes-ignore */.string,
267
+ role: PropTypes.string,
268
268
  /**
269
269
  * If `true`, the component is selected.
270
270
  * @default false
@@ -117,7 +117,7 @@ process.env.NODE_ENV !== "production" ? SnackbarContent.propTypes /* remove-prop
117
117
  * The ARIA role attribute of the element.
118
118
  * @default 'alert'
119
119
  */
120
- role: PropTypes /* @typescript-to-proptypes-ignore */.string,
120
+ role: PropTypes.string,
121
121
  /**
122
122
  * The system prop that allows defining system overrides as well as additional CSS styles.
123
123
  */
package/esm/Tabs/Tabs.js CHANGED
@@ -638,6 +638,11 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(inProps, ref) {
638
638
  }
639
639
  return undefined;
640
640
  }, [scrollable, scrollButtons, updateScrollObserver, childrenProp?.length]);
641
+ React.useEffect(() => {
642
+ if (scrollable && scrollButtons === 'auto' && (displayEndScroll || displayStartScroll)) {
643
+ scrollSelectedIntoView(true);
644
+ }
645
+ }, [displayEndScroll, displayStartScroll, scrollable, scrollButtons, scrollSelectedIntoView]);
641
646
  React.useEffect(() => {
642
647
  setMounted(true);
643
648
  }, []);
@@ -442,7 +442,7 @@ process.env.NODE_ENV !== "production" ? TextField.propTypes /* remove-proptypes
442
442
  /**
443
443
  * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#input_types).
444
444
  */
445
- type: PropTypes /* @typescript-to-proptypes-ignore */.string,
445
+ type: PropTypes.string,
446
446
  /**
447
447
  * The value of the `input` element, required for a controlled component.
448
448
  */
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/material v7.3.2
2
+ * @mui/material v7.3.3
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -0,0 +1,2 @@
1
+ import type { Localization } from "./utils/LocaleTextApi.js";
2
+ export declare const amET: Localization;
@@ -0,0 +1,73 @@
1
+ export const amET = {
2
+ components: {
3
+ MuiBreadcrumbs: {
4
+ defaultProps: {
5
+ expandText: 'መንገድ አሳይ'
6
+ }
7
+ },
8
+ MuiTablePagination: {
9
+ defaultProps: {
10
+ getItemAriaLabel: type => {
11
+ if (type === 'first') {
12
+ return 'ወደ መጀመሪያው ገጽ ይሂዱ';
13
+ }
14
+ if (type === 'last') {
15
+ return 'ወደ መጨረሻው ገጽ ይሂዱ';
16
+ }
17
+ if (type === 'next') {
18
+ return 'ወደ ቀጣዩ ገጽ ይሂዱ';
19
+ }
20
+ // if (type === 'previous') {
21
+ return 'ወደ ቀዳሚው ገጽ ይሂዱ';
22
+ },
23
+ labelRowsPerPage: 'ረድፎች በአንድ ገጽ:',
24
+ labelDisplayedRows: ({
25
+ from,
26
+ to,
27
+ count
28
+ }) => `${from}-${to} ከ ${count !== -1 ? count : `${to} በላይ`}`
29
+ }
30
+ },
31
+ MuiRating: {
32
+ defaultProps: {
33
+ getLabelText: value => `${value} ኮከ${value !== 1 ? 'ቦች' : 'ብ'}`,
34
+ emptyLabelText: 'ባዶ'
35
+ }
36
+ },
37
+ MuiAutocomplete: {
38
+ defaultProps: {
39
+ clearText: 'አጽዳ',
40
+ closeText: 'ዝጋ',
41
+ loadingText: 'በመጫን ላይ…',
42
+ noOptionsText: 'አማራጮች የሉም',
43
+ openText: 'ክፈት'
44
+ }
45
+ },
46
+ MuiAlert: {
47
+ defaultProps: {
48
+ closeText: 'ዝጋ'
49
+ }
50
+ },
51
+ MuiPagination: {
52
+ defaultProps: {
53
+ 'aria-label': 'የገጽ አሰሳ',
54
+ getItemAriaLabel: (type, page, selected) => {
55
+ if (type === 'page') {
56
+ return `${selected ? '' : 'ወደ '}ገጽ ${page}${selected ? '' : ' ሂድ'}`;
57
+ }
58
+ if (type === 'first') {
59
+ return 'ወደ መጀመሪያው ገጽ ይሂዱ';
60
+ }
61
+ if (type === 'last') {
62
+ return 'ወደ መጨረሻው ገጽ ይሂዱ';
63
+ }
64
+ if (type === 'next') {
65
+ return 'ወደ ቀጣዩ ገጽ ይሂዱ';
66
+ }
67
+ // if (type === 'previous') {
68
+ return 'ወደ ቀዳሚው ገጽ ይሂዱ';
69
+ }
70
+ }
71
+ }
72
+ }
73
+ };
@@ -0,0 +1,2 @@
1
+ import type { Localization } from "./utils/LocaleTextApi.js";
2
+ export declare const arEG: Localization;
@@ -0,0 +1,73 @@
1
+ export const arEG = {
2
+ components: {
3
+ MuiBreadcrumbs: {
4
+ defaultProps: {
5
+ expandText: 'إظهار المسار'
6
+ }
7
+ },
8
+ MuiTablePagination: {
9
+ defaultProps: {
10
+ getItemAriaLabel: type => {
11
+ if (type === 'first') {
12
+ return 'انتقل إلى الصفحة الأولى';
13
+ }
14
+ if (type === 'last') {
15
+ return 'انتقل إلى الصفحة الأخيرة';
16
+ }
17
+ if (type === 'next') {
18
+ return 'انتقل إلى الصفحة التالية';
19
+ }
20
+ // if (type === 'previous') {
21
+ return 'انتقل إلى الصفحة السابقة';
22
+ },
23
+ labelRowsPerPage: 'عدد الصفوف في الصفحة:',
24
+ labelDisplayedRows: ({
25
+ from,
26
+ to,
27
+ count
28
+ }) => `${from}–${to} من ${count !== -1 ? count : ` أكثر من${to}`}`
29
+ }
30
+ },
31
+ MuiRating: {
32
+ defaultProps: {
33
+ getLabelText: value => `${value} ${value !== 1 ? 'نجوم' : 'نجمة'}`,
34
+ emptyLabelText: 'فارغ'
35
+ }
36
+ },
37
+ MuiAutocomplete: {
38
+ defaultProps: {
39
+ clearText: 'مسح',
40
+ closeText: 'إغلاق',
41
+ loadingText: 'جار التحميل...',
42
+ noOptionsText: 'لا يوجد خيارات',
43
+ openText: 'فتح'
44
+ }
45
+ },
46
+ MuiAlert: {
47
+ defaultProps: {
48
+ closeText: 'إغلاق'
49
+ }
50
+ },
51
+ MuiPagination: {
52
+ defaultProps: {
53
+ 'aria-label': 'التنقل عبر الصفحات',
54
+ getItemAriaLabel: (type, page, selected) => {
55
+ if (type === 'page') {
56
+ return `${selected ? '' : 'انتقل إلى '} صفحة ${page}`;
57
+ }
58
+ if (type === 'first') {
59
+ return 'انتقل إلى الصفحة الأولى';
60
+ }
61
+ if (type === 'last') {
62
+ return 'انتقل إلى الصفحة الأخيرة';
63
+ }
64
+ if (type === 'next') {
65
+ return 'انتقل إلى الصفحة التالية';
66
+ }
67
+ // if (type === 'previous') {
68
+ return 'انتقل إلى الصفحة السابقة';
69
+ }
70
+ }
71
+ }
72
+ }
73
+ };
@@ -0,0 +1,2 @@
1
+ import type { Localization } from "./utils/LocaleTextApi.js";
2
+ export declare const arSA: Localization;
@@ -0,0 +1,73 @@
1
+ export const arSA = {
2
+ components: {
3
+ MuiBreadcrumbs: {
4
+ defaultProps: {
5
+ expandText: 'إظهار المسار'
6
+ }
7
+ },
8
+ MuiTablePagination: {
9
+ defaultProps: {
10
+ getItemAriaLabel: type => {
11
+ if (type === 'first') {
12
+ return 'الانتقال إلى الصفحة الأولى';
13
+ }
14
+ if (type === 'last') {
15
+ return 'الانتقال إلى الصفحة الأخيرة';
16
+ }
17
+ if (type === 'next') {
18
+ return 'الانتقال إلى الصفحة التالية';
19
+ }
20
+ // if (type === 'previous') {
21
+ return 'الانتقال إلى الصفحة السابقة';
22
+ },
23
+ labelRowsPerPage: 'عدد الصفوف في الصفحة:',
24
+ labelDisplayedRows: ({
25
+ from,
26
+ to,
27
+ count
28
+ }) => `${from}–${to} من ${count !== -1 ? count : ` أكثر من${to}`}`
29
+ }
30
+ },
31
+ MuiRating: {
32
+ defaultProps: {
33
+ getLabelText: value => `${value} ${value !== 1 ? 'نجوم' : 'نجمة'}`,
34
+ emptyLabelText: 'فارغ'
35
+ }
36
+ },
37
+ MuiAutocomplete: {
38
+ defaultProps: {
39
+ clearText: 'مسح',
40
+ closeText: 'إغلاق',
41
+ loadingText: 'جار التحميل...',
42
+ noOptionsText: 'لا توجد خيارات',
43
+ openText: 'فتح'
44
+ }
45
+ },
46
+ MuiAlert: {
47
+ defaultProps: {
48
+ closeText: 'إغلاق'
49
+ }
50
+ },
51
+ MuiPagination: {
52
+ defaultProps: {
53
+ 'aria-label': 'التنقل عبر الصفحات',
54
+ getItemAriaLabel: (type, page, selected) => {
55
+ if (type === 'page') {
56
+ return `${selected ? '' : 'الانتقال إلى '} صفحة ${page}`;
57
+ }
58
+ if (type === 'first') {
59
+ return 'الانتقال إلى الصفحة الأولى';
60
+ }
61
+ if (type === 'last') {
62
+ return 'الانتقال الي الصفحة الأخيرة';
63
+ }
64
+ if (type === 'next') {
65
+ return 'الانتقال إلى الصفحة التالية';
66
+ }
67
+ // if (type === 'previous') {
68
+ return 'الانتقال إلى الصفحة السابقة';
69
+ }
70
+ }
71
+ }
72
+ }
73
+ };
@@ -0,0 +1,2 @@
1
+ import type { Localization } from "./utils/LocaleTextApi.js";
2
+ export declare const arSD: Localization;