@startdownnotez404/ui 1.3.5 → 1.3.6

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 (254) hide show
  1. package/dist/AutocompleteField-653233JU.mjs +203 -0
  2. package/dist/AutocompleteField-653233JU.mjs.map +1 -0
  3. package/dist/AvatarField-KFASMVZU.mjs +378 -0
  4. package/dist/AvatarField-KFASMVZU.mjs.map +1 -0
  5. package/dist/{DateField-ZYMZFHL4.mjs → DateField-CDJ6W6XF.mjs} +19 -7
  6. package/dist/DateField-CDJ6W6XF.mjs.map +1 -0
  7. package/dist/DateRangeField-ZWSFT5KV.mjs +118 -0
  8. package/dist/DateRangeField-ZWSFT5KV.mjs.map +1 -0
  9. package/dist/{DateTimeField-TPTJ7YIZ.mjs → DateTimeField-SFAF4I6A.mjs} +36 -11
  10. package/dist/DateTimeField-SFAF4I6A.mjs.map +1 -0
  11. package/dist/FileUploadField-TSNCSLXX.mjs +101 -0
  12. package/dist/FileUploadField-TSNCSLXX.mjs.map +1 -0
  13. package/dist/{JSONEditorField-TMRWGXVR.mjs → JSONEditorField-3KXC2GOG.mjs} +7 -6
  14. package/dist/{JSONEditorField-TMRWGXVR.mjs.map → JSONEditorField-3KXC2GOG.mjs.map} +1 -1
  15. package/dist/{PopperMenu-LJ36RPBW.mjs → PopperMenu-PSHLKIEZ.mjs} +26 -12
  16. package/dist/{PopperMenu-LJ36RPBW.mjs.map → PopperMenu-PSHLKIEZ.mjs.map} +1 -1
  17. package/dist/{TelField-LOGRVZ4I.mjs → TelField-FRQT2UBJ.mjs} +8 -7
  18. package/dist/{TelField-LOGRVZ4I.mjs.map → TelField-FRQT2UBJ.mjs.map} +1 -1
  19. package/dist/TimeField-XVWXBJID.mjs +94 -0
  20. package/dist/TimeField-XVWXBJID.mjs.map +1 -0
  21. package/dist/alert.d.mts +148 -18
  22. package/dist/alert.d.ts +148 -18
  23. package/dist/alert.js +698 -254
  24. package/dist/alert.js.map +1 -1
  25. package/dist/alert.mjs +46 -10
  26. package/dist/autocomplete.d.mts +438 -4
  27. package/dist/autocomplete.d.ts +438 -4
  28. package/dist/autocomplete.js +632 -21
  29. package/dist/autocomplete.js.map +1 -1
  30. package/dist/autocomplete.mjs +26 -7
  31. package/dist/avatar.js +2 -1
  32. package/dist/avatar.js.map +1 -1
  33. package/dist/avatar.mjs +12 -11
  34. package/dist/box.mjs +2 -1
  35. package/dist/button.mjs +3 -2
  36. package/dist/chart.mjs +3 -2
  37. package/dist/checkbox.mjs +3 -2
  38. package/dist/chunk-2FK24ZPJ.mjs +78 -0
  39. package/dist/chunk-2FK24ZPJ.mjs.map +1 -0
  40. package/dist/{chunk-V26V2S3W.mjs → chunk-3O3N6X6D.mjs} +3 -3
  41. package/dist/{chunk-Y74ALKBL.mjs → chunk-4MSPA7U7.mjs} +11 -9
  42. package/dist/{chunk-Y74ALKBL.mjs.map → chunk-4MSPA7U7.mjs.map} +1 -1
  43. package/dist/{chunk-24XDGNJ6.mjs → chunk-4P45Z5LR.mjs} +63 -41
  44. package/dist/chunk-4P45Z5LR.mjs.map +1 -0
  45. package/dist/chunk-4SSJY32J.mjs +1182 -0
  46. package/dist/chunk-4SSJY32J.mjs.map +1 -0
  47. package/dist/{chunk-XJ2SXC2Q.mjs → chunk-6B6I27TT.mjs} +18 -16
  48. package/dist/{chunk-XJ2SXC2Q.mjs.map → chunk-6B6I27TT.mjs.map} +1 -1
  49. package/dist/chunk-6JKMEH2L.mjs +205 -0
  50. package/dist/chunk-6JKMEH2L.mjs.map +1 -0
  51. package/dist/{chunk-IN3O4R7Q.mjs → chunk-7O526A2D.mjs} +6 -4
  52. package/dist/{chunk-IN3O4R7Q.mjs.map → chunk-7O526A2D.mjs.map} +1 -1
  53. package/dist/chunk-AFLEG5ZC.mjs +28 -0
  54. package/dist/chunk-AFLEG5ZC.mjs.map +1 -0
  55. package/dist/{chunk-UGMRJMFZ.mjs → chunk-BO5CU4ZM.mjs} +4 -4
  56. package/dist/{chunk-JIU5GVM7.mjs → chunk-D4XPNSSI.mjs} +5 -3
  57. package/dist/{chunk-JIU5GVM7.mjs.map → chunk-D4XPNSSI.mjs.map} +1 -1
  58. package/dist/chunk-DPIMA5IO.mjs +72 -0
  59. package/dist/chunk-DPIMA5IO.mjs.map +1 -0
  60. package/dist/chunk-F2CGFVIZ.mjs +83 -0
  61. package/dist/chunk-F2CGFVIZ.mjs.map +1 -0
  62. package/dist/{chunk-R5MKQN6D.mjs → chunk-FBLSJQWK.mjs} +3 -3
  63. package/dist/{chunk-BGB7JHIU.mjs → chunk-FMGZCOJC.mjs} +5 -3
  64. package/dist/{chunk-BGB7JHIU.mjs.map → chunk-FMGZCOJC.mjs.map} +1 -1
  65. package/dist/{chunk-UTVSYS6S.mjs → chunk-FNSIQ2B7.mjs} +18 -6
  66. package/dist/chunk-FNSIQ2B7.mjs.map +1 -0
  67. package/dist/{chunk-JWANK42G.mjs → chunk-FUZ2JNTZ.mjs} +3 -3
  68. package/dist/{chunk-CRYIEYZZ.mjs → chunk-HAJWE62X.mjs} +66 -42
  69. package/dist/chunk-HAJWE62X.mjs.map +1 -0
  70. package/dist/{chunk-CWFWRZWU.mjs → chunk-KSN33A6I.mjs} +3 -2
  71. package/dist/{chunk-CWFWRZWU.mjs.map → chunk-KSN33A6I.mjs.map} +1 -1
  72. package/dist/chunk-KYTHGFFY.mjs +866 -0
  73. package/dist/chunk-KYTHGFFY.mjs.map +1 -0
  74. package/dist/{chunk-QKGCW37O.mjs → chunk-LDFM46LV.mjs} +5 -3
  75. package/dist/{chunk-QKGCW37O.mjs.map → chunk-LDFM46LV.mjs.map} +1 -1
  76. package/dist/chunk-LQNDBPHU.mjs +142 -0
  77. package/dist/chunk-LQNDBPHU.mjs.map +1 -0
  78. package/dist/{chunk-E3I2VDHZ.mjs → chunk-M2PYXSAF.mjs} +6 -4
  79. package/dist/{chunk-E3I2VDHZ.mjs.map → chunk-M2PYXSAF.mjs.map} +1 -1
  80. package/dist/{chunk-DELCADNF.mjs → chunk-ODVKRIVN.mjs} +30 -30
  81. package/dist/{chunk-HR3A4H4E.mjs → chunk-PEJL2T2K.mjs} +13 -11
  82. package/dist/{chunk-HR3A4H4E.mjs.map → chunk-PEJL2T2K.mjs.map} +1 -1
  83. package/dist/{chunk-OGNGPI3M.mjs → chunk-PL55YKT4.mjs} +2 -2
  84. package/dist/{chunk-S6EZVRZC.mjs → chunk-PNSJC6PC.mjs} +5 -28
  85. package/dist/chunk-PNSJC6PC.mjs.map +1 -0
  86. package/dist/{chunk-TDRA5EZI.mjs → chunk-PUREEN2J.mjs} +7 -7
  87. package/dist/chunk-QFS5CENY.mjs +659 -0
  88. package/dist/chunk-QFS5CENY.mjs.map +1 -0
  89. package/dist/chunk-RSN7NH2J.mjs +250 -0
  90. package/dist/chunk-RSN7NH2J.mjs.map +1 -0
  91. package/dist/{chunk-UDREPVEY.mjs → chunk-RVSMEZE3.mjs} +12 -78
  92. package/dist/chunk-RVSMEZE3.mjs.map +1 -0
  93. package/dist/{chunk-SRWPHN2N.mjs → chunk-S64IYJ6Y.mjs} +2 -2
  94. package/dist/{chunk-ZG3NQI77.mjs → chunk-SMD7OEUW.mjs} +6 -4
  95. package/dist/{chunk-ZG3NQI77.mjs.map → chunk-SMD7OEUW.mjs.map} +1 -1
  96. package/dist/{chunk-NJYNJLT7.mjs → chunk-SWFB3A3G.mjs} +2 -2
  97. package/dist/{chunk-RXBQ7KXF.mjs → chunk-USXGNKWJ.mjs} +98 -44
  98. package/dist/chunk-USXGNKWJ.mjs.map +1 -0
  99. package/dist/{chunk-OJV6V7YZ.mjs → chunk-VL7V52YD.mjs} +27 -20
  100. package/dist/chunk-VL7V52YD.mjs.map +1 -0
  101. package/dist/{chunk-2ZZJTBTE.mjs → chunk-WJZ3IYET.mjs} +2 -2
  102. package/dist/chunk-XAJAMVAG.mjs +1720 -0
  103. package/dist/chunk-XAJAMVAG.mjs.map +1 -0
  104. package/dist/chunk-YIJ5QVJ6.mjs +277 -0
  105. package/dist/chunk-YIJ5QVJ6.mjs.map +1 -0
  106. package/dist/{chunk-T6AMRENK.mjs → chunk-YRW5NKD7.mjs} +148 -112
  107. package/dist/chunk-YRW5NKD7.mjs.map +1 -0
  108. package/dist/chunk-ZMJKG2UI.mjs +71 -0
  109. package/dist/chunk-ZMJKG2UI.mjs.map +1 -0
  110. package/dist/confirm.d.mts +48 -0
  111. package/dist/confirm.d.ts +48 -0
  112. package/dist/confirm.js +334 -0
  113. package/dist/confirm.js.map +1 -0
  114. package/dist/confirm.mjs +20 -0
  115. package/dist/datePicker.d.mts +256 -14
  116. package/dist/datePicker.d.ts +256 -14
  117. package/dist/datePicker.js +1624 -145
  118. package/dist/datePicker.js.map +1 -1
  119. package/dist/datePicker.mjs +19 -6
  120. package/dist/dialog.d.mts +166 -0
  121. package/dist/dialog.d.ts +166 -0
  122. package/dist/dialog.js +362 -0
  123. package/dist/dialog.js.map +1 -0
  124. package/dist/dialog.mjs +45 -0
  125. package/dist/emptyState.d.mts +17 -0
  126. package/dist/emptyState.d.ts +17 -0
  127. package/dist/emptyState.js +253 -0
  128. package/dist/emptyState.js.map +1 -0
  129. package/dist/emptyState.mjs +12 -0
  130. package/dist/emptyState.mjs.map +1 -0
  131. package/dist/errorState.d.mts +18 -0
  132. package/dist/errorState.d.ts +18 -0
  133. package/dist/{displayFile.js → errorState.js} +107 -156
  134. package/dist/errorState.js.map +1 -0
  135. package/dist/errorState.mjs +15 -0
  136. package/dist/errorState.mjs.map +1 -0
  137. package/dist/fileUpload.d.mts +197 -0
  138. package/dist/fileUpload.d.ts +197 -0
  139. package/dist/fileUpload.js +1483 -0
  140. package/dist/fileUpload.js.map +1 -0
  141. package/dist/fileUpload.mjs +65 -0
  142. package/dist/fileUpload.mjs.map +1 -0
  143. package/dist/flowMap.mjs +7 -6
  144. package/dist/flowMap.mjs.map +1 -1
  145. package/dist/image.js +1195 -429
  146. package/dist/image.js.map +1 -1
  147. package/dist/image.mjs +8 -6
  148. package/dist/index.d.ts +7 -2
  149. package/dist/index.js +8606 -4087
  150. package/dist/index.js.map +1 -1
  151. package/dist/index.mjs +314 -152
  152. package/dist/inlineError.d.mts +16 -0
  153. package/dist/inlineError.d.ts +16 -0
  154. package/dist/inlineError.js +297 -0
  155. package/dist/inlineError.js.map +1 -0
  156. package/dist/inlineError.mjs +15 -0
  157. package/dist/inlineError.mjs.map +1 -0
  158. package/dist/input.mjs +8 -7
  159. package/dist/jsonEditor.mjs +3 -2
  160. package/dist/list.mjs +7 -6
  161. package/dist/loading.mjs +8 -6
  162. package/dist/markdown.mjs +7 -6
  163. package/dist/markdown.mjs.map +1 -1
  164. package/dist/menu.mjs +9 -8
  165. package/dist/modal.js +2 -1
  166. package/dist/modal.js.map +1 -1
  167. package/dist/modal.mjs +7 -5
  168. package/dist/process.d.mts +33 -75
  169. package/dist/process.d.ts +33 -75
  170. package/dist/process.js +1275 -203
  171. package/dist/process.js.map +1 -1
  172. package/dist/process.mjs +12 -9
  173. package/dist/scrollToLoad.mjs +4 -3
  174. package/dist/select.mjs +10 -9
  175. package/dist/skeleton.d.mts +15 -1
  176. package/dist/skeleton.d.ts +15 -1
  177. package/dist/skeleton.js +114 -2
  178. package/dist/skeleton.js.map +1 -1
  179. package/dist/skeleton.mjs +6 -3
  180. package/dist/stepper.mjs +4 -3
  181. package/dist/tab.mjs +10 -9
  182. package/dist/table.d.mts +269 -85
  183. package/dist/table.d.ts +269 -85
  184. package/dist/table.js +5102 -3153
  185. package/dist/table.js.map +1 -1
  186. package/dist/table.mjs +21 -19
  187. package/dist/theme.js +1766 -432
  188. package/dist/theme.js.map +1 -1
  189. package/dist/theme.mjs +32 -25
  190. package/dist/timeline.mjs +4 -3
  191. package/dist/toast.d.mts +49 -0
  192. package/dist/toast.d.ts +49 -0
  193. package/dist/toast.js +175 -0
  194. package/dist/toast.js.map +1 -0
  195. package/dist/toast.mjs +9 -0
  196. package/dist/toast.mjs.map +1 -0
  197. package/dist/toggleButtonGroup.mjs +3 -2
  198. package/dist/useForm.d.mts +270 -86
  199. package/dist/useForm.d.ts +270 -86
  200. package/dist/useForm.js +4672 -2727
  201. package/dist/useForm.js.map +1 -1
  202. package/dist/useForm.mjs +18 -16
  203. package/dist/useSearch.mjs +13 -12
  204. package/dist/variablesRenderer.mjs +8 -7
  205. package/package.json +3 -3
  206. package/dist/AutocompleteField-ZKNU2IRR.mjs +0 -181
  207. package/dist/AutocompleteField-ZKNU2IRR.mjs.map +0 -1
  208. package/dist/AvatarField-SAODT3CZ.mjs +0 -275
  209. package/dist/AvatarField-SAODT3CZ.mjs.map +0 -1
  210. package/dist/DateField-ZYMZFHL4.mjs.map +0 -1
  211. package/dist/DateTimeField-TPTJ7YIZ.mjs.map +0 -1
  212. package/dist/FileUploadField-NTMWBJER.mjs +0 -78
  213. package/dist/FileUploadField-NTMWBJER.mjs.map +0 -1
  214. package/dist/chunk-24XDGNJ6.mjs.map +0 -1
  215. package/dist/chunk-27KYFU7R.mjs +0 -30
  216. package/dist/chunk-27KYFU7R.mjs.map +0 -1
  217. package/dist/chunk-AAH2O24U.mjs +0 -325
  218. package/dist/chunk-AAH2O24U.mjs.map +0 -1
  219. package/dist/chunk-CRYIEYZZ.mjs.map +0 -1
  220. package/dist/chunk-EEH7HACG.mjs +0 -249
  221. package/dist/chunk-EEH7HACG.mjs.map +0 -1
  222. package/dist/chunk-EKPULYPU.mjs +0 -497
  223. package/dist/chunk-EKPULYPU.mjs.map +0 -1
  224. package/dist/chunk-OJV6V7YZ.mjs.map +0 -1
  225. package/dist/chunk-RXBQ7KXF.mjs.map +0 -1
  226. package/dist/chunk-S6EZVRZC.mjs.map +0 -1
  227. package/dist/chunk-SGCUDWO3.mjs +0 -396
  228. package/dist/chunk-SGCUDWO3.mjs.map +0 -1
  229. package/dist/chunk-T6AMRENK.mjs.map +0 -1
  230. package/dist/chunk-UDREPVEY.mjs.map +0 -1
  231. package/dist/chunk-UTVSYS6S.mjs.map +0 -1
  232. package/dist/chunk-XIMFP6RB.mjs +0 -161
  233. package/dist/chunk-XIMFP6RB.mjs.map +0 -1
  234. package/dist/displayFile.d.mts +0 -95
  235. package/dist/displayFile.d.ts +0 -95
  236. package/dist/displayFile.js.map +0 -1
  237. package/dist/displayFile.mjs +0 -19
  238. package/dist/fileUploader.d.mts +0 -86
  239. package/dist/fileUploader.d.ts +0 -86
  240. package/dist/fileUploader.js +0 -722
  241. package/dist/fileUploader.js.map +0 -1
  242. package/dist/fileUploader.mjs +0 -16
  243. /package/dist/{chunk-V26V2S3W.mjs.map → chunk-3O3N6X6D.mjs.map} +0 -0
  244. /package/dist/{chunk-UGMRJMFZ.mjs.map → chunk-BO5CU4ZM.mjs.map} +0 -0
  245. /package/dist/{chunk-R5MKQN6D.mjs.map → chunk-FBLSJQWK.mjs.map} +0 -0
  246. /package/dist/{chunk-JWANK42G.mjs.map → chunk-FUZ2JNTZ.mjs.map} +0 -0
  247. /package/dist/{chunk-DELCADNF.mjs.map → chunk-ODVKRIVN.mjs.map} +0 -0
  248. /package/dist/{chunk-OGNGPI3M.mjs.map → chunk-PL55YKT4.mjs.map} +0 -0
  249. /package/dist/{chunk-TDRA5EZI.mjs.map → chunk-PUREEN2J.mjs.map} +0 -0
  250. /package/dist/{chunk-SRWPHN2N.mjs.map → chunk-S64IYJ6Y.mjs.map} +0 -0
  251. /package/dist/{chunk-NJYNJLT7.mjs.map → chunk-SWFB3A3G.mjs.map} +0 -0
  252. /package/dist/{chunk-2ZZJTBTE.mjs.map → chunk-WJZ3IYET.mjs.map} +0 -0
  253. /package/dist/{displayFile.mjs.map → confirm.mjs.map} +0 -0
  254. /package/dist/{fileUploader.mjs.map → dialog.mjs.map} +0 -0
@@ -0,0 +1,83 @@
1
+ import {
2
+ default106 as default4,
3
+ default145 as default5
4
+ } from "./chunk-ZVFYOXDE.mjs";
5
+ import {
6
+ Button
7
+ } from "./chunk-D4XPNSSI.mjs";
8
+ import {
9
+ default as default3
10
+ } from "./chunk-4RPFRNXG.mjs";
11
+ import {
12
+ default as default2
13
+ } from "./chunk-PNSJC6PC.mjs";
14
+
15
+ // src/components/elemental/ErrorState/src/ErrorState.tsx
16
+ import { jsx, jsxs } from "react/jsx-runtime";
17
+ function ErrorState({
18
+ icon,
19
+ title = "Something went wrong",
20
+ description,
21
+ retry,
22
+ retryLabel = "Try again",
23
+ sx
24
+ }) {
25
+ return /* @__PURE__ */ jsxs(
26
+ default2,
27
+ {
28
+ role: "alert",
29
+ "data-testid": "error-state",
30
+ sx: [
31
+ {
32
+ display: "flex",
33
+ flexDirection: "column",
34
+ alignItems: "center",
35
+ justifyContent: "center",
36
+ textAlign: "center",
37
+ gap: 1,
38
+ px: 3,
39
+ py: 4,
40
+ borderRadius: "16px",
41
+ border: "1px dashed var(--mui-palette-border-1)",
42
+ backgroundColor: "color-mix(in srgb, var(--mui-palette-error-main) 5%, var(--mui-palette-background-paper))",
43
+ boxSizing: "border-box",
44
+ minHeight: 160
45
+ },
46
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
47
+ ],
48
+ children: [
49
+ /* @__PURE__ */ jsx(
50
+ default2,
51
+ {
52
+ "aria-hidden": true,
53
+ sx: { color: "var(--mui-palette-error-main)", display: "flex", opacity: 0.9 },
54
+ children: icon ?? /* @__PURE__ */ jsx(default5, { sx: { fontSize: 40 } })
55
+ }
56
+ ),
57
+ typeof title === "string" ? /* @__PURE__ */ jsx(default3, { variant: "subtitle1", sx: { m: 0, fontWeight: 600 }, children: title }) : title,
58
+ description ? typeof description === "string" ? /* @__PURE__ */ jsx(default3, { variant: "body2", color: "text.secondary", sx: { m: 0, maxWidth: 360 }, children: description }) : description : null,
59
+ retry ? /* @__PURE__ */ jsx(
60
+ Button,
61
+ {
62
+ size: "small",
63
+ variant: "outlined",
64
+ color: "error",
65
+ onClick: retry,
66
+ startIcon: /* @__PURE__ */ jsx(default4, {}),
67
+ sx: {
68
+ mt: 0.5,
69
+ textTransform: "none",
70
+ borderColor: "var(--mui-palette-border-1)"
71
+ },
72
+ children: retryLabel
73
+ }
74
+ ) : null
75
+ ]
76
+ }
77
+ );
78
+ }
79
+
80
+ export {
81
+ ErrorState
82
+ };
83
+ //# sourceMappingURL=chunk-F2CGFVIZ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/elemental/ErrorState/src/ErrorState.tsx"],"sourcesContent":["'use client'\nimport type React from 'react'\nimport { Box } from '@/ele/Box'\nimport { Typography } from '@/ele/Typography'\nimport { Button } from '@/ele/Button'\nimport { ErrorOutlineOutlinedIcon, ReplayIcon } from '@/icons/MuiIcon'\n\nexport type ErrorStateProps = {\n icon?: React.ReactNode\n title?: React.ReactNode\n description?: React.ReactNode\n retry?: () => void\n retryLabel?: string\n sx?: React.ComponentProps<typeof Box>['sx']\n}\n\n/**\n * Page/section-level error with soft dashed frame and optional retry.\n */\nexport function ErrorState({\n icon,\n title = 'Something went wrong',\n description,\n retry,\n retryLabel = 'Try again',\n sx,\n}: ErrorStateProps) {\n return (\n <Box\n role=\"alert\"\n data-testid=\"error-state\"\n sx={[\n {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n textAlign: 'center',\n gap: 1,\n px: 3,\n py: 4,\n borderRadius: '16px',\n border: '1px dashed var(--mui-palette-border-1)',\n backgroundColor:\n 'color-mix(in srgb, var(--mui-palette-error-main) 5%, var(--mui-palette-background-paper))',\n boxSizing: 'border-box',\n minHeight: 160,\n },\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ] as never}\n >\n <Box\n aria-hidden\n sx={{ color: 'var(--mui-palette-error-main)', display: 'flex', opacity: 0.9 }}\n >\n {icon ?? <ErrorOutlineOutlinedIcon sx={{ fontSize: 40 }} />}\n </Box>\n {typeof title === 'string' ? (\n <Typography variant=\"subtitle1\" sx={{ m: 0, fontWeight: 600 }}>\n {title}\n </Typography>\n ) : (\n title\n )}\n {description ? (\n typeof description === 'string' ? (\n <Typography variant=\"body2\" color=\"text.secondary\" sx={{ m: 0, maxWidth: 360 }}>\n {description}\n </Typography>\n ) : (\n description\n )\n ) : null}\n {retry ? (\n <Button\n size=\"small\"\n variant=\"outlined\"\n color=\"error\"\n onClick={retry}\n startIcon={<ReplayIcon />}\n sx={{\n mt: 0.5,\n textTransform: 'none',\n borderColor: 'var(--mui-palette-border-1)',\n }}\n >\n {retryLabel}\n </Button>\n ) : null}\n </Box>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;AA4BI,SA2Ba,KA3Bb;AATG,SAAS,WAAW;AAAA,EACzB;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AACF,GAAoB;AAClB,SACE;AAAA,IAACA;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,eAAY;AAAA,MACZ,IAAI;AAAA,QACF;AAAA,UACE,SAAS;AAAA,UACT,eAAe;AAAA,UACf,YAAY;AAAA,UACZ,gBAAgB;AAAA,UAChB,WAAW;AAAA,UACX,KAAK;AAAA,UACL,IAAI;AAAA,UACJ,IAAI;AAAA,UACJ,cAAc;AAAA,UACd,QAAQ;AAAA,UACR,iBACE;AAAA,UACF,WAAW;AAAA,UACX,WAAW;AAAA,QACb;AAAA,QACA,GAAI,MAAM,QAAQ,EAAE,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,CAAC;AAAA,MAC5C;AAAA,MAEA;AAAA;AAAA,UAACA;AAAA,UAAA;AAAA,YACC,eAAW;AAAA,YACX,IAAI,EAAE,OAAO,iCAAiC,SAAS,QAAQ,SAAS,IAAI;AAAA,YAE3E,kBAAQ,oBAACA,UAAA,EAAyB,IAAI,EAAE,UAAU,GAAG,GAAG;AAAA;AAAA,QAC3D;AAAA,QACC,OAAO,UAAU,WAChB,oBAACA,UAAA,EAAW,SAAQ,aAAY,IAAI,EAAE,GAAG,GAAG,YAAY,IAAI,GACzD,iBACH,IAEA;AAAA,QAED,cACC,OAAO,gBAAgB,WACrB,oBAACA,UAAA,EAAW,SAAQ,SAAQ,OAAM,kBAAiB,IAAI,EAAE,GAAG,GAAG,UAAU,IAAI,GAC1E,uBACH,IAEA,cAEA;AAAA,QACH,QACC;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,OAAM;AAAA,YACN,SAAS;AAAA,YACT,WAAW,oBAACA,UAAA,EAAW;AAAA,YACvB,IAAI;AAAA,cACF,IAAI;AAAA,cACJ,eAAe;AAAA,cACf,aAAa;AAAA,YACf;AAAA,YAEC;AAAA;AAAA,QACH,IACE;AAAA;AAAA;AAAA,EACN;AAEJ;","names":["default"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  LineInput_default
3
- } from "./chunk-ZG3NQI77.mjs";
3
+ } from "./chunk-SMD7OEUW.mjs";
4
4
  import {
5
5
  default as default3
6
6
  } from "./chunk-MDAUF7IL.mjs";
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-ZVFYOXDE.mjs";
10
10
  import {
11
11
  default as default2
12
- } from "./chunk-S6EZVRZC.mjs";
12
+ } from "./chunk-PNSJC6PC.mjs";
13
13
 
14
14
  // src/components/elemental/VariablesRenderer/Var/Var.tsx
15
15
  import { useState, useEffect, useRef } from "react";
@@ -224,4 +224,4 @@ export {
224
224
  Var,
225
225
  VarField
226
226
  };
227
- //# sourceMappingURL=chunk-R5MKQN6D.mjs.map
227
+ //# sourceMappingURL=chunk-FBLSJQWK.mjs.map
@@ -6,9 +6,11 @@ import {
6
6
  } from "./chunk-T4X375IG.mjs";
7
7
  import {
8
8
  default as default2,
9
- default2 as default3,
9
+ default2 as default3
10
+ } from "./chunk-PNSJC6PC.mjs";
11
+ import {
10
12
  mergeSx
11
- } from "./chunk-S6EZVRZC.mjs";
13
+ } from "./chunk-AFLEG5ZC.mjs";
12
14
 
13
15
  // src/components/elemental/Checkbox/src/Checkbox/index.ts
14
16
  import { default as default6 } from "@mui/material/Checkbox";
@@ -219,4 +221,4 @@ export {
219
221
  default6 as default,
220
222
  CheckboxGroup
221
223
  };
222
- //# sourceMappingURL=chunk-BGB7JHIU.mjs.map
224
+ //# sourceMappingURL=chunk-FMGZCOJC.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/elemental/Checkbox/src/Checkbox/index.ts","../src/components/elemental/Checkbox/src/Checkbox/theme.ts","../src/components/elemental/Checkbox/src/CheckboxGroup/CheckboxGroup.tsx"],"sourcesContent":["export {default as Checkbox} from '@mui/material/Checkbox'\nexport * from './theme'","import type { MuiComponentTheme } from '@/_utils/_types'\n\nexport const checkboxTheme = {\n defaultProps: {\n },\n styleOverrides: {\n root: {\n '--checkbox-color': 'var(--mui-palette-text-grey-1)',\n '--checkbox-selected-bg':'var(--mui-palette-primary-emphasis)',\n\n color: 'var(--checkbox-color)',\n\n \"&.MuiCheckbox-colorPrimary\":{\n '--checkbox-selected-bg': 'var(--mui-palette-primary-emphasis)',\n },\n\n \"&.MuiCheckbox-colorError\":{\n '--checkbox-color': 'var(--mui-palette-error-main)',\n },\n\n \"&.Mui-checked, &.MuiCheckbox-indeterminate\": {\n color: 'var(--checkbox-selected-bg)',\n\n \"&.MuiCheckbox-colorError\":{\n color: 'var(--mui-palette-error-main)',\n }\n },\n\n // check label\n [`&.MuiCheckbox-root + .MuiFormControlLabel-label,\n &.MuiCheckbox-root + .MuiFormControlLabel-label .MuiFormLabel-root\n `]: {\n fontSize: 'inherit',\n },\n },\n },\n} satisfies MuiComponentTheme<'MuiCheckbox'>","import { FormControl as MuiFormControl, FormControlLabel as MuiFormControlLabel, FormHelperText as MuiFormHelperText, FormLabel as MuiFormLabel } from '@/ele/Form'\nimport { type FormControlProps } from '@mui/material/FormControl'\nimport MuiFormGroup, { type FormGroupProps } from '@mui/material/FormGroup'\nimport { Box, Stack as MuiStack } from '@/ele/Box'\n\nimport { Checkbox as MuiCheckBox } from '../Checkbox'\nimport { mergeSx } from '@/_utils/_func'\n\nexport interface CheckOptionType{\n id:string;\n label:string;\n}\ntype CheckedStateValue = CheckOptionType['id'][]\ntype OnCheck = (option:CheckOptionType)=>void\n\nexport default function CheckboxGroup({\n error,\n required = false,\n options,\n setCheckedIds,\n title,\n titleSuffix,\n inputProps,\n checkedIds,\n helperText,\n errorText,\n direction = \"row\",\n slotProps = {},\n}: {\n error?: boolean,\n title?: React.ComponentProps<typeof MuiFormLabel>['children'],\n titleSuffix?: React.ComponentProps<typeof MuiFormLabel>['children'],\n options: CheckOptionType[];\n setCheckedIds?: React.Dispatch<React.SetStateAction<CheckedStateValue>>;\n checkedIds: CheckedStateValue;\n required?: boolean,\n helperText?: string,\n errorText?: string,\n direction?: 'row' | 'column',\n inputProps?: NonNullable<React.ComponentProps<typeof MuiCheckBox>['slotProps']>['input'],\n slotProps?: {\n fieldset?: Partial<FormControlProps>,\n group?: Partial<Omit<FormGroupProps, \"row\">>,\n }\n}) {\n\n const onCheck:OnCheck = (option:CheckOptionType) => {\n if(!setCheckedIds)return;\n\n setCheckedIds(old=>{\n if(old.includes(option.id)){\n return old.filter(v=>v!==option.id)\n }else{\n return [...old,option.id]\n }\n })\n }\n\n const onCheckAll = () => {\n if(!setCheckedIds)return;\n\n if(checkedIds.length === options.length){\n setCheckedIds([])\n }else{\n setCheckedIds(options.map(o=>o.id))\n }\n }\n\n return (\n <MuiFormControl required={required} error={error}\n component=\"fieldset\" variant=\"standard\"\n\n {...slotProps?.fieldset}\n sx={mergeSx({ maxWidth:\"100%\" }, slotProps?.fieldset?.sx)}>\n <MuiFormGroup {...slotProps?.group} row={false}>\n <Parent onCheckAll={onCheckAll} \n\n isMoreThanOne={options.length>1}\n ceckedSize={checkedIds.length}\n allOptionsSize={options.length}\n\n error={!!error}\n required={required}\n title={title} titleSuffix={titleSuffix}\n />\n <OptionsCheckbox \n direction={direction}\n options={options}\n selectedValues={checkedIds}\n onCheck={onCheck}\n inputProps={inputProps}\n error={!!error}\n />\n\n {(helperText || errorText) && <MuiFormHelperText error={!!error}>{errorText ? errorText : helperText}</MuiFormHelperText>}\n </MuiFormGroup>\n </MuiFormControl>\n )\n}\n\n// CHANGE 3: Refactored sub-component to use state array\nfunction OptionsCheckbox(p:{\n direction: 'row' | 'column',\n options: CheckOptionType[],\n selectedValues: CheckedStateValue, // Receive state array\n onCheck?:OnCheck,\n inputProps?: NonNullable<React.ComponentProps<typeof MuiCheckBox>['slotProps']>['input'],\n error?: boolean,\n\n}){\n const {direction, options, onCheck, inputProps, error, selectedValues} = p;\n \n return (\n <MuiStack direction={direction} spacing={1} maxWidth=\"100%\" ml={1}>\n {options.map((option,index) => {\n // Determine checked state by checking if value exists in array\n const isChecked = selectedValues.includes(option.id);\n \n return (\n <MuiFormControlLabel\n sx={{\n gap:0.5,marginLeft:0,\n maxWidth:\"100%\",\n }}\n key={index}\n color={error ? 'error' : 'primary'}\n control={\n <MuiCheckBox \n sx={{p:0}}\n value={option.id} \n checked={isChecked} \n onChange={onCheck ?\n () => onCheck(option)\n : undefined\n }\n slotProps={{\n input: inputProps\n }}\n\n color={error ? 'error' : 'primary'}\n />\n }\n label={option.label}\n />\n )\n })}\n </MuiStack>\n )\n}\n\nfunction Parent(p:{\n onCheckAll?: () => void,\n isMoreThanOne: boolean,\n error:boolean,\n required?: boolean,\n title: React.ReactNode,\n titleSuffix?: React.ReactNode,\n ceckedSize: number,\n allOptionsSize: number,\n}){\n const {\n onCheckAll, isMoreThanOne, \n error, required, title, titleSuffix,\n ceckedSize, allOptionsSize\n } = p;\n \n return (\n isMoreThanOne?<MuiFormControlLabel\n sx={{\n gap:0.5,marginLeft:0,\n }}\n control={\n <MuiCheckBox \n sx={{p:0}}\n indeterminate={ceckedSize>0 && ceckedSize<allOptionsSize}\n checked={ceckedSize === allOptionsSize}\n onChange={()=>{\n if(onCheckAll)onCheckAll()\n }}\n color={error ? 'error' : 'primary'}\n />\n }\n label={\n <ParentLabel\n required={required}\n title={title}\n titleSuffix={titleSuffix} \n />\n }\n />\n :<ParentLabel\n required={required}\n title={title}\n titleSuffix={titleSuffix} \n />\n )\n}\n\nfunction ParentLabel(p:{\n required?: boolean,\n title: React.ReactNode,\n titleSuffix?: React.ReactNode,\n}){\n const { required, title, titleSuffix } = p;\n \n return (\n <Box \n sx={{display:\"flex\",alignItems:\"center\",gap:1, maxWidth:\"100%\"}}\n >\n <MuiFormLabel sx={{display: 'flex', alignItems: 'center', gap: 1, width: '100%', '& .MuiFormLabel-asterisk': { display: 'none' }}}>\n <Box sx={{display: 'inline-flex', alignItems: 'center', gap: 0.5}}>\n <Box sx={{flexGrow:0}}>{title}</Box>\n {required && <Box component=\"span\" sx={{ color: 'inherit', fontWeight: 'bold' }}>*</Box>}\n </Box>\n {titleSuffix && <Box sx={{flexShrink:0, display: 'inline-flex'}}>{titleSuffix}</Box>}\n </MuiFormLabel>\n </Box>\n )\n}"],"mappings":"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","names":["default","default"]}
1
+ {"version":3,"sources":["../src/components/elemental/Checkbox/src/Checkbox/index.ts","../src/components/elemental/Checkbox/src/Checkbox/theme.ts","../src/components/elemental/Checkbox/src/CheckboxGroup/CheckboxGroup.tsx"],"sourcesContent":["export {default as Checkbox} from '@mui/material/Checkbox'\nexport * from './theme'","import type { MuiComponentTheme } from '@/_utils/_types'\n\nexport const checkboxTheme = {\n defaultProps: {\n },\n styleOverrides: {\n root: {\n '--checkbox-color': 'var(--mui-palette-text-grey-1)',\n '--checkbox-selected-bg':'var(--mui-palette-primary-emphasis)',\n\n color: 'var(--checkbox-color)',\n\n \"&.MuiCheckbox-colorPrimary\":{\n '--checkbox-selected-bg': 'var(--mui-palette-primary-emphasis)',\n },\n\n \"&.MuiCheckbox-colorError\":{\n '--checkbox-color': 'var(--mui-palette-error-main)',\n },\n\n \"&.Mui-checked, &.MuiCheckbox-indeterminate\": {\n color: 'var(--checkbox-selected-bg)',\n\n \"&.MuiCheckbox-colorError\":{\n color: 'var(--mui-palette-error-main)',\n }\n },\n\n // check label\n [`&.MuiCheckbox-root + .MuiFormControlLabel-label,\n &.MuiCheckbox-root + .MuiFormControlLabel-label .MuiFormLabel-root\n `]: {\n fontSize: 'inherit',\n },\n },\n },\n} satisfies MuiComponentTheme<'MuiCheckbox'>","import { FormControl as MuiFormControl, FormControlLabel as MuiFormControlLabel, FormHelperText as MuiFormHelperText, FormLabel as MuiFormLabel } from '@/ele/Form'\nimport { type FormControlProps } from '@mui/material/FormControl'\nimport MuiFormGroup, { type FormGroupProps } from '@mui/material/FormGroup'\nimport { Box, Stack as MuiStack } from '@/ele/Box'\n\nimport { Checkbox as MuiCheckBox } from '../Checkbox'\nimport { mergeSx } from '@/_utils/_func'\n\nexport interface CheckOptionType{\n id:string;\n label:string;\n}\ntype CheckedStateValue = CheckOptionType['id'][]\ntype OnCheck = (option:CheckOptionType)=>void\n\nexport default function CheckboxGroup({\n error,\n required = false,\n options,\n setCheckedIds,\n title,\n titleSuffix,\n inputProps,\n checkedIds,\n helperText,\n errorText,\n direction = \"row\",\n slotProps = {},\n}: {\n error?: boolean,\n title?: React.ComponentProps<typeof MuiFormLabel>['children'],\n titleSuffix?: React.ComponentProps<typeof MuiFormLabel>['children'],\n options: CheckOptionType[];\n setCheckedIds?: React.Dispatch<React.SetStateAction<CheckedStateValue>>;\n checkedIds: CheckedStateValue;\n required?: boolean,\n helperText?: string,\n errorText?: string,\n direction?: 'row' | 'column',\n inputProps?: NonNullable<React.ComponentProps<typeof MuiCheckBox>['slotProps']>['input'],\n slotProps?: {\n fieldset?: Partial<FormControlProps>,\n group?: Partial<Omit<FormGroupProps, \"row\">>,\n }\n}) {\n\n const onCheck:OnCheck = (option:CheckOptionType) => {\n if(!setCheckedIds)return;\n\n setCheckedIds(old=>{\n if(old.includes(option.id)){\n return old.filter(v=>v!==option.id)\n }else{\n return [...old,option.id]\n }\n })\n }\n\n const onCheckAll = () => {\n if(!setCheckedIds)return;\n\n if(checkedIds.length === options.length){\n setCheckedIds([])\n }else{\n setCheckedIds(options.map(o=>o.id))\n }\n }\n\n return (\n <MuiFormControl required={required} error={error}\n component=\"fieldset\" variant=\"standard\"\n\n {...slotProps?.fieldset}\n sx={mergeSx({ maxWidth:\"100%\" }, slotProps?.fieldset?.sx)}>\n <MuiFormGroup {...slotProps?.group} row={false}>\n <Parent onCheckAll={onCheckAll} \n\n isMoreThanOne={options.length>1}\n ceckedSize={checkedIds.length}\n allOptionsSize={options.length}\n\n error={!!error}\n required={required}\n title={title} titleSuffix={titleSuffix}\n />\n <OptionsCheckbox \n direction={direction}\n options={options}\n selectedValues={checkedIds}\n onCheck={onCheck}\n inputProps={inputProps}\n error={!!error}\n />\n\n {(helperText || errorText) && <MuiFormHelperText error={!!error}>{errorText ? errorText : helperText}</MuiFormHelperText>}\n </MuiFormGroup>\n </MuiFormControl>\n )\n}\n\n// CHANGE 3: Refactored sub-component to use state array\nfunction OptionsCheckbox(p:{\n direction: 'row' | 'column',\n options: CheckOptionType[],\n selectedValues: CheckedStateValue, // Receive state array\n onCheck?:OnCheck,\n inputProps?: NonNullable<React.ComponentProps<typeof MuiCheckBox>['slotProps']>['input'],\n error?: boolean,\n\n}){\n const {direction, options, onCheck, inputProps, error, selectedValues} = p;\n \n return (\n <MuiStack direction={direction} spacing={1} maxWidth=\"100%\" ml={1}>\n {options.map((option,index) => {\n // Determine checked state by checking if value exists in array\n const isChecked = selectedValues.includes(option.id);\n \n return (\n <MuiFormControlLabel\n sx={{\n gap:0.5,marginLeft:0,\n maxWidth:\"100%\",\n }}\n key={index}\n color={error ? 'error' : 'primary'}\n control={\n <MuiCheckBox \n sx={{p:0}}\n value={option.id} \n checked={isChecked} \n onChange={onCheck ?\n () => onCheck(option)\n : undefined\n }\n slotProps={{\n input: inputProps\n }}\n\n color={error ? 'error' : 'primary'}\n />\n }\n label={option.label}\n />\n )\n })}\n </MuiStack>\n )\n}\n\nfunction Parent(p:{\n onCheckAll?: () => void,\n isMoreThanOne: boolean,\n error:boolean,\n required?: boolean,\n title: React.ReactNode,\n titleSuffix?: React.ReactNode,\n ceckedSize: number,\n allOptionsSize: number,\n}){\n const {\n onCheckAll, isMoreThanOne, \n error, required, title, titleSuffix,\n ceckedSize, allOptionsSize\n } = p;\n \n return (\n isMoreThanOne?<MuiFormControlLabel\n sx={{\n gap:0.5,marginLeft:0,\n }}\n control={\n <MuiCheckBox \n sx={{p:0}}\n indeterminate={ceckedSize>0 && ceckedSize<allOptionsSize}\n checked={ceckedSize === allOptionsSize}\n onChange={()=>{\n if(onCheckAll)onCheckAll()\n }}\n color={error ? 'error' : 'primary'}\n />\n }\n label={\n <ParentLabel\n required={required}\n title={title}\n titleSuffix={titleSuffix} \n />\n }\n />\n :<ParentLabel\n required={required}\n title={title}\n titleSuffix={titleSuffix} \n />\n )\n}\n\nfunction ParentLabel(p:{\n required?: boolean,\n title: React.ReactNode,\n titleSuffix?: React.ReactNode,\n}){\n const { required, title, titleSuffix } = p;\n \n return (\n <Box \n sx={{display:\"flex\",alignItems:\"center\",gap:1, maxWidth:\"100%\"}}\n >\n <MuiFormLabel sx={{display: 'flex', alignItems: 'center', gap: 1, width: '100%', '& .MuiFormLabel-asterisk': { display: 'none' }}}>\n <Box sx={{display: 'inline-flex', alignItems: 'center', gap: 0.5}}>\n <Box sx={{flexGrow:0}}>{title}</Box>\n {required && <Box component=\"span\" sx={{ color: 'inherit', fontWeight: 'bold' }}>*</Box>}\n </Box>\n {titleSuffix && <Box sx={{flexShrink:0, display: 'inline-flex'}}>{titleSuffix}</Box>}\n </MuiFormLabel>\n </Box>\n )\n}"],"mappings":";;;;;;;;;;;;;;;AAAA,SAAmB,WAAXA,gBAA0B;;;ACE3B,IAAM,gBAAgB;AAAA,EAC3B,cAAc,CACd;AAAA,EACA,gBAAgB;AAAA,IACd,MAAM;AAAA,MACJ,oBAAoB;AAAA,MACpB,0BAAyB;AAAA,MAEzB,OAAO;AAAA,MAEP,8BAA6B;AAAA,QAC3B,0BAA0B;AAAA,MAC5B;AAAA,MAEA,4BAA2B;AAAA,QACzB,oBAAoB;AAAA,MACtB;AAAA,MAEA,8CAA8C;AAAA,QAC5C,OAAO;AAAA,QAEP,4BAA2B;AAAA,UACzB,OAAO;AAAA,QACT;AAAA,MACF;AAAA;AAAA,MAGA,CAAC;AAAA;AAAA,SAEE,GAAG;AAAA,QACJ,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AACF;;;AClCA,OAAO,kBAA2C;AAwE1C,SACE,KADF;AA3DO,SAAR,cAA+B;AAAA,EAClC;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,YAAY,CAAC;AACjB,GAgBG;AAED,QAAM,UAAkB,CAAC,WAA2B;AAClD,QAAG,CAAC,cAAc;AAElB,kBAAc,SAAK;AACjB,UAAG,IAAI,SAAS,OAAO,EAAE,GAAE;AACzB,eAAO,IAAI,OAAO,OAAG,MAAI,OAAO,EAAE;AAAA,MACpC,OAAK;AACH,eAAO,CAAC,GAAG,KAAI,OAAO,EAAE;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,aAAa,MAAM;AACvB,QAAG,CAAC,cAAc;AAElB,QAAG,WAAW,WAAW,QAAQ,QAAO;AACtC,oBAAc,CAAC,CAAC;AAAA,IAClB,OAAK;AACH,oBAAc,QAAQ,IAAI,OAAG,EAAE,EAAE,CAAC;AAAA,IACpC;AAAA,EACF;AAEE,SACE;AAAA,IAACC;AAAA,IAAA;AAAA,MAAe;AAAA,MAAoB;AAAA,MACpC,WAAU;AAAA,MAAW,SAAQ;AAAA,MAE5B,GAAG,WAAW;AAAA,MACf,IAAI,QAAQ,EAAE,UAAS,OAAO,GAAG,WAAW,UAAU,EAAE;AAAA,MACtD,+BAAC,gBAAc,GAAG,WAAW,OAAO,KAAK,OACvC;AAAA;AAAA,UAAC;AAAA;AAAA,YAAO;AAAA,YAEN,eAAe,QAAQ,SAAO;AAAA,YAC9B,YAAY,WAAW;AAAA,YACvB,gBAAgB,QAAQ;AAAA,YAExB,OAAO,CAAC,CAAC;AAAA,YACT;AAAA,YACA;AAAA,YAAc;AAAA;AAAA,QAChB;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA,gBAAgB;AAAA,YAChB;AAAA,YACA;AAAA,YACA,OAAO,CAAC,CAAC;AAAA;AAAA,QACX;AAAA,SAEE,cAAc,cAAc,oBAACA,UAAA,EAAkB,OAAO,CAAC,CAAC,OAAQ,sBAAY,YAAY,YAAW;AAAA,SACvG;AAAA;AAAA,EACF;AAEN;AAGA,SAAS,gBAAgB,GAQvB;AACA,QAAM,EAAC,WAAW,SAAS,SAAS,YAAY,OAAO,eAAc,IAAI;AAEzE,SACE,oBAACA,UAAA,EAAS,WAAsB,SAAS,GAAG,UAAS,QAAO,IAAI,GAC7D,kBAAQ,IAAI,CAAC,QAAO,UAAU;AAE7B,UAAM,YAAY,eAAe,SAAS,OAAO,EAAE;AAEnD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,IAAI;AAAA,UACF,KAAI;AAAA,UAAI,YAAW;AAAA,UACnB,UAAS;AAAA,QACX;AAAA,QAEA,OAAO,QAAQ,UAAU;AAAA,QACzB,SACE;AAAA,UAACA;AAAA,UAAA;AAAA,YACC,IAAI,EAAC,GAAE,EAAC;AAAA,YACR,OAAO,OAAO;AAAA,YACd,SAAS;AAAA,YACT,UAAU,UACR,MAAM,QAAQ,MAAM,IAClB;AAAA,YAEJ,WAAW;AAAA,cACT,OAAO;AAAA,YACT;AAAA,YAEA,OAAO,QAAQ,UAAU;AAAA;AAAA,QAC3B;AAAA,QAEF,OAAO,OAAO;AAAA;AAAA,MAlBT;AAAA,IAmBL;AAAA,EAEN,CAAC,GACH;AAEJ;AAEA,SAAS,OAAO,GASd;AACA,QAAM;AAAA,IACJ;AAAA,IAAY;AAAA,IACZ;AAAA,IAAO;AAAA,IAAU;AAAA,IAAO;AAAA,IACxB;AAAA,IAAY;AAAA,EACd,IAAI;AAEJ,SACE,gBAAc;AAAA,IAAC;AAAA;AAAA,MACb,IAAI;AAAA,QACF,KAAI;AAAA,QAAI,YAAW;AAAA,MACrB;AAAA,MACA,SACE;AAAA,QAACA;AAAA,QAAA;AAAA,UACC,IAAI,EAAC,GAAE,EAAC;AAAA,UACR,eAAe,aAAW,KAAK,aAAW;AAAA,UAC1C,SAAS,eAAe;AAAA,UACxB,UAAU,MAAI;AACZ,gBAAG,WAAW,YAAW;AAAA,UAC3B;AAAA,UACA,OAAO,QAAQ,UAAU;AAAA;AAAA,MAC3B;AAAA,MAEF,OACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACF;AAAA;AAAA,EAEJ,IACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,EACF;AAEJ;AAEA,SAAS,YAAY,GAInB;AACA,QAAM,EAAE,UAAU,OAAO,YAAY,IAAI;AAEzC,SACE;AAAA,IAACA;AAAA,IAAA;AAAA,MACC,IAAI,EAAC,SAAQ,QAAO,YAAW,UAAS,KAAI,GAAG,UAAS,OAAM;AAAA,MAE9D,+BAAC,gBAAa,IAAI,EAAC,SAAS,QAAQ,YAAY,UAAU,KAAK,GAAG,OAAO,QAAQ,4BAA4B,EAAE,SAAS,OAAO,EAAC,GAC9H;AAAA,6BAACA,UAAA,EAAI,IAAI,EAAC,SAAS,eAAe,YAAY,UAAU,KAAK,IAAG,GAC9D;AAAA,8BAACA,UAAA,EAAI,IAAI,EAAC,UAAS,EAAC,GAAI,iBAAM;AAAA,UAC7B,YAAY,oBAACA,UAAA,EAAI,WAAU,QAAO,IAAI,EAAE,OAAO,WAAW,YAAY,OAAO,GAAG,eAAC;AAAA,WACpF;AAAA,QACC,eAAe,oBAACA,UAAA,EAAI,IAAI,EAAC,YAAW,GAAG,SAAS,cAAa,GAAI,uBAAY;AAAA,SAChF;AAAA;AAAA,EACF;AAEJ;","names":["default","default"]}
@@ -1,19 +1,21 @@
1
1
  import {
2
2
  default as default4
3
3
  } from "./chunk-MDAUF7IL.mjs";
4
+ import {
5
+ default124 as default5
6
+ } from "./chunk-ZVFYOXDE.mjs";
4
7
  import {
5
8
  IconButton_default
6
- } from "./chunk-JIU5GVM7.mjs";
9
+ } from "./chunk-D4XPNSSI.mjs";
7
10
  import {
8
11
  default as default3
9
12
  } from "./chunk-4Q54P737.mjs";
10
13
  import {
11
- default124 as default5
12
- } from "./chunk-ZVFYOXDE.mjs";
14
+ default as default2
15
+ } from "./chunk-PNSJC6PC.mjs";
13
16
  import {
14
- default as default2,
15
17
  mergeSx
16
- } from "./chunk-S6EZVRZC.mjs";
18
+ } from "./chunk-AFLEG5ZC.mjs";
17
19
 
18
20
  // src/components/compound/UseForm/src/_utils/constants.ts
19
21
  var FIELD_TYPEs = {
@@ -23,6 +25,8 @@ var FIELD_TYPEs = {
23
25
  check: "check-field",
24
26
  date: "date-field",
25
27
  dateTime: "date-time-field",
28
+ time: "time-field",
29
+ dateRange: "date-range-field",
26
30
  toggleButton: "toggle-button",
27
31
  autocomplete: "autocomplete-field",
28
32
  switch: "switch-field",
@@ -68,6 +72,10 @@ function isEmptyFormValue(value) {
68
72
  if (value === void 0 || value === null) return true;
69
73
  if (typeof value === "string" && value.trim() === "") return true;
70
74
  if (Array.isArray(value) && value.length === 0) return true;
75
+ if (typeof value === "object" && !Array.isArray(value) && value !== null && "start" in value && "end" in value) {
76
+ const range = value;
77
+ return isEmptyFormValue(range.start) && isEmptyFormValue(range.end);
78
+ }
71
79
  return false;
72
80
  }
73
81
  function validateFormSchema(config) {
@@ -108,8 +116,12 @@ var getDefaultValues = (config, allEmpty) => {
108
116
  }
109
117
  case FIELD_TYPEs.date:
110
118
  case FIELD_TYPEs.dateTime:
119
+ case FIELD_TYPEs.time:
111
120
  defaults[fieldName] = "";
112
121
  break;
122
+ case FIELD_TYPEs.dateRange:
123
+ defaults[fieldName] = { start: null, end: null };
124
+ break;
113
125
  case FIELD_TYPEs.toggleButton:
114
126
  defaults[fieldName] = "";
115
127
  break;
@@ -267,4 +279,4 @@ export {
267
279
  getDefaultValues,
268
280
  Explanation_default
269
281
  };
270
- //# sourceMappingURL=chunk-UTVSYS6S.mjs.map
282
+ //# sourceMappingURL=chunk-FNSIQ2B7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/compound/UseForm/src/_utils/constants.ts","../src/components/compound/UseForm/src/_utils/helpers.ts","../src/components/compound/UseForm/src/Fields/Explanation.tsx"],"sourcesContent":["export const FIELD_TYPEs = {\n text: 'text-field',\n select: 'select-field',\n slider: 'slider-field',\n check: 'check-field',\n date: 'date-field',\n dateTime: 'date-time-field',\n time: 'time-field',\n dateRange: 'date-range-field',\n toggleButton: 'toggle-button',\n autocomplete: 'autocomplete-field',\n switch: 'switch-field',\n number: 'number-field',\n tel: 'tel-field',\n json: 'json-field',\n custom: 'custom-field',\n textArray: 'text-array-field',\n fileUpload: 'file-upload-field',\n avatar: 'avatar-field',\n} as const\n","import type { SxProps, Theme } from '@mui/material/styles';\nimport { mergeSx } from '@/_utils/_func';\nimport type { Explanation, FieldConfig, FormTypeMap, InferFormDataType, RowConfig, StrictFormConfig } from './types';\nimport { FIELD_TYPEs } from './constants';\n\n/** Field `size` + host `sx`, flattened so array `sx` does not nest. */\nexport function mergeFieldSx(\n size?: { width?: number | string; height?: number | string },\n sx?: SxProps<Theme> | Record<string, unknown>,\n) {\n return mergeSx(\n size?.width != null ? { width: size.width } : undefined,\n size?.height != null ? { height: size.height } : undefined,\n sx,\n )\n}\n\nexport function collectRows<T extends FormTypeMap>(config: StrictFormConfig<T>): RowConfig<T>[] {\n const rows: RowConfig<T>[] = [];\n if ('schema' in config && config.schema) {\n rows.push(...config.schema as RowConfig<T>[]);\n }\n if ('steps' in config && config.steps) {\n config.steps.forEach((step) => rows.push(...step.schema as RowConfig<T>[]));\n }\n return rows;\n}\n\nexport function collectFields<T extends FormTypeMap>(config: StrictFormConfig<T>): FieldConfig<T>[] {\n return collectRows(config).flatMap((row) => row.fields);\n}\n\n/** Identity of registered fields (name/type/default). Used to avoid re-registering on config object identity changes. */\nexport function getFormFieldsSignature<T extends FormTypeMap>(config: StrictFormConfig<T>): string {\n return JSON.stringify(\n collectFields(config).map((field) => [field.name, field.type, field.defaultValue]),\n );\n}\n\nexport function getFieldExplanation(\n field: { explanation?: Explanation; explaination?: Explanation },\n): Explanation | undefined {\n return field.explanation ?? field.explaination;\n}\n\nexport function isEmptyFormValue(value: unknown): boolean {\n if (value === undefined || value === null) return true;\n if (typeof value === 'string' && value.trim() === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n // Date range default / cleared: both halves null\n if (\n typeof value === 'object'\n && !Array.isArray(value)\n && value !== null\n && 'start' in value\n && 'end' in value\n ) {\n const range = value as { start: unknown; end: unknown };\n return isEmptyFormValue(range.start) && isEmptyFormValue(range.end);\n }\n return false;\n}\n\nexport function validateFormSchema<T extends FormTypeMap>(config: StrictFormConfig<T>): StrictFormConfig<T> {\n const allowedTypes = new Set<string>(Object.values(FIELD_TYPEs));\n\n collectRows(config).forEach((row) => {\n row.fields.forEach((field) => {\n if (!allowedTypes.has(field.type as string)) {\n throw new Error(`Invalid field type \"${String(field.type)}\" in form schema`);\n }\n });\n });\n\n return config;\n}\n\nexport const getDefaultValues = <T extends FormTypeMap>(config: StrictFormConfig<T>, allEmpty: boolean): InferFormDataType<T> => {\n // when `allEmpty` is true we intentionally ignore any explicit\n // `defaultValues` supplied by the config; callers (such as the clear\n // helper) rely on receiving truly empty defaults for every field type.\n if (!allEmpty && config.defaultValues) return config.defaultValues;\n\n const defaults: Record<string, unknown> = {};\n\n collectRows(config).forEach((row) => {\n row.fields.forEach((field) => {\n const fieldName = field.name as string;\n if (field.defaultValue !== undefined && !allEmpty) {\n defaults[fieldName] = field.defaultValue;\n } else {\n const slotProps = (field as { slotProps?: { multiple?: boolean; min?: number } }).slotProps ?? {};\n switch (field.type) {\n case FIELD_TYPEs.text:\n defaults[fieldName] = '';\n break;\n case FIELD_TYPEs.select:\n defaults[fieldName] = slotProps?.multiple ? [] : '';\n break;\n case FIELD_TYPEs.check:\n defaults[fieldName] = [];\n break;\n case FIELD_TYPEs.slider: {\n const min = slotProps?.min ?? 0;\n defaults[fieldName] = min;\n break;\n }\n case FIELD_TYPEs.date:\n case FIELD_TYPEs.dateTime:\n case FIELD_TYPEs.time:\n defaults[fieldName] = '';\n break;\n case FIELD_TYPEs.dateRange:\n defaults[fieldName] = { start: null, end: null };\n break;\n case FIELD_TYPEs.toggleButton:\n defaults[fieldName] = '';\n break;\n case FIELD_TYPEs.autocomplete:\n defaults[fieldName] = slotProps?.multiple ? [] : '';\n break;\n case FIELD_TYPEs.switch:\n defaults[fieldName] = false;\n break;\n case FIELD_TYPEs.number: {\n const min = slotProps?.min ?? 0;\n defaults[fieldName] = min;\n break;\n }\n case FIELD_TYPEs.tel:\n defaults[fieldName] = '';\n break;\n case FIELD_TYPEs.json:\n defaults[fieldName] = null;\n break;\n case FIELD_TYPEs.textArray:\n defaults[fieldName] = [];\n break;\n case FIELD_TYPEs.fileUpload:\n defaults[fieldName] = [];\n break;\n case FIELD_TYPEs.custom:\n defaults[fieldName] = undefined;\n break;\n case FIELD_TYPEs.avatar:\n defaults[fieldName] = null;\n break;\n default:\n defaults[fieldName] = undefined;\n }\n }\n });\n });\n\n return defaults as InferFormDataType<T>;\n};\n","'use client'\nimport React, { useState, useRef } from 'react'\nimport { ClickAwayListener } from '@/ele/Overlay'\nimport { styled } from '@mui/material/styles'\nimport { Tooltip } from '@/ele/Tooltip'\nimport { IconButton } from '@/ele/Button'\nimport { Box as MuiBox } from '@/ele/Box'\nimport { HelpOutlineIcon } from '@/icons/MuiIcon'\nimport type { Explanation } from '../_utils';\n\n/** MUI outlined `size=\"small\"` control height — keep the help icon on the input, not the helper text. */\nexport const FIELD_INPUT_CONTROL_HEIGHT_PX = 40\n\nconst FieldExplanation: React.FC<{\n label?: React.ReactNode;\n explanation?: Explanation;\n /** @deprecated Use explanation */\n explaination?: Explanation;\n /**\n * When the icon sits beside an outlined input, pin it to the control height\n * so helper/error text below the field does not pull it down.\n */\n alignToInput?: boolean;\n}> = ({label, explanation, explaination, alignToInput}) => {\n const popRef = useRef(null)\n const [open, setOpen] = useState(false)\n const content = explanation ?? explaination\n\n if (!content) return <>{label}</>\n\n const icon = (\n <MuiBox component=\"span\" sx={{ display: 'flex', alignItems: 'center', gap: 0.5, lineHeight: 1 }}>\n {label}\n <ClickAwayListener onClickAway={(e) => {\n if(popRef.current && e.target && isChildOf(popRef.current, e.target as HTMLElement)) return\n setOpen(false)\n }}>\n <Tooltip title={<Title explanation={content}/>} arrow open={open} \n slotProps={{\n popper:{ref:popRef}\n }}>\n <StyledIconButton onClick={(e)=>{ e.stopPropagation(); setOpen(true) }} tabIndex={-1}>\n <HelpOutlineIcon sx={{fontSize:\"14px\"}}/>\n </StyledIconButton>\n </Tooltip>\n </ClickAwayListener>\n </MuiBox>\n )\n\n if (!alignToInput) return icon\n\n return (\n <MuiBox\n data-field-explanation=\"input\"\n style={{ height: FIELD_INPUT_CONTROL_HEIGHT_PX }}\n sx={{\n display: 'flex',\n alignItems: 'center',\n flexShrink: 0,\n }}\n >\n {icon}\n </MuiBox>\n )\n}\nexport default FieldExplanation\n\nconst Title:React.FC<{\n explanation: Explanation;\n}> = ({explanation}) => {\n const {highlights,href,content=\"\"} = explanation ?? {}\n const reg = new RegExp(`(${highlights?.join(\"|\")})`, \"g\")\n const highlightedContent = content\n .split(reg)\n .map((part, index) => {\n if (highlights?.includes(part)) {\n return <MuiBox component=\"span\" key={index} sx={{\n color:\"var(--useform-warning)\",\n fontSize:\"1.2em\",\n fontWeight:\"bold\",\n }}>{part}</MuiBox>\n }\n return part\n }\n )\n\n\n return (\n <MuiBox>\n <MuiBox sx={{ fontWeight: 'bold', mb: 0.5 }}>{explanation?.title}</MuiBox>\n <MuiBox sx={{\n lineBreak:\"auto\",\n whiteSpace:\"pre-line\",\n }}>{highlightedContent}</MuiBox>\n {href?.label && \n <MuiBox component=\"a\" \n sx={{\n textDecoration:\"underline\",\n display:\"flex\",\n justifyContent:\"flex-end\",\n mt: 1\n }} \n href={href?.url} target=\"_blank\">\n {href?.label}\n </MuiBox>}\n </MuiBox>\n )\n}\n\nconst StyledIconButton = styled(IconButton)({\n \"&.MuiButtonBase-root.MuiIconButton-root\":{\n color:\"var(--useform-warning)\",\n border: \"none\",\n borderRadius: \"50%\",\n padding:\"2px\",\n marginLeft: \"4px\",\n background: \"transparent\",\n },\n \n})\n\nfunction isChildOf(parent:HTMLElement, child:HTMLElement):boolean {\n let node:HTMLElement|null = child\n while(node !== null){\n if(node === parent) return true\n node = node.parentElement as HTMLElement | null\n }\n return false\n}\n"],"mappings":"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","names":["default"]}
@@ -3,13 +3,13 @@ import {
3
3
  } from "./chunk-WYYP3Y34.mjs";
4
4
  import {
5
5
  Button
6
- } from "./chunk-JIU5GVM7.mjs";
6
+ } from "./chunk-D4XPNSSI.mjs";
7
7
  import {
8
8
  default as default3
9
9
  } from "./chunk-4RPFRNXG.mjs";
10
10
  import {
11
11
  default as default2
12
- } from "./chunk-S6EZVRZC.mjs";
12
+ } from "./chunk-PNSJC6PC.mjs";
13
13
 
14
14
  // src/components/compound/ScrollToLoad/src/useScrollToLoad.ts
15
15
  import { useCallback, useEffect, useRef, useState } from "react";
@@ -167,4 +167,4 @@ export {
167
167
  useScrollToLoad,
168
168
  ScrollToLoad
169
169
  };
170
- //# sourceMappingURL=chunk-JWANK42G.mjs.map
170
+ //# sourceMappingURL=chunk-FUZ2JNTZ.mjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  tabTheme,
3
3
  tabsTheme
4
- } from "./chunk-IN3O4R7Q.mjs";
4
+ } from "./chunk-7O526A2D.mjs";
5
5
  import {
6
6
  styleInject
7
7
  } from "./chunk-ONQMRE2G.mjs";
@@ -12,14 +12,19 @@ import {
12
12
  multiSectionDigitalClockTheme,
13
13
  pickersCalendarHeaderTheme,
14
14
  pickersDayTheme,
15
- pickersInputBaseTheme
16
- } from "./chunk-EEH7HACG.mjs";
15
+ pickersInputBaseTheme,
16
+ timePickerTheme
17
+ } from "./chunk-XAJAMVAG.mjs";
17
18
  import {
18
- avatarTheme
19
- } from "./chunk-Y74ALKBL.mjs";
19
+ dialogActionsTheme,
20
+ dialogContentTextTheme,
21
+ dialogContentTheme,
22
+ dialogTheme,
23
+ dialogTitleTheme
24
+ } from "./chunk-6JKMEH2L.mjs";
20
25
  import {
21
- default as default5
22
- } from "./chunk-27KYFU7R.mjs";
26
+ avatarTheme
27
+ } from "./chunk-4MSPA7U7.mjs";
23
28
  import {
24
29
  tableCellTheme,
25
30
  tableContainerTheme,
@@ -27,57 +32,57 @@ import {
27
32
  tablePaginationTheme,
28
33
  tableSortLabelTheme,
29
34
  tableTheme
30
- } from "./chunk-DELCADNF.mjs";
31
- import {
32
- stepButtonTheme,
33
- stepConnectorTheme,
34
- stepIconTheme,
35
- stepLabelTheme,
36
- stepTheme,
37
- stepperTheme
38
- } from "./chunk-V26V2S3W.mjs";
35
+ } from "./chunk-ODVKRIVN.mjs";
39
36
  import {
40
37
  switchTheme
41
38
  } from "./chunk-T34IULP5.mjs";
42
39
  import {
43
40
  toggleButtonGroupTheme,
44
41
  toggleButtonTheme
45
- } from "./chunk-2ZZJTBTE.mjs";
42
+ } from "./chunk-WJZ3IYET.mjs";
46
43
  import {
47
44
  selectTheme
48
- } from "./chunk-UGMRJMFZ.mjs";
45
+ } from "./chunk-BO5CU4ZM.mjs";
46
+ import {
47
+ stepButtonTheme,
48
+ stepConnectorTheme,
49
+ stepIconTheme,
50
+ stepLabelTheme,
51
+ stepTheme,
52
+ stepperTheme
53
+ } from "./chunk-3O3N6X6D.mjs";
49
54
  import {
50
55
  sliderTheme
51
56
  } from "./chunk-EW4DTFH3.mjs";
52
- import {
53
- inputBaseTheme,
54
- textFieldTheme
55
- } from "./chunk-VYD3PDBB.mjs";
56
57
  import {
57
58
  menuItemTheme,
58
59
  menuTheme
59
- } from "./chunk-HR3A4H4E.mjs";
60
+ } from "./chunk-PEJL2T2K.mjs";
60
61
  import {
61
62
  listItemButtonTheme,
62
63
  listItemIconTheme,
63
64
  listItemSubheaderTheme,
64
65
  listItemTextTheme,
65
66
  listItemTheme
66
- } from "./chunk-TDRA5EZI.mjs";
67
+ } from "./chunk-PUREEN2J.mjs";
67
68
  import {
68
69
  dividerTheme
69
70
  } from "./chunk-3DQINB57.mjs";
71
+ import {
72
+ cardContentTheme,
73
+ cardTheme
74
+ } from "./chunk-I5JWS4Z7.mjs";
70
75
  import {
71
76
  checkboxTheme
72
- } from "./chunk-BGB7JHIU.mjs";
77
+ } from "./chunk-FMGZCOJC.mjs";
78
+ import {
79
+ paperTheme
80
+ } from "./chunk-3VUAM2GY.mjs";
73
81
  import {
74
82
  formControlLabelTheme,
75
83
  formHelperTextTheme,
76
84
  formLabelTheme
77
85
  } from "./chunk-T4X375IG.mjs";
78
- import {
79
- paperTheme
80
- } from "./chunk-3VUAM2GY.mjs";
81
86
  import {
82
87
  circularProgressTheme,
83
88
  linearProgressTheme
@@ -85,26 +90,39 @@ import {
85
90
  import {
86
91
  appBarTheme
87
92
  } from "./chunk-HE7MY3RT.mjs";
93
+ import {
94
+ autocompleteTheme
95
+ } from "./chunk-KYTHGFFY.mjs";
96
+ import {
97
+ default as default5
98
+ } from "./chunk-LQNDBPHU.mjs";
88
99
  import {
89
100
  badgeTheme
90
101
  } from "./chunk-56TI2ZBT.mjs";
102
+ import {
103
+ inputBaseTheme,
104
+ textFieldTheme
105
+ } from "./chunk-VYD3PDBB.mjs";
91
106
  import {
92
107
  AlertProvider,
93
108
  alertTheme
94
- } from "./chunk-EKPULYPU.mjs";
109
+ } from "./chunk-QFS5CENY.mjs";
95
110
  import {
96
111
  collapseTheme
97
112
  } from "./chunk-B7DAB22K.mjs";
98
113
  import {
99
- cardContentTheme,
100
- cardTheme
101
- } from "./chunk-I5JWS4Z7.mjs";
114
+ ConfirmProvider
115
+ } from "./chunk-RSN7NH2J.mjs";
116
+ import {
117
+ default86 as default3,
118
+ default87 as default4
119
+ } from "./chunk-ZVFYOXDE.mjs";
102
120
  import {
103
121
  IconButton_default,
104
122
  buttonBaseTheme,
105
123
  buttonTheme,
106
124
  iconButtonTheme
107
- } from "./chunk-JIU5GVM7.mjs";
125
+ } from "./chunk-D4XPNSSI.mjs";
108
126
  import {
109
127
  default as default2,
110
128
  tooltipTheme
@@ -112,10 +130,6 @@ import {
112
130
  import {
113
131
  chipTheme
114
132
  } from "./chunk-OP6LKXPA.mjs";
115
- import {
116
- default86 as default3,
117
- default87 as default4
118
- } from "./chunk-ZVFYOXDE.mjs";
119
133
  import {
120
134
  typographyTheme
121
135
  } from "./chunk-4RPFRNXG.mjs";
@@ -183,7 +197,7 @@ var themeColor = {
183
197
  focus: "rgba(255, 47, 122, 0.42)",
184
198
  disabled: "rgba(91, 94, 97, 1)",
185
199
  background: {
186
- default: "rgb(29, 29, 29, 1)",
200
+ default: "rgb(32, 33, 36, 1)",
187
201
  disabled: "rgba(43, 43, 43, 0.3)"
188
202
  },
189
203
  text: {
@@ -232,7 +246,9 @@ var muiPalette = {
232
246
  contrastText: "rgba(0, 0, 0, 0.87)"
233
247
  },
234
248
  background: {
235
- default: themeColor.colorScheme.background.default
249
+ default: themeColor.colorScheme.background.default,
250
+ // Elevated mid-grey above near-black canvas (Google #303134 hierarchy).
251
+ paper: "rgb(48, 49, 52, 1)"
236
252
  },
237
253
  text: {
238
254
  primary: themeColor.colorScheme.text.primary,
@@ -513,6 +529,7 @@ var baseThemeOptions = {
513
529
  MuiCheckbox: checkboxTheme,
514
530
  // chips
515
531
  MuiChip: chipTheme,
532
+ MuiAutocomplete: autocompleteTheme,
516
533
  // collapse
517
534
  MuiCollapse: collapseTheme,
518
535
  // date picker
@@ -522,9 +539,16 @@ var baseThemeOptions = {
522
539
  MuiPickersDay: pickersDayTheme,
523
540
  MuiDatePicker: datePickerTheme,
524
541
  MuiDateTimePicker: dateTimePickerTheme,
542
+ MuiTimePicker: timePickerTheme,
525
543
  MuiPickersInputBase: pickersInputBaseTheme,
526
544
  // divider
527
545
  MuiDivider: dividerTheme,
546
+ // dialog (soft quiet chrome)
547
+ MuiDialog: dialogTheme,
548
+ MuiDialogTitle: dialogTitleTheme,
549
+ MuiDialogContent: dialogContentTheme,
550
+ MuiDialogActions: dialogActionsTheme,
551
+ MuiDialogContentText: dialogContentTextTheme,
528
552
  // form
529
553
  MuiFormLabel: formLabelTheme,
530
554
  MuiFormControlLabel: formControlLabelTheme,
@@ -641,11 +665,11 @@ var globalStyles = {
641
665
  }
642
666
  };
643
667
  var ThemeTree = React.memo(function ThemeTree2({ children }) {
644
- return /* @__PURE__ */ jsxs(AlertProvider, { children: [
668
+ return /* @__PURE__ */ jsx(AlertProvider, { children: /* @__PURE__ */ jsxs(ConfirmProvider, { children: [
645
669
  /* @__PURE__ */ jsx(CssBaseline, {}),
646
670
  /* @__PURE__ */ jsx(GlobalStyles, { styles: globalStyles }),
647
671
  children
648
- ] });
672
+ ] }) });
649
673
  });
650
674
  function ThemeProvider({
651
675
  children,
@@ -753,4 +777,4 @@ export {
753
777
  ToggleButton,
754
778
  appScrollSurfaceAttribute
755
779
  };
756
- //# sourceMappingURL=chunk-CRYIEYZZ.mjs.map
780
+ //# sourceMappingURL=chunk-HAJWE62X.mjs.map