@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
@@ -1,497 +0,0 @@
1
- import {
2
- default as default6
3
- } from "./chunk-B7DAB22K.mjs";
4
- import {
5
- Card
6
- } from "./chunk-I5JWS4Z7.mjs";
7
- import {
8
- randomStrGenerator
9
- } from "./chunk-QFF3HTHL.mjs";
10
- import {
11
- IconButton_default
12
- } from "./chunk-JIU5GVM7.mjs";
13
- import {
14
- default54 as default4,
15
- default55 as default5
16
- } from "./chunk-ZVFYOXDE.mjs";
17
- import {
18
- default as default3
19
- } from "./chunk-4RPFRNXG.mjs";
20
- import {
21
- default as default2,
22
- mergeSx
23
- } from "./chunk-S6EZVRZC.mjs";
24
-
25
- // src/components/compound/Alert/src/AlertProvider.tsx
26
- import React from "react";
27
- import { SnackbarProvider } from "notistack";
28
-
29
- // src/components/compound/Alert/src/MuiAlertVariant.tsx
30
- import { forwardRef, useCallback } from "react";
31
- import { useSnackbar as useSnackbar2 } from "notistack";
32
- import Alert from "@mui/material/Alert";
33
-
34
- // src/components/compound/Alert/src/_utils/utils.ts
35
- import { enqueueSnackbar, useSnackbar } from "notistack";
36
-
37
- // src/components/compound/Alert/src/_utils/const.ts
38
- var ALERT_VARIANTs = {
39
- info: "myInfo",
40
- warning: "myWarning",
41
- success: "mySuccess",
42
- error: "myError",
43
- system: "mySystem",
44
- insight: "myInsight",
45
- collapsable: "myCollapsable"
46
- };
47
- var DEFAULTs = {
48
- AUTO_HIDE_DURATION: 3e3,
49
- ANCHOR_ORIGIN: { horizontal: "right", vertical: "top" },
50
- PROVIDER_CONFIGs: {
51
- maxSnack: 3,
52
- dense: true,
53
- preventDuplicate: true,
54
- autoHideDuration: 3e3
55
- }
56
- };
57
- var ERRORs = {
58
- invalid_variant: "Invalid alert variant provided",
59
- enqueue_failed: "Failed to enqueue alert",
60
- missing_message: "Message is required for alert",
61
- missing_component_props: "Component props are required for collapsible alert"
62
- };
63
-
64
- // src/components/compound/Alert/src/_utils/utils.ts
65
- function enqueueAlertWith(enqueue, {
66
- message,
67
- variant,
68
- id = randomStrGenerator(10),
69
- autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,
70
- anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,
71
- icon,
72
- ...rest
73
- }) {
74
- try {
75
- enqueue(message, {
76
- variant,
77
- anchorOrigin,
78
- autoHideDuration,
79
- key: id,
80
- id,
81
- icon,
82
- ...rest
83
- });
84
- return { success: true, data: id };
85
- } catch (error) {
86
- console.error("Failed to enqueue alert:", error);
87
- return { success: false, error: error instanceof Error ? error.message : "Unknown error" };
88
- }
89
- }
90
- function enqueueCollapsableWith(enqueue, {
91
- id = randomStrGenerator(10),
92
- autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,
93
- anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,
94
- componentProps = {},
95
- componentWrapperProps = {
96
- Renderer: () => null
97
- },
98
- ...rest
99
- }) {
100
- try {
101
- enqueue({
102
- variant: ALERT_VARIANTs.collapsable,
103
- anchorOrigin,
104
- autoHideDuration,
105
- componentProps,
106
- componentWrapperProps,
107
- id,
108
- ...rest
109
- });
110
- return { success: true, data: id };
111
- } catch (error) {
112
- console.error("Failed to enqueue collapsable alert:", error);
113
- return { success: false, error: error instanceof Error ? error.message : "Unknown error" };
114
- }
115
- }
116
- function useAlert() {
117
- const { enqueueSnackbar: enqueue, closeSnackbar } = useSnackbar();
118
- const enqueueAlert2 = (options) => enqueueAlertWith(enqueue, options);
119
- const enqueueCollapsable2 = (options) => enqueueCollapsableWith(enqueue, options);
120
- const enqueueError2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.error, message, ...options });
121
- const enqueueSuccess2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.success, message, ...options });
122
- const enqueueWarning2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.warning, message, ...options });
123
- const enqueueInfo2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.info, message, ...options });
124
- const enqueueSystem2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.system, message, ...options });
125
- const enqueueInsight2 = (message, options) => enqueueAlert2({ variant: ALERT_VARIANTs.insight, message, ...options });
126
- return {
127
- enqueueAlert: enqueueAlert2,
128
- enqueueCollapsable: enqueueCollapsable2,
129
- enqueueError: enqueueError2,
130
- enqueueSuccess: enqueueSuccess2,
131
- enqueueWarning: enqueueWarning2,
132
- enqueueInfo: enqueueInfo2,
133
- enqueueSystem: enqueueSystem2,
134
- enqueueInsight: enqueueInsight2,
135
- closeSnackbar
136
- };
137
- }
138
- function enqueueAlert({
139
- message,
140
- variant,
141
- id = randomStrGenerator(10),
142
- autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,
143
- anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,
144
- icon,
145
- ...rest
146
- }) {
147
- return enqueueAlertWith(enqueueSnackbar, {
148
- message,
149
- variant,
150
- id,
151
- autoHideDuration,
152
- anchorOrigin,
153
- icon,
154
- ...rest
155
- });
156
- }
157
- function enqueueCollapsable({
158
- id = randomStrGenerator(10),
159
- autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,
160
- anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,
161
- componentProps = {},
162
- componentWrapperProps = {
163
- Renderer: () => null
164
- },
165
- ...rest
166
- }) {
167
- return enqueueCollapsableWith(enqueueSnackbar, {
168
- id,
169
- autoHideDuration,
170
- anchorOrigin,
171
- componentProps,
172
- componentWrapperProps,
173
- ...rest
174
- });
175
- }
176
- function enqueueError(message, options) {
177
- return enqueueAlert({
178
- variant: ALERT_VARIANTs.error,
179
- message,
180
- ...options
181
- });
182
- }
183
- function enqueueSuccess(message, options) {
184
- return enqueueAlert({
185
- variant: ALERT_VARIANTs.success,
186
- message,
187
- ...options
188
- });
189
- }
190
- function enqueueWarning(message, options) {
191
- return enqueueAlert({
192
- variant: ALERT_VARIANTs.warning,
193
- message,
194
- ...options
195
- });
196
- }
197
- function enqueueInfo(message, options) {
198
- return enqueueAlert({
199
- variant: ALERT_VARIANTs.info,
200
- message,
201
- ...options
202
- });
203
- }
204
- function enqueueSystem(message, options) {
205
- return enqueueAlert({
206
- variant: ALERT_VARIANTs.system,
207
- message,
208
- ...options
209
- });
210
- }
211
- function enqueueInsight(message, options) {
212
- return enqueueAlert({
213
- variant: ALERT_VARIANTs.insight,
214
- message,
215
- ...options
216
- });
217
- }
218
-
219
- // src/components/compound/Alert/src/MuiAlertVariant.tsx
220
- import { jsx } from "react/jsx-runtime";
221
- var variantToSeverity = {
222
- [ALERT_VARIANTs.info]: "info",
223
- [ALERT_VARIANTs.warning]: "warning",
224
- [ALERT_VARIANTs.success]: "success",
225
- [ALERT_VARIANTs.error]: "error",
226
- [ALERT_VARIANTs.system]: "system",
227
- [ALERT_VARIANTs.insight]: "insight",
228
- [ALERT_VARIANTs.collapsable]: "info"
229
- // Default to info for collapsable
230
- };
231
- var MuiAlertVariant = forwardRef(
232
- (props, ref) => {
233
- const { id, message, variant, icon, style } = props;
234
- const { closeSnackbar } = useSnackbar2();
235
- const handleDismiss = useCallback(() => {
236
- closeSnackbar(id);
237
- }, [id, closeSnackbar]);
238
- const severity = variantToSeverity[variant] || "info";
239
- return /* @__PURE__ */ jsx(
240
- Alert,
241
- {
242
- ref,
243
- severity,
244
- onClose: handleDismiss,
245
- icon,
246
- style,
247
- children: message
248
- }
249
- );
250
- }
251
- );
252
-
253
- // src/components/compound/Alert/src/CollapsableAlert.tsx
254
- import { forwardRef as forwardRef2, useState, useCallback as useCallback2 } from "react";
255
- import { useSnackbar as useSnackbar3 } from "notistack";
256
- import CardActions from "@mui/material/CardActions";
257
-
258
- // src/components/compound/Alert/src/theme.ts
259
- var collapsableAlertRootSx = {
260
- "--collapse-bg": "var(--mui-palette-container-bg-1)",
261
- "--collapse-border": "var(--mui-palette-border-1)",
262
- "--collapse-title-color": "var(--mui-palette-text-primary)"
263
- };
264
- var alertTheme = {
265
- styleOverrides: {
266
- root: ({ theme }) => ({
267
- "--alert-bgc": theme.palette.background.paper,
268
- // Default background color
269
- "--alert-color": theme.palette.text.primary,
270
- // Default text color
271
- whiteSpace: "normal",
272
- // Allow wrapping for custom components
273
- alignItems: "center",
274
- // Center content vertically
275
- borderRadius: "var(--mui-shape-borderRadius)",
276
- // Use theme border radius
277
- backgroundColor: "var(--alert-bgc)",
278
- // Use theme background color
279
- color: "var(--alert-color)",
280
- // Use theme text color
281
- border: "1px solid var(--alert-color)",
282
- // Border using text color for contrast
283
- "& .MuiAlert-icon": {
284
- color: "var(--alert-icon-color, currentColor)",
285
- // Use CSS variable for icon color
286
- padding: "8px 0"
287
- },
288
- "& .MuiAlert-message": {
289
- flex: 1,
290
- width: "100%",
291
- // Ensure message takes width
292
- padding: "8px 0"
293
- },
294
- "& .MuiButtonBase-root": {
295
- "--button-color": "var(--alert-icon-color)"
296
- },
297
- "&.MuiAlert-standardError": {
298
- "--alert-icon-color": "var(--mui-palette-error-main)",
299
- "--alert-bgc": "var(--mui-palette-error-background, var(--mui-palette-error-dark))",
300
- "--alert-color": theme.palette.error.main
301
- },
302
- "&.MuiAlert-standardSuccess": {
303
- "--alert-icon-color": "var(--mui-palette-success-main)",
304
- "--alert-bgc": "var(--mui-palette-success-background, var(--mui-palette-success-dark))",
305
- "--alert-color": theme.palette.success.main
306
- },
307
- "&.MuiAlert-standardWarning": {
308
- "--alert-bgc": "var(--mui-palette-warning-background, var(--mui-palette-warning-dark))",
309
- "--alert-color": theme.palette.warning.main,
310
- "--alert-icon-color": "var(--mui-palette-warning-main)"
311
- },
312
- "&.MuiAlert-standardInfo": {
313
- "--alert-bgc": "var(--mui-palette-info-background, var(--mui-palette-info-dark))",
314
- "--alert-color": theme.palette.info.main,
315
- "--alert-icon-color": "var(--mui-palette-info-main)"
316
- },
317
- "&.MuiAlert-standardSystem": {
318
- "--alert-icon-color": "var(--mui-palette-system-main)",
319
- "--alert-bgc": "var(--mui-palette-system-background, var(--mui-palette-system-dark))",
320
- "--alert-color": theme.palette.system.main
321
- },
322
- "&.MuiAlert-standardInsight": {
323
- "--alert-icon-color": "var(--mui-palette-insight-main)",
324
- "--alert-bgc": "var(--mui-palette-insight-background, var(--mui-palette-insight-dark))",
325
- "--alert-color": theme.palette.insight.main
326
- },
327
- "&.MuiAlert-filledSystem": {
328
- "--alert-icon-color": "var(--mui-palette-system-contrastText)",
329
- "--alert-bgc": "var(--mui-palette-Alert-systemFilledBg, var(--mui-palette-system-main))",
330
- "--alert-color": "var(--mui-palette-Alert-systemFilledColor, var(--mui-palette-system-contrastText))"
331
- },
332
- "&.MuiAlert-filledInsight": {
333
- "--alert-icon-color": "var(--mui-palette-insight-contrastText)",
334
- "--alert-bgc": "var(--mui-palette-Alert-insightFilledBg, var(--mui-palette-insight-main))",
335
- "--alert-color": "var(--mui-palette-Alert-insightFilledColor, var(--mui-palette-insight-contrastText))"
336
- },
337
- "&.MuiAlert-outlinedSystem": {
338
- "--alert-icon-color": "var(--mui-palette-system-main)",
339
- "--alert-bgc": "transparent",
340
- "--alert-color": theme.palette.system.main
341
- },
342
- "&.MuiAlert-outlinedInsight": {
343
- "--alert-icon-color": "var(--mui-palette-insight-main)",
344
- "--alert-bgc": "transparent",
345
- "--alert-color": theme.palette.insight.main
346
- }
347
- })
348
- }
349
- };
350
-
351
- // src/components/compound/Alert/src/CollapsableAlert.tsx
352
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
353
- var CollapsableAlert = forwardRef2(
354
- ({ id, componentProps, componentWrapperProps, style }, ref) => {
355
- const [expanded, setExpanded] = useState(false);
356
- const { closeSnackbar } = useSnackbar3();
357
- const handleExpandClick = useCallback2(() => {
358
- setExpanded((oldExpanded) => !oldExpanded);
359
- }, []);
360
- const handleDismiss = useCallback2(() => {
361
- closeSnackbar(id);
362
- }, [id, closeSnackbar]);
363
- const {
364
- Renderer,
365
- ...restCollapse
366
- } = componentWrapperProps || {};
367
- return /* @__PURE__ */ jsxs(
368
- Card,
369
- {
370
- ref,
371
- style,
372
- sx: mergeSx(collapsableAlertRootSx, {
373
- "&.MuiPaper-root": {
374
- background: "var(--collapse-bg)",
375
- backdropFilter: "blur(9px)",
376
- transition: "all 0.3s ease-in-out, color 0s",
377
- color: "text.primary",
378
- height: "fit-content",
379
- border: `1px solid var(--collapse-border)`
380
- }
381
- }),
382
- children: [
383
- /* @__PURE__ */ jsxs(
384
- CardActions,
385
- {
386
- sx: {
387
- justifyContent: "space-between",
388
- padding: "4px 8px"
389
- },
390
- children: [
391
- /* @__PURE__ */ jsx2(
392
- default3,
393
- {
394
- variant: "body2",
395
- sx: {
396
- color: "var(--collapse-title-color)",
397
- paddingLeft: "8px",
398
- fontWeight: 600
399
- },
400
- children: componentProps?.title || "Alert Title"
401
- }
402
- ),
403
- /* @__PURE__ */ jsxs(default2, { sx: {
404
- display: "flex",
405
- alignItems: "center",
406
- gap: 0.5
407
- }, children: [
408
- /* @__PURE__ */ jsx2(
409
- IconButton_default,
410
- {
411
- "aria-label": "Show more",
412
- size: "small",
413
- onClick: handleExpandClick,
414
- children: /* @__PURE__ */ jsx2(
415
- default5,
416
- {
417
- style: {
418
- transform: expanded ? "rotate(180deg)" : "rotate(0deg)",
419
- transition: "transform 0.3s ease-in-out"
420
- },
421
- sx: { fontSize: "1rem" }
422
- }
423
- )
424
- }
425
- ),
426
- /* @__PURE__ */ jsx2(
427
- IconButton_default,
428
- {
429
- size: "small",
430
- "aria-label": "close",
431
- onClick: handleDismiss,
432
- children: /* @__PURE__ */ jsx2(default4, { sx: { fontSize: "1rem" } })
433
- }
434
- )
435
- ] })
436
- ]
437
- }
438
- ),
439
- /* @__PURE__ */ jsx2(default6, { in: expanded, timeout: "auto", unmountOnExit: true, children: /* @__PURE__ */ jsxs(
440
- default2,
441
- {
442
- ...restCollapse,
443
- sx: mergeSx(restCollapse.sx, { px: 2, pb: 2 }),
444
- children: [
445
- Renderer && /* @__PURE__ */ jsx2(Renderer, { ...componentProps }),
446
- !Renderer && /* @__PURE__ */ jsx2(default2, { sx: { p: 2 }, children: componentProps?.children || "Collapsible content" })
447
- ]
448
- }
449
- ) })
450
- ]
451
- }
452
- );
453
- }
454
- );
455
-
456
- // src/components/compound/Alert/src/AlertProvider.tsx
457
- import { jsx as jsx3 } from "react/jsx-runtime";
458
- var ALERT_COMPONENTS = {
459
- [ALERT_VARIANTs.info]: MuiAlertVariant,
460
- [ALERT_VARIANTs.warning]: MuiAlertVariant,
461
- [ALERT_VARIANTs.success]: MuiAlertVariant,
462
- [ALERT_VARIANTs.error]: MuiAlertVariant,
463
- [ALERT_VARIANTs.system]: MuiAlertVariant,
464
- [ALERT_VARIANTs.insight]: MuiAlertVariant,
465
- [ALERT_VARIANTs.collapsable]: CollapsableAlert
466
- };
467
- var AlertProvider = React.memo(function AlertProvider2({ children }) {
468
- return /* @__PURE__ */ jsx3(
469
- SnackbarProvider,
470
- {
471
- maxSnack: DEFAULTs.PROVIDER_CONFIGs.maxSnack,
472
- anchorOrigin: DEFAULTs.ANCHOR_ORIGIN,
473
- Components: ALERT_COMPONENTS,
474
- children
475
- }
476
- );
477
- });
478
-
479
- export {
480
- ALERT_VARIANTs,
481
- DEFAULTs,
482
- ERRORs,
483
- useAlert,
484
- enqueueAlert,
485
- enqueueCollapsable,
486
- enqueueError,
487
- enqueueSuccess,
488
- enqueueWarning,
489
- enqueueInfo,
490
- enqueueSystem,
491
- enqueueInsight,
492
- collapsableAlertRootSx,
493
- alertTheme,
494
- CollapsableAlert,
495
- AlertProvider
496
- };
497
- //# sourceMappingURL=chunk-EKPULYPU.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/compound/Alert/src/AlertProvider.tsx","../src/components/compound/Alert/src/MuiAlertVariant.tsx","../src/components/compound/Alert/src/_utils/utils.ts","../src/components/compound/Alert/src/_utils/const.ts","../src/components/compound/Alert/src/CollapsableAlert.tsx","../src/components/compound/Alert/src/theme.ts"],"sourcesContent":["'use client'\nimport React from 'react'\nimport { SnackbarProvider, type SnackbarProviderProps } from 'notistack'\nimport { MuiAlertVariant } from './MuiAlertVariant'\nimport { CollapsableAlert } from './CollapsableAlert'\nimport { ALERT_VARIANTs, DEFAULTs } from './_utils'\n\nconst ALERT_COMPONENTS: SnackbarProviderProps['Components'] = {\n [ALERT_VARIANTs.info]: MuiAlertVariant,\n [ALERT_VARIANTs.warning]: MuiAlertVariant,\n [ALERT_VARIANTs.success]: MuiAlertVariant,\n [ALERT_VARIANTs.error]: MuiAlertVariant,\n [ALERT_VARIANTs.system]: MuiAlertVariant,\n [ALERT_VARIANTs.insight]: MuiAlertVariant,\n [ALERT_VARIANTs.collapsable]: CollapsableAlert,\n}\n\n/**\n * AlertProvider - Context provider for the alert system\n * Sets up notistack with all custom alert variant components\n * Should wrap the entire application or specific sections that need alerts\n */\nexport const AlertProvider = React.memo(function AlertProvider({ children }: { children: React.ReactNode }) {\n return (\n <SnackbarProvider\n maxSnack={DEFAULTs.PROVIDER_CONFIGs.maxSnack}\n anchorOrigin={DEFAULTs.ANCHOR_ORIGIN}\n Components={ALERT_COMPONENTS}\n >\n {children}\n </SnackbarProvider>\n )\n})\n","'use client'\nimport { forwardRef, useCallback } from 'react'\nimport { useSnackbar, CustomContentProps } from 'notistack'\nimport Alert from '@mui/material/Alert'\n\nimport { type AlertOptions, ALERT_VARIANTs } from './_utils'\n\n// Map custom variants to MUI Alert severity / color\nconst variantToSeverity = {\n [ALERT_VARIANTs.info]: 'info',\n [ALERT_VARIANTs.warning]: 'warning',\n [ALERT_VARIANTs.success]: 'success',\n [ALERT_VARIANTs.error]: 'error',\n [ALERT_VARIANTs.system]: 'system',\n [ALERT_VARIANTs.insight]: 'insight',\n [ALERT_VARIANTs.collapsable]: 'info', // Default to info for collapsable\n} as const\n\ntype MuiSeverity = 'info' | 'warning' | 'success' | 'error' | 'system' | 'insight'\n\nexport const MuiAlertVariant = forwardRef<HTMLDivElement, CustomContentProps & AlertOptions>(\n (props, ref) => {\n const { id, message, variant, icon, style } = props\n const { closeSnackbar } = useSnackbar()\n\n const handleDismiss = useCallback(() => {\n closeSnackbar(id)\n }, [id, closeSnackbar])\n\n // Convert custom variant to MUI severity\n const severity = variantToSeverity[variant as keyof typeof variantToSeverity] || 'info' as MuiSeverity\n\n return (\n <Alert\n ref={ref}\n severity={severity}\n onClose={handleDismiss}\n icon={icon}\n style={style}\n >\n {message}\n </Alert>\n )\n }\n)\n","'use client'\nimport { enqueueSnackbar, useSnackbar } from 'notistack'\nimport { randomStrGenerator } from '@/_utils/_func/random'\nimport { AlertOptions, CollapsableAlertOptions, AlertOperationResult } from './types'\nimport { ALERT_VARIANTs, DEFAULTs } from './const'\n\ntype EnqueueFn = ReturnType<typeof useSnackbar>['enqueueSnackbar']\n\nfunction enqueueAlertWith(\n enqueue: EnqueueFn,\n {\n message,\n variant,\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n icon,\n ...rest\n }: AlertOptions\n): AlertOperationResult<string> {\n try {\n enqueue(message, {\n variant,\n anchorOrigin,\n autoHideDuration,\n key: id,\n id,\n icon,\n ...rest,\n })\n return { success: true, data: id as string }\n } catch (error) {\n console.error('Failed to enqueue alert:', error)\n return { success: false, error: (error instanceof Error ? error.message : 'Unknown error') }\n }\n}\n\nfunction enqueueCollapsableWith(\n enqueue: EnqueueFn,\n {\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n componentProps = {},\n componentWrapperProps = {\n Renderer: () => null,\n },\n ...rest\n }: CollapsableAlertOptions\n): AlertOperationResult<string> {\n try {\n enqueue({\n variant: ALERT_VARIANTs.collapsable,\n anchorOrigin,\n autoHideDuration,\n componentProps,\n componentWrapperProps,\n id,\n ...rest,\n })\n return { success: true, data: id as string }\n } catch (error) {\n console.error('Failed to enqueue collapsable alert:', error)\n return { success: false, error: (error instanceof Error ? error.message : 'Unknown error') }\n }\n}\n\nexport function useAlert() {\n const { enqueueSnackbar: enqueue, closeSnackbar } = useSnackbar()\n\n const enqueueAlert = (options: AlertOptions) => enqueueAlertWith(enqueue, options)\n const enqueueCollapsable = (options: CollapsableAlertOptions) => enqueueCollapsableWith(enqueue, options)\n const enqueueError = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.error, message, ...options })\n const enqueueSuccess = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.success, message, ...options })\n const enqueueWarning = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.warning, message, ...options })\n const enqueueInfo = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.info, message, ...options })\n const enqueueSystem = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.system, message, ...options })\n const enqueueInsight = (message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) =>\n enqueueAlert({ variant: ALERT_VARIANTs.insight, message, ...options })\n\n return {\n enqueueAlert,\n enqueueCollapsable,\n enqueueError,\n enqueueSuccess,\n enqueueWarning,\n enqueueInfo,\n enqueueSystem,\n enqueueInsight,\n closeSnackbar,\n }\n}\n\nexport function enqueueAlert({\n message,\n variant,\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n icon,\n ...rest\n}: AlertOptions): AlertOperationResult<string> {\n return enqueueAlertWith(enqueueSnackbar, {\n message,\n variant,\n id,\n autoHideDuration,\n anchorOrigin,\n icon,\n ...rest,\n })\n}\n\nexport function enqueueCollapsable({\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n componentProps = {},\n componentWrapperProps = {\n Renderer: () => null, \n },\n ...rest\n}: CollapsableAlertOptions): AlertOperationResult<string> {\n return enqueueCollapsableWith(enqueueSnackbar, {\n id,\n autoHideDuration,\n anchorOrigin,\n componentProps,\n componentWrapperProps,\n ...rest,\n })\n}\n\nexport function enqueueError(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.error,\n message,\n ...options\n })\n}\n\nexport function enqueueSuccess(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.success,\n message,\n ...options\n })\n}\n\nexport function enqueueWarning(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.warning,\n message,\n ...options\n })\n}\n\nexport function enqueueInfo(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.info,\n message,\n ...options\n })\n}\n\nexport function enqueueSystem(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.system,\n message,\n ...options\n })\n}\n\nexport function enqueueInsight(message: string | React.ReactNode, options?: Omit<AlertOptions, 'message' | 'variant'>) {\n return enqueueAlert({\n variant: ALERT_VARIANTs.insight,\n message,\n ...options\n })\n}\n","export const ALERT_VARIANTs = {\n info: 'myInfo',\n warning: 'myWarning',\n success: 'mySuccess',\n error: 'myError',\n system: 'mySystem',\n insight: 'myInsight',\n collapsable: 'myCollapsable',\n} as const\n\nexport const DEFAULTs = {\n AUTO_HIDE_DURATION: 3000,\n ANCHOR_ORIGIN: { horizontal: \"right\" as const, vertical: \"top\" as const },\n PROVIDER_CONFIGs: {\n maxSnack: 3,\n dense: true,\n preventDuplicate: true,\n autoHideDuration: 3000,\n }\n} as const\n\nexport const ERRORs = {\n invalid_variant: 'Invalid alert variant provided',\n enqueue_failed: 'Failed to enqueue alert',\n missing_message: 'Message is required for alert',\n missing_component_props: 'Component props are required for collapsible alert',\n} as const\n","'use client'\nimport { forwardRef, useState, useCallback } from 'react'\nimport { CustomContentProps, useSnackbar } from 'notistack'\nimport CardActions from '@mui/material/CardActions'\nimport type { BoxProps } from '@mui/material/Box'\nimport { CardContainer } from '@/ele/Card'\nimport { Collapse } from '@/ele/Collapse'\nimport { IconButton } from '@/ele/Button'\nimport { Typography } from '@/ele/Typography'\nimport { Box } from '@/ele/Box'\nimport { ExpandMoreIcon, CloseIcon } from '@/icons/MuiIcon'\nimport { type CollapsableAlertOptions } from './_utils'\nimport { collapsableAlertRootSx } from './theme'\nimport { mergeSx } from '@/_utils/_func'\n\nexport const CollapsableAlert = forwardRef<HTMLDivElement, CustomContentProps & CollapsableAlertOptions>(\n ({ id, componentProps, componentWrapperProps, style }, ref) => {\n const [expanded, setExpanded] = useState(false)\n const { closeSnackbar } = useSnackbar()\n\n const handleExpandClick = useCallback(() => {\n setExpanded((oldExpanded) => !oldExpanded)\n }, [])\n\n const handleDismiss = useCallback(() => {\n closeSnackbar(id)\n }, [id, closeSnackbar])\n\n // Extract Renderer and other props following original pattern\n const {\n Renderer,\n ...restCollapse\n } = componentWrapperProps || {}\n\n return (\n <CardContainer \n ref={ref}\n style={style}\n sx={mergeSx(collapsableAlertRootSx, {\n \"&.MuiPaper-root\": {\n background: 'var(--collapse-bg)',\n backdropFilter: \"blur(9px)\",\n transition: \"all 0.3s ease-in-out, color 0s\",\n color: \"text.primary\",\n height: \"fit-content\",\n border: `1px solid var(--collapse-border)`,\n },\n })}\n >\n <CardActions \n sx={{\n justifyContent: \"space-between\",\n padding: '4px 8px',\n }}\n >\n <Typography\n variant=\"body2\"\n sx={{\n color: \"var(--collapse-title-color)\",\n paddingLeft: \"8px\",\n fontWeight: 600\n }}\n >\n {componentProps?.title || 'Alert Title'}\n </Typography>\n <Box sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 0.5,\n }}>\n <IconButton\n aria-label=\"Show more\"\n size=\"small\"\n onClick={handleExpandClick}\n >\n <ExpandMoreIcon \n style={{\n transform: expanded ? \"rotate(180deg)\" : \"rotate(0deg)\",\n transition: 'transform 0.3s ease-in-out'\n }}\n sx={{fontSize:\"1rem\"}}\n />\n </IconButton>\n <IconButton\n size=\"small\"\n aria-label=\"close\"\n onClick={handleDismiss}\n >\n <CloseIcon sx={{fontSize:\"1rem\"}} />\n </IconButton>\n </Box>\n </CardActions>\n \n <Collapse in={expanded} timeout=\"auto\" unmountOnExit>\n {/* restCollapse holds caller-supplied BoxProps forwarded through componentWrapperProps */}\n <Box\n {...(restCollapse as BoxProps)}\n sx={mergeSx((restCollapse as BoxProps).sx, { px:2, pb:2 })}\n >\n {Renderer && <Renderer {...componentProps} />}\n {!Renderer && (\n <Box sx={{ p: 2 }}>\n {componentProps?.children || 'Collapsible content'}\n </Box>\n )}\n </Box>\n </Collapse>\n </CardContainer>\n )\n }\n)\n","\nimport type { MuiComponentTheme } from '@/_utils/_types'\nimport type { SxProps, Theme } from '@mui/material/styles'\n\n/**\n * Root-level CSS variable aliases for the CollapsableAlert compound element.\n * Declare here once — all child elements consume via `var(--*)`.\n */\nexport const collapsableAlertRootSx: SxProps<Theme> = {\n '--collapse-bg': 'var(--mui-palette-container-bg-1)',\n '--collapse-border': 'var(--mui-palette-border-1)',\n '--collapse-title-color': 'var(--mui-palette-text-primary)',\n}\n\nexport const alertTheme = {\n styleOverrides: {\n root: ({ theme }) => ({\n '--alert-bgc': theme.palette.background.paper, // Default background color\n '--alert-color': theme.palette.text.primary, // Default text color\n\n whiteSpace: \"normal\", // Allow wrapping for custom components\n alignItems: 'center', // Center content vertically\n borderRadius: 'var(--mui-shape-borderRadius)', // Use theme border radius\n backgroundColor: 'var(--alert-bgc)', // Use theme background color\n color: 'var(--alert-color)', // Use theme text color\n border: '1px solid var(--alert-color)', // Border using text color for contrast\n \n \"& .MuiAlert-icon\": {\n color: \"var(--alert-icon-color, currentColor)\", // Use CSS variable for icon color\n padding: '8px 0', \n },\n \"& .MuiAlert-message\": {\n flex: 1, \n width: '100%', // Ensure message takes width\n padding: '8px 0',\n },\n \"& .MuiButtonBase-root\": {\n '--button-color': 'var(--alert-icon-color)',\n },\n\n \"&.MuiAlert-standardError\": {\n '--alert-icon-color': 'var(--mui-palette-error-main)',\n '--alert-bgc': 'var(--mui-palette-error-background, var(--mui-palette-error-dark))',\n '--alert-color': theme.palette.error.main,\n },\n \"&.MuiAlert-standardSuccess\": {\n '--alert-icon-color': 'var(--mui-palette-success-main)',\n '--alert-bgc': 'var(--mui-palette-success-background, var(--mui-palette-success-dark))',\n '--alert-color': theme.palette.success.main,\n },\n \"&.MuiAlert-standardWarning\": {\n '--alert-bgc': 'var(--mui-palette-warning-background, var(--mui-palette-warning-dark))', \n '--alert-color': theme.palette.warning.main,\n \"--alert-icon-color\": \"var(--mui-palette-warning-main)\",\n },\n \"&.MuiAlert-standardInfo\": {\n '--alert-bgc': 'var(--mui-palette-info-background, var(--mui-palette-info-dark))',\n '--alert-color': theme.palette.info.main,\n \"--alert-icon-color\": \"var(--mui-palette-info-main)\",\n },\n \"&.MuiAlert-standardSystem\": {\n '--alert-icon-color': 'var(--mui-palette-system-main)',\n '--alert-bgc': 'var(--mui-palette-system-background, var(--mui-palette-system-dark))',\n '--alert-color': theme.palette.system.main,\n },\n \"&.MuiAlert-standardInsight\": {\n '--alert-icon-color': 'var(--mui-palette-insight-main)',\n '--alert-bgc': 'var(--mui-palette-insight-background, var(--mui-palette-insight-dark))',\n '--alert-color': theme.palette.insight.main,\n },\n \"&.MuiAlert-filledSystem\": {\n '--alert-icon-color': 'var(--mui-palette-system-contrastText)',\n '--alert-bgc': 'var(--mui-palette-Alert-systemFilledBg, var(--mui-palette-system-main))',\n '--alert-color': 'var(--mui-palette-Alert-systemFilledColor, var(--mui-palette-system-contrastText))',\n },\n \"&.MuiAlert-filledInsight\": {\n '--alert-icon-color': 'var(--mui-palette-insight-contrastText)',\n '--alert-bgc': 'var(--mui-palette-Alert-insightFilledBg, var(--mui-palette-insight-main))',\n '--alert-color': 'var(--mui-palette-Alert-insightFilledColor, var(--mui-palette-insight-contrastText))',\n },\n \"&.MuiAlert-outlinedSystem\": {\n '--alert-icon-color': 'var(--mui-palette-system-main)',\n '--alert-bgc': 'transparent',\n '--alert-color': theme.palette.system.main,\n },\n \"&.MuiAlert-outlinedInsight\": {\n '--alert-icon-color': 'var(--mui-palette-insight-main)',\n '--alert-bgc': 'transparent',\n '--alert-color': theme.palette.insight.main,\n },\n }),\n },\n} as const satisfies MuiComponentTheme<\"MuiAlert\">\n"],"mappings":"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","names":["useSnackbar","enqueueAlert","enqueueCollapsable","enqueueError","enqueueSuccess","enqueueWarning","enqueueInfo","enqueueSystem","enqueueInsight","useSnackbar","forwardRef","useCallback","useSnackbar","jsx","forwardRef","useSnackbar","useCallback","default","jsx","AlertProvider"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/elemental/Autocomplete/src/GitHubPicker/theme.ts","../src/components/elemental/Autocomplete/src/GitHubPicker/OptionRenderer.tsx","../src/components/elemental/Autocomplete/src/GitHubPicker/states/states.tsx","../src/components/elemental/Autocomplete/src/GitHubPicker/_utils/_const.ts","../src/components/elemental/Autocomplete/src/GitHubPicker/_utils/OptionClass.ts"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles'\nimport { styled } from '@mui/material/styles'\nimport { Box } from '@/ele/Box'\n\n/**\n * Static palette aliases shared across GitHubPicker styled components.\n * Children consume these variables; they do not re-declare palette refs.\n */\nexport const gitHubPickerRootStyle = {\n\t'--option-subscript': 'var(--mui-palette-text-subscript)',\n\t'--picker-focus-soft': 'color-mix(in lab, var(--mui-palette-focus-soft-1), transparent 18%)',\n\t'--picker-focus': 'var(--mui-palette-focus-1)',\n '--picker-border': 'color-mix(in lab, var(--mui-palette-common-white), transparent 94%)',\n\t'--picker-border-hover': 'var(--mui-palette-border-hover-1)',\n\t'--picker-border-emphasis': 'color-mix(in lab, var(--mui-palette-primary-emphasis), transparent 50%)',\n\t'--picker-text': 'var(--mui-palette-text-primary)',\n\t'--picker-text-secondary': 'var(--mui-palette-text-secondary)',\n\t'--picker-text-disabled': 'var(--mui-palette-text-disabled)',\n\t'--picker-surface': 'color-mix(in lab, var(--mui-palette-common-black), transparent 68%)',\n\t'--picker-paper-bg': 'color-mix(in lab, var(--mui-palette-background-paper), transparent 30%)',\n\t'--picker-hover-bg': 'var(--mui-palette-background-hover-1)',\n\t'--picker-chip-bg': 'color-mix(in lab, var(--mui-palette-secondary-main), transparent 88%)',\n\t'--picker-chip-border': 'color-mix(in lab, var(--mui-palette-common-white), transparent 94%)',\n\t'--picker-chip-shadow': 'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 88%), inset 0 0 0 1px color-mix(in lab, var(--mui-palette-common-white), transparent 91%)',\n\t'--picker-error': 'var(--mui-palette-error-main)',\n\t// Dark closed field: true mid glass — between washed and dim.\n\t'--picker-highlight': 'color-mix(in lab, var(--mui-palette-common-white), transparent 92%)',\n\t'--picker-sheen': 'none',\n\t'--picker-shadow': [\n\t\t'0 18px 48px color-mix(in srgb, var(--mui-palette-common-black), transparent 72%)',\n\t\t'0 0 0 1px color-mix(in srgb, var(--mui-palette-common-black), transparent 88%)',\n\t].join(', '),\n\t'--picker-focus-ring': 'color-mix(in lab, var(--mui-palette-primary-emphasis), transparent 82%)',\n\t'--picker-check': 'var(--mui-palette-primary-emphasis)',\n\t'--picker-search-bg': 'var(--mui-palette-background-hover-1)',\n\t'--picker-search-shadow': 'inset 0 1px 0 var(--picker-highlight)',\n\t'--picker-search-border': 'color-mix(in lab, var(--picker-highlight), transparent 40%)',\n\t'--picker-divider': 'var(--mui-palette-divider)',\n\t'--picker-icon-well': 'color-mix(in lab, var(--mui-palette-background-hover-1), transparent 20%)',\n\t'--picker-blur': '8px',\n\t'--picker-glass': 'saturate(1.15) blur(var(--picker-blur))',\n\t'[color-scheme=light] &': {\n\t\t'--picker-blur': '10px',\n\t\t'--picker-glass': 'saturate(1.08) blur(var(--picker-blur))',\n\t\t'--picker-surface': 'color-mix(in lab, var(--mui-palette-common-white), transparent 46%)',\n\t\t'--picker-paper-bg': 'color-mix(in lab, var(--mui-palette-common-white), transparent 48%)',\n\t\t'--picker-highlight': 'color-mix(in lab, var(--mui-palette-common-white), transparent 55%)',\n\t\t'--picker-sheen': 'none',\n\t\t'--picker-border': 'color-mix(in lab, var(--mui-palette-border-1), transparent 95%)',\n\t\t'--picker-chip-bg': 'color-mix(in lab, var(--mui-palette-common-white), transparent 32%)',\n\t\t'--picker-chip-border': 'color-mix(in lab, var(--mui-palette-common-black), transparent 94%)',\n\t\t'--picker-chip-shadow': 'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 40%), inset 0 0 0 1px color-mix(in lab, var(--mui-palette-common-black), transparent 92%)',\n\t\t'--picker-search-bg': 'color-mix(in lab, var(--mui-palette-common-black), transparent 95%)',\n\t\t'--picker-search-shadow': 'inset 0 1px 1px color-mix(in lab, var(--mui-palette-common-black), transparent 92%)',\n\t\t'--picker-search-border': 'color-mix(in lab, var(--mui-palette-common-black), transparent 93%)',\n\t\t'--picker-focus-soft': 'color-mix(in lab, var(--mui-palette-common-black), transparent 95%)',\n\t\t'--picker-hover-bg': 'color-mix(in lab, var(--mui-palette-common-black), transparent 96%)',\n\t\t'--picker-shadow': [\n\t\t\t'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 28%)',\n\t\t\t'0 1px 2px color-mix(in srgb, var(--mui-palette-common-black), transparent 90%)',\n\t\t\t'0 10px 28px color-mix(in srgb, var(--mui-palette-common-black), transparent 86%)',\n\t\t].join(', '),\n\t\t'--picker-field-shadow': [\n\t\t\t'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 28%)',\n\t\t\t'0 8px 22px color-mix(in srgb, var(--mui-palette-common-black), transparent 88%)',\n\t\t].join(', '),\n\t\t'--picker-icon-well': 'color-mix(in lab, var(--mui-palette-common-black), transparent 96%)',\n\t},\n} as const\n\nexport const gitHubPickerRootSx = {\n\t...gitHubPickerRootStyle,\n} as const satisfies SxProps<Theme>\n\nexport const PickerField = styled(Box, {\n\tshouldForwardProp: (prop) =>\n\t\tprop !== 'open'\n\t\t&& prop !== 'error'\n\t\t&& prop !== 'disabled',\n})<{ open?: boolean; error?: boolean; disabled?: boolean }>({\n\t...gitHubPickerRootStyle,\n\tboxSizing: 'border-box',\n\twidth: '100%',\n\tminWidth: 240,\n\tdisplay: 'flex',\n\tflexDirection: 'column',\n\tgap: 8,\n\tpadding: '12px 14px 14px',\n\tborderRadius: 12,\n\tborder: '1px solid var(--picker-field-border)',\n\tbackgroundColor: 'var(--picker-surface)',\n\tbackgroundImage: 'var(--picker-sheen)',\n\tbackdropFilter: 'saturate(1.2) blur(12px)',\n\tWebkitBackdropFilter: 'saturate(1.2) blur(12px)',\n\tcursor: 'var(--picker-field-cursor)',\n\toutline: 'none',\n\tboxShadow: 'var(--picker-field-shadow)',\n\ttransition: 'border-color 160ms ease, box-shadow 160ms ease',\n\t'& *': {\n\t\tcursor: 'inherit',\n\t},\n\t'--picker-field-border': 'var(--picker-border)',\n\t'--picker-field-shadow': 'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 88%), inset 0 0 0 1px color-mix(in lab, var(--mui-palette-common-white), transparent 91%), 0 0 20px color-mix(in lab, var(--mui-palette-primary-emphasis), transparent 93%), 0 9px 22px color-mix(in srgb, var(--mui-palette-common-black), transparent 77%)',\n\t'--picker-field-cursor': 'pointer',\n\t'&:hover': {\n\t\t'--picker-field-border': 'color-mix(in lab, var(--mui-palette-common-white), transparent 92%)',\n\t},\n\t'&:focus-visible': {\n\t\t'--picker-field-border': 'color-mix(in lab, var(--mui-palette-common-white), transparent 92%)',\n\t\t'--picker-field-shadow': 'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 88%), inset 0 0 0 1px color-mix(in lab, var(--mui-palette-common-white), transparent 91%), 0 0 20px color-mix(in lab, var(--mui-palette-primary-emphasis), transparent 93%), 0 9px 22px color-mix(in srgb, var(--mui-palette-common-black), transparent 77%)',\n\t},\n\tvariants: [\n\t\t{\n\t\t\tprops: { open: true },\n\t\t\tstyle: {\n\t\t\t\t'--picker-field-border': 'color-mix(in lab, var(--mui-palette-common-white), transparent 92%)',\n\t\t\t\t'--picker-field-shadow': 'inset 0 1px 0 color-mix(in lab, var(--mui-palette-common-white), transparent 88%), inset 0 0 0 1px color-mix(in lab, var(--mui-palette-common-white), transparent 91%), 0 0 20px color-mix(in lab, var(--mui-palette-primary-emphasis), transparent 93%), 0 9px 22px color-mix(in srgb, var(--mui-palette-common-black), transparent 77%)',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { error: true },\n\t\t\tstyle: {\n\t\t\t\t'--picker-field-border': 'var(--picker-error)',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { disabled: true },\n\t\t\tstyle: {\n\t\t\t\t'--picker-field-cursor': 'default',\n\t\t\t\topacity: 0.58,\n\t\t\t\tpointerEvents: 'none',\n\t\t\t},\n\t\t},\n\t],\n})\n\nexport const OptionBox = styled(Box, {\n\tshouldForwardProp: (prop) =>\n\t\tprop !== 'selected'\n\t\t&& prop !== 'isIconClickable'\n\t\t&& prop !== 'disabled'\n\t\t&& prop !== 'disableBR'\n})<{ selected: boolean; isIconClickable: boolean; disabled: boolean; disableBR?: boolean }>({\n\t...gitHubPickerRootStyle,\n\twidth: '100%',\n\tpadding: 0,\n\tbackgroundColor: 'var(--bg)',\n\tborder: '1px solid var(--bd)',\n\tborderRadius: 'var(--br)',\n\tboxShadow: 'var(--chip-shadow)',\n\tcursor: 'var(--curosr)',\n\t'--bg': 'transparent',\n\t'--bd': 'transparent',\n\t'--br': '10px',\n\t'--chip-shadow': 'none',\n\t'--ai': 'flex-start',\n\t'--curosr': 'pointer',\n\t'& *': {\n\t\tcursor: 'inherit',\n\t},\n\tvariants: [\n\t\t{\n\t\t\tprops: { isIconClickable: true },\n\t\t\tstyle: {\n\t\t\t\twidth: 'auto',\n\t\t\t\tmaxWidth: '100%',\n\t\t\t\t'--bg': 'var(--picker-chip-bg)',\n\t\t\t\t'--bd': 'var(--picker-chip-border)',\n\t\t\t\t'--br': '999px',\n\t\t\t\t'--chip-shadow': 'var(--picker-chip-shadow)',\n\t\t\t\t'--ai': 'center',\n\t\t\t\t'--curosr': 'pointer',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { isIconClickable: false },\n\t\t\tstyle: {\n\t\t\t\t'--bg': 'transparent',\n\t\t\t\t'--bd': 'transparent',\n\t\t\t\t'--ai': 'flex-start',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { disabled: true },\n\t\t\tstyle: {\n\t\t\t\t'--curosr': 'default',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { disabled: false },\n\t\t\tstyle: {\n\t\t\t\t'--curosr': 'pointer',\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tprops: { disableBR: true },\n\t\t\tstyle: {\n\t\t\t\t'--br': 0,\n\t\t\t},\n\t\t},\n\t],\n})\n","'use client'\nimport { Box } from '@/ele/Box'\nimport { CheckIcon, CloseIcon } from '@/icons/MuiIcon'\nimport { IconButton } from '@/ele/Button'\nimport { Typography } from '@/ele/Typography'\nimport { TagButton } from '@/ele/Button'\n\nimport { OptionClass, type OptionId } from './_utils'\nimport { OptionBox } from './theme'\n\nconst ICON_STYLE = {\n\theight: 16,\n\twidth: 16,\n\topacity: 0.85,\n}\n\nexport default function OptionRenderer({\n\toption,\n\tisIconClickable = false,\n\tselected,\n\tdisabled,\n\tdisableBR = false,\n\tremoveItemHandler,\n\tslotProps = {},\n}: {\n\tselected: boolean;\n\tisIconClickable?: boolean;\n\tdisabled?: boolean;\n\tdisableBR?: boolean;\n\toption: OptionClass | null;\n\tremoveItemHandler?: (id: OptionId) => void;\n\tslotProps?: {\n\t\tDM?: Partial<React.ComponentProps<typeof DM>>;\n\t};\n}) {\n\tif (!option) return null;\n\n\treturn (\n\t\t<Wrapper selected={selected} isIconClickable={isIconClickable} disabled={disabled} disableBR={disableBR}>\n\t\t\t<Box\n\t\t\t\tsx={{\n\t\t\t\t\t'&.MuiBox-root': {\n\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\talignItems: 'var(--ai)',\n\t\t\t\t\t\tgap: isIconClickable ? '6px' : '10px',\n\t\t\t\t\t\tcursor: 'var(--curosr)',\n\t\t\t\t\t\tpadding: isIconClickable ? '3px 6px 3px 8px' : '8px 10px',\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<DM\n\t\t\t\t\toption={option}\n\t\t\t\t\tonDelete={removeItemHandler ? () => removeItemHandler(option.id) : undefined}\n\t\t\t\t\tisIconClickable={isIconClickable}\n\t\t\t\t\tselected={selected}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t{...slotProps.DM}\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t</Wrapper>\n\t)\n}\n\nfunction Wrapper({\n\tchildren,\n\tselected = false,\n\tisIconClickable = false,\n\tdisabled = false,\n\tdisableBR = false,\n}: {\n\tchildren: React.ReactNode;\n\tselected?: boolean;\n\tisIconClickable?: boolean;\n\tdisabled?: boolean;\n\tdisableBR?: boolean;\n}) {\n\treturn (\n\t\t<OptionBox selected={selected} isIconClickable={isIconClickable} disabled={disabled} disableBR={disableBR}>\n\t\t\t{children}\n\t\t</OptionBox>\n\t)\n}\n\nfunction ItemIcon({ option, compact }: { option: OptionClass; compact?: boolean }) {\n\tif (!option.icon) return null\n\n\treturn (\n\t\t<Box\n\t\t\tcomponent=\"span\"\n\t\t\tsx={{\n\t\t\t\tflexShrink: 0,\n\t\t\t\twidth: compact ? 18 : 28,\n\t\t\t\theight: compact ? 18 : 28,\n\t\t\t\tborderRadius: compact ? '50%' : '8px',\n\t\t\t\tdisplay: 'flex',\n\t\t\t\talignItems: 'center',\n\t\t\t\tjustifyContent: 'center',\n\t\t\t\talignSelf: 'center',\n\t\t\t\tbackgroundColor: compact ? 'transparent' : 'var(--picker-icon-well)',\n\t\t\t\tcolor: 'var(--picker-text-secondary)',\n\t\t\t\t'& svg': ICON_STYLE,\n\t\t\t}}\n\t\t>\n\t\t\t{option.icon}\n\t\t</Box>\n\t)\n}\n\nfunction ItemLabel({\n\toption,\n\tisShowDescription = false,\n\tcompact = false,\n}: {\n\toption: OptionClass;\n\tisShowDescription: boolean;\n\tcompact?: boolean;\n}) {\n\tconst isUseTag = option.tags.length > 0\n\tconst description = option.description?.trim()\n\tconst showSecondary = isShowDescription && (isUseTag || Boolean(description))\n\n\treturn (\n\t\t<Box\n\t\t\tsx={{\n\t\t\t\tflexGrow: 1,\n\t\t\t\tminWidth: 0,\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tflexDirection: 'column',\n\t\t\t\tjustifyContent: 'center',\n\t\t\t\tgap: showSecondary ? '2px' : 0,\n\t\t\t}}\n\t\t>\n\t\t\t<Typography\n\t\t\t\tcomponent=\"span\"\n\t\t\t\tsx={{\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tfontSize: compact ? '0.8125rem' : '0.875rem',\n\t\t\t\t\tfontWeight: compact ? 500 : 600,\n\t\t\t\t\tlineHeight: 1.3,\n\t\t\t\t\tletterSpacing: compact ? 0 : '0.01em',\n\t\t\t\t\tcolor: 'var(--picker-text)',\n\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\tm: 0,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{option.label}\n\t\t\t</Typography>\n\t\t\t{showSecondary ? (\n\t\t\t\tisUseTag ? (\n\t\t\t\t\t<Box sx={{ display: 'flex', gap: '4px', flexWrap: 'wrap', pt: 0.25 }}>\n\t\t\t\t\t\t{option.tags.map((tag, i) => (\n\t\t\t\t\t\t\t<TagButton\n\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\tlabel={(tag?.tagIcon ? '' : '# ') + tag.tagName}\n\t\t\t\t\t\t\t\ticon={tag?.tagIcon ?? undefined}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Box>\n\t\t\t\t) : (\n\t\t\t\t\t<Typography\n\t\t\t\t\t\tcomponent=\"span\"\n\t\t\t\t\t\tsx={{\n\t\t\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\t\t\tfontSize: '0.75rem',\n\t\t\t\t\t\t\tlineHeight: 1.35,\n\t\t\t\t\t\t\tcolor: 'var(--option-subscript)',\n\t\t\t\t\t\t\ttextOverflow: 'ellipsis',\n\t\t\t\t\t\t\twhiteSpace: 'nowrap',\n\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\tm: 0,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{description}\n\t\t\t\t\t</Typography>\n\t\t\t\t)\n\t\t\t) : null}\n\t\t</Box>\n\t)\n}\n\nfunction DM({\n\toption,\n\tselected,\n\tonDelete,\n\talwaysShowEndIcon = false,\n\tisIconClickable = false,\n\tdisabled = false,\n\tendIcon = null,\n\tisShowEndIcon = true,\n\tisShowDescription = true,\n}: {\n\toption: React.ComponentProps<typeof ItemIcon>['option'];\n\tisShowDescription?: React.ComponentProps<typeof ItemLabel>['isShowDescription'];\n\tselected?: boolean;\n\tisIconClickable?: boolean;\n\tisShowEndIcon?: boolean;\n\tdisabled: React.ComponentProps<typeof IconButton>['disabled'];\n\tonDelete?: React.ComponentProps<typeof IconButton>['onClick'];\n\talwaysShowEndIcon?: boolean;\n\tendIcon?: React.ReactNode | null;\n}) {\n\tconst showClose = Boolean(isShowEndIcon && isIconClickable && (selected || alwaysShowEndIcon))\n\tconst showCheck = Boolean(isShowEndIcon && !isIconClickable && selected)\n\n\treturn (\n\t\t<>\n\t\t\t<ItemIcon option={option} compact={isIconClickable} />\n\t\t\t<ItemLabel option={option} isShowDescription={isShowDescription} compact={isIconClickable} />\n\t\t\t{showClose ? (\n\t\t\t\t<IconButton\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\taria-label={`Remove ${option.label}`}\n\t\t\t\t\tonClick={(event) => {\n\t\t\t\t\t\tevent.stopPropagation()\n\t\t\t\t\t\tonDelete?.(event)\n\t\t\t\t\t}}\n\t\t\t\t\tsx={{\n\t\t\t\t\t\tpadding: '2px',\n\t\t\t\t\t\tflexShrink: 0,\n\t\t\t\t\t\tcursor: disabled ? 'default' : 'pointer',\n\t\t\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\t\t\tborder: 'none',\n\t\t\t\t\t\tcolor: 'var(--picker-text-secondary)',\n\t\t\t\t\t\t'&:hover': {\n\t\t\t\t\t\t\tbackgroundColor: 'var(--picker-hover-bg)',\n\t\t\t\t\t\t\tborder: 'none',\n\t\t\t\t\t\t\tcolor: 'var(--picker-text)',\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{endIcon ?? <CloseIcon sx={{ fontSize: '0.95rem' }} />}\n\t\t\t\t</IconButton>\n\t\t\t) : null}\n\t\t\t{showCheck ? (\n\t\t\t\t<Box\n\t\t\t\t\tsx={{\n\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\talignItems: 'center',\n\t\t\t\t\t\talignSelf: 'center',\n\t\t\t\t\t\tflexShrink: 0,\n\t\t\t\t\t\tcolor: 'var(--picker-check)',\n\t\t\t\t\t\tpl: 0.5,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{endIcon ?? <CheckIcon sx={{ fontSize: '1.05rem' }} />}\n\t\t\t\t</Box>\n\t\t\t) : null}\n\t\t</>\n\t)\n}\n","'use client'\nimport { createContext, useContext, useState, useCallback, useMemo, useEffect, useRef } from 'react'\n\nimport { \n type MinimalOption, type AutoCompleteOptionIds,\n type OptionIds,\n OptionClass,\n} from '../_utils'\n\nexport type StateType = {\n ids: AutoCompleteOptionIds,\n minimal: MinimalOption[] | MinimalOption | null,\n isMultiple: boolean,\n}\n\ntype ContextType = {\n\tstate: StateType;\n select: (option: MinimalOption | MinimalOption[] | null) => StateType;\n}\nconst Context = createContext<ContextType | null>(null);\nexport const useStateContext = () => {\n const ctx = useContext(Context)\n if (!ctx) throw new Error('useStateContext must be used within LocalSelectedProvider')\n return ctx\n}\n\nexport const Provider = ({children,selectedIds,options,isMultiple,open=false}:{\n children:React.ReactNode,\n selectedIds:Parameters<typeof init>[0]['selectedIds'],\n options:Parameters<typeof init>[0]['options'],\n isMultiple:Parameters<typeof init>[0]['isMultiple'],\n open?: boolean,\n}) => {\n // Initialize state once\n\tconst [state, setState] = useState<StateType>(() => init({selectedIds,options,isMultiple}))\n const stateRef = useRef(state)\n stateRef.current = state\n\n // Keep provider state in sync when parent-driven selectedIds/options/isMultiple change.\n // While open, skip identity-driven re-init so accumulating picks are not wiped\n // by a stale parent selectedIds array.\n useEffect(() => {\n const next = init({ selectedIds, options, isMultiple })\n if (equalState(stateRef.current, next)) return\n if (open) return\n stateRef.current = next\n setState(next)\n }, [selectedIds, options, isMultiple, open]);\n\n // Compute next state as a pure function — used both in setState and as return value\n const computeNextState = useCallback((prev: StateType, option: MinimalOption | MinimalOption[] | null): StateType => {\n if (prev.isMultiple) {\n const newOptions = Array.isArray(option) ? option : []\n return { ...prev, ids: newOptions.map(o => o.id), minimal: newOptions }\n }\n const newOption = option && !Array.isArray(option) ? option : null\n return { ...prev, ids: newOption?.id ?? null, minimal: newOption }\n }, [])\n\n const select = useCallback((option: MinimalOption | MinimalOption[] | null): StateType => {\n let produced: StateType | undefined\n setState((prev) => {\n produced = computeNextState(prev, option)\n stateRef.current = produced\n return produced\n })\n // React skips the eager updater when updates are already queued; chain from the ref.\n if (produced === undefined) {\n produced = computeNextState(stateRef.current, option)\n stateRef.current = produced\n }\n return produced\n }, [computeNextState])\n\n const value = useMemo(() => ({ state, select }), [state, select])\n\n\treturn (\n\t\t<Context.Provider value={value}>\n\t\t\t{children}\n\t\t</Context.Provider>\n\t)\n}\n\nexport const useSelector = () => {\n const {state} = useStateContext()\n return <T extends keyof StateType>(key:T) => {\n return state[key]\n }\n}\n/**\n * Initialize the local state\n */\nfunction init({\n selectedIds, \n options,\n isMultiple,\n}:{\n selectedIds:OptionIds, \n options:OptionClass[],\n isMultiple:boolean,\n}):StateType{\n return {\n ids: isMultiple?selectedIds : selectedIds[0]??null,\n minimal: isMultiple?options\n .filter(o=>selectedIds.includes(o.id))\n .map(o=>o.minimal())\n :options.find(o=>o.id===selectedIds[0])?.minimal()??null,\n isMultiple: isMultiple,\n }\n}\n\nfunction equalIds(a: AutoCompleteOptionIds, b: AutoCompleteOptionIds): boolean {\n if (a === b) return true\n if (Array.isArray(a) && Array.isArray(b)) {\n return a.length === b.length && a.every((id, i) => id === b[i])\n }\n return false\n}\n\nfunction equalMinimalOption(a: MinimalOption, b: MinimalOption): boolean {\n return a.id === b.id\n && a.label === b.label\n && a.filterKey === b.filterKey\n && a.disabled === b.disabled\n && a.group === b.group\n && a.value === b.value\n}\n\nfunction equalMinimal(\n a: StateType['minimal'],\n b: StateType['minimal'],\n): boolean {\n if (a === b) return true\n if (a == null || b == null) return false\n if (Array.isArray(a) && Array.isArray(b)) {\n return a.length === b.length && a.every((opt, i) => equalMinimalOption(opt, b[i]))\n }\n if (!Array.isArray(a) && !Array.isArray(b)) {\n return equalMinimalOption(a, b)\n }\n return false\n}\n\nfunction equalState(a: StateType, b: StateType): boolean {\n return a.isMultiple === b.isMultiple\n && equalIds(a.ids, b.ids)\n && equalMinimal(a.minimal, b.minimal)\n}","export const CONFIRM_ID = \"deleteOption-confirmation\"\n\nexport const OPTION_CONSTRAINTS = {\n group: 20,\n label: 20,\n value: 100,\n description: 100\n} as const\n\nexport const MY_LOCAL_DISABLE_GROUP = \"My Local Disable Group - c7EgCbQ9T1\"\nexport const DISABLED_GROUP = \"Disabled\"","import { randomStrGenerator } from '@/_utils/_func'\n\nimport type { OptionParams, MinimalOption } from './_types'\nimport { DISABLED_GROUP } from './_const'\n\nexport default class Option {\n\tid: NonNullable<OptionParams[\"id\"]>;\n\tlabel: NonNullable<OptionParams[\"label\"]>;\n\tdescription: NonNullable<OptionParams[\"description\"]>;\n\tdisabled: NonNullable<OptionParams[\"disabled\"]>;\n\tgroup: NonNullable<OptionParams[\"group\"]>;\n\ticon: NonNullable<OptionParams[\"icon\"]> | null;\n\tfilterKey: NonNullable<OptionParams[\"filterKey\"]>;\n\tvalue: NonNullable<OptionParams[\"value\"]>;\n\tdefaultSelected: NonNullable<OptionParams[\"defaultSelected\"]>;\n\totherProps: NonNullable<OptionParams[\"otherProps\"]>;\n\ttags: NonNullable<OptionParams[\"tags\"]>;\n\n\tconstructor(p: OptionParams) {\n\t\tthis.id = p.id ?? randomStrGenerator();\n\t\tthis.label = p.label ?? 'label';\n\t\tthis.description = p.description ?? 'description';\n\t\tthis.disabled = p.disabled ?? false;\n\t\tthis.group = p.group ?? 'group';\n\t\tthis.icon = p.icon ?? null;\n\t\tthis.filterKey = p.filterKey || defaultGetFilterKey(p);\n\t\tthis.defaultSelected = p.defaultSelected ?? false;\n\t\tthis.value = p.value ?? \"\";\n\n\t\tthis.otherProps = p.otherProps ?? {};\n\t\tthis.tags = p.tags ?? [];\n\t}\n\n\tminimal():MinimalOption{\n\t\treturn {\n\t\t\tid: this.id,\n\t\t\tlabel: this.label,\n\t\t\tfilterKey: this.filterKey,\n\t\t\tdisabled: this.disabled,\n\t\t\tgroup: this.group,\n\t\t\tvalue: this.value,\n\t\t}\n\t}\n}\n\nfunction defaultGetFilterKey(p: OptionParams): string {\n\tconst tagsStr = p.tags?.map(t=>t.tagName).join(\" \") ?? \"\";\n\treturn `${p.group ?? \"\"} ${p.label ?? \"\"} ${p.description ?? \"\"} ${p.value ?? \"\"} ${p.disabled?DISABLED_GROUP:\"\"} ${tagsStr}`;\n}"],"mappings":"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","names":["default","default","jsx"]}