@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.
- package/dist/AutocompleteField-653233JU.mjs +203 -0
- package/dist/AutocompleteField-653233JU.mjs.map +1 -0
- package/dist/AvatarField-KFASMVZU.mjs +378 -0
- package/dist/AvatarField-KFASMVZU.mjs.map +1 -0
- package/dist/{DateField-ZYMZFHL4.mjs → DateField-CDJ6W6XF.mjs} +19 -7
- package/dist/DateField-CDJ6W6XF.mjs.map +1 -0
- package/dist/DateRangeField-ZWSFT5KV.mjs +118 -0
- package/dist/DateRangeField-ZWSFT5KV.mjs.map +1 -0
- package/dist/{DateTimeField-TPTJ7YIZ.mjs → DateTimeField-SFAF4I6A.mjs} +36 -11
- package/dist/DateTimeField-SFAF4I6A.mjs.map +1 -0
- package/dist/FileUploadField-TSNCSLXX.mjs +101 -0
- package/dist/FileUploadField-TSNCSLXX.mjs.map +1 -0
- package/dist/{JSONEditorField-TMRWGXVR.mjs → JSONEditorField-3KXC2GOG.mjs} +7 -6
- package/dist/{JSONEditorField-TMRWGXVR.mjs.map → JSONEditorField-3KXC2GOG.mjs.map} +1 -1
- package/dist/{PopperMenu-LJ36RPBW.mjs → PopperMenu-PSHLKIEZ.mjs} +26 -12
- package/dist/{PopperMenu-LJ36RPBW.mjs.map → PopperMenu-PSHLKIEZ.mjs.map} +1 -1
- package/dist/{TelField-LOGRVZ4I.mjs → TelField-FRQT2UBJ.mjs} +8 -7
- package/dist/{TelField-LOGRVZ4I.mjs.map → TelField-FRQT2UBJ.mjs.map} +1 -1
- package/dist/TimeField-XVWXBJID.mjs +94 -0
- package/dist/TimeField-XVWXBJID.mjs.map +1 -0
- package/dist/alert.d.mts +148 -18
- package/dist/alert.d.ts +148 -18
- package/dist/alert.js +698 -254
- package/dist/alert.js.map +1 -1
- package/dist/alert.mjs +46 -10
- package/dist/autocomplete.d.mts +438 -4
- package/dist/autocomplete.d.ts +438 -4
- package/dist/autocomplete.js +632 -21
- package/dist/autocomplete.js.map +1 -1
- package/dist/autocomplete.mjs +26 -7
- package/dist/avatar.js +2 -1
- package/dist/avatar.js.map +1 -1
- package/dist/avatar.mjs +12 -11
- package/dist/box.mjs +2 -1
- package/dist/button.mjs +3 -2
- package/dist/chart.mjs +3 -2
- package/dist/checkbox.mjs +3 -2
- package/dist/chunk-2FK24ZPJ.mjs +78 -0
- package/dist/chunk-2FK24ZPJ.mjs.map +1 -0
- package/dist/{chunk-V26V2S3W.mjs → chunk-3O3N6X6D.mjs} +3 -3
- package/dist/{chunk-Y74ALKBL.mjs → chunk-4MSPA7U7.mjs} +11 -9
- package/dist/{chunk-Y74ALKBL.mjs.map → chunk-4MSPA7U7.mjs.map} +1 -1
- package/dist/{chunk-24XDGNJ6.mjs → chunk-4P45Z5LR.mjs} +63 -41
- package/dist/chunk-4P45Z5LR.mjs.map +1 -0
- package/dist/chunk-4SSJY32J.mjs +1182 -0
- package/dist/chunk-4SSJY32J.mjs.map +1 -0
- package/dist/{chunk-XJ2SXC2Q.mjs → chunk-6B6I27TT.mjs} +18 -16
- package/dist/{chunk-XJ2SXC2Q.mjs.map → chunk-6B6I27TT.mjs.map} +1 -1
- package/dist/chunk-6JKMEH2L.mjs +205 -0
- package/dist/chunk-6JKMEH2L.mjs.map +1 -0
- package/dist/{chunk-IN3O4R7Q.mjs → chunk-7O526A2D.mjs} +6 -4
- package/dist/{chunk-IN3O4R7Q.mjs.map → chunk-7O526A2D.mjs.map} +1 -1
- package/dist/chunk-AFLEG5ZC.mjs +28 -0
- package/dist/chunk-AFLEG5ZC.mjs.map +1 -0
- package/dist/{chunk-UGMRJMFZ.mjs → chunk-BO5CU4ZM.mjs} +4 -4
- package/dist/{chunk-JIU5GVM7.mjs → chunk-D4XPNSSI.mjs} +5 -3
- package/dist/{chunk-JIU5GVM7.mjs.map → chunk-D4XPNSSI.mjs.map} +1 -1
- package/dist/chunk-DPIMA5IO.mjs +72 -0
- package/dist/chunk-DPIMA5IO.mjs.map +1 -0
- package/dist/chunk-F2CGFVIZ.mjs +83 -0
- package/dist/chunk-F2CGFVIZ.mjs.map +1 -0
- package/dist/{chunk-R5MKQN6D.mjs → chunk-FBLSJQWK.mjs} +3 -3
- package/dist/{chunk-BGB7JHIU.mjs → chunk-FMGZCOJC.mjs} +5 -3
- package/dist/{chunk-BGB7JHIU.mjs.map → chunk-FMGZCOJC.mjs.map} +1 -1
- package/dist/{chunk-UTVSYS6S.mjs → chunk-FNSIQ2B7.mjs} +18 -6
- package/dist/chunk-FNSIQ2B7.mjs.map +1 -0
- package/dist/{chunk-JWANK42G.mjs → chunk-FUZ2JNTZ.mjs} +3 -3
- package/dist/{chunk-CRYIEYZZ.mjs → chunk-HAJWE62X.mjs} +66 -42
- package/dist/chunk-HAJWE62X.mjs.map +1 -0
- package/dist/{chunk-CWFWRZWU.mjs → chunk-KSN33A6I.mjs} +3 -2
- package/dist/{chunk-CWFWRZWU.mjs.map → chunk-KSN33A6I.mjs.map} +1 -1
- package/dist/chunk-KYTHGFFY.mjs +866 -0
- package/dist/chunk-KYTHGFFY.mjs.map +1 -0
- package/dist/{chunk-QKGCW37O.mjs → chunk-LDFM46LV.mjs} +5 -3
- package/dist/{chunk-QKGCW37O.mjs.map → chunk-LDFM46LV.mjs.map} +1 -1
- package/dist/chunk-LQNDBPHU.mjs +142 -0
- package/dist/chunk-LQNDBPHU.mjs.map +1 -0
- package/dist/{chunk-E3I2VDHZ.mjs → chunk-M2PYXSAF.mjs} +6 -4
- package/dist/{chunk-E3I2VDHZ.mjs.map → chunk-M2PYXSAF.mjs.map} +1 -1
- package/dist/{chunk-DELCADNF.mjs → chunk-ODVKRIVN.mjs} +30 -30
- package/dist/{chunk-HR3A4H4E.mjs → chunk-PEJL2T2K.mjs} +13 -11
- package/dist/{chunk-HR3A4H4E.mjs.map → chunk-PEJL2T2K.mjs.map} +1 -1
- package/dist/{chunk-OGNGPI3M.mjs → chunk-PL55YKT4.mjs} +2 -2
- package/dist/{chunk-S6EZVRZC.mjs → chunk-PNSJC6PC.mjs} +5 -28
- package/dist/chunk-PNSJC6PC.mjs.map +1 -0
- package/dist/{chunk-TDRA5EZI.mjs → chunk-PUREEN2J.mjs} +7 -7
- package/dist/chunk-QFS5CENY.mjs +659 -0
- package/dist/chunk-QFS5CENY.mjs.map +1 -0
- package/dist/chunk-RSN7NH2J.mjs +250 -0
- package/dist/chunk-RSN7NH2J.mjs.map +1 -0
- package/dist/{chunk-UDREPVEY.mjs → chunk-RVSMEZE3.mjs} +12 -78
- package/dist/chunk-RVSMEZE3.mjs.map +1 -0
- package/dist/{chunk-SRWPHN2N.mjs → chunk-S64IYJ6Y.mjs} +2 -2
- package/dist/{chunk-ZG3NQI77.mjs → chunk-SMD7OEUW.mjs} +6 -4
- package/dist/{chunk-ZG3NQI77.mjs.map → chunk-SMD7OEUW.mjs.map} +1 -1
- package/dist/{chunk-NJYNJLT7.mjs → chunk-SWFB3A3G.mjs} +2 -2
- package/dist/{chunk-RXBQ7KXF.mjs → chunk-USXGNKWJ.mjs} +98 -44
- package/dist/chunk-USXGNKWJ.mjs.map +1 -0
- package/dist/{chunk-OJV6V7YZ.mjs → chunk-VL7V52YD.mjs} +27 -20
- package/dist/chunk-VL7V52YD.mjs.map +1 -0
- package/dist/{chunk-2ZZJTBTE.mjs → chunk-WJZ3IYET.mjs} +2 -2
- package/dist/chunk-XAJAMVAG.mjs +1720 -0
- package/dist/chunk-XAJAMVAG.mjs.map +1 -0
- package/dist/chunk-YIJ5QVJ6.mjs +277 -0
- package/dist/chunk-YIJ5QVJ6.mjs.map +1 -0
- package/dist/{chunk-T6AMRENK.mjs → chunk-YRW5NKD7.mjs} +148 -112
- package/dist/chunk-YRW5NKD7.mjs.map +1 -0
- package/dist/chunk-ZMJKG2UI.mjs +71 -0
- package/dist/chunk-ZMJKG2UI.mjs.map +1 -0
- package/dist/confirm.d.mts +48 -0
- package/dist/confirm.d.ts +48 -0
- package/dist/confirm.js +334 -0
- package/dist/confirm.js.map +1 -0
- package/dist/confirm.mjs +20 -0
- package/dist/datePicker.d.mts +256 -14
- package/dist/datePicker.d.ts +256 -14
- package/dist/datePicker.js +1624 -145
- package/dist/datePicker.js.map +1 -1
- package/dist/datePicker.mjs +19 -6
- package/dist/dialog.d.mts +166 -0
- package/dist/dialog.d.ts +166 -0
- package/dist/dialog.js +362 -0
- package/dist/dialog.js.map +1 -0
- package/dist/dialog.mjs +45 -0
- package/dist/emptyState.d.mts +17 -0
- package/dist/emptyState.d.ts +17 -0
- package/dist/emptyState.js +253 -0
- package/dist/emptyState.js.map +1 -0
- package/dist/emptyState.mjs +12 -0
- package/dist/emptyState.mjs.map +1 -0
- package/dist/errorState.d.mts +18 -0
- package/dist/errorState.d.ts +18 -0
- package/dist/{displayFile.js → errorState.js} +107 -156
- package/dist/errorState.js.map +1 -0
- package/dist/errorState.mjs +15 -0
- package/dist/errorState.mjs.map +1 -0
- package/dist/fileUpload.d.mts +197 -0
- package/dist/fileUpload.d.ts +197 -0
- package/dist/fileUpload.js +1483 -0
- package/dist/fileUpload.js.map +1 -0
- package/dist/fileUpload.mjs +65 -0
- package/dist/fileUpload.mjs.map +1 -0
- package/dist/flowMap.mjs +7 -6
- package/dist/flowMap.mjs.map +1 -1
- package/dist/image.js +1195 -429
- package/dist/image.js.map +1 -1
- package/dist/image.mjs +8 -6
- package/dist/index.d.ts +7 -2
- package/dist/index.js +8606 -4087
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +314 -152
- package/dist/inlineError.d.mts +16 -0
- package/dist/inlineError.d.ts +16 -0
- package/dist/inlineError.js +297 -0
- package/dist/inlineError.js.map +1 -0
- package/dist/inlineError.mjs +15 -0
- package/dist/inlineError.mjs.map +1 -0
- package/dist/input.mjs +8 -7
- package/dist/jsonEditor.mjs +3 -2
- package/dist/list.mjs +7 -6
- package/dist/loading.mjs +8 -6
- package/dist/markdown.mjs +7 -6
- package/dist/markdown.mjs.map +1 -1
- package/dist/menu.mjs +9 -8
- package/dist/modal.js +2 -1
- package/dist/modal.js.map +1 -1
- package/dist/modal.mjs +7 -5
- package/dist/process.d.mts +33 -75
- package/dist/process.d.ts +33 -75
- package/dist/process.js +1275 -203
- package/dist/process.js.map +1 -1
- package/dist/process.mjs +12 -9
- package/dist/scrollToLoad.mjs +4 -3
- package/dist/select.mjs +10 -9
- package/dist/skeleton.d.mts +15 -1
- package/dist/skeleton.d.ts +15 -1
- package/dist/skeleton.js +114 -2
- package/dist/skeleton.js.map +1 -1
- package/dist/skeleton.mjs +6 -3
- package/dist/stepper.mjs +4 -3
- package/dist/tab.mjs +10 -9
- package/dist/table.d.mts +269 -85
- package/dist/table.d.ts +269 -85
- package/dist/table.js +5102 -3153
- package/dist/table.js.map +1 -1
- package/dist/table.mjs +21 -19
- package/dist/theme.js +1766 -432
- package/dist/theme.js.map +1 -1
- package/dist/theme.mjs +32 -25
- package/dist/timeline.mjs +4 -3
- package/dist/toast.d.mts +49 -0
- package/dist/toast.d.ts +49 -0
- package/dist/toast.js +175 -0
- package/dist/toast.js.map +1 -0
- package/dist/toast.mjs +9 -0
- package/dist/toast.mjs.map +1 -0
- package/dist/toggleButtonGroup.mjs +3 -2
- package/dist/useForm.d.mts +270 -86
- package/dist/useForm.d.ts +270 -86
- package/dist/useForm.js +4672 -2727
- package/dist/useForm.js.map +1 -1
- package/dist/useForm.mjs +18 -16
- package/dist/useSearch.mjs +13 -12
- package/dist/variablesRenderer.mjs +8 -7
- package/package.json +3 -3
- package/dist/AutocompleteField-ZKNU2IRR.mjs +0 -181
- package/dist/AutocompleteField-ZKNU2IRR.mjs.map +0 -1
- package/dist/AvatarField-SAODT3CZ.mjs +0 -275
- package/dist/AvatarField-SAODT3CZ.mjs.map +0 -1
- package/dist/DateField-ZYMZFHL4.mjs.map +0 -1
- package/dist/DateTimeField-TPTJ7YIZ.mjs.map +0 -1
- package/dist/FileUploadField-NTMWBJER.mjs +0 -78
- package/dist/FileUploadField-NTMWBJER.mjs.map +0 -1
- package/dist/chunk-24XDGNJ6.mjs.map +0 -1
- package/dist/chunk-27KYFU7R.mjs +0 -30
- package/dist/chunk-27KYFU7R.mjs.map +0 -1
- package/dist/chunk-AAH2O24U.mjs +0 -325
- package/dist/chunk-AAH2O24U.mjs.map +0 -1
- package/dist/chunk-CRYIEYZZ.mjs.map +0 -1
- package/dist/chunk-EEH7HACG.mjs +0 -249
- package/dist/chunk-EEH7HACG.mjs.map +0 -1
- package/dist/chunk-EKPULYPU.mjs +0 -497
- package/dist/chunk-EKPULYPU.mjs.map +0 -1
- package/dist/chunk-OJV6V7YZ.mjs.map +0 -1
- package/dist/chunk-RXBQ7KXF.mjs.map +0 -1
- package/dist/chunk-S6EZVRZC.mjs.map +0 -1
- package/dist/chunk-SGCUDWO3.mjs +0 -396
- package/dist/chunk-SGCUDWO3.mjs.map +0 -1
- package/dist/chunk-T6AMRENK.mjs.map +0 -1
- package/dist/chunk-UDREPVEY.mjs.map +0 -1
- package/dist/chunk-UTVSYS6S.mjs.map +0 -1
- package/dist/chunk-XIMFP6RB.mjs +0 -161
- package/dist/chunk-XIMFP6RB.mjs.map +0 -1
- package/dist/displayFile.d.mts +0 -95
- package/dist/displayFile.d.ts +0 -95
- package/dist/displayFile.js.map +0 -1
- package/dist/displayFile.mjs +0 -19
- package/dist/fileUploader.d.mts +0 -86
- package/dist/fileUploader.d.ts +0 -86
- package/dist/fileUploader.js +0 -722
- package/dist/fileUploader.js.map +0 -1
- package/dist/fileUploader.mjs +0 -16
- /package/dist/{chunk-V26V2S3W.mjs.map → chunk-3O3N6X6D.mjs.map} +0 -0
- /package/dist/{chunk-UGMRJMFZ.mjs.map → chunk-BO5CU4ZM.mjs.map} +0 -0
- /package/dist/{chunk-R5MKQN6D.mjs.map → chunk-FBLSJQWK.mjs.map} +0 -0
- /package/dist/{chunk-JWANK42G.mjs.map → chunk-FUZ2JNTZ.mjs.map} +0 -0
- /package/dist/{chunk-DELCADNF.mjs.map → chunk-ODVKRIVN.mjs.map} +0 -0
- /package/dist/{chunk-OGNGPI3M.mjs.map → chunk-PL55YKT4.mjs.map} +0 -0
- /package/dist/{chunk-TDRA5EZI.mjs.map → chunk-PUREEN2J.mjs.map} +0 -0
- /package/dist/{chunk-SRWPHN2N.mjs.map → chunk-S64IYJ6Y.mjs.map} +0 -0
- /package/dist/{chunk-NJYNJLT7.mjs.map → chunk-SWFB3A3G.mjs.map} +0 -0
- /package/dist/{chunk-2ZZJTBTE.mjs.map → chunk-WJZ3IYET.mjs.map} +0 -0
- /package/dist/{displayFile.mjs.map → confirm.mjs.map} +0 -0
- /package/dist/{fileUploader.mjs.map → dialog.mjs.map} +0 -0
package/dist/chunk-EKPULYPU.mjs
DELETED
|
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,WAAW;AAClB,SAAS,wBAAoD;;;ACD7D,SAAS,YAAY,mBAAmB;AACxC,SAAS,eAAAA,oBAAuC;AAChD,OAAO,WAAW;;;ACFlB,SAAS,iBAAiB,mBAAmB;;;ACDtC,IAAM,iBAAiB;AAAA,EAC5B,MAAM;AAAA,EACN,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,aAAa;AACf;AAEO,IAAM,WAAW;AAAA,EACtB,oBAAoB;AAAA,EACpB,eAAe,EAAE,YAAY,SAAkB,UAAU,MAAe;AAAA,EACxE,kBAAkB;AAAA,IAChB,UAAU;AAAA,IACV,OAAO;AAAA,IACP,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB;AACF;AAEO,IAAM,SAAS;AAAA,EACpB,iBAAiB;AAAA,EACjB,gBAAgB;AAAA,EAChB,iBAAiB;AAAA,EACjB,yBAAyB;AAC3B;;;ADlBA,SAAS,iBACP,SACA;AAAA,EACE;AAAA,EACA;AAAA,EACA,KAAK,mBAAmB,EAAE;AAAA,EAC1B,mBAAmB,SAAS;AAAA,EAC5B,eAAe,SAAS;AAAA,EACxB;AAAA,EACA,GAAG;AACL,GAC8B;AAC9B,MAAI;AACF,YAAQ,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL,CAAC;AACD,WAAO,EAAE,SAAS,MAAM,MAAM,GAAa;AAAA,EAC7C,SAAS,OAAO;AACd,YAAQ,MAAM,4BAA4B,KAAK;AAC/C,WAAO,EAAE,SAAS,OAAO,OAAQ,iBAAiB,QAAQ,MAAM,UAAU,gBAAiB;AAAA,EAC7F;AACF;AAEA,SAAS,uBACP,SACA;AAAA,EACE,KAAK,mBAAmB,EAAE;AAAA,EAC1B,mBAAmB,SAAS;AAAA,EAC5B,eAAe,SAAS;AAAA,EACxB,iBAAiB,CAAC;AAAA,EAClB,wBAAwB;AAAA,IACtB,UAAU,MAAM;AAAA,EAClB;AAAA,EACA,GAAG;AACL,GAC8B;AAC9B,MAAI;AACF,YAAQ;AAAA,MACN,SAAS,eAAe;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL,CAAC;AACD,WAAO,EAAE,SAAS,MAAM,MAAM,GAAa;AAAA,EAC7C,SAAS,OAAO;AACd,YAAQ,MAAM,wCAAwC,KAAK;AAC3D,WAAO,EAAE,SAAS,OAAO,OAAQ,iBAAiB,QAAQ,MAAM,UAAU,gBAAiB;AAAA,EAC7F;AACF;AAEO,SAAS,WAAW;AACzB,QAAM,EAAE,iBAAiB,SAAS,cAAc,IAAI,YAAY;AAEhE,QAAMC,gBAAe,CAAC,YAA0B,iBAAiB,SAAS,OAAO;AACjF,QAAMC,sBAAqB,CAAC,YAAqC,uBAAuB,SAAS,OAAO;AACxG,QAAMC,gBAAe,CAAC,SAAmC,YACvDF,cAAa,EAAE,SAAS,eAAe,OAAO,SAAS,GAAG,QAAQ,CAAC;AACrE,QAAMG,kBAAiB,CAAC,SAAmC,YACzDH,cAAa,EAAE,SAAS,eAAe,SAAS,SAAS,GAAG,QAAQ,CAAC;AACvE,QAAMI,kBAAiB,CAAC,SAAmC,YACzDJ,cAAa,EAAE,SAAS,eAAe,SAAS,SAAS,GAAG,QAAQ,CAAC;AACvE,QAAMK,eAAc,CAAC,SAAmC,YACtDL,cAAa,EAAE,SAAS,eAAe,MAAM,SAAS,GAAG,QAAQ,CAAC;AACpE,QAAMM,iBAAgB,CAAC,SAAmC,YACxDN,cAAa,EAAE,SAAS,eAAe,QAAQ,SAAS,GAAG,QAAQ,CAAC;AACtE,QAAMO,kBAAiB,CAAC,SAAmC,YACzDP,cAAa,EAAE,SAAS,eAAe,SAAS,SAAS,GAAG,QAAQ,CAAC;AAEvE,SAAO;AAAA,IACL,cAAAA;AAAA,IACA,oBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA;AAAA,EACA,KAAK,mBAAmB,EAAE;AAAA,EAC1B,mBAAmB,SAAS;AAAA,EAC5B,eAAe,SAAS;AAAA,EACxB;AAAA,EACA,GAAG;AACL,GAA+C;AAC7C,SAAO,iBAAiB,iBAAiB;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,mBAAmB;AAAA,EACjC,KAAK,mBAAmB,EAAE;AAAA,EAC1B,mBAAmB,SAAS;AAAA,EAC5B,eAAe,SAAS;AAAA,EACxB,iBAAiB,CAAC;AAAA,EAClB,wBAAwB;AAAA,IACtB,UAAU,MAAM;AAAA,EAClB;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,SAAO,uBAAuB,iBAAiB;AAAA,IAC7C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,aAAa,SAAmC,SAAqD;AACnH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,eAAe,SAAmC,SAAqD;AACrH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,eAAe,SAAmC,SAAqD;AACrH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,YAAY,SAAmC,SAAqD;AAClH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,cAAc,SAAmC,SAAqD;AACpH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;AAEO,SAAS,eAAe,SAAmC,SAAqD;AACrH,SAAO,aAAa;AAAA,IAClB,SAAS,eAAe;AAAA,IACxB;AAAA,IACA,GAAG;AAAA,EACL,CAAC;AACH;;;ADvJM;AAzBN,IAAM,oBAAoB;AAAA,EACxB,CAAC,eAAe,IAAI,GAAG;AAAA,EACvB,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,KAAK,GAAG;AAAA,EACxB,CAAC,eAAe,MAAM,GAAG;AAAA,EACzB,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,WAAW,GAAG;AAAA;AAChC;AAIO,IAAM,kBAAkB;AAAA,EAC7B,CAAC,OAAO,QAAQ;AACd,UAAM,EAAE,IAAI,SAAS,SAAS,MAAM,MAAM,IAAI;AAC9C,UAAM,EAAE,cAAc,IAAIC,aAAY;AAEtC,UAAM,gBAAgB,YAAY,MAAM;AACtC,oBAAc,EAAE;AAAA,IAClB,GAAG,CAAC,IAAI,aAAa,CAAC;AAGtB,UAAM,WAAW,kBAAkB,OAAyC,KAAK;AAEjF,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QAEC;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;;;AG3CA,SAAS,cAAAC,aAAY,UAAU,eAAAC,oBAAmB;AAClD,SAA6B,eAAAC,oBAAmB;AAChD,OAAO,iBAAiB;;;ACKjB,IAAM,yBAAyC;AAAA,EACpD,iBAAiB;AAAA,EACjB,qBAAqB;AAAA,EACrB,0BAA0B;AAC5B;AAEO,IAAM,aAAa;AAAA,EACxB,gBAAgB;AAAA,IACd,MAAM,CAAC,EAAE,MAAM,OAAO;AAAA,MACpB,eAAe,MAAM,QAAQ,WAAW;AAAA;AAAA,MACxC,iBAAiB,MAAM,QAAQ,KAAK;AAAA;AAAA,MAEpC,YAAY;AAAA;AAAA,MACZ,YAAY;AAAA;AAAA,MACZ,cAAc;AAAA;AAAA,MACd,iBAAiB;AAAA;AAAA,MACjB,OAAO;AAAA;AAAA,MACP,QAAQ;AAAA;AAAA,MAER,oBAAoB;AAAA,QAClB,OAAO;AAAA;AAAA,QACP,SAAS;AAAA,MACX;AAAA,MACA,uBAAuB;AAAA,QACrB,MAAM;AAAA,QACN,OAAO;AAAA;AAAA,QACP,SAAS;AAAA,MACX;AAAA,MACA,yBAAyB;AAAA,QACvB,kBAAkB;AAAA,MACpB;AAAA,MAEA,4BAA4B;AAAA,QAC1B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,MAAM;AAAA,MACvC;AAAA,MACA,8BAA8B;AAAA,QAC5B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,MACzC;AAAA,MACA,8BAA8B;AAAA,QAC5B,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,QACvC,sBAAsB;AAAA,MACxB;AAAA,MACA,2BAA2B;AAAA,QACzB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,KAAK;AAAA,QACpC,sBAAsB;AAAA,MACxB;AAAA,MACA,6BAA6B;AAAA,QAC3B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,OAAO;AAAA,MACxC;AAAA,MACA,8BAA8B;AAAA,QAC5B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,MACzC;AAAA,MACA,2BAA2B;AAAA,QACzB,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB;AAAA,MACnB;AAAA,MACA,4BAA4B;AAAA,QAC1B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB;AAAA,MACnB;AAAA,MACA,6BAA6B;AAAA,QAC3B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,OAAO;AAAA,MACxC;AAAA,MACA,8BAA8B;AAAA,QAC5B,sBAAsB;AAAA,QACtB,eAAe;AAAA,QACf,iBAAiB,MAAM,QAAQ,QAAQ;AAAA,MACzC;AAAA,IACF;AAAA,EACF;AACF;;;ADrCU,gBAAAC,MAUA,YAVA;AAxCH,IAAM,mBAAmBC;AAAA,EAC9B,CAAC,EAAE,IAAI,gBAAgB,uBAAuB,MAAM,GAAG,QAAQ;AAC7D,UAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,UAAM,EAAE,cAAc,IAAIC,aAAY;AAEtC,UAAM,oBAAoBC,aAAY,MAAM;AAC1C,kBAAY,CAAC,gBAAgB,CAAC,WAAW;AAAA,IAC3C,GAAG,CAAC,CAAC;AAEL,UAAM,gBAAgBA,aAAY,MAAM;AACtC,oBAAc,EAAE;AAAA,IAClB,GAAG,CAAC,IAAI,aAAa,CAAC;AAGtB,UAAM;AAAA,MACJ;AAAA,MACA,GAAG;AAAA,IACL,IAAI,yBAAyB,CAAC;AAE9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,IAAI,QAAQ,wBAAwB;AAAA,UAClC,mBAAmB;AAAA,YACjB,YAAY;AAAA,YACZ,gBAAgB;AAAA,YAChB,YAAY;AAAA,YACZ,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,QAAQ;AAAA,UACV;AAAA,QACF,CAAC;AAAA,QAED;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,IAAI;AAAA,gBACF,gBAAgB;AAAA,gBAChB,SAAS;AAAA,cACX;AAAA,cAEA;AAAA,gCAAAH;AAAA,kBAACI;AAAA,kBAAA;AAAA,oBACC,SAAQ;AAAA,oBACR,IAAI;AAAA,sBACF,OAAO;AAAA,sBACP,aAAa;AAAA,sBACb,YAAY;AAAA,oBACd;AAAA,oBAEC,0BAAgB,SAAS;AAAA;AAAA,gBAC5B;AAAA,gBACA,qBAACA,UAAA,EAAI,IAAI;AAAA,kBACP,SAAS;AAAA,kBACT,YAAY;AAAA,kBACZ,KAAK;AAAA,gBACP,GACE;AAAA,kCAAAJ;AAAA,oBAAC;AAAA;AAAA,sBACC,cAAW;AAAA,sBACX,MAAK;AAAA,sBACL,SAAS;AAAA,sBAET,0BAAAA;AAAA,wBAACI;AAAA,wBAAA;AAAA,0BACC,OAAO;AAAA,4BACL,WAAW,WAAW,mBAAmB;AAAA,4BACzC,YAAY;AAAA,0BACd;AAAA,0BACA,IAAI,EAAC,UAAS,OAAM;AAAA;AAAA,sBACtB;AAAA;AAAA,kBACF;AAAA,kBACA,gBAAAJ;AAAA,oBAAC;AAAA;AAAA,sBACC,MAAK;AAAA,sBACL,cAAW;AAAA,sBACX,SAAS;AAAA,sBAET,0BAAAA,KAACI,UAAA,EAAU,IAAI,EAAC,UAAS,OAAM,GAAG;AAAA;AAAA,kBACpC;AAAA,mBACF;AAAA;AAAA;AAAA,UACF;AAAA,UAEA,gBAAAJ,KAACI,UAAA,EAAS,IAAI,UAAU,SAAQ,QAAO,eAAa,MAElD;AAAA,YAACA;AAAA,YAAA;AAAA,cACE,GAAI;AAAA,cACL,IAAI,QAAS,aAA0B,IAAI,EAAE,IAAG,GAAG,IAAG,EAAE,CAAC;AAAA,cAExD;AAAA,4BAAY,gBAAAJ,KAAC,YAAU,GAAG,gBAAgB;AAAA,gBAC1C,CAAC,YACA,gBAAAA,KAACI,UAAA,EAAI,IAAI,EAAE,GAAG,EAAE,GACb,0BAAgB,YAAY,uBAC/B;AAAA;AAAA;AAAA,UAEJ,GACF;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;;;AJtFI,gBAAAC,YAAA;AAjBJ,IAAM,mBAAwD;AAAA,EAC5D,CAAC,eAAe,IAAI,GAAG;AAAA,EACvB,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,KAAK,GAAG;AAAA,EACxB,CAAC,eAAe,MAAM,GAAG;AAAA,EACzB,CAAC,eAAe,OAAO,GAAG;AAAA,EAC1B,CAAC,eAAe,WAAW,GAAG;AAChC;AAOO,IAAM,gBAAgB,MAAM,KAAK,SAASC,eAAc,EAAE,SAAS,GAAkC;AAC1G,SACE,gBAAAD;AAAA,IAAC;AAAA;AAAA,MACC,UAAU,SAAS,iBAAiB;AAAA,MACpC,cAAc,SAAS;AAAA,MACvB,YAAY;AAAA,MAEX;AAAA;AAAA,EACH;AAEJ,CAAC;","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"]}
|