@hybridcore/ui 1.6.1 → 1.6.2

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 (231) hide show
  1. package/CATALOG.md +179 -0
  2. package/README.md +1 -2
  3. package/dist/AccordionSummary-CJppWeqF.js +781 -0
  4. package/dist/Add-CqcD1PWb.js +403 -0
  5. package/dist/Box-DqUMmZjL.js +31 -0
  6. package/dist/Button-C5yquWAB.js +357 -0
  7. package/dist/ButtonBase-BEF7oTOe.js +887 -0
  8. package/dist/{Delete-fBLhTHbF.js → Delete-BdyYpINH.js} +9 -8
  9. package/dist/{DialogContent-CGJ7alb8.js → DialogContent-BvVjD9z3.js} +127 -122
  10. package/dist/FormGroup-CpBsIyYR.js +89 -0
  11. package/dist/{IconButton-_opV1iNK.js → IconButton-BoGwbvrP.js} +26 -26
  12. package/dist/{InputLabel-rEwwnD4_.js → InputLabel-Dd8RrneV.js} +140 -153
  13. package/dist/{MenuItem-DrE50M_p.js → MenuItem-DwqJqzuM.js} +65 -89
  14. package/dist/Modal-MUZygjmQ.js +1158 -0
  15. package/dist/Paper-BkQLdsCI.js +582 -0
  16. package/dist/Select-DHUl_uG3.js +3916 -0
  17. package/dist/SwitchBase-DTndTqI8.js +235 -0
  18. package/dist/TextField-e2oKaUN1.js +669 -0
  19. package/dist/TransitionGroupContext-BDAp2T0O.js +96 -0
  20. package/dist/{Typography-B-Z5Y0Xq.js → Typography-DgsSLCFC.js} +28 -26
  21. package/dist/assertThisInitialized-C1dAyb4j.js +7 -0
  22. package/dist/assets/index4.css +1 -0
  23. package/dist/clsx-OuTLNxxd.js +16 -0
  24. package/dist/components/access/helpers.js +1 -1
  25. package/dist/components/access/logic.js +1 -1
  26. package/dist/components/button/index.js +10 -0
  27. package/dist/components/button/logic.js +26 -0
  28. package/dist/components/button/styled.js +9 -0
  29. package/dist/components/charts/_common/chart-error.js +19 -0
  30. package/dist/components/charts/candlestick/index.js +3 -3
  31. package/dist/components/charts/candlestick/logic.js +123 -113
  32. package/dist/components/charts/chart-wrapper/index.js +5 -5
  33. package/dist/components/charts/column-line-mix/index.js +9 -8
  34. package/dist/components/charts/column-line-mix/logic.js +68 -71
  35. package/dist/components/charts/drill-down-treemap/index.js +8 -7
  36. package/dist/components/charts/drill-down-treemap/logic.js +138 -144
  37. package/dist/components/charts/drill-down-voronoi-treemap/index.js +9 -8
  38. package/dist/components/charts/drill-down-voronoi-treemap/logic.js +222 -228
  39. package/dist/components/charts/heatmap/index.js +9 -8
  40. package/dist/components/charts/heatmap/logic.js +167 -173
  41. package/dist/components/charts/highlighting-line-data/index.js +3 -3
  42. package/dist/components/charts/line/index.js +9 -8
  43. package/dist/components/charts/line/logic.js +74 -79
  44. package/dist/components/charts/logaritmic-scale/index.js +9 -8
  45. package/dist/components/charts/logaritmic-scale/logic.js +63 -69
  46. package/dist/components/charts/multiple-value-axes/index.js +9 -8
  47. package/dist/components/charts/multiple-value-axes/logic.js +101 -107
  48. package/dist/components/charts/nested-pie/index.js +9 -8
  49. package/dist/components/charts/nested-pie/logic.js +62 -68
  50. package/dist/components/charts/packed-circles/index.js +7 -6
  51. package/dist/components/charts/packed-circles/logic.js +50 -56
  52. package/dist/components/charts/pie-chart/index.js +9 -8
  53. package/dist/components/charts/pie-chart/logic.js +49 -54
  54. package/dist/components/charts/stacked-area-radar/index.js +8 -7
  55. package/dist/components/charts/stacked-area-radar/logic.js +113 -118
  56. package/dist/components/charts/stacked-column-chart/index.js +9 -8
  57. package/dist/components/charts/stacked-column-chart/logic.js +78 -84
  58. package/dist/components/charts/xy-chart/index.js +9 -8
  59. package/dist/components/charts/xy-chart/logic.js +56 -60
  60. package/dist/components/collapsible-card/index.js +11 -10
  61. package/dist/components/collapsible-card/styled.js +1 -1
  62. package/dist/components/color-picker/index.js +7120 -0
  63. package/dist/components/color-picker/logic.js +18 -0
  64. package/dist/components/color-picker/styled.js +7 -0
  65. package/dist/components/confirm/dialog.js +3 -3
  66. package/dist/components/confirm/index.js +1 -1
  67. package/dist/components/data-grid/index.js +22 -0
  68. package/dist/components/data-grid/logic.js +15 -0
  69. package/dist/components/data-grid/styled.js +20 -0
  70. package/dist/components/data-map/components/controls/index.js +4 -6
  71. package/dist/components/data-map/index.js +11 -11
  72. package/dist/components/data-security-selectors/dissemination-list/index.js +192 -191
  73. package/dist/components/data-security-selectors/dissemination-list/styled.js +12 -12
  74. package/dist/components/data-security-selectors/security-level/index.js +18 -15
  75. package/dist/components/data-security-selectors/security-level/logic.js +18 -63
  76. package/dist/components/data-security-selectors/security-level/styled.js +23 -17
  77. package/dist/components/date-picker-with-custom-range/index.js +1 -1
  78. package/dist/components/date-range-picker/index.js +2748 -0
  79. package/dist/components/date-range-picker/styled.js +14 -0
  80. package/dist/components/date-time-picker/index.js +45 -46
  81. package/dist/components/divider/index.js +11 -11
  82. package/dist/components/document-viewer/components/action-buttons/index.js +15 -15
  83. package/dist/components/document-viewer/components/navigation/index.js +9 -9
  84. package/dist/components/document-viewer/components/viewer/index.js +31 -35
  85. package/dist/components/document-viewer/index.js +31 -39
  86. package/dist/components/document-viewer/logic.js +41 -34
  87. package/dist/components/document-viewer/styled.js +115 -27
  88. package/dist/components/duration-select/index.js +27 -0
  89. package/dist/components/duration-select/logic.js +21 -0
  90. package/dist/components/duration-select/styled.js +26 -0
  91. package/dist/components/editable-text/index.js +20 -0
  92. package/dist/components/editable-text/logic.js +18 -0
  93. package/dist/components/editable-text/styled.js +22 -0
  94. package/dist/components/geometry-picker/coordinate/index.js +29 -29
  95. package/dist/components/geometry-picker/edit/index.js +18 -18
  96. package/dist/components/geometry-picker/geometry/index.js +67 -67
  97. package/dist/components/geometry-picker/geometry/map-overlay.js +6 -6
  98. package/dist/components/geometry-picker/index.js +69 -86
  99. package/dist/components/geometry-picker/kml/index.js +16 -16
  100. package/dist/components/geometry-picker/logic.js +50 -57
  101. package/dist/components/geometry-picker/map/index.js +8 -8
  102. package/dist/components/geometry-picker/parser/coordinate-input/index.js +4 -4
  103. package/dist/components/geometry-picker/parser/index.js +46 -50
  104. package/dist/components/geometry-picker/parser/styled.js +22 -4
  105. package/dist/components/geometry-picker/styled.js +97 -37
  106. package/dist/components/geometry-picker/wkt/index.js +13 -13
  107. package/dist/components/heat-map/components/controls/index.js +4 -6
  108. package/dist/components/heat-map/components/legend/index.js +15 -17
  109. package/dist/components/heat-map/index.js +7 -7
  110. package/dist/components/instance-form/components/TopLabelWrapper.js +8 -48
  111. package/dist/components/instance-form/components/composite-list/index.js +5 -3
  112. package/dist/components/instance-form/components/composite-matrix/components/editable-table/index.js +83 -74
  113. package/dist/components/instance-form/components/composite-matrix/components/editor/index.js +45 -66
  114. package/dist/components/instance-form/components/composite-matrix/components/form/index.js +60 -75
  115. package/dist/components/instance-form/components/composite-matrix/components/json-editor/index.js +2425 -2422
  116. package/dist/components/instance-form/components/composite-matrix/components/table/index.js +33 -52
  117. package/dist/components/instance-form/components/composite-matrix/index.js +30 -36
  118. package/dist/components/instance-form/components/policy-list/index.js +47 -81
  119. package/dist/components/instance-form/components/variable/index.js +6 -9
  120. package/dist/components/instance-form/components/variables/index.js +48 -55
  121. package/dist/components/instance-form/helpers.js +9 -0
  122. package/dist/components/instance-form/index.js +402 -518
  123. package/dist/components/instance-form/logic.js +115 -0
  124. package/dist/components/instance-form/styled.js +487 -0
  125. package/dist/components/instance-hierarchy-table/styled.js +1 -1
  126. package/dist/components/instance-variable-list/index.js +11 -11
  127. package/dist/components/map/index.js +28 -6
  128. package/dist/components/map/styled.js +1 -1
  129. package/dist/components/notification/index.js +67 -0
  130. package/dist/components/notification/logic.js +30 -0
  131. package/dist/components/notification/store.js +23 -0
  132. package/dist/components/notification/styled.js +52 -0
  133. package/dist/components/object-profile-card/components/avatar/index.js +9 -10
  134. package/dist/components/object-profile-card/index.js +19 -20
  135. package/dist/components/paginated-list/index.js +2 -3
  136. package/dist/components/placeholder/index.js +10 -0
  137. package/dist/components/placeholder/logic.js +12 -0
  138. package/dist/components/placeholder/styled.js +32 -0
  139. package/dist/components/positional-tooltip/index.js +24 -0
  140. package/dist/components/positional-tooltip/styled.js +17 -0
  141. package/dist/components/property-mapping/index.js +204 -423
  142. package/dist/components/property-mapping/logic.js +156 -0
  143. package/dist/components/property-mapping/styled.js +199 -0
  144. package/dist/components/prr-map/components/controls/index.js +4 -6
  145. package/dist/components/prr-map/components/legend/index.js +26 -28
  146. package/dist/components/prr-map/index.js +5 -5
  147. package/dist/components/range-selector/styled.js +1106 -1034
  148. package/dist/components/raster-grid-map/components/controls/index.js +4 -6
  149. package/dist/components/raster-grid-map/components/legend/index.js +4 -6
  150. package/dist/components/raster-grid-map/index.js +5 -5
  151. package/dist/components/scroll-drag/index.js +22 -0
  152. package/dist/components/scroll-drag/logic.js +39 -0
  153. package/dist/components/scroll-drag/styled.js +17 -0
  154. package/dist/components/search-input/logic.js +35 -33
  155. package/dist/components/simple-pivot-table/index.js +12 -12
  156. package/dist/components/sortable-list/index.js +599 -0
  157. package/dist/components/sortable-list/logic.js +18 -0
  158. package/dist/components/sortable-list/styled.js +38 -0
  159. package/dist/components/static-text/index.js +6 -6
  160. package/dist/components/stats-box/index.js +12 -0
  161. package/dist/components/stats-box/styled.js +36 -0
  162. package/dist/components/template-form/components/property-list/index.js +27 -26
  163. package/dist/components/template-form/components/property-list/property-list-columns.js +3 -3
  164. package/dist/components/template-form/components/property-list/property-list-form.js +758 -12
  165. package/dist/components/template-form/components/recognition-property-list/index.js +11 -11
  166. package/dist/components/template-form/components/recognition-property-list/recognition-property-list-columns.js +2 -2
  167. package/dist/components/template-form/components/recognition-property-list/recognition-property-list-form.js +24 -22
  168. package/dist/components/template-form/components/select-icon/index.js +24 -24
  169. package/dist/components/template-form/helpers.js +17 -0
  170. package/dist/components/template-form/index.js +270 -308
  171. package/dist/components/template-form/logic.js +69 -0
  172. package/dist/components/template-form/styled.js +84 -0
  173. package/dist/components/text-overflow/index.js +6 -0
  174. package/dist/components/text-overflow/styled.js +13 -0
  175. package/dist/components/timeline/index.js +12 -12
  176. package/dist/components/toggle-view-button/index.js +35 -0
  177. package/dist/components/toggle-view-button/logic.js +22 -0
  178. package/dist/components/toggle-view-button/styled.js +11 -0
  179. package/dist/components/tree-select/index.js +1 -1
  180. package/dist/components/visually-hidden-input/index.js +4 -0
  181. package/dist/components/visually-hidden-input/styled.js +18 -0
  182. package/dist/createChainedFunction-C0nujS3O.js +9 -0
  183. package/dist/{createSvgIcon-DX-SqL8M.js → createSvgIcon-Ch_cT8az.js} +68 -65
  184. package/dist/createSvgIcon-DuDuASu1.js +62 -0
  185. package/dist/debounce-46wSf_lW.js +15 -0
  186. package/dist/{dialog-cf4HUXXl.js → dialog-BYRnCztH.js} +30 -29
  187. package/dist/formControlState-vgaj2ksH.js +10 -0
  188. package/dist/generateUtilityClasses-C3ivN9Ie.js +2973 -0
  189. package/dist/{helpers-B4UL9NMD.js → helpers-D4uXfBfO.js} +2 -2
  190. package/dist/index-BtlzPygz.js +470 -0
  191. package/dist/index-DH6qsPBn.js +153 -0
  192. package/dist/{index-C8C3YXle.js → index-e9xTIYWt.js} +139 -137
  193. package/dist/main.d.ts +1054 -330
  194. package/dist/main.js +163 -130
  195. package/dist/ownerWindow-wg6foiOE.js +10 -0
  196. package/dist/setPrototypeOf-NPgp4cYc.js +8 -0
  197. package/dist/styled-Db1RdcPA.js +323 -0
  198. package/dist/unsupportedProp-DuqR2hj9.js +36 -0
  199. package/dist/useFormControl-CatNKXAi.js +10 -0
  200. package/dist/useId-BW-oWmul.js +19 -0
  201. package/dist/{useMobilePicker-B-M3dnTn.js → useMobilePicker-CY8ndYRL.js} +4777 -4491
  202. package/dist/useSlot-B_Q4vnX5.js +42 -0
  203. package/package.json +15 -7
  204. package/dist/AccordionSummary-CMg08YSA.js +0 -739
  205. package/dist/Add-DuVVJeQU.js +0 -380
  206. package/dist/ButtonBase-sObABYY2.js +0 -965
  207. package/dist/FormControl-BCurCxRj.js +0 -1294
  208. package/dist/FormControlLabel-BkRfrhNy.js +0 -601
  209. package/dist/InputAdornment-C7PEvvYr.js +0 -155
  210. package/dist/Modal-DlB6GH-f.js +0 -1659
  211. package/dist/Paper-q9kKjAKx.js +0 -527
  212. package/dist/TextField-DSDIEEKu.js +0 -3161
  213. package/dist/assertThisInitialized-BUtkG-md.js +0 -13
  214. package/dist/capitalize-quqpGCFu.js +0 -9
  215. package/dist/components/instance-form/components/composite-list/styled.js +0 -73
  216. package/dist/components/instance-form/components/composite-matrix/components/editor/styled.js +0 -1
  217. package/dist/components/instance-form/components/composite-matrix/styled.js +0 -69
  218. package/dist/components/key-protection/index.js +0 -47
  219. package/dist/components/key-protection/logic.js +0 -40
  220. package/dist/components/key-protection/styled.js +0 -45
  221. package/dist/components/key-protection/utils.js +0 -10
  222. package/dist/createSvgIcon-BM3-TsGy.js +0 -70
  223. package/dist/index-BMS1Otro.js +0 -183
  224. package/dist/index-DPKUmQnz.js +0 -501
  225. package/dist/index-kCJ_Zvl8.js +0 -34
  226. package/dist/isMuiElement-BkJ72LB3.js +0 -26
  227. package/dist/property-list-form-DL_dEoNn.js +0 -381
  228. package/dist/styled-Bsjp3kFh.js +0 -668
  229. package/dist/unsupportedProp-BND8AB6O.js +0 -25
  230. package/dist/useId-B4-oF9Mq.js +0 -34
  231. package/dist/utils-Cxu-fHjQ.js +0 -115
@@ -0,0 +1,1158 @@
1
+ import { a as g, _ as G } from "./objectWithoutPropertiesLoose-DJteAcBH.js";
2
+ import * as d from "react";
3
+ import { P as e } from "./index-C__OZmYy.js";
4
+ import { c as ee } from "./clsx-OuTLNxxd.js";
5
+ import { g as he, a as Ee, s as ne, u as ge, c as ye } from "./generateUtilityClasses-C3ivN9Ie.js";
6
+ import { o as $, a as oe } from "./ownerWindow-wg6foiOE.js";
7
+ import { c as Te, u as K, a as le, s as ce, b as de } from "./TransitionGroupContext-BDAp2T0O.js";
8
+ import { r as Me, m as Fe, a as De, u as Ae, T as Be, b as Le, g as ue, e as _e } from "./Paper-BkQLdsCI.js";
9
+ import { c as pe } from "./createChainedFunction-C0nujS3O.js";
10
+ import { jsxs as ve, jsx as D } from "react/jsx-runtime";
11
+ import * as $e from "react-dom";
12
+ function je(n) {
13
+ const {
14
+ prototype: o = {}
15
+ } = n;
16
+ return !!o.isReactComponent;
17
+ }
18
+ function xe(n, o, r, t, a) {
19
+ const s = n[o], i = a || o;
20
+ if (s == null || // When server-side rendering React doesn't warn either.
21
+ // This is not an accurate check for SSR.
22
+ // This is only in place for Emotion compat.
23
+ // TODO: Revisit once https://github.com/facebook/react/issues/20047 is resolved.
24
+ typeof window > "u")
25
+ return null;
26
+ let l;
27
+ const u = s.type;
28
+ return typeof u == "function" && !je(u) && (l = "Did you accidentally use a plain function component for an element instead?"), l !== void 0 ? new Error(`Invalid ${t} \`${i}\` supplied to \`${r}\`. Expected an element that can hold a ref. ${l} For more information see https://mui.com/r/caveat-with-refs-guide`) : null;
29
+ }
30
+ const X = Te(e.element, xe);
31
+ X.isRequired = Te(e.element.isRequired, xe);
32
+ const He = "exact-prop: ​";
33
+ function Pe(n) {
34
+ return process.env.NODE_ENV === "production" ? n : g({}, n, {
35
+ [He]: (o) => {
36
+ const r = Object.keys(o).filter((t) => !n.hasOwnProperty(t));
37
+ return r.length > 0 ? new Error(`The following props are not supported: ${r.map((t) => `\`${t}\``).join(", ")}. Please remove them.`) : null;
38
+ }
39
+ });
40
+ }
41
+ function Re(n, o, r, t, a) {
42
+ if (process.env.NODE_ENV === "production")
43
+ return null;
44
+ const s = n[o], i = a || o;
45
+ return s == null ? null : s && s.nodeType !== 1 ? new Error(`Invalid ${t} \`${i}\` supplied to \`${r}\`. Expected an HTMLElement.`) : null;
46
+ }
47
+ function Ue(n) {
48
+ const o = n.documentElement.clientWidth;
49
+ return Math.abs(window.innerWidth - o);
50
+ }
51
+ const Ve = ["elementType", "externalSlotProps", "ownerState", "skipResolvingSlotProps"];
52
+ function fe(n) {
53
+ var o;
54
+ const {
55
+ elementType: r,
56
+ externalSlotProps: t,
57
+ ownerState: a,
58
+ skipResolvingSlotProps: s = !1
59
+ } = n, i = G(n, Ve), l = s ? {} : Me(t, a), {
60
+ props: u,
61
+ internalRef: b
62
+ } = Fe(g({}, i, {
63
+ externalSlotProps: l
64
+ })), h = K(b, l == null ? void 0 : l.ref, (o = n.additionalProps) == null ? void 0 : o.ref);
65
+ return De(r, g({}, u, {
66
+ ref: h
67
+ }), a);
68
+ }
69
+ function te(n) {
70
+ if (parseInt(d.version, 10) >= 19) {
71
+ var o;
72
+ return (n == null || (o = n.props) == null ? void 0 : o.ref) || null;
73
+ }
74
+ return (n == null ? void 0 : n.ref) || null;
75
+ }
76
+ function Ke(n) {
77
+ const o = $(n);
78
+ return o.body === n ? oe(n).innerWidth > o.documentElement.clientWidth : n.scrollHeight > n.clientHeight;
79
+ }
80
+ function V(n, o) {
81
+ o ? n.setAttribute("aria-hidden", "true") : n.removeAttribute("aria-hidden");
82
+ }
83
+ function me(n) {
84
+ return parseInt(oe(n).getComputedStyle(n).paddingRight, 10) || 0;
85
+ }
86
+ function qe(n) {
87
+ const r = ["TEMPLATE", "SCRIPT", "STYLE", "LINK", "MAP", "META", "NOSCRIPT", "PICTURE", "COL", "COLGROUP", "PARAM", "SLOT", "SOURCE", "TRACK"].indexOf(n.tagName) !== -1, t = n.tagName === "INPUT" && n.getAttribute("type") === "hidden";
88
+ return r || t;
89
+ }
90
+ function be(n, o, r, t, a) {
91
+ const s = [o, r, ...t];
92
+ [].forEach.call(n.children, (i) => {
93
+ const l = s.indexOf(i) === -1, u = !qe(i);
94
+ l && u && V(i, a);
95
+ });
96
+ }
97
+ function Z(n, o) {
98
+ let r = -1;
99
+ return n.some((t, a) => o(t) ? (r = a, !0) : !1), r;
100
+ }
101
+ function We(n, o) {
102
+ const r = [], t = n.container;
103
+ if (!o.disableScrollLock) {
104
+ if (Ke(t)) {
105
+ const i = Ue($(t));
106
+ r.push({
107
+ value: t.style.paddingRight,
108
+ property: "padding-right",
109
+ el: t
110
+ }), t.style.paddingRight = `${me(t) + i}px`;
111
+ const l = $(t).querySelectorAll(".mui-fixed");
112
+ [].forEach.call(l, (u) => {
113
+ r.push({
114
+ value: u.style.paddingRight,
115
+ property: "padding-right",
116
+ el: u
117
+ }), u.style.paddingRight = `${me(u) + i}px`;
118
+ });
119
+ }
120
+ let s;
121
+ if (t.parentNode instanceof DocumentFragment)
122
+ s = $(t).body;
123
+ else {
124
+ const i = t.parentElement, l = oe(t);
125
+ s = (i == null ? void 0 : i.nodeName) === "HTML" && l.getComputedStyle(i).overflowY === "scroll" ? i : t;
126
+ }
127
+ r.push({
128
+ value: s.style.overflow,
129
+ property: "overflow",
130
+ el: s
131
+ }, {
132
+ value: s.style.overflowX,
133
+ property: "overflow-x",
134
+ el: s
135
+ }, {
136
+ value: s.style.overflowY,
137
+ property: "overflow-y",
138
+ el: s
139
+ }), s.style.overflow = "hidden";
140
+ }
141
+ return () => {
142
+ r.forEach(({
143
+ value: s,
144
+ el: i,
145
+ property: l
146
+ }) => {
147
+ s ? i.style.setProperty(l, s) : i.style.removeProperty(l);
148
+ });
149
+ };
150
+ }
151
+ function ze(n) {
152
+ const o = [];
153
+ return [].forEach.call(n.children, (r) => {
154
+ r.getAttribute("aria-hidden") === "true" && o.push(r);
155
+ }), o;
156
+ }
157
+ class Ye {
158
+ constructor() {
159
+ this.containers = void 0, this.modals = void 0, this.modals = [], this.containers = [];
160
+ }
161
+ add(o, r) {
162
+ let t = this.modals.indexOf(o);
163
+ if (t !== -1)
164
+ return t;
165
+ t = this.modals.length, this.modals.push(o), o.modalRef && V(o.modalRef, !1);
166
+ const a = ze(r);
167
+ be(r, o.mount, o.modalRef, a, !0);
168
+ const s = Z(this.containers, (i) => i.container === r);
169
+ return s !== -1 ? (this.containers[s].modals.push(o), t) : (this.containers.push({
170
+ modals: [o],
171
+ container: r,
172
+ restore: null,
173
+ hiddenSiblings: a
174
+ }), t);
175
+ }
176
+ mount(o, r) {
177
+ const t = Z(this.containers, (s) => s.modals.indexOf(o) !== -1), a = this.containers[t];
178
+ a.restore || (a.restore = We(a, r));
179
+ }
180
+ remove(o, r = !0) {
181
+ const t = this.modals.indexOf(o);
182
+ if (t === -1)
183
+ return t;
184
+ const a = Z(this.containers, (i) => i.modals.indexOf(o) !== -1), s = this.containers[a];
185
+ if (s.modals.splice(s.modals.indexOf(o), 1), this.modals.splice(t, 1), s.modals.length === 0)
186
+ s.restore && s.restore(), o.modalRef && V(o.modalRef, r), be(s.container, o.mount, o.modalRef, s.hiddenSiblings, !1), this.containers.splice(a, 1);
187
+ else {
188
+ const i = s.modals[s.modals.length - 1];
189
+ i.modalRef && V(i.modalRef, !1);
190
+ }
191
+ return t;
192
+ }
193
+ isTopModal(o) {
194
+ return this.modals.length > 0 && this.modals[this.modals.length - 1] === o;
195
+ }
196
+ }
197
+ const Ge = ["input", "select", "textarea", "a[href]", "button", "[tabindex]", "audio[controls]", "video[controls]", '[contenteditable]:not([contenteditable="false"])'].join(",");
198
+ function Xe(n) {
199
+ const o = parseInt(n.getAttribute("tabindex") || "", 10);
200
+ return Number.isNaN(o) ? n.contentEditable === "true" || (n.nodeName === "AUDIO" || n.nodeName === "VIDEO" || n.nodeName === "DETAILS") && n.getAttribute("tabindex") === null ? 0 : n.tabIndex : o;
201
+ }
202
+ function Je(n) {
203
+ if (n.tagName !== "INPUT" || n.type !== "radio" || !n.name)
204
+ return !1;
205
+ const o = (t) => n.ownerDocument.querySelector(`input[type="radio"]${t}`);
206
+ let r = o(`[name="${n.name}"]:checked`);
207
+ return r || (r = o(`[name="${n.name}"]`)), r !== n;
208
+ }
209
+ function Qe(n) {
210
+ return !(n.disabled || n.tagName === "INPUT" && n.type === "hidden" || Je(n));
211
+ }
212
+ function Ze(n) {
213
+ const o = [], r = [];
214
+ return Array.from(n.querySelectorAll(Ge)).forEach((t, a) => {
215
+ const s = Xe(t);
216
+ s === -1 || !Qe(t) || (s === 0 ? o.push(t) : r.push({
217
+ documentOrder: a,
218
+ tabIndex: s,
219
+ node: t
220
+ }));
221
+ }), r.sort((t, a) => t.tabIndex === a.tabIndex ? t.documentOrder - a.documentOrder : t.tabIndex - a.tabIndex).map((t) => t.node).concat(o);
222
+ }
223
+ function en() {
224
+ return !0;
225
+ }
226
+ function z(n) {
227
+ const {
228
+ children: o,
229
+ disableAutoFocus: r = !1,
230
+ disableEnforceFocus: t = !1,
231
+ disableRestoreFocus: a = !1,
232
+ getTabbable: s = Ze,
233
+ isEnabled: i = en,
234
+ open: l
235
+ } = n, u = d.useRef(!1), b = d.useRef(null), h = d.useRef(null), y = d.useRef(null), R = d.useRef(null), x = d.useRef(!1), p = d.useRef(null), M = K(te(o), p), N = d.useRef(null);
236
+ d.useEffect(() => {
237
+ !l || !p.current || (x.current = !r);
238
+ }, [r, l]), d.useEffect(() => {
239
+ if (!l || !p.current)
240
+ return;
241
+ const c = $(p.current);
242
+ return p.current.contains(c.activeElement) || (p.current.hasAttribute("tabIndex") || (process.env.NODE_ENV !== "production" && console.error(["MUI: The modal content node does not accept focus.", 'For the benefit of assistive technologies, the tabIndex of the node is being set to "-1".'].join(`
243
+ `)), p.current.setAttribute("tabIndex", "-1")), x.current && p.current.focus()), () => {
244
+ a || (y.current && y.current.focus && (u.current = !0, y.current.focus()), y.current = null);
245
+ };
246
+ }, [l]), d.useEffect(() => {
247
+ if (!l || !p.current)
248
+ return;
249
+ const c = $(p.current), T = (P) => {
250
+ N.current = P, !(t || !i() || P.key !== "Tab") && c.activeElement === p.current && P.shiftKey && (u.current = !0, h.current && h.current.focus());
251
+ }, v = () => {
252
+ const P = p.current;
253
+ if (P === null)
254
+ return;
255
+ if (!c.hasFocus() || !i() || u.current) {
256
+ u.current = !1;
257
+ return;
258
+ }
259
+ if (P.contains(c.activeElement) || t && c.activeElement !== b.current && c.activeElement !== h.current)
260
+ return;
261
+ if (c.activeElement !== R.current)
262
+ R.current = null;
263
+ else if (R.current !== null)
264
+ return;
265
+ if (!x.current)
266
+ return;
267
+ let O = [];
268
+ if ((c.activeElement === b.current || c.activeElement === h.current) && (O = s(p.current)), O.length > 0) {
269
+ var A, w;
270
+ const _ = !!((A = N.current) != null && A.shiftKey && ((w = N.current) == null ? void 0 : w.key) === "Tab"), B = O[0], L = O[O.length - 1];
271
+ typeof B != "string" && typeof L != "string" && (_ ? L.focus() : B.focus());
272
+ } else
273
+ P.focus();
274
+ };
275
+ c.addEventListener("focusin", v), c.addEventListener("keydown", T, !0);
276
+ const k = setInterval(() => {
277
+ c.activeElement && c.activeElement.tagName === "BODY" && v();
278
+ }, 50);
279
+ return () => {
280
+ clearInterval(k), c.removeEventListener("focusin", v), c.removeEventListener("keydown", T, !0);
281
+ };
282
+ }, [r, t, a, i, l, s]);
283
+ const S = (c) => {
284
+ y.current === null && (y.current = c.relatedTarget), x.current = !0, R.current = c.target;
285
+ const T = o.props.onFocus;
286
+ T && T(c);
287
+ }, C = (c) => {
288
+ y.current === null && (y.current = c.relatedTarget), x.current = !0;
289
+ };
290
+ return /* @__PURE__ */ ve(d.Fragment, {
291
+ children: [/* @__PURE__ */ D("div", {
292
+ tabIndex: l ? 0 : -1,
293
+ onFocus: C,
294
+ ref: b,
295
+ "data-testid": "sentinelStart"
296
+ }), /* @__PURE__ */ d.cloneElement(o, {
297
+ ref: M,
298
+ onFocus: S
299
+ }), /* @__PURE__ */ D("div", {
300
+ tabIndex: l ? 0 : -1,
301
+ onFocus: C,
302
+ ref: h,
303
+ "data-testid": "sentinelEnd"
304
+ })]
305
+ });
306
+ }
307
+ process.env.NODE_ENV !== "production" && (z.propTypes = {
308
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
309
+ // │ These PropTypes are generated from the TypeScript type definitions. │
310
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
311
+ // └─────────────────────────────────────────────────────────────────────┘
312
+ /**
313
+ * A single child content element.
314
+ */
315
+ children: X,
316
+ /**
317
+ * If `true`, the focus trap will not automatically shift focus to itself when it opens, and
318
+ * replace it to the last focused element when it closes.
319
+ * This also works correctly with any focus trap children that have the `disableAutoFocus` prop.
320
+ *
321
+ * Generally this should never be set to `true` as it makes the focus trap less
322
+ * accessible to assistive technologies, like screen readers.
323
+ * @default false
324
+ */
325
+ disableAutoFocus: e.bool,
326
+ /**
327
+ * If `true`, the focus trap will not prevent focus from leaving the focus trap while open.
328
+ *
329
+ * Generally this should never be set to `true` as it makes the focus trap less
330
+ * accessible to assistive technologies, like screen readers.
331
+ * @default false
332
+ */
333
+ disableEnforceFocus: e.bool,
334
+ /**
335
+ * If `true`, the focus trap will not restore focus to previously focused element once
336
+ * focus trap is hidden or unmounted.
337
+ * @default false
338
+ */
339
+ disableRestoreFocus: e.bool,
340
+ /**
341
+ * Returns an array of ordered tabbable nodes (i.e. in tab order) within the root.
342
+ * For instance, you can provide the "tabbable" npm dependency.
343
+ * @param {HTMLElement} root
344
+ */
345
+ getTabbable: e.func,
346
+ /**
347
+ * This prop extends the `open` prop.
348
+ * It allows to toggle the open state without having to wait for a rerender when changing the `open` prop.
349
+ * This prop should be memoized.
350
+ * It can be used to support multiple focus trap mounted at the same time.
351
+ * @default function defaultIsEnabled(): boolean {
352
+ * return true;
353
+ * }
354
+ */
355
+ isEnabled: e.func,
356
+ /**
357
+ * If `true`, focus is locked.
358
+ */
359
+ open: e.bool.isRequired
360
+ });
361
+ process.env.NODE_ENV !== "production" && (z.propTypes = Pe(z.propTypes));
362
+ function nn(n) {
363
+ return typeof n == "function" ? n() : n;
364
+ }
365
+ const Y = /* @__PURE__ */ d.forwardRef(function(o, r) {
366
+ const {
367
+ children: t,
368
+ container: a,
369
+ disablePortal: s = !1
370
+ } = o, [i, l] = d.useState(null), u = K(/* @__PURE__ */ d.isValidElement(t) ? te(t) : null, r);
371
+ if (le(() => {
372
+ s || l(nn(a) || document.body);
373
+ }, [a, s]), le(() => {
374
+ if (i && !s)
375
+ return ce(r, i), () => {
376
+ ce(r, null);
377
+ };
378
+ }, [r, i, s]), s) {
379
+ if (/* @__PURE__ */ d.isValidElement(t)) {
380
+ const b = {
381
+ ref: u
382
+ };
383
+ return /* @__PURE__ */ d.cloneElement(t, b);
384
+ }
385
+ return /* @__PURE__ */ D(d.Fragment, {
386
+ children: t
387
+ });
388
+ }
389
+ return /* @__PURE__ */ D(d.Fragment, {
390
+ children: i && /* @__PURE__ */ $e.createPortal(t, i)
391
+ });
392
+ });
393
+ process.env.NODE_ENV !== "production" && (Y.propTypes = {
394
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
395
+ // │ These PropTypes are generated from the TypeScript type definitions. │
396
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
397
+ // └─────────────────────────────────────────────────────────────────────┘
398
+ /**
399
+ * The children to render into the `container`.
400
+ */
401
+ children: e.node,
402
+ /**
403
+ * An HTML element or function that returns one.
404
+ * The `container` will have the portal children appended to it.
405
+ *
406
+ * You can also provide a callback, which is called in a React layout effect.
407
+ * This lets you set the container from a ref, and also makes server-side rendering possible.
408
+ *
409
+ * By default, it uses the body of the top-level document object,
410
+ * so it's simply `document.body` most of the time.
411
+ */
412
+ container: e.oneOfType([Re, e.func]),
413
+ /**
414
+ * The `children` will be under the DOM hierarchy of the parent component.
415
+ * @default false
416
+ */
417
+ disablePortal: e.bool
418
+ });
419
+ process.env.NODE_ENV !== "production" && (Y.propTypes = Pe(Y.propTypes));
420
+ const on = ["addEndListener", "appear", "children", "easing", "in", "onEnter", "onEntered", "onEntering", "onExit", "onExited", "onExiting", "style", "timeout", "TransitionComponent"], tn = {
421
+ entering: {
422
+ opacity: 1
423
+ },
424
+ entered: {
425
+ opacity: 1
426
+ }
427
+ }, ke = /* @__PURE__ */ d.forwardRef(function(o, r) {
428
+ const t = Ae(), a = {
429
+ enter: t.transitions.duration.enteringScreen,
430
+ exit: t.transitions.duration.leavingScreen
431
+ }, {
432
+ addEndListener: s,
433
+ appear: i = !0,
434
+ children: l,
435
+ easing: u,
436
+ in: b,
437
+ onEnter: h,
438
+ onEntered: y,
439
+ onEntering: R,
440
+ onExit: x,
441
+ onExited: p,
442
+ onExiting: M,
443
+ style: N,
444
+ timeout: S = a,
445
+ // eslint-disable-next-line react/prop-types
446
+ TransitionComponent: C = Be
447
+ } = o, c = G(o, on), T = d.useRef(null), v = K(T, te(l), r), k = (m) => (I) => {
448
+ if (m) {
449
+ const f = T.current;
450
+ I === void 0 ? m(f) : m(f, I);
451
+ }
452
+ }, P = k(R), O = k((m, I) => {
453
+ Le(m);
454
+ const f = ue({
455
+ style: N,
456
+ timeout: S,
457
+ easing: u
458
+ }, {
459
+ mode: "enter"
460
+ });
461
+ m.style.webkitTransition = t.transitions.create("opacity", f), m.style.transition = t.transitions.create("opacity", f), h && h(m, I);
462
+ }), A = k(y), w = k(M), _ = k((m) => {
463
+ const I = ue({
464
+ style: N,
465
+ timeout: S,
466
+ easing: u
467
+ }, {
468
+ mode: "exit"
469
+ });
470
+ m.style.webkitTransition = t.transitions.create("opacity", I), m.style.transition = t.transitions.create("opacity", I), x && x(m);
471
+ }), B = k(p);
472
+ return /* @__PURE__ */ D(C, g({
473
+ appear: i,
474
+ in: b,
475
+ nodeRef: T,
476
+ onEnter: O,
477
+ onEntered: A,
478
+ onEntering: P,
479
+ onExit: _,
480
+ onExited: B,
481
+ onExiting: w,
482
+ addEndListener: (m) => {
483
+ s && s(T.current, m);
484
+ },
485
+ timeout: S
486
+ }, c, {
487
+ children: (m, I) => /* @__PURE__ */ d.cloneElement(l, g({
488
+ style: g({
489
+ opacity: 0,
490
+ visibility: m === "exited" && !b ? "hidden" : void 0
491
+ }, tn[m], N, l.props.style),
492
+ ref: v
493
+ }, I))
494
+ }));
495
+ });
496
+ process.env.NODE_ENV !== "production" && (ke.propTypes = {
497
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
498
+ // │ These PropTypes are generated from the TypeScript type definitions. │
499
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
500
+ // └─────────────────────────────────────────────────────────────────────┘
501
+ /**
502
+ * Add a custom transition end trigger. Called with the transitioning DOM
503
+ * node and a done callback. Allows for more fine grained transition end
504
+ * logic. Note: Timeouts are still used as a fallback if provided.
505
+ */
506
+ addEndListener: e.func,
507
+ /**
508
+ * Perform the enter transition when it first mounts if `in` is also `true`.
509
+ * Set this to `false` to disable this behavior.
510
+ * @default true
511
+ */
512
+ appear: e.bool,
513
+ /**
514
+ * A single child content element.
515
+ */
516
+ children: X.isRequired,
517
+ /**
518
+ * The transition timing function.
519
+ * You may specify a single easing or a object containing enter and exit values.
520
+ */
521
+ easing: e.oneOfType([e.shape({
522
+ enter: e.string,
523
+ exit: e.string
524
+ }), e.string]),
525
+ /**
526
+ * If `true`, the component will transition in.
527
+ */
528
+ in: e.bool,
529
+ /**
530
+ * @ignore
531
+ */
532
+ onEnter: e.func,
533
+ /**
534
+ * @ignore
535
+ */
536
+ onEntered: e.func,
537
+ /**
538
+ * @ignore
539
+ */
540
+ onEntering: e.func,
541
+ /**
542
+ * @ignore
543
+ */
544
+ onExit: e.func,
545
+ /**
546
+ * @ignore
547
+ */
548
+ onExited: e.func,
549
+ /**
550
+ * @ignore
551
+ */
552
+ onExiting: e.func,
553
+ /**
554
+ * @ignore
555
+ */
556
+ style: e.object,
557
+ /**
558
+ * The duration for the transition, in milliseconds.
559
+ * You may specify a single timeout for all transitions, or individually with an object.
560
+ * @default {
561
+ * enter: theme.transitions.duration.enteringScreen,
562
+ * exit: theme.transitions.duration.leavingScreen,
563
+ * }
564
+ */
565
+ timeout: e.oneOfType([e.number, e.shape({
566
+ appear: e.number,
567
+ enter: e.number,
568
+ exit: e.number
569
+ })])
570
+ });
571
+ function rn(n) {
572
+ return Ee("MuiBackdrop", n);
573
+ }
574
+ he("MuiBackdrop", ["root", "invisible"]);
575
+ const sn = ["children", "className", "component", "components", "componentsProps", "invisible", "open", "slotProps", "slots", "TransitionComponent", "transitionDuration"], an = (n) => {
576
+ const {
577
+ classes: o,
578
+ invisible: r
579
+ } = n;
580
+ return ye({
581
+ root: ["root", r && "invisible"]
582
+ }, rn, o);
583
+ }, ln = ne("div", {
584
+ name: "MuiBackdrop",
585
+ slot: "Root",
586
+ overridesResolver: (n, o) => {
587
+ const {
588
+ ownerState: r
589
+ } = n;
590
+ return [o.root, r.invisible && o.invisible];
591
+ }
592
+ })(({
593
+ ownerState: n
594
+ }) => g({
595
+ position: "fixed",
596
+ display: "flex",
597
+ alignItems: "center",
598
+ justifyContent: "center",
599
+ right: 0,
600
+ bottom: 0,
601
+ top: 0,
602
+ left: 0,
603
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
604
+ WebkitTapHighlightColor: "transparent"
605
+ }, n.invisible && {
606
+ backgroundColor: "transparent"
607
+ })), Ne = /* @__PURE__ */ d.forwardRef(function(o, r) {
608
+ var t, a, s;
609
+ const i = ge({
610
+ props: o,
611
+ name: "MuiBackdrop"
612
+ }), {
613
+ children: l,
614
+ className: u,
615
+ component: b = "div",
616
+ components: h = {},
617
+ componentsProps: y = {},
618
+ invisible: R = !1,
619
+ open: x,
620
+ slotProps: p = {},
621
+ slots: M = {},
622
+ TransitionComponent: N = ke,
623
+ transitionDuration: S
624
+ } = i, C = G(i, sn), c = g({}, i, {
625
+ component: b,
626
+ invisible: R
627
+ }), T = an(c), v = (t = p.root) != null ? t : y.root;
628
+ return /* @__PURE__ */ D(N, g({
629
+ in: x,
630
+ timeout: S
631
+ }, C, {
632
+ children: /* @__PURE__ */ D(ln, g({
633
+ "aria-hidden": !0
634
+ }, v, {
635
+ as: (a = (s = M.root) != null ? s : h.Root) != null ? a : b,
636
+ className: ee(T.root, u, v == null ? void 0 : v.className),
637
+ ownerState: g({}, c, v == null ? void 0 : v.ownerState),
638
+ classes: T,
639
+ ref: r,
640
+ children: l
641
+ }))
642
+ }));
643
+ });
644
+ process.env.NODE_ENV !== "production" && (Ne.propTypes = {
645
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
646
+ // │ These PropTypes are generated from the TypeScript type definitions. │
647
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
648
+ // └─────────────────────────────────────────────────────────────────────┘
649
+ /**
650
+ * The content of the component.
651
+ */
652
+ children: e.node,
653
+ /**
654
+ * Override or extend the styles applied to the component.
655
+ */
656
+ classes: e.object,
657
+ /**
658
+ * @ignore
659
+ */
660
+ className: e.string,
661
+ /**
662
+ * The component used for the root node.
663
+ * Either a string to use a HTML element or a component.
664
+ */
665
+ component: e.elementType,
666
+ /**
667
+ * The components used for each slot inside.
668
+ *
669
+ * This prop is an alias for the `slots` prop.
670
+ * It's recommended to use the `slots` prop instead.
671
+ *
672
+ * @default {}
673
+ */
674
+ components: e.shape({
675
+ Root: e.elementType
676
+ }),
677
+ /**
678
+ * The extra props for the slot components.
679
+ * You can override the existing props or add new ones.
680
+ *
681
+ * This prop is an alias for the `slotProps` prop.
682
+ * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.
683
+ *
684
+ * @default {}
685
+ */
686
+ componentsProps: e.shape({
687
+ root: e.object
688
+ }),
689
+ /**
690
+ * If `true`, the backdrop is invisible.
691
+ * It can be used when rendering a popover or a custom select component.
692
+ * @default false
693
+ */
694
+ invisible: e.bool,
695
+ /**
696
+ * If `true`, the component is shown.
697
+ */
698
+ open: e.bool.isRequired,
699
+ /**
700
+ * The extra props for the slot components.
701
+ * You can override the existing props or add new ones.
702
+ *
703
+ * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
704
+ *
705
+ * @default {}
706
+ */
707
+ slotProps: e.shape({
708
+ root: e.object
709
+ }),
710
+ /**
711
+ * The components used for each slot inside.
712
+ *
713
+ * This prop is an alias for the `components` prop, which will be deprecated in the future.
714
+ *
715
+ * @default {}
716
+ */
717
+ slots: e.shape({
718
+ root: e.elementType
719
+ }),
720
+ /**
721
+ * The system prop that allows defining system overrides as well as additional CSS styles.
722
+ */
723
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
724
+ /**
725
+ * The component used for the transition.
726
+ * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
727
+ * @default Fade
728
+ */
729
+ TransitionComponent: e.elementType,
730
+ /**
731
+ * The duration for the transition, in milliseconds.
732
+ * You may specify a single timeout for all transitions, or individually with an object.
733
+ */
734
+ transitionDuration: e.oneOfType([e.number, e.shape({
735
+ appear: e.number,
736
+ enter: e.number,
737
+ exit: e.number
738
+ })])
739
+ });
740
+ function cn(n) {
741
+ return typeof n == "function" ? n() : n;
742
+ }
743
+ function dn(n) {
744
+ return n ? n.props.hasOwnProperty("in") : !1;
745
+ }
746
+ const un = new Ye();
747
+ function pn(n) {
748
+ const {
749
+ container: o,
750
+ disableEscapeKeyDown: r = !1,
751
+ disableScrollLock: t = !1,
752
+ // @ts-ignore internal logic - Base UI supports the manager as a prop too
753
+ manager: a = un,
754
+ closeAfterTransition: s = !1,
755
+ onTransitionEnter: i,
756
+ onTransitionExited: l,
757
+ children: u,
758
+ onClose: b,
759
+ open: h,
760
+ rootRef: y
761
+ } = n, R = d.useRef({}), x = d.useRef(null), p = d.useRef(null), M = K(p, y), [N, S] = d.useState(!h), C = dn(u);
762
+ let c = !0;
763
+ (n["aria-hidden"] === "false" || n["aria-hidden"] === !1) && (c = !1);
764
+ const T = () => $(x.current), v = () => (R.current.modalRef = p.current, R.current.mount = x.current, R.current), k = () => {
765
+ a.mount(v(), {
766
+ disableScrollLock: t
767
+ }), p.current && (p.current.scrollTop = 0);
768
+ }, P = de(() => {
769
+ const f = cn(o) || T().body;
770
+ a.add(v(), f), p.current && k();
771
+ }), O = d.useCallback(() => a.isTopModal(v()), [a]), A = de((f) => {
772
+ x.current = f, f && (h && O() ? k() : p.current && V(p.current, c));
773
+ }), w = d.useCallback(() => {
774
+ a.remove(v(), c);
775
+ }, [c, a]);
776
+ d.useEffect(() => () => {
777
+ w();
778
+ }, [w]), d.useEffect(() => {
779
+ h ? P() : (!C || !s) && w();
780
+ }, [h, w, C, s, P]);
781
+ const _ = (f) => (E) => {
782
+ var F;
783
+ (F = f.onKeyDown) == null || F.call(f, E), !(E.key !== "Escape" || E.which === 229 || // Wait until IME is settled.
784
+ !O()) && (r || (E.stopPropagation(), b && b(E, "escapeKeyDown")));
785
+ }, B = (f) => (E) => {
786
+ var F;
787
+ (F = f.onClick) == null || F.call(f, E), E.target === E.currentTarget && b && b(E, "backdropClick");
788
+ };
789
+ return {
790
+ getRootProps: (f = {}) => {
791
+ const E = _e(n);
792
+ delete E.onTransitionEnter, delete E.onTransitionExited;
793
+ const F = g({}, E, f);
794
+ return g({
795
+ role: "presentation"
796
+ }, F, {
797
+ onKeyDown: _(F),
798
+ ref: M
799
+ });
800
+ },
801
+ getBackdropProps: (f = {}) => {
802
+ const E = f;
803
+ return g({
804
+ "aria-hidden": !0
805
+ }, E, {
806
+ onClick: B(E),
807
+ open: h
808
+ });
809
+ },
810
+ getTransitionProps: () => {
811
+ const f = () => {
812
+ S(!1), i && i();
813
+ }, E = () => {
814
+ S(!0), l && l(), s && w();
815
+ };
816
+ return {
817
+ onEnter: pe(f, u == null ? void 0 : u.props.onEnter),
818
+ onExited: pe(E, u == null ? void 0 : u.props.onExited)
819
+ };
820
+ },
821
+ rootRef: M,
822
+ portalRef: A,
823
+ isTopModal: O,
824
+ exited: N,
825
+ hasTransition: C
826
+ };
827
+ }
828
+ function fn(n) {
829
+ return Ee("MuiModal", n);
830
+ }
831
+ he("MuiModal", ["root", "hidden", "backdrop"]);
832
+ const mn = ["BackdropComponent", "BackdropProps", "classes", "className", "closeAfterTransition", "children", "container", "component", "components", "componentsProps", "disableAutoFocus", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "disableScrollLock", "hideBackdrop", "keepMounted", "onBackdropClick", "onClose", "onTransitionEnter", "onTransitionExited", "open", "slotProps", "slots", "theme"], bn = (n) => {
833
+ const {
834
+ open: o,
835
+ exited: r,
836
+ classes: t
837
+ } = n;
838
+ return ye({
839
+ root: ["root", !o && r && "hidden"],
840
+ backdrop: ["backdrop"]
841
+ }, fn, t);
842
+ }, hn = ne("div", {
843
+ name: "MuiModal",
844
+ slot: "Root",
845
+ overridesResolver: (n, o) => {
846
+ const {
847
+ ownerState: r
848
+ } = n;
849
+ return [o.root, !r.open && r.exited && o.hidden];
850
+ }
851
+ })(({
852
+ theme: n,
853
+ ownerState: o
854
+ }) => g({
855
+ position: "fixed",
856
+ zIndex: (n.vars || n).zIndex.modal,
857
+ right: 0,
858
+ bottom: 0,
859
+ top: 0,
860
+ left: 0
861
+ }, !o.open && o.exited && {
862
+ visibility: "hidden"
863
+ })), En = ne(Ne, {
864
+ name: "MuiModal",
865
+ slot: "Backdrop",
866
+ overridesResolver: (n, o) => o.backdrop
867
+ })({
868
+ zIndex: -1
869
+ }), gn = /* @__PURE__ */ d.forwardRef(function(o, r) {
870
+ var t, a, s, i, l, u;
871
+ const b = ge({
872
+ name: "MuiModal",
873
+ props: o
874
+ }), {
875
+ BackdropComponent: h = En,
876
+ BackdropProps: y,
877
+ className: R,
878
+ closeAfterTransition: x = !1,
879
+ children: p,
880
+ container: M,
881
+ component: N,
882
+ components: S = {},
883
+ componentsProps: C = {},
884
+ disableAutoFocus: c = !1,
885
+ disableEnforceFocus: T = !1,
886
+ disableEscapeKeyDown: v = !1,
887
+ disablePortal: k = !1,
888
+ disableRestoreFocus: P = !1,
889
+ disableScrollLock: O = !1,
890
+ hideBackdrop: A = !1,
891
+ keepMounted: w = !1,
892
+ onBackdropClick: _,
893
+ open: B,
894
+ slotProps: L,
895
+ slots: m
896
+ // eslint-disable-next-line react/prop-types
897
+ } = b, I = G(b, mn), f = g({}, b, {
898
+ closeAfterTransition: x,
899
+ disableAutoFocus: c,
900
+ disableEnforceFocus: T,
901
+ disableEscapeKeyDown: v,
902
+ disablePortal: k,
903
+ disableRestoreFocus: P,
904
+ disableScrollLock: O,
905
+ hideBackdrop: A,
906
+ keepMounted: w
907
+ }), {
908
+ getRootProps: E,
909
+ getBackdropProps: F,
910
+ getTransitionProps: Se,
911
+ portalRef: Ce,
912
+ isTopModal: Oe,
913
+ exited: re,
914
+ hasTransition: se
915
+ } = pn(g({}, f, {
916
+ rootRef: r
917
+ })), U = g({}, f, {
918
+ exited: re
919
+ }), j = bn(U), q = {};
920
+ if (p.props.tabIndex === void 0 && (q.tabIndex = "-1"), se) {
921
+ const {
922
+ onEnter: H,
923
+ onExited: W
924
+ } = Se();
925
+ q.onEnter = H, q.onExited = W;
926
+ }
927
+ const ie = (t = (a = m == null ? void 0 : m.root) != null ? a : S.Root) != null ? t : hn, ae = (s = (i = m == null ? void 0 : m.backdrop) != null ? i : S.Backdrop) != null ? s : h, J = (l = L == null ? void 0 : L.root) != null ? l : C.root, Q = (u = L == null ? void 0 : L.backdrop) != null ? u : C.backdrop, we = fe({
928
+ elementType: ie,
929
+ externalSlotProps: J,
930
+ externalForwardedProps: I,
931
+ getSlotProps: E,
932
+ additionalProps: {
933
+ ref: r,
934
+ as: N
935
+ },
936
+ ownerState: U,
937
+ className: ee(R, J == null ? void 0 : J.className, j == null ? void 0 : j.root, !U.open && U.exited && (j == null ? void 0 : j.hidden))
938
+ }), Ie = fe({
939
+ elementType: ae,
940
+ externalSlotProps: Q,
941
+ additionalProps: y,
942
+ getSlotProps: (H) => F(g({}, H, {
943
+ onClick: (W) => {
944
+ _ && _(W), H != null && H.onClick && H.onClick(W);
945
+ }
946
+ })),
947
+ className: ee(Q == null ? void 0 : Q.className, y == null ? void 0 : y.className, j == null ? void 0 : j.backdrop),
948
+ ownerState: U
949
+ });
950
+ return !w && !B && (!se || re) ? null : /* @__PURE__ */ D(Y, {
951
+ ref: Ce,
952
+ container: M,
953
+ disablePortal: k,
954
+ children: /* @__PURE__ */ ve(ie, g({}, we, {
955
+ children: [!A && h ? /* @__PURE__ */ D(ae, g({}, Ie)) : null, /* @__PURE__ */ D(z, {
956
+ disableEnforceFocus: T,
957
+ disableAutoFocus: c,
958
+ disableRestoreFocus: P,
959
+ isEnabled: Oe,
960
+ open: B,
961
+ children: /* @__PURE__ */ d.cloneElement(p, q)
962
+ })]
963
+ }))
964
+ });
965
+ });
966
+ process.env.NODE_ENV !== "production" && (gn.propTypes = {
967
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
968
+ // │ These PropTypes are generated from the TypeScript type definitions. │
969
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
970
+ // └─────────────────────────────────────────────────────────────────────┘
971
+ /**
972
+ * A backdrop component. This prop enables custom backdrop rendering.
973
+ * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
974
+ * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.
975
+ * @default styled(Backdrop, {
976
+ * name: 'MuiModal',
977
+ * slot: 'Backdrop',
978
+ * overridesResolver: (props, styles) => {
979
+ * return styles.backdrop;
980
+ * },
981
+ * })({
982
+ * zIndex: -1,
983
+ * })
984
+ */
985
+ BackdropComponent: e.elementType,
986
+ /**
987
+ * Props applied to the [`Backdrop`](/material-ui/api/backdrop/) element.
988
+ * @deprecated Use `slotProps.backdrop` instead.
989
+ */
990
+ BackdropProps: e.object,
991
+ /**
992
+ * A single child content element.
993
+ */
994
+ children: X.isRequired,
995
+ /**
996
+ * Override or extend the styles applied to the component.
997
+ */
998
+ classes: e.object,
999
+ /**
1000
+ * @ignore
1001
+ */
1002
+ className: e.string,
1003
+ /**
1004
+ * When set to true the Modal waits until a nested Transition is completed before closing.
1005
+ * @default false
1006
+ */
1007
+ closeAfterTransition: e.bool,
1008
+ /**
1009
+ * The component used for the root node.
1010
+ * Either a string to use a HTML element or a component.
1011
+ */
1012
+ component: e.elementType,
1013
+ /**
1014
+ * The components used for each slot inside.
1015
+ *
1016
+ * This prop is an alias for the `slots` prop.
1017
+ * It's recommended to use the `slots` prop instead.
1018
+ *
1019
+ * @default {}
1020
+ */
1021
+ components: e.shape({
1022
+ Backdrop: e.elementType,
1023
+ Root: e.elementType
1024
+ }),
1025
+ /**
1026
+ * The extra props for the slot components.
1027
+ * You can override the existing props or add new ones.
1028
+ *
1029
+ * This prop is an alias for the `slotProps` prop.
1030
+ * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.
1031
+ *
1032
+ * @default {}
1033
+ */
1034
+ componentsProps: e.shape({
1035
+ backdrop: e.oneOfType([e.func, e.object]),
1036
+ root: e.oneOfType([e.func, e.object])
1037
+ }),
1038
+ /**
1039
+ * An HTML element or function that returns one.
1040
+ * The `container` will have the portal children appended to it.
1041
+ *
1042
+ * You can also provide a callback, which is called in a React layout effect.
1043
+ * This lets you set the container from a ref, and also makes server-side rendering possible.
1044
+ *
1045
+ * By default, it uses the body of the top-level document object,
1046
+ * so it's simply `document.body` most of the time.
1047
+ */
1048
+ container: e.oneOfType([Re, e.func]),
1049
+ /**
1050
+ * If `true`, the modal will not automatically shift focus to itself when it opens, and
1051
+ * replace it to the last focused element when it closes.
1052
+ * This also works correctly with any modal children that have the `disableAutoFocus` prop.
1053
+ *
1054
+ * Generally this should never be set to `true` as it makes the modal less
1055
+ * accessible to assistive technologies, like screen readers.
1056
+ * @default false
1057
+ */
1058
+ disableAutoFocus: e.bool,
1059
+ /**
1060
+ * If `true`, the modal will not prevent focus from leaving the modal while open.
1061
+ *
1062
+ * Generally this should never be set to `true` as it makes the modal less
1063
+ * accessible to assistive technologies, like screen readers.
1064
+ * @default false
1065
+ */
1066
+ disableEnforceFocus: e.bool,
1067
+ /**
1068
+ * If `true`, hitting escape will not fire the `onClose` callback.
1069
+ * @default false
1070
+ */
1071
+ disableEscapeKeyDown: e.bool,
1072
+ /**
1073
+ * The `children` will be under the DOM hierarchy of the parent component.
1074
+ * @default false
1075
+ */
1076
+ disablePortal: e.bool,
1077
+ /**
1078
+ * If `true`, the modal will not restore focus to previously focused element once
1079
+ * modal is hidden or unmounted.
1080
+ * @default false
1081
+ */
1082
+ disableRestoreFocus: e.bool,
1083
+ /**
1084
+ * Disable the scroll lock behavior.
1085
+ * @default false
1086
+ */
1087
+ disableScrollLock: e.bool,
1088
+ /**
1089
+ * If `true`, the backdrop is not rendered.
1090
+ * @default false
1091
+ */
1092
+ hideBackdrop: e.bool,
1093
+ /**
1094
+ * Always keep the children in the DOM.
1095
+ * This prop can be useful in SEO situation or
1096
+ * when you want to maximize the responsiveness of the Modal.
1097
+ * @default false
1098
+ */
1099
+ keepMounted: e.bool,
1100
+ /**
1101
+ * Callback fired when the backdrop is clicked.
1102
+ * @deprecated Use the `onClose` prop with the `reason` argument to handle the `backdropClick` events.
1103
+ */
1104
+ onBackdropClick: e.func,
1105
+ /**
1106
+ * Callback fired when the component requests to be closed.
1107
+ * The `reason` parameter can optionally be used to control the response to `onClose`.
1108
+ *
1109
+ * @param {object} event The event source of the callback.
1110
+ * @param {string} reason Can be: `"escapeKeyDown"`, `"backdropClick"`.
1111
+ */
1112
+ onClose: e.func,
1113
+ /**
1114
+ * A function called when a transition enters.
1115
+ */
1116
+ onTransitionEnter: e.func,
1117
+ /**
1118
+ * A function called when a transition has exited.
1119
+ */
1120
+ onTransitionExited: e.func,
1121
+ /**
1122
+ * If `true`, the component is shown.
1123
+ */
1124
+ open: e.bool.isRequired,
1125
+ /**
1126
+ * The props used for each slot inside the Modal.
1127
+ * @default {}
1128
+ */
1129
+ slotProps: e.shape({
1130
+ backdrop: e.oneOfType([e.func, e.object]),
1131
+ root: e.oneOfType([e.func, e.object])
1132
+ }),
1133
+ /**
1134
+ * The components used for each slot inside the Modal.
1135
+ * Either a string to use a HTML element or a component.
1136
+ * @default {}
1137
+ */
1138
+ slots: e.shape({
1139
+ backdrop: e.elementType,
1140
+ root: e.elementType
1141
+ }),
1142
+ /**
1143
+ * The system prop that allows defining system overrides as well as additional CSS styles.
1144
+ */
1145
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object])
1146
+ });
1147
+ export {
1148
+ Ne as B,
1149
+ ke as F,
1150
+ Re as H,
1151
+ gn as M,
1152
+ Y as P,
1153
+ Ue as a,
1154
+ z as b,
1155
+ X as e,
1156
+ te as g,
1157
+ fe as u
1158
+ };