@hybridcore/ui 1.0.2 → 1.1.0

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 (103) hide show
  1. package/dist/Button-BZR43NHz.js +2025 -0
  2. package/dist/ButtonBase-B6WYZgVU.js +967 -0
  3. package/dist/CardContent-C8PxkJz4.js +73 -0
  4. package/dist/Checkbox-CxbQ9tJ5.js +673 -0
  5. package/dist/FormControl-C4PmH1vh.js +1491 -0
  6. package/dist/IconButton-CKHPuOyh.js +183 -0
  7. package/dist/Input-CH_JyT5B.js +324 -0
  8. package/dist/List-BX_5LP1i.js +132 -0
  9. package/dist/Object-DBPgar-D.js +688 -0
  10. package/dist/OutlinedInput-gnp48tDo.js +452 -0
  11. package/dist/Paper-CaiWdndQ.js +162 -0
  12. package/dist/Select-DOyHt8I_.js +2526 -0
  13. package/dist/Source-Bo1Eq6y-.js +4374 -0
  14. package/dist/Text-DVP2PrYM.js +2192 -0
  15. package/dist/Typography-XIiVCSto.js +178 -0
  16. package/dist/assertThisInitialized-BUtkG-md.js +13 -0
  17. package/dist/assets/index.css +1 -0
  18. package/dist/assets/index2.css +1 -0
  19. package/dist/chainPropTypes-DtBfUj5o.js +96 -0
  20. package/dist/components/access/helpers.js +32 -0
  21. package/dist/components/access/index.js +15 -0
  22. package/dist/components/card/index.js +159 -469
  23. package/dist/components/card/styled.js +75 -7
  24. package/dist/components/conditional-wrapper/index.js +9 -0
  25. package/dist/components/confirm/dialog.js +151 -0
  26. package/dist/components/confirm/index.js +23 -0
  27. package/dist/components/container/index.js +270 -0
  28. package/dist/components/context-menu/index.js +973 -0
  29. package/dist/components/data-management/instance-form/components/composite-list/index.js +12 -0
  30. package/dist/components/data-management/instance-form/components/composite-list/styled.js +64 -0
  31. package/dist/components/data-management/instance-form/components/policy-list/index.js +86 -0
  32. package/dist/components/data-management/instance-form/components/variable/index.js +15 -0
  33. package/dist/components/data-management/instance-form/components/variables/index.js +39 -0
  34. package/dist/components/data-management/instance-form/index.js +437 -0
  35. package/dist/components/data-security-selectors/dissemination-list/index.js +3201 -0
  36. package/dist/components/data-security-selectors/security-level/index.js +81 -0
  37. package/dist/components/date-time-picker/index.js +103 -0
  38. package/dist/components/geometry-picker/coordinate/index.js +93 -0
  39. package/dist/components/geometry-picker/edit/index.js +71 -0
  40. package/dist/components/geometry-picker/geometry/index.js +160 -0
  41. package/dist/components/geometry-picker/geometry/map-overlay.js +22 -0
  42. package/dist/components/geometry-picker/index.js +140 -0
  43. package/dist/components/geometry-picker/kml/index.js +62 -0
  44. package/dist/components/geometry-picker/kml/select-input-method.js +75 -0
  45. package/dist/components/geometry-picker/logic.js +69 -0
  46. package/dist/components/geometry-picker/map/index.js +42 -0
  47. package/dist/components/geometry-picker/map/logic.js +2360 -0
  48. package/dist/components/geometry-picker/map/style.js +88 -0
  49. package/dist/components/geometry-picker/parser/coordinate-input/index.js +78 -0
  50. package/dist/components/geometry-picker/parser/coordinate-input/logic.js +1305 -0
  51. package/dist/components/geometry-picker/parser/index.js +179 -0
  52. package/dist/components/geometry-picker/parser/logic.js +84 -0
  53. package/dist/components/geometry-picker/parser/styled.js +25 -0
  54. package/dist/components/geometry-picker/styled.js +48 -0
  55. package/dist/components/geometry-picker/wkt/index.js +59 -0
  56. package/dist/components/geometry-picker/wkt/select-input-method.js +75 -0
  57. package/dist/components/icon-button/index.js +18 -0
  58. package/dist/components/icon-button/styled.js +51 -0
  59. package/dist/components/key-protection/index.js +4 -0
  60. package/dist/components/key-protection/menu.js +85 -0
  61. package/dist/components/key-protection/utils.js +10 -0
  62. package/dist/components/loading/index.js +7 -0
  63. package/dist/components/loading/styled.js +16 -0
  64. package/dist/components/map/helpers/kml.js +45 -0
  65. package/dist/components/map/helpers/mapbox.js +48 -0
  66. package/dist/components/map/helpers/ol.js +25 -0
  67. package/dist/components/map/helpers/wkt.js +29 -0
  68. package/dist/components/map/index.js +30 -0
  69. package/dist/components/map/logic.js +140 -0
  70. package/dist/components/map/styled.js +8 -0
  71. package/dist/components/phone-input/index.js +25 -0
  72. package/dist/components/phone-input/styled.js +26 -0
  73. package/dist/components/search-input/index.js +76 -0
  74. package/dist/components/tree-select/index.js +70 -0
  75. package/dist/components/tree-select/styled.js +64 -0
  76. package/dist/components/treeview-filter/index.js +621 -0
  77. package/dist/components/treeview-filter/item/index.js +7 -0
  78. package/dist/components/treeview-filter/item-label/index.js +44 -0
  79. package/dist/createTheme-agWfFD64.js +2392 -0
  80. package/dist/exactProp-CI8dagM-.js +36 -0
  81. package/dist/extends-C3382pL0.js +22 -0
  82. package/dist/hooks/useMenuLogic.js +21 -0
  83. package/dist/hooks/useToggle.js +23 -0
  84. package/dist/index-BQE8B4sc.js +957 -0
  85. package/dist/index-DHFb1Qpn.js +1105 -0
  86. package/dist/isHostComponent-kiaBvYVo.js +6 -0
  87. package/dist/isMuiElement-CxT3_ACP.js +13 -0
  88. package/dist/main.d.ts +646 -0
  89. package/dist/ol-CMEkXXLJ.js +15041 -0
  90. package/dist/ownerDocument-CUrv0DIK.js +6 -0
  91. package/dist/ownerWindow-niciwP7I.js +7 -0
  92. package/dist/styled-B22KrhDR.js +229 -0
  93. package/dist/styled-Iq9jsO4F.js +1033 -0
  94. package/dist/useFormControl-CatNKXAi.js +10 -0
  95. package/dist/useId-BHG98T5I.js +26 -0
  96. package/dist/useTheme-C0Dky5rV.js +17 -0
  97. package/dist/useTheme-CeyGVuQP.js +10 -0
  98. package/dist/useThemeProps-CzAjOL6F.js +26 -0
  99. package/dist/utils/ontology.js +37 -0
  100. package/dist/utils-Bq0ye5vf.js +115 -0
  101. package/dist/utils-C13eMoWa.js +365 -0
  102. package/package.json +26 -5
  103. package/dist/styled-BG5UIpPU.js +0 -3459
@@ -0,0 +1,1491 @@
1
+ import { _ as H, a as i } from "./extends-C3382pL0.js";
2
+ import * as l from "react";
3
+ import { G as Ve, P as e, c as L, l as Ue } from "./createTheme-agWfFD64.js";
4
+ import { g as Y, u as Z, c as j, a as J } from "./chainPropTypes-DtBfUj5o.js";
5
+ import { u as te, F as be } from "./useFormControl-CatNKXAi.js";
6
+ import { d as Ge, T as Ke, g as Q, s as B, r as Ye } from "./styled-Iq9jsO4F.js";
7
+ import { jsx as E, jsxs as q } from "react/jsx-runtime";
8
+ import { u as ze, b as pe, e as Ze, r as Je } from "./ButtonBase-B6WYZgVU.js";
9
+ import { o as Re } from "./ownerWindow-niciwP7I.js";
10
+ import { i as Se } from "./isHostComponent-kiaBvYVo.js";
11
+ import { u as Qe } from "./useTheme-C0Dky5rV.js";
12
+ import { T as Xe } from "./Typography-XIiVCSto.js";
13
+ import { i as ue } from "./isMuiElement-CxT3_ACP.js";
14
+ function Ae({
15
+ styles: o,
16
+ themeId: n,
17
+ defaultTheme: t = {}
18
+ }) {
19
+ const r = Qe(t), s = typeof o == "function" ? o(n && r[n] || r) : o;
20
+ return /* @__PURE__ */ E(Ve, {
21
+ styles: s
22
+ });
23
+ }
24
+ process.env.NODE_ENV !== "production" && (Ae.propTypes = {
25
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
26
+ // │ These PropTypes are generated from the TypeScript type definitions. │
27
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
28
+ // └─────────────────────────────────────────────────────────────────────┘
29
+ /**
30
+ * @ignore
31
+ */
32
+ defaultTheme: e.object,
33
+ /**
34
+ * @ignore
35
+ */
36
+ styles: e.oneOfType([e.array, e.func, e.number, e.object, e.string, e.bool]),
37
+ /**
38
+ * @ignore
39
+ */
40
+ themeId: e.string
41
+ });
42
+ function eo(o, n = 166) {
43
+ let t;
44
+ function r(...s) {
45
+ const a = () => {
46
+ o.apply(this, s);
47
+ };
48
+ clearTimeout(t), t = setTimeout(a, n);
49
+ }
50
+ return r.clear = () => {
51
+ clearTimeout(t);
52
+ }, r;
53
+ }
54
+ function he({
55
+ props: o,
56
+ states: n,
57
+ muiFormControl: t
58
+ }) {
59
+ return n.reduce((r, s) => (r[s] = o[s], t && typeof o[s] > "u" && (r[s] = t[s]), r), {});
60
+ }
61
+ const oo = ["onChange", "maxRows", "minRows", "style", "value"];
62
+ function ne(o) {
63
+ return parseInt(o, 10) || 0;
64
+ }
65
+ const no = {
66
+ shadow: {
67
+ // Visibility needed to hide the extra text area on iPads
68
+ visibility: "hidden",
69
+ // Remove from the content flow
70
+ position: "absolute",
71
+ // Ignore the scrollbar width
72
+ overflow: "hidden",
73
+ height: 0,
74
+ top: 0,
75
+ left: 0,
76
+ // Create a new layer, increase the isolation of the computed values
77
+ transform: "translateZ(0)"
78
+ }
79
+ };
80
+ function to(o) {
81
+ return o == null || Object.keys(o).length === 0 || o.outerHeightStyle === 0 && !o.overflowing;
82
+ }
83
+ const ke = /* @__PURE__ */ l.forwardRef(function(n, t) {
84
+ const {
85
+ onChange: r,
86
+ maxRows: s,
87
+ minRows: a = 1,
88
+ style: m,
89
+ value: y
90
+ } = n, c = H(n, oo), {
91
+ current: d
92
+ } = l.useRef(y != null), u = l.useRef(null), g = ze(t, u), p = l.useRef(null), R = l.useRef(null), O = l.useCallback(() => {
93
+ const v = u.current, C = Re(v).getComputedStyle(v);
94
+ if (C.width === "0px")
95
+ return {
96
+ outerHeightStyle: 0,
97
+ overflowing: !1
98
+ };
99
+ const x = R.current;
100
+ x.style.width = C.width, x.value = v.value || n.placeholder || "x", x.value.slice(-1) === `
101
+ ` && (x.value += " ");
102
+ const M = C.boxSizing, z = ne(C.paddingBottom) + ne(C.paddingTop), N = ne(C.borderBottomWidth) + ne(C.borderTopWidth), F = x.scrollHeight;
103
+ x.value = "x";
104
+ const A = x.scrollHeight;
105
+ let w = F;
106
+ a && (w = Math.max(Number(a) * A, w)), s && (w = Math.min(Number(s) * A, w)), w = Math.max(w, A);
107
+ const W = w + (M === "border-box" ? z + N : 0), V = Math.abs(w - F) <= 1;
108
+ return {
109
+ outerHeightStyle: W,
110
+ overflowing: V
111
+ };
112
+ }, [s, a, n.placeholder]), T = l.useCallback(() => {
113
+ const v = O();
114
+ if (to(v))
115
+ return;
116
+ const b = v.outerHeightStyle, C = u.current;
117
+ p.current !== b && (p.current = b, C.style.height = `${b}px`), C.style.overflow = v.overflowing ? "hidden" : "";
118
+ }, [O]);
119
+ pe(() => {
120
+ const v = () => {
121
+ T();
122
+ };
123
+ let b;
124
+ const C = () => {
125
+ cancelAnimationFrame(b), b = requestAnimationFrame(() => {
126
+ v();
127
+ });
128
+ }, x = eo(v), M = u.current, z = Re(M);
129
+ z.addEventListener("resize", x);
130
+ let N;
131
+ return typeof ResizeObserver < "u" && (N = new ResizeObserver(process.env.NODE_ENV === "test" ? C : v), N.observe(M)), () => {
132
+ x.clear(), cancelAnimationFrame(b), z.removeEventListener("resize", x), N && N.disconnect();
133
+ };
134
+ }, [O, T]), pe(() => {
135
+ T();
136
+ });
137
+ const $ = (v) => {
138
+ d || T(), r && r(v);
139
+ };
140
+ return /* @__PURE__ */ q(l.Fragment, {
141
+ children: [/* @__PURE__ */ E("textarea", i({
142
+ value: y,
143
+ onChange: $,
144
+ ref: g,
145
+ rows: a,
146
+ style: m
147
+ }, c)), /* @__PURE__ */ E("textarea", {
148
+ "aria-hidden": !0,
149
+ className: n.className,
150
+ readOnly: !0,
151
+ ref: R,
152
+ tabIndex: -1,
153
+ style: i({}, no.shadow, m, {
154
+ paddingTop: 0,
155
+ paddingBottom: 0
156
+ })
157
+ })]
158
+ });
159
+ });
160
+ process.env.NODE_ENV !== "production" && (ke.propTypes = {
161
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
162
+ // │ These PropTypes are generated from the TypeScript type definitions. │
163
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
164
+ // └─────────────────────────────────────────────────────────────────────┘
165
+ /**
166
+ * @ignore
167
+ */
168
+ className: e.string,
169
+ /**
170
+ * Maximum number of rows to display.
171
+ */
172
+ maxRows: e.oneOfType([e.number, e.string]),
173
+ /**
174
+ * Minimum number of rows to display.
175
+ * @default 1
176
+ */
177
+ minRows: e.oneOfType([e.number, e.string]),
178
+ /**
179
+ * @ignore
180
+ */
181
+ onChange: e.func,
182
+ /**
183
+ * @ignore
184
+ */
185
+ placeholder: e.string,
186
+ /**
187
+ * @ignore
188
+ */
189
+ style: e.object,
190
+ /**
191
+ * @ignore
192
+ */
193
+ value: e.oneOfType([e.arrayOf(e.string), e.number, e.string])
194
+ });
195
+ function Le(o) {
196
+ return /* @__PURE__ */ E(Ae, i({}, o, {
197
+ defaultTheme: Ge,
198
+ themeId: Ke
199
+ }));
200
+ }
201
+ process.env.NODE_ENV !== "production" && (Le.propTypes = {
202
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
203
+ // │ These PropTypes are generated from the TypeScript type definitions. │
204
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
205
+ // └─────────────────────────────────────────────────────────────────────┘
206
+ /**
207
+ * The styles you want to apply globally.
208
+ */
209
+ styles: e.oneOfType([e.array, e.func, e.number, e.object, e.string, e.bool])
210
+ });
211
+ function Ne(o) {
212
+ return o != null && !(Array.isArray(o) && o.length === 0);
213
+ }
214
+ function fe(o, n = !1) {
215
+ return o && (Ne(o.value) && o.value !== "" || n && Ne(o.defaultValue) && o.defaultValue !== "");
216
+ }
217
+ function ro(o) {
218
+ return o.startAdornment;
219
+ }
220
+ function so(o) {
221
+ return Q("MuiInputBase", o);
222
+ }
223
+ const me = Y("MuiInputBase", ["root", "formControl", "focused", "disabled", "adornedStart", "adornedEnd", "error", "sizeSmall", "multiline", "colorSecondary", "fullWidth", "hiddenLabel", "readOnly", "input", "inputSizeSmall", "inputMultiline", "inputTypeSearch", "inputAdornedStart", "inputAdornedEnd", "inputHiddenLabel"]), io = ["aria-describedby", "autoComplete", "autoFocus", "className", "color", "components", "componentsProps", "defaultValue", "disabled", "disableInjectingGlobalStyles", "endAdornment", "error", "fullWidth", "id", "inputComponent", "inputProps", "inputRef", "margin", "maxRows", "minRows", "multiline", "name", "onBlur", "onChange", "onClick", "onFocus", "onKeyDown", "onKeyUp", "placeholder", "readOnly", "renderSuffix", "rows", "size", "slotProps", "slots", "startAdornment", "type", "value"], ao = (o, n) => {
224
+ const {
225
+ ownerState: t
226
+ } = o;
227
+ return [n.root, t.formControl && n.formControl, t.startAdornment && n.adornedStart, t.endAdornment && n.adornedEnd, t.error && n.error, t.size === "small" && n.sizeSmall, t.multiline && n.multiline, t.color && n[`color${L(t.color)}`], t.fullWidth && n.fullWidth, t.hiddenLabel && n.hiddenLabel];
228
+ }, lo = (o, n) => {
229
+ const {
230
+ ownerState: t
231
+ } = o;
232
+ return [n.input, t.size === "small" && n.inputSizeSmall, t.multiline && n.inputMultiline, t.type === "search" && n.inputTypeSearch, t.startAdornment && n.inputAdornedStart, t.endAdornment && n.inputAdornedEnd, t.hiddenLabel && n.inputHiddenLabel];
233
+ }, co = (o) => {
234
+ const {
235
+ classes: n,
236
+ color: t,
237
+ disabled: r,
238
+ error: s,
239
+ endAdornment: a,
240
+ focused: m,
241
+ formControl: y,
242
+ fullWidth: c,
243
+ hiddenLabel: d,
244
+ multiline: u,
245
+ readOnly: g,
246
+ size: p,
247
+ startAdornment: R,
248
+ type: O
249
+ } = o, T = {
250
+ root: ["root", `color${L(t)}`, r && "disabled", s && "error", c && "fullWidth", m && "focused", y && "formControl", p && p !== "medium" && `size${L(p)}`, u && "multiline", R && "adornedStart", a && "adornedEnd", d && "hiddenLabel", g && "readOnly"],
251
+ input: ["input", r && "disabled", O === "search" && "inputTypeSearch", u && "inputMultiline", p === "small" && "inputSizeSmall", d && "inputHiddenLabel", R && "inputAdornedStart", a && "inputAdornedEnd", g && "readOnly"]
252
+ };
253
+ return J(T, so, n);
254
+ }, uo = B("div", {
255
+ name: "MuiInputBase",
256
+ slot: "Root",
257
+ overridesResolver: ao
258
+ })(({
259
+ theme: o,
260
+ ownerState: n
261
+ }) => i({}, o.typography.body1, {
262
+ color: (o.vars || o).palette.text.primary,
263
+ lineHeight: "1.4375em",
264
+ // 23px
265
+ boxSizing: "border-box",
266
+ // Prevent padding issue with fullWidth.
267
+ position: "relative",
268
+ cursor: "text",
269
+ display: "inline-flex",
270
+ alignItems: "center",
271
+ [`&.${me.disabled}`]: {
272
+ color: (o.vars || o).palette.text.disabled,
273
+ cursor: "default"
274
+ }
275
+ }, n.multiline && i({
276
+ padding: "4px 0 5px"
277
+ }, n.size === "small" && {
278
+ paddingTop: 1
279
+ }), n.fullWidth && {
280
+ width: "100%"
281
+ })), po = B("input", {
282
+ name: "MuiInputBase",
283
+ slot: "Input",
284
+ overridesResolver: lo
285
+ })(({
286
+ theme: o,
287
+ ownerState: n
288
+ }) => {
289
+ const t = o.palette.mode === "light", r = i({
290
+ color: "currentColor"
291
+ }, o.vars ? {
292
+ opacity: o.vars.opacity.inputPlaceholder
293
+ } : {
294
+ opacity: t ? 0.42 : 0.5
295
+ }, {
296
+ transition: o.transitions.create("opacity", {
297
+ duration: o.transitions.duration.shorter
298
+ })
299
+ }), s = {
300
+ opacity: "0 !important"
301
+ }, a = o.vars ? {
302
+ opacity: o.vars.opacity.inputPlaceholder
303
+ } : {
304
+ opacity: t ? 0.42 : 0.5
305
+ };
306
+ return i({
307
+ font: "inherit",
308
+ letterSpacing: "inherit",
309
+ color: "currentColor",
310
+ padding: "4px 0 5px",
311
+ border: 0,
312
+ boxSizing: "content-box",
313
+ background: "none",
314
+ height: "1.4375em",
315
+ // Reset 23pxthe native input line-height
316
+ margin: 0,
317
+ // Reset for Safari
318
+ WebkitTapHighlightColor: "transparent",
319
+ display: "block",
320
+ // Make the flex item shrink with Firefox
321
+ minWidth: 0,
322
+ width: "100%",
323
+ // Fix IE11 width issue
324
+ animationName: "mui-auto-fill-cancel",
325
+ animationDuration: "10ms",
326
+ "&::-webkit-input-placeholder": r,
327
+ "&::-moz-placeholder": r,
328
+ // Firefox 19+
329
+ "&:-ms-input-placeholder": r,
330
+ // IE11
331
+ "&::-ms-input-placeholder": r,
332
+ // Edge
333
+ "&:focus": {
334
+ outline: 0
335
+ },
336
+ // Reset Firefox invalid required input style
337
+ "&:invalid": {
338
+ boxShadow: "none"
339
+ },
340
+ "&::-webkit-search-decoration": {
341
+ // Remove the padding when type=search.
342
+ WebkitAppearance: "none"
343
+ },
344
+ // Show and hide the placeholder logic
345
+ [`label[data-shrink=false] + .${me.formControl} &`]: {
346
+ "&::-webkit-input-placeholder": s,
347
+ "&::-moz-placeholder": s,
348
+ // Firefox 19+
349
+ "&:-ms-input-placeholder": s,
350
+ // IE11
351
+ "&::-ms-input-placeholder": s,
352
+ // Edge
353
+ "&:focus::-webkit-input-placeholder": a,
354
+ "&:focus::-moz-placeholder": a,
355
+ // Firefox 19+
356
+ "&:focus:-ms-input-placeholder": a,
357
+ // IE11
358
+ "&:focus::-ms-input-placeholder": a
359
+ // Edge
360
+ },
361
+ [`&.${me.disabled}`]: {
362
+ opacity: 1,
363
+ // Reset iOS opacity
364
+ WebkitTextFillColor: (o.vars || o).palette.text.disabled
365
+ // Fix opacity Safari bug
366
+ },
367
+ "&:-webkit-autofill": {
368
+ animationDuration: "5000s",
369
+ animationName: "mui-auto-fill"
370
+ }
371
+ }, n.size === "small" && {
372
+ paddingTop: 1
373
+ }, n.multiline && {
374
+ height: "auto",
375
+ resize: "none",
376
+ padding: 0,
377
+ paddingTop: 0
378
+ }, n.type === "search" && {
379
+ // Improve type search style.
380
+ MozAppearance: "textfield"
381
+ });
382
+ }), fo = /* @__PURE__ */ E(Le, {
383
+ styles: {
384
+ "@keyframes mui-auto-fill": {
385
+ from: {
386
+ display: "block"
387
+ }
388
+ },
389
+ "@keyframes mui-auto-fill-cancel": {
390
+ from: {
391
+ display: "block"
392
+ }
393
+ }
394
+ }
395
+ }), mo = /* @__PURE__ */ l.forwardRef(function(n, t) {
396
+ var r;
397
+ const s = Z({
398
+ props: n,
399
+ name: "MuiInputBase"
400
+ }), {
401
+ "aria-describedby": a,
402
+ autoComplete: m,
403
+ autoFocus: y,
404
+ className: c,
405
+ components: d = {},
406
+ componentsProps: u = {},
407
+ defaultValue: g,
408
+ disabled: p,
409
+ disableInjectingGlobalStyles: R,
410
+ endAdornment: O,
411
+ fullWidth: T = !1,
412
+ id: $,
413
+ inputComponent: v = "input",
414
+ inputProps: b = {},
415
+ inputRef: C,
416
+ maxRows: x,
417
+ minRows: M,
418
+ multiline: z = !1,
419
+ name: N,
420
+ onBlur: F,
421
+ onChange: A,
422
+ onClick: w,
423
+ onFocus: W,
424
+ onKeyDown: V,
425
+ onKeyUp: I,
426
+ placeholder: k,
427
+ readOnly: D,
428
+ renderSuffix: ye,
429
+ rows: X,
430
+ slotProps: ge = {},
431
+ slots: ve = {},
432
+ startAdornment: U,
433
+ type: xe = "text",
434
+ value: Pe
435
+ } = s, We = H(s, io), ee = b.value != null ? b.value : Pe, {
436
+ current: re
437
+ } = l.useRef(ee != null), _ = l.useRef(), $e = l.useCallback((f) => {
438
+ process.env.NODE_ENV !== "production" && f && f.nodeName !== "INPUT" && !f.focus && console.error(["MUI: You have provided a `inputComponent` to the input component", "that does not correctly handle the `ref` prop.", "Make sure the `ref` prop is called with a HTMLInputElement."].join(`
439
+ `));
440
+ }, []), Be = ze(_, C, b.ref, $e), [se, ie] = l.useState(!1), h = te();
441
+ process.env.NODE_ENV !== "production" && l.useEffect(() => {
442
+ if (h)
443
+ return h.registerEffect();
444
+ }, [h]);
445
+ const S = he({
446
+ props: s,
447
+ muiFormControl: h,
448
+ states: ["color", "disabled", "error", "hiddenLabel", "size", "required", "filled"]
449
+ });
450
+ S.focused = h ? h.focused : se, l.useEffect(() => {
451
+ !h && p && se && (ie(!1), F && F());
452
+ }, [h, p, se, F]);
453
+ const ae = h && h.onFilled, le = h && h.onEmpty, G = l.useCallback((f) => {
454
+ fe(f) ? ae && ae() : le && le();
455
+ }, [ae, le]);
456
+ pe(() => {
457
+ re && G({
458
+ value: ee
459
+ });
460
+ }, [ee, G, re]);
461
+ const De = (f) => {
462
+ if (S.disabled) {
463
+ f.stopPropagation();
464
+ return;
465
+ }
466
+ W && W(f), b.onFocus && b.onFocus(f), h && h.onFocus ? h.onFocus(f) : ie(!0);
467
+ }, _e = (f) => {
468
+ F && F(f), b.onBlur && b.onBlur(f), h && h.onBlur ? h.onBlur(f) : ie(!1);
469
+ }, je = (f, ...we) => {
470
+ if (!re) {
471
+ const Ee = f.target || _.current;
472
+ if (Ee == null)
473
+ throw new Error(process.env.NODE_ENV !== "production" ? "MUI: Expected valid input target. Did you use a custom `inputComponent` and forget to forward refs? See https://mui.com/r/input-component-ref-interface for more info." : Ue(1));
474
+ G({
475
+ value: Ee.value
476
+ });
477
+ }
478
+ b.onChange && b.onChange(f, ...we), A && A(f, ...we);
479
+ };
480
+ l.useEffect(() => {
481
+ G(_.current);
482
+ }, []);
483
+ const qe = (f) => {
484
+ _.current && f.currentTarget === f.target && _.current.focus(), w && w(f);
485
+ };
486
+ let de = v, P = b;
487
+ z && de === "input" && (X ? (process.env.NODE_ENV !== "production" && (M || x) && console.warn("MUI: You can not use the `minRows` or `maxRows` props when the input `rows` prop is set."), P = i({
488
+ type: void 0,
489
+ minRows: X,
490
+ maxRows: X
491
+ }, P)) : P = i({
492
+ type: void 0,
493
+ maxRows: x,
494
+ minRows: M
495
+ }, P), de = ke);
496
+ const He = (f) => {
497
+ G(f.animationName === "mui-auto-fill-cancel" ? _.current : {
498
+ value: "x"
499
+ });
500
+ };
501
+ l.useEffect(() => {
502
+ h && h.setAdornedStart(!!U);
503
+ }, [h, U]);
504
+ const oe = i({}, s, {
505
+ color: S.color || "primary",
506
+ disabled: S.disabled,
507
+ endAdornment: O,
508
+ error: S.error,
509
+ focused: S.focused,
510
+ formControl: h,
511
+ fullWidth: T,
512
+ hiddenLabel: S.hiddenLabel,
513
+ multiline: z,
514
+ size: S.size,
515
+ startAdornment: U,
516
+ type: xe
517
+ }), Ce = co(oe), Oe = ve.root || d.Root || uo, ce = ge.root || u.root || {}, Te = ve.input || d.Input || po;
518
+ return P = i({}, P, (r = ge.input) != null ? r : u.input), /* @__PURE__ */ q(l.Fragment, {
519
+ children: [!R && fo, /* @__PURE__ */ q(Oe, i({}, ce, !Se(Oe) && {
520
+ ownerState: i({}, oe, ce.ownerState)
521
+ }, {
522
+ ref: t,
523
+ onClick: qe
524
+ }, We, {
525
+ className: j(Ce.root, ce.className, c, D && "MuiInputBase-readOnly"),
526
+ children: [U, /* @__PURE__ */ E(be.Provider, {
527
+ value: null,
528
+ children: /* @__PURE__ */ E(Te, i({
529
+ ownerState: oe,
530
+ "aria-invalid": S.error,
531
+ "aria-describedby": a,
532
+ autoComplete: m,
533
+ autoFocus: y,
534
+ defaultValue: g,
535
+ disabled: S.disabled,
536
+ id: $,
537
+ onAnimationStart: He,
538
+ name: N,
539
+ placeholder: k,
540
+ readOnly: D,
541
+ required: S.required,
542
+ rows: X,
543
+ value: ee,
544
+ onKeyDown: V,
545
+ onKeyUp: I,
546
+ type: xe
547
+ }, P, !Se(Te) && {
548
+ as: de,
549
+ ownerState: i({}, oe, P.ownerState)
550
+ }, {
551
+ ref: Be,
552
+ className: j(Ce.input, P.className, D && "MuiInputBase-readOnly"),
553
+ onBlur: _e,
554
+ onChange: je,
555
+ onFocus: De
556
+ }))
557
+ }), O, ye ? ye(i({}, S, {
558
+ startAdornment: U
559
+ })) : null]
560
+ }))]
561
+ });
562
+ });
563
+ process.env.NODE_ENV !== "production" && (mo.propTypes = {
564
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
565
+ // │ These PropTypes are generated from the TypeScript type definitions. │
566
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
567
+ // └─────────────────────────────────────────────────────────────────────┘
568
+ /**
569
+ * @ignore
570
+ */
571
+ "aria-describedby": e.string,
572
+ /**
573
+ * This prop helps users to fill forms faster, especially on mobile devices.
574
+ * The name can be confusing, as it's more like an autofill.
575
+ * You can learn more about it [following the specification](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill).
576
+ */
577
+ autoComplete: e.string,
578
+ /**
579
+ * If `true`, the `input` element is focused during the first mount.
580
+ */
581
+ autoFocus: e.bool,
582
+ /**
583
+ * Override or extend the styles applied to the component.
584
+ */
585
+ classes: e.object,
586
+ /**
587
+ * @ignore
588
+ */
589
+ className: e.string,
590
+ /**
591
+ * The color of the component.
592
+ * It supports both default and custom theme colors, which can be added as shown in the
593
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
594
+ * The prop defaults to the value (`'primary'`) inherited from the parent FormControl component.
595
+ */
596
+ color: e.oneOfType([e.oneOf(["primary", "secondary", "error", "info", "success", "warning"]), e.string]),
597
+ /**
598
+ * The components used for each slot inside.
599
+ *
600
+ * This prop is an alias for the `slots` prop.
601
+ * It's recommended to use the `slots` prop instead.
602
+ *
603
+ * @default {}
604
+ */
605
+ components: e.shape({
606
+ Input: e.elementType,
607
+ Root: e.elementType
608
+ }),
609
+ /**
610
+ * The extra props for the slot components.
611
+ * You can override the existing props or add new ones.
612
+ *
613
+ * This prop is an alias for the `slotProps` prop.
614
+ * It's recommended to use the `slotProps` prop instead, as `componentsProps` will be deprecated in the future.
615
+ *
616
+ * @default {}
617
+ */
618
+ componentsProps: e.shape({
619
+ input: e.object,
620
+ root: e.object
621
+ }),
622
+ /**
623
+ * The default value. Use when the component is not controlled.
624
+ */
625
+ defaultValue: e.any,
626
+ /**
627
+ * If `true`, the component is disabled.
628
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
629
+ */
630
+ disabled: e.bool,
631
+ /**
632
+ * If `true`, GlobalStyles for the auto-fill keyframes will not be injected/removed on mount/unmount. Make sure to inject them at the top of your application.
633
+ * This option is intended to help with boosting the initial rendering performance if you are loading a big amount of Input components at once.
634
+ * @default false
635
+ */
636
+ disableInjectingGlobalStyles: e.bool,
637
+ /**
638
+ * End `InputAdornment` for this component.
639
+ */
640
+ endAdornment: e.node,
641
+ /**
642
+ * If `true`, the `input` will indicate an error.
643
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
644
+ */
645
+ error: e.bool,
646
+ /**
647
+ * If `true`, the `input` will take up the full width of its container.
648
+ * @default false
649
+ */
650
+ fullWidth: e.bool,
651
+ /**
652
+ * The id of the `input` element.
653
+ */
654
+ id: e.string,
655
+ /**
656
+ * The component used for the `input` element.
657
+ * Either a string to use a HTML element or a component.
658
+ * @default 'input'
659
+ */
660
+ inputComponent: Ze,
661
+ /**
662
+ * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Attributes) applied to the `input` element.
663
+ * @default {}
664
+ */
665
+ inputProps: e.object,
666
+ /**
667
+ * Pass a ref to the `input` element.
668
+ */
669
+ inputRef: Je,
670
+ /**
671
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
672
+ * FormControl.
673
+ * The prop defaults to the value (`'none'`) inherited from the parent FormControl component.
674
+ */
675
+ margin: e.oneOf(["dense", "none"]),
676
+ /**
677
+ * Maximum number of rows to display when multiline option is set to true.
678
+ */
679
+ maxRows: e.oneOfType([e.number, e.string]),
680
+ /**
681
+ * Minimum number of rows to display when multiline option is set to true.
682
+ */
683
+ minRows: e.oneOfType([e.number, e.string]),
684
+ /**
685
+ * If `true`, a [TextareaAutosize](/material-ui/react-textarea-autosize/) element is rendered.
686
+ * @default false
687
+ */
688
+ multiline: e.bool,
689
+ /**
690
+ * Name attribute of the `input` element.
691
+ */
692
+ name: e.string,
693
+ /**
694
+ * Callback fired when the `input` is blurred.
695
+ *
696
+ * Notice that the first argument (event) might be undefined.
697
+ */
698
+ onBlur: e.func,
699
+ /**
700
+ * Callback fired when the value is changed.
701
+ *
702
+ * @param {React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>} event The event source of the callback.
703
+ * You can pull out the new value by accessing `event.target.value` (string).
704
+ */
705
+ onChange: e.func,
706
+ /**
707
+ * @ignore
708
+ */
709
+ onClick: e.func,
710
+ /**
711
+ * @ignore
712
+ */
713
+ onFocus: e.func,
714
+ /**
715
+ * Callback fired when the `input` doesn't satisfy its constraints.
716
+ */
717
+ onInvalid: e.func,
718
+ /**
719
+ * @ignore
720
+ */
721
+ onKeyDown: e.func,
722
+ /**
723
+ * @ignore
724
+ */
725
+ onKeyUp: e.func,
726
+ /**
727
+ * The short hint displayed in the `input` before the user enters a value.
728
+ */
729
+ placeholder: e.string,
730
+ /**
731
+ * It prevents the user from changing the value of the field
732
+ * (not from interacting with the field).
733
+ */
734
+ readOnly: e.bool,
735
+ /**
736
+ * @ignore
737
+ */
738
+ renderSuffix: e.func,
739
+ /**
740
+ * If `true`, the `input` element is required.
741
+ * The prop defaults to the value (`false`) inherited from the parent FormControl component.
742
+ */
743
+ required: e.bool,
744
+ /**
745
+ * Number of rows to display when multiline option is set to true.
746
+ */
747
+ rows: e.oneOfType([e.number, e.string]),
748
+ /**
749
+ * The size of the component.
750
+ */
751
+ size: e.oneOfType([e.oneOf(["medium", "small"]), e.string]),
752
+ /**
753
+ * The extra props for the slot components.
754
+ * You can override the existing props or add new ones.
755
+ *
756
+ * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
757
+ *
758
+ * @default {}
759
+ */
760
+ slotProps: e.shape({
761
+ input: e.object,
762
+ root: e.object
763
+ }),
764
+ /**
765
+ * The components used for each slot inside.
766
+ *
767
+ * This prop is an alias for the `components` prop, which will be deprecated in the future.
768
+ *
769
+ * @default {}
770
+ */
771
+ slots: e.shape({
772
+ input: e.elementType,
773
+ root: e.elementType
774
+ }),
775
+ /**
776
+ * Start `InputAdornment` for this component.
777
+ */
778
+ startAdornment: e.node,
779
+ /**
780
+ * The system prop that allows defining system overrides as well as additional CSS styles.
781
+ */
782
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
783
+ /**
784
+ * Type of the `input` element. It should be [a valid HTML5 input type](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types).
785
+ * @default 'text'
786
+ */
787
+ type: e.string,
788
+ /**
789
+ * The value of the `input` element, required for a controlled component.
790
+ */
791
+ value: e.any
792
+ });
793
+ function bo(o) {
794
+ return Q("MuiFormLabel", o);
795
+ }
796
+ const K = Y("MuiFormLabel", ["root", "colorSecondary", "focused", "disabled", "error", "filled", "required", "asterisk"]), ho = ["children", "className", "color", "component", "disabled", "error", "filled", "focused", "required"], yo = (o) => {
797
+ const {
798
+ classes: n,
799
+ color: t,
800
+ focused: r,
801
+ disabled: s,
802
+ error: a,
803
+ filled: m,
804
+ required: y
805
+ } = o, c = {
806
+ root: ["root", `color${L(t)}`, s && "disabled", a && "error", m && "filled", r && "focused", y && "required"],
807
+ asterisk: ["asterisk", a && "error"]
808
+ };
809
+ return J(c, bo, n);
810
+ }, go = B("label", {
811
+ name: "MuiFormLabel",
812
+ slot: "Root",
813
+ overridesResolver: ({
814
+ ownerState: o
815
+ }, n) => i({}, n.root, o.color === "secondary" && n.colorSecondary, o.filled && n.filled)
816
+ })(({
817
+ theme: o,
818
+ ownerState: n
819
+ }) => i({
820
+ color: (o.vars || o).palette.text.secondary
821
+ }, o.typography.body1, {
822
+ lineHeight: "1.4375em",
823
+ padding: 0,
824
+ position: "relative",
825
+ [`&.${K.focused}`]: {
826
+ color: (o.vars || o).palette[n.color].main
827
+ },
828
+ [`&.${K.disabled}`]: {
829
+ color: (o.vars || o).palette.text.disabled
830
+ },
831
+ [`&.${K.error}`]: {
832
+ color: (o.vars || o).palette.error.main
833
+ }
834
+ })), vo = B("span", {
835
+ name: "MuiFormLabel",
836
+ slot: "Asterisk",
837
+ overridesResolver: (o, n) => n.asterisk
838
+ })(({
839
+ theme: o
840
+ }) => ({
841
+ [`&.${K.error}`]: {
842
+ color: (o.vars || o).palette.error.main
843
+ }
844
+ })), Me = /* @__PURE__ */ l.forwardRef(function(n, t) {
845
+ const r = Z({
846
+ props: n,
847
+ name: "MuiFormLabel"
848
+ }), {
849
+ children: s,
850
+ className: a,
851
+ component: m = "label"
852
+ } = r, y = H(r, ho), c = te(), d = he({
853
+ props: r,
854
+ muiFormControl: c,
855
+ states: ["color", "required", "focused", "disabled", "error", "filled"]
856
+ }), u = i({}, r, {
857
+ color: d.color || "primary",
858
+ component: m,
859
+ disabled: d.disabled,
860
+ error: d.error,
861
+ filled: d.filled,
862
+ focused: d.focused,
863
+ required: d.required
864
+ }), g = yo(u);
865
+ return /* @__PURE__ */ q(go, i({
866
+ as: m,
867
+ ownerState: u,
868
+ className: j(g.root, a),
869
+ ref: t
870
+ }, y, {
871
+ children: [s, d.required && /* @__PURE__ */ q(vo, {
872
+ ownerState: u,
873
+ "aria-hidden": !0,
874
+ className: g.asterisk,
875
+ children: [" ", "*"]
876
+ })]
877
+ }));
878
+ });
879
+ process.env.NODE_ENV !== "production" && (Me.propTypes = {
880
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
881
+ // │ These PropTypes are generated from the TypeScript type definitions. │
882
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
883
+ // └─────────────────────────────────────────────────────────────────────┘
884
+ /**
885
+ * The content of the component.
886
+ */
887
+ children: e.node,
888
+ /**
889
+ * Override or extend the styles applied to the component.
890
+ */
891
+ classes: e.object,
892
+ /**
893
+ * @ignore
894
+ */
895
+ className: e.string,
896
+ /**
897
+ * The color of the component.
898
+ * It supports both default and custom theme colors, which can be added as shown in the
899
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
900
+ */
901
+ color: e.oneOfType([e.oneOf(["error", "info", "primary", "secondary", "success", "warning"]), e.string]),
902
+ /**
903
+ * The component used for the root node.
904
+ * Either a string to use a HTML element or a component.
905
+ */
906
+ component: e.elementType,
907
+ /**
908
+ * If `true`, the label should be displayed in a disabled state.
909
+ */
910
+ disabled: e.bool,
911
+ /**
912
+ * If `true`, the label is displayed in an error state.
913
+ */
914
+ error: e.bool,
915
+ /**
916
+ * If `true`, the label should use filled classes key.
917
+ */
918
+ filled: e.bool,
919
+ /**
920
+ * If `true`, the input of this label is focused (used by `FormGroup` components).
921
+ */
922
+ focused: e.bool,
923
+ /**
924
+ * If `true`, the label will indicate that the `input` is required.
925
+ */
926
+ required: e.bool,
927
+ /**
928
+ * The system prop that allows defining system overrides as well as additional CSS styles.
929
+ */
930
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object])
931
+ });
932
+ function xo(o) {
933
+ return Q("MuiInputLabel", o);
934
+ }
935
+ Y("MuiInputLabel", ["root", "focused", "disabled", "error", "required", "asterisk", "formControl", "sizeSmall", "shrink", "animated", "standard", "filled", "outlined"]);
936
+ const Co = ["disableAnimation", "margin", "shrink", "variant", "className"], Oo = (o) => {
937
+ const {
938
+ classes: n,
939
+ formControl: t,
940
+ size: r,
941
+ shrink: s,
942
+ disableAnimation: a,
943
+ variant: m,
944
+ required: y
945
+ } = o, c = {
946
+ root: ["root", t && "formControl", !a && "animated", s && "shrink", r && r !== "normal" && `size${L(r)}`, m],
947
+ asterisk: [y && "asterisk"]
948
+ }, d = J(c, xo, n);
949
+ return i({}, n, d);
950
+ }, To = B(Me, {
951
+ shouldForwardProp: (o) => Ye(o) || o === "classes",
952
+ name: "MuiInputLabel",
953
+ slot: "Root",
954
+ overridesResolver: (o, n) => {
955
+ const {
956
+ ownerState: t
957
+ } = o;
958
+ return [{
959
+ [`& .${K.asterisk}`]: n.asterisk
960
+ }, n.root, t.formControl && n.formControl, t.size === "small" && n.sizeSmall, t.shrink && n.shrink, !t.disableAnimation && n.animated, t.focused && n.focused, n[t.variant]];
961
+ }
962
+ })(({
963
+ theme: o,
964
+ ownerState: n
965
+ }) => i({
966
+ display: "block",
967
+ transformOrigin: "top left",
968
+ whiteSpace: "nowrap",
969
+ overflow: "hidden",
970
+ textOverflow: "ellipsis",
971
+ maxWidth: "100%"
972
+ }, n.formControl && {
973
+ position: "absolute",
974
+ left: 0,
975
+ top: 0,
976
+ // slight alteration to spec spacing to match visual spec result
977
+ transform: "translate(0, 20px) scale(1)"
978
+ }, n.size === "small" && {
979
+ // Compensation for the `Input.inputSizeSmall` style.
980
+ transform: "translate(0, 17px) scale(1)"
981
+ }, n.shrink && {
982
+ transform: "translate(0, -1.5px) scale(0.75)",
983
+ transformOrigin: "top left",
984
+ maxWidth: "133%"
985
+ }, !n.disableAnimation && {
986
+ transition: o.transitions.create(["color", "transform", "max-width"], {
987
+ duration: o.transitions.duration.shorter,
988
+ easing: o.transitions.easing.easeOut
989
+ })
990
+ }, n.variant === "filled" && i({
991
+ // Chrome's autofill feature gives the input field a yellow background.
992
+ // Since the input field is behind the label in the HTML tree,
993
+ // the input field is drawn last and hides the label with an opaque background color.
994
+ // zIndex: 1 will raise the label above opaque background-colors of input.
995
+ zIndex: 1,
996
+ pointerEvents: "none",
997
+ transform: "translate(12px, 16px) scale(1)",
998
+ maxWidth: "calc(100% - 24px)"
999
+ }, n.size === "small" && {
1000
+ transform: "translate(12px, 13px) scale(1)"
1001
+ }, n.shrink && i({
1002
+ userSelect: "none",
1003
+ pointerEvents: "auto",
1004
+ transform: "translate(12px, 7px) scale(0.75)",
1005
+ maxWidth: "calc(133% - 24px)"
1006
+ }, n.size === "small" && {
1007
+ transform: "translate(12px, 4px) scale(0.75)"
1008
+ })), n.variant === "outlined" && i({
1009
+ // see comment above on filled.zIndex
1010
+ zIndex: 1,
1011
+ pointerEvents: "none",
1012
+ transform: "translate(14px, 16px) scale(1)",
1013
+ maxWidth: "calc(100% - 24px)"
1014
+ }, n.size === "small" && {
1015
+ transform: "translate(14px, 9px) scale(1)"
1016
+ }, n.shrink && {
1017
+ userSelect: "none",
1018
+ pointerEvents: "auto",
1019
+ // Theoretically, we should have (8+5)*2/0.75 = 34px
1020
+ // but it feels a better when it bleeds a bit on the left, so 32px.
1021
+ maxWidth: "calc(133% - 32px)",
1022
+ transform: "translate(14px, -9px) scale(0.75)"
1023
+ }))), wo = /* @__PURE__ */ l.forwardRef(function(n, t) {
1024
+ const r = Z({
1025
+ name: "MuiInputLabel",
1026
+ props: n
1027
+ }), {
1028
+ disableAnimation: s = !1,
1029
+ shrink: a,
1030
+ className: m
1031
+ } = r, y = H(r, Co), c = te();
1032
+ let d = a;
1033
+ typeof d > "u" && c && (d = c.filled || c.focused || c.adornedStart);
1034
+ const u = he({
1035
+ props: r,
1036
+ muiFormControl: c,
1037
+ states: ["size", "variant", "required", "focused"]
1038
+ }), g = i({}, r, {
1039
+ disableAnimation: s,
1040
+ formControl: c,
1041
+ shrink: d,
1042
+ size: u.size,
1043
+ variant: u.variant,
1044
+ required: u.required,
1045
+ focused: u.focused
1046
+ }), p = Oo(g);
1047
+ return /* @__PURE__ */ E(To, i({
1048
+ "data-shrink": d,
1049
+ ownerState: g,
1050
+ ref: t,
1051
+ className: j(p.root, m)
1052
+ }, y, {
1053
+ classes: p
1054
+ }));
1055
+ });
1056
+ process.env.NODE_ENV !== "production" && (wo.propTypes = {
1057
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
1058
+ // │ These PropTypes are generated from the TypeScript type definitions. │
1059
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1060
+ // └─────────────────────────────────────────────────────────────────────┘
1061
+ /**
1062
+ * The content of the component.
1063
+ */
1064
+ children: e.node,
1065
+ /**
1066
+ * Override or extend the styles applied to the component.
1067
+ */
1068
+ classes: e.object,
1069
+ /**
1070
+ * @ignore
1071
+ */
1072
+ className: e.string,
1073
+ /**
1074
+ * The color of the component.
1075
+ * It supports both default and custom theme colors, which can be added as shown in the
1076
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1077
+ */
1078
+ color: e.oneOfType([e.oneOf(["error", "info", "primary", "secondary", "success", "warning"]), e.string]),
1079
+ /**
1080
+ * If `true`, the transition animation is disabled.
1081
+ * @default false
1082
+ */
1083
+ disableAnimation: e.bool,
1084
+ /**
1085
+ * If `true`, the component is disabled.
1086
+ */
1087
+ disabled: e.bool,
1088
+ /**
1089
+ * If `true`, the label is displayed in an error state.
1090
+ */
1091
+ error: e.bool,
1092
+ /**
1093
+ * If `true`, the `input` of this label is focused.
1094
+ */
1095
+ focused: e.bool,
1096
+ /**
1097
+ * If `dense`, will adjust vertical spacing. This is normally obtained via context from
1098
+ * FormControl.
1099
+ */
1100
+ margin: e.oneOf(["dense"]),
1101
+ /**
1102
+ * if `true`, the label will indicate that the `input` is required.
1103
+ */
1104
+ required: e.bool,
1105
+ /**
1106
+ * If `true`, the label is shrunk.
1107
+ */
1108
+ shrink: e.bool,
1109
+ /**
1110
+ * The size of the component.
1111
+ * @default 'normal'
1112
+ */
1113
+ size: e.oneOfType([e.oneOf(["normal", "small"]), e.string]),
1114
+ /**
1115
+ * The system prop that allows defining system overrides as well as additional CSS styles.
1116
+ */
1117
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
1118
+ /**
1119
+ * The variant to use.
1120
+ */
1121
+ variant: e.oneOf(["filled", "outlined", "standard"])
1122
+ });
1123
+ function Eo(o) {
1124
+ return Q("MuiInputAdornment", o);
1125
+ }
1126
+ const Fe = Y("MuiInputAdornment", ["root", "filled", "standard", "outlined", "positionStart", "positionEnd", "disablePointerEvents", "hiddenLabel", "sizeSmall"]);
1127
+ var Ie;
1128
+ const Ro = ["children", "className", "component", "disablePointerEvents", "disableTypography", "position", "variant"], So = (o, n) => {
1129
+ const {
1130
+ ownerState: t
1131
+ } = o;
1132
+ return [n.root, n[`position${L(t.position)}`], t.disablePointerEvents === !0 && n.disablePointerEvents, n[t.variant]];
1133
+ }, No = (o) => {
1134
+ const {
1135
+ classes: n,
1136
+ disablePointerEvents: t,
1137
+ hiddenLabel: r,
1138
+ position: s,
1139
+ size: a,
1140
+ variant: m
1141
+ } = o, y = {
1142
+ root: ["root", t && "disablePointerEvents", s && `position${L(s)}`, m, r && "hiddenLabel", a && `size${L(a)}`]
1143
+ };
1144
+ return J(y, Eo, n);
1145
+ }, Fo = B("div", {
1146
+ name: "MuiInputAdornment",
1147
+ slot: "Root",
1148
+ overridesResolver: So
1149
+ })(({
1150
+ theme: o,
1151
+ ownerState: n
1152
+ }) => i({
1153
+ display: "flex",
1154
+ height: "0.01em",
1155
+ // Fix IE11 flexbox alignment. To remove at some point.
1156
+ maxHeight: "2em",
1157
+ alignItems: "center",
1158
+ whiteSpace: "nowrap",
1159
+ color: (o.vars || o).palette.action.active
1160
+ }, n.variant === "filled" && {
1161
+ // Styles applied to the root element if `variant="filled"`.
1162
+ [`&.${Fe.positionStart}&:not(.${Fe.hiddenLabel})`]: {
1163
+ marginTop: 16
1164
+ }
1165
+ }, n.position === "start" && {
1166
+ // Styles applied to the root element if `position="start"`.
1167
+ marginRight: 8
1168
+ }, n.position === "end" && {
1169
+ // Styles applied to the root element if `position="end"`.
1170
+ marginLeft: 8
1171
+ }, n.disablePointerEvents === !0 && {
1172
+ // Styles applied to the root element if `disablePointerEvents={true}`.
1173
+ pointerEvents: "none"
1174
+ })), Io = /* @__PURE__ */ l.forwardRef(function(n, t) {
1175
+ const r = Z({
1176
+ props: n,
1177
+ name: "MuiInputAdornment"
1178
+ }), {
1179
+ children: s,
1180
+ className: a,
1181
+ component: m = "div",
1182
+ disablePointerEvents: y = !1,
1183
+ disableTypography: c = !1,
1184
+ position: d,
1185
+ variant: u
1186
+ } = r, g = H(r, Ro), p = te() || {};
1187
+ let R = u;
1188
+ u && p.variant && process.env.NODE_ENV !== "production" && u === p.variant && console.error("MUI: The `InputAdornment` variant infers the variant prop you do not have to provide one."), p && !R && (R = p.variant);
1189
+ const O = i({}, r, {
1190
+ hiddenLabel: p.hiddenLabel,
1191
+ size: p.size,
1192
+ disablePointerEvents: y,
1193
+ position: d,
1194
+ variant: R
1195
+ }), T = No(O);
1196
+ return /* @__PURE__ */ E(be.Provider, {
1197
+ value: null,
1198
+ children: /* @__PURE__ */ E(Fo, i({
1199
+ as: m,
1200
+ ownerState: O,
1201
+ className: j(T.root, a),
1202
+ ref: t
1203
+ }, g, {
1204
+ children: typeof s == "string" && !c ? /* @__PURE__ */ E(Xe, {
1205
+ color: "text.secondary",
1206
+ children: s
1207
+ }) : /* @__PURE__ */ q(l.Fragment, {
1208
+ children: [d === "start" ? (
1209
+ /* notranslate needed while Google Translate will not fix zero-width space issue */
1210
+ Ie || (Ie = /* @__PURE__ */ E("span", {
1211
+ className: "notranslate",
1212
+ children: "​"
1213
+ }))
1214
+ ) : null, s]
1215
+ })
1216
+ }))
1217
+ });
1218
+ });
1219
+ process.env.NODE_ENV !== "production" && (Io.propTypes = {
1220
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
1221
+ // │ These PropTypes are generated from the TypeScript type definitions. │
1222
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1223
+ // └─────────────────────────────────────────────────────────────────────┘
1224
+ /**
1225
+ * The content of the component, normally an `IconButton` or string.
1226
+ */
1227
+ children: e.node,
1228
+ /**
1229
+ * Override or extend the styles applied to the component.
1230
+ */
1231
+ classes: e.object,
1232
+ /**
1233
+ * @ignore
1234
+ */
1235
+ className: e.string,
1236
+ /**
1237
+ * The component used for the root node.
1238
+ * Either a string to use a HTML element or a component.
1239
+ */
1240
+ component: e.elementType,
1241
+ /**
1242
+ * Disable pointer events on the root.
1243
+ * This allows for the content of the adornment to focus the `input` on click.
1244
+ * @default false
1245
+ */
1246
+ disablePointerEvents: e.bool,
1247
+ /**
1248
+ * If children is a string then disable wrapping in a Typography component.
1249
+ * @default false
1250
+ */
1251
+ disableTypography: e.bool,
1252
+ /**
1253
+ * The position this adornment should appear relative to the `Input`.
1254
+ */
1255
+ position: e.oneOf(["end", "start"]).isRequired,
1256
+ /**
1257
+ * The system prop that allows defining system overrides as well as additional CSS styles.
1258
+ */
1259
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
1260
+ /**
1261
+ * The variant to use.
1262
+ * Note: If you are using the `TextField` component or the `FormControl` component
1263
+ * you do not have to set this manually.
1264
+ */
1265
+ variant: e.oneOf(["filled", "outlined", "standard"])
1266
+ });
1267
+ function zo(o) {
1268
+ return Q("MuiFormControl", o);
1269
+ }
1270
+ Y("MuiFormControl", ["root", "marginNone", "marginNormal", "marginDense", "fullWidth", "disabled"]);
1271
+ const Ao = ["children", "className", "color", "component", "disabled", "error", "focused", "fullWidth", "hiddenLabel", "margin", "required", "size", "variant"], ko = (o) => {
1272
+ const {
1273
+ classes: n,
1274
+ margin: t,
1275
+ fullWidth: r
1276
+ } = o, s = {
1277
+ root: ["root", t !== "none" && `margin${L(t)}`, r && "fullWidth"]
1278
+ };
1279
+ return J(s, zo, n);
1280
+ }, Lo = B("div", {
1281
+ name: "MuiFormControl",
1282
+ slot: "Root",
1283
+ overridesResolver: ({
1284
+ ownerState: o
1285
+ }, n) => i({}, n.root, n[`margin${L(o.margin)}`], o.fullWidth && n.fullWidth)
1286
+ })(({
1287
+ ownerState: o
1288
+ }) => i({
1289
+ display: "inline-flex",
1290
+ flexDirection: "column",
1291
+ position: "relative",
1292
+ // Reset fieldset default style.
1293
+ minWidth: 0,
1294
+ padding: 0,
1295
+ margin: 0,
1296
+ border: 0,
1297
+ verticalAlign: "top"
1298
+ }, o.margin === "normal" && {
1299
+ marginTop: 16,
1300
+ marginBottom: 8
1301
+ }, o.margin === "dense" && {
1302
+ marginTop: 8,
1303
+ marginBottom: 4
1304
+ }, o.fullWidth && {
1305
+ width: "100%"
1306
+ })), Mo = /* @__PURE__ */ l.forwardRef(function(n, t) {
1307
+ const r = Z({
1308
+ props: n,
1309
+ name: "MuiFormControl"
1310
+ }), {
1311
+ children: s,
1312
+ className: a,
1313
+ color: m = "primary",
1314
+ component: y = "div",
1315
+ disabled: c = !1,
1316
+ error: d = !1,
1317
+ focused: u,
1318
+ fullWidth: g = !1,
1319
+ hiddenLabel: p = !1,
1320
+ margin: R = "none",
1321
+ required: O = !1,
1322
+ size: T = "medium",
1323
+ variant: $ = "outlined"
1324
+ } = r, v = H(r, Ao), b = i({}, r, {
1325
+ color: m,
1326
+ component: y,
1327
+ disabled: c,
1328
+ error: d,
1329
+ fullWidth: g,
1330
+ hiddenLabel: p,
1331
+ margin: R,
1332
+ required: O,
1333
+ size: T,
1334
+ variant: $
1335
+ }), C = ko(b), [x, M] = l.useState(() => {
1336
+ let I = !1;
1337
+ return s && l.Children.forEach(s, (k) => {
1338
+ if (!ue(k, ["Input", "Select"]))
1339
+ return;
1340
+ const D = ue(k, ["Select"]) ? k.props.input : k;
1341
+ D && ro(D.props) && (I = !0);
1342
+ }), I;
1343
+ }), [z, N] = l.useState(() => {
1344
+ let I = !1;
1345
+ return s && l.Children.forEach(s, (k) => {
1346
+ ue(k, ["Input", "Select"]) && (fe(k.props, !0) || fe(k.props.inputProps, !0)) && (I = !0);
1347
+ }), I;
1348
+ }), [F, A] = l.useState(!1);
1349
+ c && F && A(!1);
1350
+ const w = u !== void 0 && !c ? u : F;
1351
+ let W;
1352
+ if (process.env.NODE_ENV !== "production") {
1353
+ const I = l.useRef(!1);
1354
+ W = () => (I.current && console.error(["MUI: There are multiple `InputBase` components inside a FormControl.", "This creates visual inconsistencies, only use one `InputBase`."].join(`
1355
+ `)), I.current = !0, () => {
1356
+ I.current = !1;
1357
+ });
1358
+ }
1359
+ const V = l.useMemo(() => ({
1360
+ adornedStart: x,
1361
+ setAdornedStart: M,
1362
+ color: m,
1363
+ disabled: c,
1364
+ error: d,
1365
+ filled: z,
1366
+ focused: w,
1367
+ fullWidth: g,
1368
+ hiddenLabel: p,
1369
+ size: T,
1370
+ onBlur: () => {
1371
+ A(!1);
1372
+ },
1373
+ onEmpty: () => {
1374
+ N(!1);
1375
+ },
1376
+ onFilled: () => {
1377
+ N(!0);
1378
+ },
1379
+ onFocus: () => {
1380
+ A(!0);
1381
+ },
1382
+ registerEffect: W,
1383
+ required: O,
1384
+ variant: $
1385
+ }), [x, m, c, d, z, w, g, p, W, O, T, $]);
1386
+ return /* @__PURE__ */ E(be.Provider, {
1387
+ value: V,
1388
+ children: /* @__PURE__ */ E(Lo, i({
1389
+ as: y,
1390
+ ownerState: b,
1391
+ className: j(C.root, a),
1392
+ ref: t
1393
+ }, v, {
1394
+ children: s
1395
+ }))
1396
+ });
1397
+ });
1398
+ process.env.NODE_ENV !== "production" && (Mo.propTypes = {
1399
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
1400
+ // │ These PropTypes are generated from the TypeScript type definitions. │
1401
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
1402
+ // └─────────────────────────────────────────────────────────────────────┘
1403
+ /**
1404
+ * The content of the component.
1405
+ */
1406
+ children: e.node,
1407
+ /**
1408
+ * Override or extend the styles applied to the component.
1409
+ */
1410
+ classes: e.object,
1411
+ /**
1412
+ * @ignore
1413
+ */
1414
+ className: e.string,
1415
+ /**
1416
+ * The color of the component.
1417
+ * It supports both default and custom theme colors, which can be added as shown in the
1418
+ * [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).
1419
+ * @default 'primary'
1420
+ */
1421
+ color: e.oneOfType([e.oneOf(["primary", "secondary", "error", "info", "success", "warning"]), e.string]),
1422
+ /**
1423
+ * The component used for the root node.
1424
+ * Either a string to use a HTML element or a component.
1425
+ */
1426
+ component: e.elementType,
1427
+ /**
1428
+ * If `true`, the label, input and helper text should be displayed in a disabled state.
1429
+ * @default false
1430
+ */
1431
+ disabled: e.bool,
1432
+ /**
1433
+ * If `true`, the label is displayed in an error state.
1434
+ * @default false
1435
+ */
1436
+ error: e.bool,
1437
+ /**
1438
+ * If `true`, the component is displayed in focused state.
1439
+ */
1440
+ focused: e.bool,
1441
+ /**
1442
+ * If `true`, the component will take up the full width of its container.
1443
+ * @default false
1444
+ */
1445
+ fullWidth: e.bool,
1446
+ /**
1447
+ * If `true`, the label is hidden.
1448
+ * This is used to increase density for a `FilledInput`.
1449
+ * Be sure to add `aria-label` to the `input` element.
1450
+ * @default false
1451
+ */
1452
+ hiddenLabel: e.bool,
1453
+ /**
1454
+ * If `dense` or `normal`, will adjust vertical spacing of this and contained components.
1455
+ * @default 'none'
1456
+ */
1457
+ margin: e.oneOf(["dense", "none", "normal"]),
1458
+ /**
1459
+ * If `true`, the label will indicate that the `input` is required.
1460
+ * @default false
1461
+ */
1462
+ required: e.bool,
1463
+ /**
1464
+ * The size of the component.
1465
+ * @default 'medium'
1466
+ */
1467
+ size: e.oneOfType([e.oneOf(["medium", "small"]), e.string]),
1468
+ /**
1469
+ * The system prop that allows defining system overrides as well as additional CSS styles.
1470
+ */
1471
+ sx: e.oneOfType([e.arrayOf(e.oneOfType([e.func, e.object, e.bool])), e.func, e.object]),
1472
+ /**
1473
+ * The variant to use.
1474
+ * @default 'outlined'
1475
+ */
1476
+ variant: e.oneOf(["filled", "outlined", "standard"])
1477
+ });
1478
+ export {
1479
+ Mo as F,
1480
+ wo as I,
1481
+ Io as a,
1482
+ uo as b,
1483
+ po as c,
1484
+ lo as d,
1485
+ mo as e,
1486
+ he as f,
1487
+ eo as g,
1488
+ fe as h,
1489
+ me as i,
1490
+ ao as r
1491
+ };