@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/alert.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/compound/Alert/index.ts","../src/components/compound/Alert/src/AlertProvider.tsx","../src/components/compound/Alert/src/MuiAlertVariant.tsx","../src/components/compound/Alert/src/_utils/utils.ts","../src/_utils/_func/random.ts","../src/components/compound/Alert/src/_utils/const.ts","../src/components/compound/Alert/src/CollapsableAlert.tsx","../src/components/elemental/Card/src/Card/index.ts","../src/components/elemental/Card/src/Card/Card.tsx","../src/components/elemental/Collapse/src/Collapse/index.ts","../src/_utils/_func/sx.ts","../src/components/elemental/Box/src/index.ts","../src/components/elemental/Button/src/IconButton/IconButton.tsx","../src/components/elemental/Tooltip/src/Tooltip/index.ts","../src/components/elemental/Typography/src/Typography.ts","../src/components/Icons/MuiIcon/index.ts","../src/components/compound/Alert/src/theme.ts"],"sourcesContent":["export * from './src/AlertProvider'\nexport * from './src/CollapsableAlert'\nexport * from './src/_utils'\nexport * from './src/theme'\n\n","'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 function randomStrGenerator(length=20):string{\n let result = ''\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'\n\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * characters.length))\n }\n\n return result\n}\n\nexport function getRandomInt(max: number) {\n return Math.floor(Math.random() * max)\n}\nexport function getRandomBetween(min: number, max: number, isFloat = false) {\n const randomVal = Math.random() * (max - min) + min\n if (isFloat) {\n return randomVal\n }\n return Math.floor(randomVal)\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","export { default as Card } from '@mui/material/Card'\nexport {default as CardContainer} from './Card'\nexport * from './theme'\nexport {default as SpotlightCard} from './SpotlightCard'\nexport {default as CardContent} from '@mui/material/CardContent'\nexport {default as CardHeader} from '@mui/material/CardHeader'\nexport {default as CardActions} from '@mui/material/CardActions'","import MuiCard, { type CardProps } from '@mui/material/Card'\nimport CardContent, { type CardContentProps } from '@mui/material/CardContent'\n\n/**\n * A Simple Mui Card Component\n * \n * [Doc](https://mui.com/material-ui/api/card/)\n */\nexport default function Card({\n children,\n slotProps,\n ...rest\n}: CardProps & {\n slotProps?: { cardContent?: CardContentProps }\n}) {\n return (\n <MuiCard {...rest}>\n <CardContent {...slotProps?.cardContent}>\n {children}\n </CardContent>\n </MuiCard>\n )\n}","export {default as Collapse} from '@mui/material/Collapse'\nexport * from './theme'\n","import type { SxProps, Theme } from '@mui/material/styles'\n\n/** Values accepted by {@link mergeSx}: objects, callbacks, arrays (nested ok), or omitted. */\nexport type SxMergePart =\n | SxProps<Theme>\n | Record<string, unknown>\n | ReadonlyArray<SxMergePart>\n | false\n | null\n | undefined\n\nfunction flattenSx(part: unknown): unknown[] {\n if (part == null || typeof part === 'boolean') {\n return []\n }\n if (Array.isArray(part)) {\n return part.flatMap(flattenSx)\n }\n if (typeof part === 'function' || typeof part === 'object') {\n return [part]\n }\n return []\n}\n\n/**\n * Combine MUI `sx` values into one prop.\n *\n * Nested arrays are flattened (`[base, [a, b]]` → `[base, a, b]`).\n * `null` / `undefined` / `false` entries are dropped. Later parts win,\n * same as MUI's `sx` array merge.\n */\nexport function mergeSx(...parts: SxMergePart[]): SxProps<Theme> | undefined {\n const list = parts.flatMap(flattenSx)\n if (list.length === 0) {\n return undefined\n }\n if (list.length === 1) {\n return list[0] as SxProps<Theme>\n }\n return list as SxProps<Theme>\n}\n","export * from './BorderBox'\nexport {default as Box} from '@mui/material/Box'\nexport {default as Stack} from '@mui/material/Stack'\nexport {default as Grid} from '@mui/material/Grid'\n","'use client'\nimport {forwardRef} from 'react'\nimport MuiIconButton from '@mui/material/IconButton'\nimport { Tooltip } from '@/ele/Tooltip'\nimport { type TooltipProps } from '@mui/material/Tooltip'\nimport { Box } from '@/ele/Box'\n\ntype IconButtonProps = React.ComponentProps<typeof MuiIconButton>\ntype Props = {\n /** The Icon to render */\n children: React.ReactNode;\n /** The title of the tooltip */\n title?: string;\n /** \n * The color theme of the entire component.\n * @default 'secondary' (from theme)\n */\n color?: IconButtonProps['color'];\n /**\n * The size of the component.\n * @default 'small' (from theme)\n */\n size?: IconButtonProps['size'];\n \n selected?: boolean;\n \n slotProps?: {\n tooltip?: Omit<TooltipProps, \"children\">\n };\n} & Omit<IconButtonProps, \"color\" | \"size\">;\n\n/**\n * A MuiIconButton wrapped in a MuiTooltip.\n * Default props like `size` and `color` are handled by the theme.\n */\nconst IconButton = forwardRef<HTMLButtonElement, Props>(({\n title = \"\",\n children,\n color,\n size,\n slotProps,\n selected,\n className,\n ...props\n}, ref) => {\n return (\n <Tooltip \n title={title} \n slotProps={{\n popper: {\n sx: {\n textTransform: \"capitalize\",\n }\n },\n ...slotProps?.tooltip\n }}\n >\n <Box component=\"span\" sx={{width: \"fit-content\"}}>\n <MuiIconButton\n ref={ref}\n color={color}\n size={size}\n className={[className, selected ? 'Mui-selected' : ''].filter(Boolean).join(' ')}\n {...props}\n >\n {children}\n </MuiIconButton>\n </Box>\n </Tooltip>\n )\n})\n\nexport default IconButton","export {default as Tooltip} from '@mui/material/Tooltip'\nexport * from './theme'\n","export { default } from '@mui/material/Typography'","// display\nexport {default as ArrowIcon} from '@mui/icons-material/ArrowRightAlt'\nexport {default as FileIcon} from '@mui/icons-material/DescriptionOutlined'\nexport {default as DescriptionIcon} from '@mui/icons-material/Description'\nexport {default as PictureAsPdfIcon} from '@mui/icons-material/PictureAsPdf'\nexport {default as AudioFileIcon} from '@mui/icons-material/AudioFile'\nexport {default as VideoFileIcon} from '@mui/icons-material/VideoFile'\nexport {default as TableChartIcon} from '@mui/icons-material/TableChart'\nexport {default as FolderZipIcon} from '@mui/icons-material/FolderZip'\nexport {default as InsertDriveFileIcon} from '@mui/icons-material/InsertDriveFile'\nexport {default as ImageIcon} from '@mui/icons-material/ImageOutlined'\nexport {default as LayersIcon} from '@mui/icons-material/LayersOutlined'\nexport {default as TextIcon} from '@mui/icons-material/TextFormat'\nexport {default as RemoveIcon} from '@mui/icons-material/Remove'\nexport {default as AddFileIcon} from '@mui/icons-material/PostAdd'\nexport {default as ErrorIcon} from '@mui/icons-material/ErrorOutline'\nexport {default as QuestionIcon} from '@mui/icons-material/QuestionMarkOutlined'\nexport {default as RoomIcon} from '@mui/icons-material/MeetingRoomOutlined'\nexport {default as BlacklistIcon} from '@mui/icons-material/PlaylistRemove'\nexport {default as WhitelistIcon} from '@mui/icons-material/ChecklistRtl'\nexport {default as NoImageIcon} from '@mui/icons-material/HideImageOutlined'\nexport {default as EyeIcon} from '@mui/icons-material/RemoveRedEyeTwoTone'\nexport {default as CropSizeIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as AdminIcon} from '@mui/icons-material/LockPersonOutlined'\nexport {default as UserIcon} from '@mui/icons-material/Person'\nexport {default as EmoticonIcon} from '@mui/icons-material/InsertEmoticon'\nexport {default as DisabledSelectionIcon} from '@mui/icons-material/RemoveDoneOutlined'\nexport {default as TagIcon} from '@mui/icons-material/Tag'\nexport {default as AudioIcon} from '@mui/icons-material/Audiotrack'\nexport {default as VideoIcon} from '@mui/icons-material/Videocam'\nexport {default as CodeIcon} from '@mui/icons-material/Code'\nexport {default as ChartIcon} from '@mui/icons-material/Equalizer'\nexport {default as TableIcon} from '@mui/icons-material/PivotTableChart'\nexport {default as SearchIcon} from '@mui/icons-material/Search'\nexport {default as DataObjectIcon} from '@mui/icons-material/DataObject'\nexport {default as A2ZIcon} from '@mui/icons-material/SortByAlpha'\nexport {default as ThumbUpIcon} from '@mui/icons-material/ThumbUp'\nexport {default as MoneyIcon} from '@mui/icons-material/AttachMoneyOutlined'\nexport {default as ServerIcon} from '@mui/icons-material/Storage'\nexport {default as CerticateIcon} from '@mui/icons-material/WorkspacePremium'\nexport {default as NumberIcon} from '@mui/icons-material/Numbers'\nexport {default as SumIcon} from '@mui/icons-material/Functions'\nexport {default as LightBulbIcon} from '@mui/icons-material/Lightbulb'\nexport {default as RotateIcon} from '@mui/icons-material/CropRotate'\nexport {default as ImageSzieScaleIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as CollectionIcon} from '@mui/icons-material/CollectionsBookmark'\nexport {default as HistoryIcon} from '@mui/icons-material/Schedule'\nexport {default as StyleIcon} from '@mui/icons-material/Style'\nexport {default as ARHorizontalIcon} from '@mui/icons-material/Crop169'\nexport {default as ARSquareIcon} from '@mui/icons-material/CropSquare'\nexport {default as VoiceIcon} from '@mui/icons-material/GraphicEqRounded'\nexport {default as MemoryIcon} from '@mui/icons-material/MemoryRounded'\n\n// button\nexport {default as AddCircleIcon} from '@mui/icons-material/AddCircleOutlineRounded'\nexport {default as AddIcon} from '@mui/icons-material/Add'\nexport {default as CloseIcon} from '@mui/icons-material/Close'\nexport {default as ExpandMoreIcon} from '@mui/icons-material/ExpandMore'\nexport {default as AutorenewIcon} from '@mui/icons-material/Autorenew'\nexport {default as CheckCircleIcon} from '@mui/icons-material/CheckCircle'\nexport {default as MenuIcon} from '@mui/icons-material/Menu'\nexport {default as MoreIcon} from '@mui/icons-material/MoreVert'\nexport {default as MoreHorizIcon} from '@mui/icons-material/MoreHoriz'\nexport {default as CopyIcon} from '@mui/icons-material/ContentCopy'\nexport {default as PasteIcon} from '@mui/icons-material/ContentPaste'\nexport {default as CloudIcon} from '@mui/icons-material/Cloud'\nexport {default as DownloadIcon} from '@mui/icons-material/DownloadOutlined'\nexport {default as DownloadDoneIcon} from '@mui/icons-material/DownloadDoneOutlined'\nexport {default as StartIcon} from '@mui/icons-material/StarBorderOutlined'\nexport {default as DeleteIcon} from '@mui/icons-material/DeleteForever'\nexport {default as LayerClearIcon } from '@mui/icons-material/LayersClear'\nexport {default as CheckIcon } from '@mui/icons-material/Check'\nexport {default as CheckAllIcon } from '@mui/icons-material/DoneAll'\nexport {default as PowerIcon } from '@mui/icons-material/PowerSettingsNew'\nexport {default as SendIcon } from '@mui/icons-material/Send'\nexport {default as ZoomInIcon } from '@mui/icons-material/ZoomInMap'\nexport {default as ZoomOutIcon } from '@mui/icons-material/ZoomOutMap'\nexport {default as ToolIcon } from '@mui/icons-material/HomeRepairService'\nexport {default as ConstructionIcon } from '@mui/icons-material/Construction'\nexport {default as HelpIcon } from '@mui/icons-material/Help'\nexport {default as ReportIcon } from '@mui/icons-material/EmojiFlags'\nexport {default as EditIcon } from '@mui/icons-material/Edit'\nexport {default as ForkIcon } from '@mui/icons-material/ForkRight'\nexport {default as SettingIcon } from '@mui/icons-material/Settings'\nexport {default as RestoreIcon } from '@mui/icons-material/Restore'\nexport {default as EditListIcon } from '@mui/icons-material/EditNote'\nexport {default as HomeIcon } from '@mui/icons-material/HomeOutlined'\nexport {default as EnterRoomIcon } from '@mui/icons-material/ExitToAppOutlined'\nexport {default as SunIcon} from '@mui/icons-material/WbSunnyOutlined'\nexport {default as MoonIcon} from '@mui/icons-material/DarkModeOutlined'\nexport {default as AttachFileIcon} from '@mui/icons-material/AttachFileOutlined'\nexport {default as NoteAddIcon} from '@mui/icons-material/NoteAdd'\nexport {default as CloudUploadIcon} from '@mui/icons-material/CloudUpload'\nexport {default as DoubleRightArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRight'\nexport {default as DoubleLeftArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowLeft'\nexport {default as DoubleArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRightRounded'\nexport {default as FitScreenIcon} from '@mui/icons-material/FitScreen'\nexport {default as FullscreenIcon} from '@mui/icons-material/Fullscreen'\nexport {default as TestIcon} from '@mui/icons-material/Biotech'\nexport {default as ShareIcon} from '@mui/icons-material/Share'\nexport {default as FilterIcon} from '@mui/icons-material/FilterAlt'\nexport {default as SyncIcon} from '@mui/icons-material/Sync'\nexport {default as PlayIcon} from '@mui/icons-material/PlayArrow'\nexport {default as PauseIcon} from '@mui/icons-material/PauseOutlined'\nexport {default as RandomIcon} from '@mui/icons-material/Casino'\nexport {default as CoinIcon} from '@mui/icons-material/Paid'\nexport {default as SaveChangesIcon} from '@mui/icons-material/Save'\nexport {default as StopIcon} from '@mui/icons-material/StopRounded'\nexport {default as ReplayIcon} from '@mui/icons-material/Replay'\nexport {default as TreeIcon} from '@mui/icons-material/AccountTree'\nexport {default as ClearIcon} from '@mui/icons-material/Close'\nexport {default as KeyboardArrowDownIcon} from '@mui/icons-material/KeyboardArrowDown'\nexport {default as KeyboardArrowRightIcon} from '@mui/icons-material/KeyboardArrowRight'\nexport {default as SearchRoundedIcon} from '@mui/icons-material/SearchRounded'\nexport {default as CloseRoundedIcon} from '@mui/icons-material/CloseRounded'\nexport {default as SortByAlphaRoundedIcon} from '@mui/icons-material/SortByAlphaRounded'\nexport {default as FilterAltOutlinedIcon} from '@mui/icons-material/FilterAltOutlined'\nexport {default as InboxOutlinedIcon} from '@mui/icons-material/InboxOutlined'\nexport {default as SearchOffIcon} from '@mui/icons-material/SearchOff'\nexport {default as ClearRoundedIcon} from '@mui/icons-material/ClearRounded'\nexport {default as ArrowDropDownRoundedIcon} from '@mui/icons-material/ArrowDropDownRounded'\n\n// login\nexport {default as AccountIcon} from '@mui/icons-material/AccountBox'\nexport {default as LogoutIcon} from '@mui/icons-material/Logout'\nexport {default as LoginIcon} from '@mui/icons-material/Login'\nexport {default as DashboardIcon} from '@mui/icons-material/Dashboard'\n\n//logo\nexport {default as WorkFlowIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as HelpOutlineIcon} from '@mui/icons-material/HelpOutline'\nexport {default as NavigateBeforeIcon} from '@mui/icons-material/NavigateBefore'\nexport {default as NavigateNextIcon} from '@mui/icons-material/NavigateNext'\nexport {default as PersonIcon} from '@mui/icons-material/Person'\nexport {default as CalendarTodayIcon} from '@mui/icons-material/CalendarToday'\nexport {default as ChatIcon} from '@mui/icons-material/QuestionAnswerOutlined'\nexport {default as TodayIcon} from '@mui/icons-material/Today'\nexport {default as DeleteForeverIcon} from '@mui/icons-material/DeleteForever'\n\nexport {default as AdsClickIcon} from '@mui/icons-material/AdsClick'\nexport {default as FingerprintIcon} from '@mui/icons-material/Fingerprint'\nexport {default as SportsEsportsOutlinedIcon} from '@mui/icons-material/SportsEsportsOutlined'\nexport {default as HelpOutlineRoundedIcon} from '@mui/icons-material/HelpOutlineRounded'\nexport {default as AccountTreeOutlinedIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as SmartToyOutlinedIcon} from '@mui/icons-material/SmartToyOutlined'\nexport {default as AcUnitIcon} from '@mui/icons-material/AcUnit'\nexport {default as LoopIcon} from '@mui/icons-material/Loop'\nexport {default as PendingIcon} from '@mui/icons-material/Pending'\nexport {default as AllInclusiveIcon} from '@mui/icons-material/AllInclusive'\nexport {default as WarningOutlinedIcon} from '@mui/icons-material/WarningOutlined'\nexport {default as InfoOutlinedIcon} from '@mui/icons-material/InfoOutlined'\nexport {default as AutoAwesomeRoundedIcon} from '@mui/icons-material/AutoAwesomeRounded'\nexport {default as ErrorOutlineOutlinedIcon} from '@mui/icons-material/ErrorOutlineOutlined'\nexport {default as DownloadFilledIcon} from '@mui/icons-material/Download'","\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,IAAAA,gBAAkB;AAClB,IAAAC,oBAA6D;;;ACD7D,mBAAwC;AACxC,IAAAC,oBAAgD;AAChD,mBAAkB;;;ACFlB,uBAA6C;;;ACDtC,SAAS,mBAAmB,SAAO,IAAU;AAClD,MAAI,SAAS;AACb,QAAM,aAAa;AAEnB,WAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAC/B,cAAU,WAAW,OAAO,KAAK,MAAM,KAAK,OAAO,IAAI,WAAW,MAAM,CAAC;AAAA,EAC3E;AAEA,SAAO;AACT;;;ACTO,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;;;AFlBA,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,QAAI,8BAAY;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,kCAAiB;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,kCAAiB;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,sBAAkB;AAAA,EAC7B,CAAC,OAAO,QAAQ;AACd,UAAM,EAAE,IAAI,SAAS,SAAS,MAAM,MAAM,IAAI;AAC9C,UAAM,EAAE,cAAc,QAAI,+BAAY;AAEtC,UAAM,oBAAgB,0BAAY,MAAM;AACtC,oBAAc,EAAE;AAAA,IAClB,GAAG,CAAC,IAAI,aAAa,CAAC;AAGtB,UAAM,WAAW,kBAAkB,OAAyC,KAAK;AAEjF,WACE;AAAA,MAAC,aAAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QAEC;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;;;AI3CA,IAAAC,gBAAkD;AAClD,IAAAC,oBAAgD;AAChD,IAAAC,sBAAwB;;;ACHxB,IAAAC,eAAgC;;;ACAhC,kBAAwC;AACxC,yBAAmD;AAgB7C,IAAAC,sBAAA;AATS,SAAR,KAAsB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAEG;AACD,SACE,6CAAC,YAAAC,SAAA,EAAS,GAAG,MACX,uDAAC,mBAAAC,SAAA,EAAa,GAAG,WAAW,aACzB,UACH,GACF;AAEJ;;;ADlBA,IAAAC,sBAAqC;AACrC,wBAAoC;AACpC,yBAAqC;;;AENrC,sBAAkC;;;ACWlC,SAAS,UAAU,MAA0B;AAC3C,MAAI,QAAQ,QAAQ,OAAO,SAAS,WAAW;AAC7C,WAAO,CAAC;AAAA,EACV;AACA,MAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,WAAO,KAAK,QAAQ,SAAS;AAAA,EAC/B;AACA,MAAI,OAAO,SAAS,cAAc,OAAO,SAAS,UAAU;AAC1D,WAAO,CAAC,IAAI;AAAA,EACd;AACA,SAAO,CAAC;AACV;AASO,SAAS,WAAW,OAAkD;AAC3E,QAAM,OAAO,MAAM,QAAQ,SAAS;AACpC,MAAI,KAAK,WAAW,GAAG;AACrB,WAAO;AAAA,EACT;AACA,MAAI,KAAK,WAAW,GAAG;AACrB,WAAO,KAAK,CAAC;AAAA,EACf;AACA,SAAO;AACT;;;ACvCA,iBAA6B;AAC7B,mBAA+B;AAC/B,kBAA8B;;;ACF9B,IAAAC,gBAAyB;AACzB,wBAA0B;;;ACF1B,qBAAiC;;;AD0DzB,IAAAC,sBAAA;AAvBR,IAAM,iBAAa,0BAAqC,CAAC;AAAA,EACvD,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAG,QAAQ;AACT,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT,QAAQ;AAAA,UACN,IAAI;AAAA,YACF,eAAe;AAAA,UACjB;AAAA,QACF;AAAA,QACA,GAAG,WAAW;AAAA,MAChB;AAAA,MAEA,uDAAC,sBAAI,WAAU,QAAO,IAAI,EAAC,OAAO,cAAa,GAC7C;AAAA,QAAC,kBAAAC;AAAA,QAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA,WAAW,CAAC,WAAW,WAAW,iBAAiB,EAAE,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAAA,UAC9E,GAAG;AAAA,UAEH;AAAA;AAAA,MACH,GACF;AAAA;AAAA,EACF;AAEJ,CAAC;AAED,IAAO,qBAAQ;;;AExEf,wBAAwB;;;ACCxB,2BAAmC;AACnC,iCAAkC;AAClC,yBAAyC;AACzC,0BAA0C;AAC1C,uBAAuC;AACvC,uBAAuC;AACvC,wBAAwC;AACxC,uBAAuC;AACvC,6BAA6C;AAC7C,2BAAmC;AACnC,4BAAoC;AACpC,wBAAkC;AAClC,oBAAoC;AACpC,qBAAqC;AACrC,0BAAmC;AACnC,kCAAsC;AACtC,iCAAkC;AAClC,4BAAuC;AACvC,0BAAuC;AACvC,+BAAqC;AACrC,iCAAiC;AACjC,kCAAsC;AACtC,gCAAmC;AACnC,oBAAkC;AAClC,4BAAsC;AACtC,gCAA+C;AAC/C,iBAAiC;AACjC,wBAAmC;AACnC,sBAAmC;AACnC,kBAAkC;AAClC,uBAAmC;AACnC,6BAAmC;AACnC,oBAAoC;AACpC,wBAAwC;AACxC,yBAAiC;AACjC,qBAAqC;AACrC,iCAAmC;AACnC,qBAAoC;AACpC,8BAAuC;AACvC,qBAAoC;AACpC,uBAAiC;AACjC,uBAAuC;AACvC,wBAAoC;AACpC,IAAAC,+BAA4C;AAC5C,iCAAwC;AACxC,sBAAqC;AACrC,mBAAmC;AACnC,qBAA0C;AAC1C,wBAAsC;AACtC,8BAAmC;AACnC,2BAAoC;AAGpC,qCAAuC;AACvC,iBAAiC;AACjC,mBAAmC;AACnC,wBAAwC;AACxC,uBAAuC;AACvC,yBAAyC;AACzC,kBAAkC;AAClC,sBAAkC;AAClC,uBAAuC;AACvC,yBAAkC;AAClC,0BAAmC;AACnC,mBAAmC;AACnC,8BAAsC;AACtC,kCAA0C;AAC1C,gCAAmC;AACnC,2BAAoC;AACpC,yBAAyC;AACzC,mBAAoC;AACpC,qBAAuC;AACvC,8BAAoC;AACpC,kBAAmC;AACnC,uBAAqC;AACrC,wBAAsC;AACtC,+BAAmC;AACnC,0BAA2C;AAC3C,kBAAmC;AACnC,wBAAqC;AACrC,kBAAmC;AACnC,uBAAmC;AACnC,sBAAsC;AACtC,qBAAsC;AACtC,sBAAuC;AACvC,0BAAmC;AACnC,+BAAwC;AACxC,6BAAiC;AACjC,8BAAkC;AAClC,gCAAwC;AACxC,qBAAqC;AACrC,yBAAyC;AACzC,sCAA8C;AAC9C,qCAA6C;AAC7C,6CAAyC;AACzC,uBAAuC;AACvC,wBAAwC;AACxC,qBAAkC;AAClC,mBAAmC;AACnC,uBAAqC;AACrC,kBAAkC;AAClC,uBAAkC;AAClC,2BAAmC;AACnC,oBAAoC;AACpC,kBAAkC;AAClC,kBAAyC;AACzC,yBAAkC;AAClC,oBAAqC;AACrC,yBAAkC;AAClC,IAAAC,gBAAmC;AACnC,+BAA+C;AAC/C,gCAAgD;AAChD,2BAA2C;AAC3C,0BAA0C;AAC1C,gCAAgD;AAChD,+BAA+C;AAC/C,2BAA2C;AAC3C,uBAAuC;AACvC,0BAA0C;AAC1C,kCAAkD;AAGlD,wBAAqC;AACrC,oBAAoC;AACpC,mBAAmC;AACnC,uBAAuC;AAGvC,iCAAsC;AACtC,yBAAyC;AACzC,4BAA4C;AAC5C,0BAA0C;AAC1C,IAAAC,iBAAoC;AACpC,2BAA2C;AAC3C,oCAAkC;AAClC,mBAAmC;AACnC,IAAAC,wBAA2C;AAE3C,sBAAsC;AACtC,yBAAyC;AACzC,mCAAmD;AACnD,gCAAgD;AAChD,IAAAC,8BAAiD;AACjD,8BAA8C;AAC9C,oBAAoC;AACpC,kBAAkC;AAClC,qBAAqC;AACrC,0BAA0C;AAC1C,6BAA6C;AAC7C,0BAA0C;AAC1C,gCAAgD;AAChD,kCAAkD;AAClD,sBAA4C;;;ACjJrC,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;;;AVrCU,IAAAC,sBAAA;AAxCH,IAAM,uBAAmB;AAAA,EAC9B,CAAC,EAAE,IAAI,gBAAgB,uBAAuB,MAAM,GAAG,QAAQ;AAC7D,UAAM,CAAC,UAAU,WAAW,QAAI,wBAAS,KAAK;AAC9C,UAAM,EAAE,cAAc,QAAI,+BAAY;AAEtC,UAAM,wBAAoB,2BAAY,MAAM;AAC1C,kBAAY,CAAC,gBAAgB,CAAC,WAAW;AAAA,IAC3C,GAAG,CAAC,CAAC;AAEL,UAAM,oBAAgB,2BAAY,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,oBAAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,gBACF,gBAAgB;AAAA,gBAChB,SAAS;AAAA,cACX;AAAA,cAEA;AAAA;AAAA,kBAAC;AAAA;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,8CAAC,sBAAI,IAAI;AAAA,kBACP,SAAS;AAAA,kBACT,YAAY;AAAA,kBACZ,KAAK;AAAA,gBACP,GACE;AAAA;AAAA,oBAAC;AAAA;AAAA,sBACC,cAAW;AAAA,sBACX,MAAK;AAAA,sBACL,SAAS;AAAA,sBAET;AAAA,wBAAC;AAAA;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;AAAA,oBAAC;AAAA;AAAA,sBACC,MAAK;AAAA,sBACL,cAAW;AAAA,sBACX,SAAS;AAAA,sBAET,uDAAC,wBAAU,IAAI,EAAC,UAAS,OAAM,GAAG;AAAA;AAAA,kBACpC;AAAA,mBACF;AAAA;AAAA;AAAA,UACF;AAAA,UAEA,6CAAC,2BAAS,IAAI,UAAU,SAAQ,QAAO,eAAa,MAElD;AAAA,YAAC;AAAA;AAAA,cACE,GAAI;AAAA,cACL,IAAI,QAAS,aAA0B,IAAI,EAAE,IAAG,GAAG,IAAG,EAAE,CAAC;AAAA,cAExD;AAAA,4BAAY,6CAAC,YAAU,GAAG,gBAAgB;AAAA,gBAC1C,CAAC,YACA,6CAAC,sBAAI,IAAI,EAAE,GAAG,EAAE,GACb,0BAAgB,YAAY,uBAC/B;AAAA;AAAA;AAAA,UAEJ,GACF;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;;;ALtFI,IAAAC,sBAAA;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,cAAAC,QAAM,KAAK,SAASC,eAAc,EAAE,SAAS,GAAkC;AAC1G,SACE;AAAA,IAAC;AAAA;AAAA,MACC,UAAU,SAAS,iBAAiB;AAAA,MACpC,cAAc,SAAS;AAAA,MACvB,YAAY;AAAA,MAEX;AAAA;AAAA,EACH;AAEJ,CAAC;","names":["import_react","import_notistack","import_notistack","enqueueAlert","enqueueCollapsable","enqueueError","enqueueSuccess","enqueueWarning","enqueueInfo","enqueueSystem","enqueueInsight","Alert","import_react","import_notistack","import_CardActions","import_Card","import_jsx_runtime","MuiCard","CardContent","import_CardContent","import_react","import_jsx_runtime","MuiIconButton","import_PhotoSizeSelectLarge","import_Close","import_Person","import_DeleteForever","import_AccountTreeOutlined","import_jsx_runtime","CardActions","import_jsx_runtime","React","AlertProvider"]}
|
|
1
|
+
{"version":3,"sources":["../src/components/compound/Alert/index.ts","../src/components/compound/Alert/src/AlertProvider.tsx","../src/components/compound/Alert/src/MuiAlertVariant.tsx","../src/_utils/_func/random.ts","../src/_utils/_func/sx.ts","../src/components/elemental/Box/src/index.ts","../src/components/elemental/Button/src/Button/Button.tsx","../src/components/elemental/Button/src/IconButton/IconButton.tsx","../src/components/elemental/Tooltip/src/Tooltip/index.ts","../src/components/compound/Alert/src/_utils/utils.ts","../src/components/compound/Alert/src/_utils/const.ts","../src/components/compound/Alert/src/AlertStyleVariantContext.tsx","../src/components/compound/Alert/src/SoftAlertContent.tsx","../src/components/elemental/Typography/src/Typography.ts","../src/components/Icons/MuiIcon/index.ts","../src/components/compound/Alert/src/theme.ts","../src/components/compound/Alert/src/CollapsableAlert.tsx","../src/components/elemental/Collapse/src/Collapse/index.ts","../src/components/compound/Alert/src/toast.ts","../src/components/compound/Alert/src/useToast.ts"],"sourcesContent":["export * from './src/AlertProvider'\nexport * from './src/AlertStyleVariantContext'\nexport * from './src/CollapsableAlert'\nexport * from './src/SoftAlertContent'\nexport * from './src/toast'\nexport * from './src/useToast'\nexport * from './src/_utils'\nexport * from './src/theme'\n","'use client'\nimport React from 'react'\nimport { SnackbarProvider, type SnackbarProviderProps } from 'notistack'\nimport { MuiAlertVariant } from './MuiAlertVariant'\nimport { CollapsableAlert } from './CollapsableAlert'\nimport { AlertStyleVariantContext } from './AlertStyleVariantContext'\nimport { ALERT_VARIANTs, DEFAULTs, type AlertStyleVariant } 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\nexport type AlertProviderProps = {\n children: React.ReactNode\n /**\n * Default chrome for enqueued alerts when `styleVariant` is omitted.\n * Soft = quiet glass (default); classic = filled MUI Alert.\n * Per-call `styleVariant` always wins.\n */\n defaultStyleVariant?: AlertStyleVariant\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({\n children,\n defaultStyleVariant = DEFAULTs.STYLE_VARIANT,\n}: AlertProviderProps) {\n return (\n <AlertStyleVariantContext.Provider value={defaultStyleVariant}>\n <SnackbarProvider\n maxSnack={DEFAULTs.PROVIDER_CONFIGs.maxSnack}\n anchorOrigin={DEFAULTs.ANCHOR_ORIGIN}\n Components={ALERT_COMPONENTS}\n >\n {children}\n </SnackbarProvider>\n </AlertStyleVariantContext.Provider>\n )\n})\n","'use client'\nimport { forwardRef, useCallback } from 'react'\nimport { useSnackbar, CustomContentProps } from 'notistack'\nimport Alert from '@mui/material/Alert'\nimport { Box } from '@/ele/Box'\nimport { Button } from '@/ele/Button'\n\nimport { type AlertOptions, ALERT_VARIANTs, DEFAULTs } from './_utils'\nimport { useAlertStyleVariantDefault } from './AlertStyleVariantContext'\nimport { SoftAlertContent } from './SoftAlertContent'\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 {\n id,\n message,\n variant,\n icon,\n style,\n styleVariant: styleVariantProp,\n alertAction,\n action: actionProp,\n } = props as CustomContentProps & AlertOptions & { alertAction?: AlertOptions['action'] }\n const action = alertAction ?? actionProp\n const providerDefault = useAlertStyleVariantDefault()\n const styleVariant = styleVariantProp ?? providerDefault ?? DEFAULTs.STYLE_VARIANT\n const { closeSnackbar } = useSnackbar()\n\n const handleDismiss = useCallback(() => {\n closeSnackbar(id)\n }, [id, closeSnackbar])\n\n const handleAction = useCallback(() => {\n action?.onClick()\n closeSnackbar(id)\n }, [action, closeSnackbar, id])\n\n if (styleVariant === 'soft') {\n return (\n <SoftAlertContent\n ref={ref}\n {...props}\n alertAction={action}\n />\n )\n }\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 data-style-variant=\"classic\"\n data-testid=\"classic-alert\"\n action={\n action ? (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 0.5 }}>\n <Button\n size=\"small\"\n variant=\"text\"\n onClick={handleAction}\n sx={{\n minWidth: 'auto',\n color: 'var(--alert-icon-color, inherit)',\n textTransform: 'none',\n fontWeight: 600,\n }}\n >\n {action.label}\n </Button>\n </Box>\n ) : undefined\n }\n >\n {message}\n </Alert>\n )\n }\n)\n","export function randomStrGenerator(length=20):string{\n let result = ''\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'\n\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * characters.length))\n }\n\n return result\n}\n\nexport function getRandomInt(max: number) {\n return Math.floor(Math.random() * max)\n}\nexport function getRandomBetween(min: number, max: number, isFloat = false) {\n const randomVal = Math.random() * (max - min) + min\n if (isFloat) {\n return randomVal\n }\n return Math.floor(randomVal)\n}","import type { SxProps, Theme } from '@mui/material/styles'\n\n/** Values accepted by {@link mergeSx}: objects, callbacks, arrays (nested ok), or omitted. */\nexport type SxMergePart =\n | SxProps<Theme>\n | Record<string, unknown>\n | ReadonlyArray<SxMergePart>\n | false\n | null\n | undefined\n\nfunction flattenSx(part: unknown): unknown[] {\n if (part == null || typeof part === 'boolean') {\n return []\n }\n if (Array.isArray(part)) {\n return part.flatMap(flattenSx)\n }\n if (typeof part === 'function' || typeof part === 'object') {\n return [part]\n }\n return []\n}\n\n/**\n * Combine MUI `sx` values into one prop.\n *\n * Nested arrays are flattened (`[base, [a, b]]` → `[base, a, b]`).\n * `null` / `undefined` / `false` entries are dropped. Later parts win,\n * same as MUI's `sx` array merge.\n */\nexport function mergeSx(...parts: SxMergePart[]): SxProps<Theme> | undefined {\n const list = parts.flatMap(flattenSx)\n if (list.length === 0) {\n return undefined\n }\n if (list.length === 1) {\n return list[0] as SxProps<Theme>\n }\n return list as SxProps<Theme>\n}\n","export * from './BorderBox'\nexport {default as Box} from '@mui/material/Box'\nexport {default as Stack} from '@mui/material/Stack'\nexport {default as Grid} from '@mui/material/Grid'\n","import React from 'react';\n\nimport MuiButton from '@mui/material/Button';\nimport { Box } from '@/ele/Box';\nimport { mergeSx } from '@/_utils/_func';\n\n/**\n * A modified MUI Button that truncates long text with ellipsis.\n * \n * [Doc](https://mui.com/material-ui/react-button/)\n * [API](https://mui.com/material-ui/api/button/)\n */\nexport default function Button(p:\n React.ComponentProps<typeof MuiButton> & {\n slotProps?: {\n innerBox?: React.ComponentProps<typeof Box>\n }\n }) {\n const {children, slotProps, ...rest} = p\n const {sx, ...boxRest} = slotProps?.innerBox ?? {}\n return <MuiButton {...rest}>\n <Box \n {...boxRest}\n sx={mergeSx(\n {\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'pre',\n },\n sx,\n )}>\n {children}\n </Box>\n </MuiButton>\n}","'use client'\nimport {forwardRef} from 'react'\nimport MuiIconButton from '@mui/material/IconButton'\nimport { Tooltip } from '@/ele/Tooltip'\nimport { type TooltipProps } from '@mui/material/Tooltip'\nimport { Box } from '@/ele/Box'\n\ntype IconButtonProps = React.ComponentProps<typeof MuiIconButton>\ntype Props = {\n /** The Icon to render */\n children: React.ReactNode;\n /** The title of the tooltip */\n title?: string;\n /** \n * The color theme of the entire component.\n * @default 'secondary' (from theme)\n */\n color?: IconButtonProps['color'];\n /**\n * The size of the component.\n * @default 'small' (from theme)\n */\n size?: IconButtonProps['size'];\n \n selected?: boolean;\n \n slotProps?: {\n tooltip?: Omit<TooltipProps, \"children\">\n };\n} & Omit<IconButtonProps, \"color\" | \"size\">;\n\n/**\n * A MuiIconButton wrapped in a MuiTooltip.\n * Default props like `size` and `color` are handled by the theme.\n */\nconst IconButton = forwardRef<HTMLButtonElement, Props>(({\n title = \"\",\n children,\n color,\n size,\n slotProps,\n selected,\n className,\n ...props\n}, ref) => {\n return (\n <Tooltip \n title={title} \n slotProps={{\n popper: {\n sx: {\n textTransform: \"capitalize\",\n }\n },\n ...slotProps?.tooltip\n }}\n >\n <Box component=\"span\" sx={{width: \"fit-content\"}}>\n <MuiIconButton\n ref={ref}\n color={color}\n size={size}\n className={[className, selected ? 'Mui-selected' : ''].filter(Boolean).join(' ')}\n {...props}\n >\n {children}\n </MuiIconButton>\n </Box>\n </Tooltip>\n )\n})\n\nexport default IconButton","export {default as Tooltip} from '@mui/material/Tooltip'\nexport * from './theme'\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 styleVariant,\n action,\n ...rest\n }: AlertOptions\n): AlertOperationResult<string> {\n try {\n // Cast: variant is a union (AlertVariant); OptionsWithExtraProps is per-variant.\n // Public API keeps action; wire as alertAction (notistack SharedProps already owns action).\n enqueue(message, {\n variant,\n anchorOrigin,\n autoHideDuration,\n key: id,\n id,\n icon,\n styleVariant,\n alertAction: action,\n ...rest,\n } as Parameters<EnqueueFn>[1])\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 styleVariant,\n componentProps = {},\n componentWrapperProps = {},\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 styleVariant,\n ...rest,\n } as Parameters<EnqueueFn>[1])\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 styleVariant,\n action,\n ...rest\n}: AlertOptions): AlertOperationResult<string> {\n return enqueueAlertWith(enqueueSnackbar, {\n message,\n variant,\n id,\n autoHideDuration,\n anchorOrigin,\n icon,\n styleVariant,\n action,\n ...rest,\n })\n}\n\nexport function enqueueCollapsable({\n id = randomStrGenerator(10),\n autoHideDuration = DEFAULTs.AUTO_HIDE_DURATION,\n anchorOrigin = DEFAULTs.ANCHOR_ORIGIN,\n styleVariant,\n componentProps = {},\n componentWrapperProps = {},\n ...rest\n}: CollapsableAlertOptions): AlertOperationResult<string> {\n return enqueueCollapsableWith(enqueueSnackbar, {\n id,\n autoHideDuration,\n anchorOrigin,\n styleVariant,\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 ALERT_STYLE_VARIANTs = {\n soft: 'soft',\n classic: 'classic',\n} as const\n\nexport const DEFAULTs = {\n AUTO_HIDE_DURATION: 3000,\n /** Quiet glass toast look is the default snackbar chrome. */\n STYLE_VARIANT: 'soft' as const,\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 React from 'react'\nimport { DEFAULTs, type AlertStyleVariant } from './_utils'\n\nexport const AlertStyleVariantContext = React.createContext<AlertStyleVariant>(\n DEFAULTs.STYLE_VARIANT,\n)\n\nexport function useAlertStyleVariantDefault(): AlertStyleVariant {\n return React.useContext(AlertStyleVariantContext)\n}\n","'use client'\nimport { forwardRef, useCallback } from 'react'\nimport { useSnackbar, type CustomContentProps } from 'notistack'\nimport { Box } from '@/ele/Box'\nimport { Typography } from '@/ele/Typography'\nimport { Button, IconButton } from '@/ele/Button'\nimport {\n AutoAwesomeRoundedIcon,\n CheckCircleIcon,\n CloseIcon,\n ErrorOutlineOutlinedIcon,\n InfoOutlinedIcon,\n SettingIcon,\n WarningOutlinedIcon,\n} from '@/icons/MuiIcon'\nimport { ALERT_VARIANTs, type AlertAction, type AlertOptions } from './_utils'\nimport { softAlertAccentBarSx, softAlertIconSx, softAlertItemRootSx } from './theme'\n\nconst VARIANT_ICON = {\n [ALERT_VARIANTs.success]: CheckCircleIcon,\n [ALERT_VARIANTs.error]: ErrorOutlineOutlinedIcon,\n [ALERT_VARIANTs.warning]: WarningOutlinedIcon,\n [ALERT_VARIANTs.info]: InfoOutlinedIcon,\n [ALERT_VARIANTs.system]: SettingIcon,\n [ALERT_VARIANTs.insight]: AutoAwesomeRoundedIcon,\n [ALERT_VARIANTs.collapsable]: InfoOutlinedIcon,\n} as const\n\nconst VARIANT_DATA = {\n [ALERT_VARIANTs.success]: 'success',\n [ALERT_VARIANTs.error]: 'error',\n [ALERT_VARIANTs.warning]: 'warning',\n [ALERT_VARIANTs.info]: 'info',\n [ALERT_VARIANTs.system]: 'system',\n [ALERT_VARIANTs.insight]: 'insight',\n [ALERT_VARIANTs.collapsable]: 'info',\n} as const\n\nexport type SoftAlertContentProps = CustomContentProps &\n Pick<AlertOptions, 'icon'> & {\n /** Wired from AlertOptions.action via enqueue (lertAction avoids notistack SharedProps.action clash). */\n alertAction?: AlertAction\n }\n\n/**\n * Soft/quiet glass snackbar content — former Toast look, owned by Alert/notistack.\n */\nexport const SoftAlertContent = forwardRef<HTMLDivElement, SoftAlertContentProps>(\n function SoftAlertContent(props, ref) {\n const { id, message, variant, icon, style, alertAction: action } = props\n const { closeSnackbar } = useSnackbar()\n\n const handleDismiss = useCallback(() => {\n closeSnackbar(id)\n }, [id, closeSnackbar])\n\n const handleAction = useCallback(() => {\n action?.onClick()\n closeSnackbar(id)\n }, [action, closeSnackbar, id])\n\n const Icon =\n VARIANT_ICON[variant as keyof typeof VARIANT_ICON] ?? InfoOutlinedIcon\n const dataVariant =\n VARIANT_DATA[variant as keyof typeof VARIANT_DATA] ?? 'info'\n\n return (\n <Box\n ref={ref}\n role=\"status\"\n aria-live=\"polite\"\n data-variant={dataVariant}\n data-style-variant=\"soft\"\n data-testid=\"soft-alert\"\n style={style}\n sx={softAlertItemRootSx}\n >\n <Box sx={softAlertAccentBarSx} aria-hidden />\n {icon === null ? null : icon !== undefined ? (\n <Box sx={{ display: 'flex', flexShrink: 0, color: 'var(--soft-alert-accent)' }}>\n {icon}\n </Box>\n ) : (\n <Icon sx={softAlertIconSx} aria-hidden />\n )}\n <Box sx={{ flex: 1, minWidth: 0 }}>\n {typeof message === 'string' ? (\n <Typography variant=\"body2\" sx={{ m: 0, lineHeight: 1.4 }}>\n {message}\n </Typography>\n ) : (\n message\n )}\n </Box>\n {action ? (\n <Button\n size=\"small\"\n variant=\"text\"\n onClick={handleAction}\n sx={{\n flexShrink: 0,\n alignSelf: 'center',\n minWidth: 'auto',\n color: 'var(--soft-alert-accent)',\n textTransform: 'none',\n fontWeight: 600,\n lineHeight: 1.25,\n }}\n >\n {action.label}\n </Button>\n ) : null}\n <IconButton\n size=\"small\"\n aria-label=\"Close\"\n onClick={handleDismiss}\n sx={{\n flexShrink: 0,\n alignSelf: 'center',\n p: 0.25,\n color: 'var(--mui-palette-text-secondary)',\n }}\n >\n <CloseIcon sx={{ fontSize: '1rem' }} />\n </IconButton>\n </Box>\n )\n },\n)\n","export { default } from '@mui/material/Typography'","// display\nexport {default as ArrowIcon} from '@mui/icons-material/ArrowRightAlt'\nexport {default as FileIcon} from '@mui/icons-material/DescriptionOutlined'\nexport {default as DescriptionIcon} from '@mui/icons-material/Description'\nexport {default as PictureAsPdfIcon} from '@mui/icons-material/PictureAsPdf'\nexport {default as AudioFileIcon} from '@mui/icons-material/AudioFile'\nexport {default as VideoFileIcon} from '@mui/icons-material/VideoFile'\nexport {default as TableChartIcon} from '@mui/icons-material/TableChart'\nexport {default as FolderZipIcon} from '@mui/icons-material/FolderZip'\nexport {default as InsertDriveFileIcon} from '@mui/icons-material/InsertDriveFile'\nexport {default as ImageIcon} from '@mui/icons-material/ImageOutlined'\nexport {default as LayersIcon} from '@mui/icons-material/LayersOutlined'\nexport {default as TextIcon} from '@mui/icons-material/TextFormat'\nexport {default as RemoveIcon} from '@mui/icons-material/Remove'\nexport {default as AddFileIcon} from '@mui/icons-material/PostAdd'\nexport {default as ErrorIcon} from '@mui/icons-material/ErrorOutline'\nexport {default as QuestionIcon} from '@mui/icons-material/QuestionMarkOutlined'\nexport {default as RoomIcon} from '@mui/icons-material/MeetingRoomOutlined'\nexport {default as BlacklistIcon} from '@mui/icons-material/PlaylistRemove'\nexport {default as WhitelistIcon} from '@mui/icons-material/ChecklistRtl'\nexport {default as NoImageIcon} from '@mui/icons-material/HideImageOutlined'\nexport {default as EyeIcon} from '@mui/icons-material/RemoveRedEyeTwoTone'\nexport {default as CropSizeIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as AdminIcon} from '@mui/icons-material/LockPersonOutlined'\nexport {default as UserIcon} from '@mui/icons-material/Person'\nexport {default as EmoticonIcon} from '@mui/icons-material/InsertEmoticon'\nexport {default as DisabledSelectionIcon} from '@mui/icons-material/RemoveDoneOutlined'\nexport {default as TagIcon} from '@mui/icons-material/Tag'\nexport {default as AudioIcon} from '@mui/icons-material/Audiotrack'\nexport {default as VideoIcon} from '@mui/icons-material/Videocam'\nexport {default as CodeIcon} from '@mui/icons-material/Code'\nexport {default as ChartIcon} from '@mui/icons-material/Equalizer'\nexport {default as TableIcon} from '@mui/icons-material/PivotTableChart'\nexport {default as SearchIcon} from '@mui/icons-material/Search'\nexport {default as DataObjectIcon} from '@mui/icons-material/DataObject'\nexport {default as A2ZIcon} from '@mui/icons-material/SortByAlpha'\nexport {default as ThumbUpIcon} from '@mui/icons-material/ThumbUp'\nexport {default as MoneyIcon} from '@mui/icons-material/AttachMoneyOutlined'\nexport {default as ServerIcon} from '@mui/icons-material/Storage'\nexport {default as CerticateIcon} from '@mui/icons-material/WorkspacePremium'\nexport {default as NumberIcon} from '@mui/icons-material/Numbers'\nexport {default as SumIcon} from '@mui/icons-material/Functions'\nexport {default as LightBulbIcon} from '@mui/icons-material/Lightbulb'\nexport {default as RotateIcon} from '@mui/icons-material/CropRotate'\nexport {default as ImageSzieScaleIcon} from '@mui/icons-material/PhotoSizeSelectLarge'\nexport {default as CollectionIcon} from '@mui/icons-material/CollectionsBookmark'\nexport {default as HistoryIcon} from '@mui/icons-material/Schedule'\nexport {default as StyleIcon} from '@mui/icons-material/Style'\nexport {default as ARHorizontalIcon} from '@mui/icons-material/Crop169'\nexport {default as ARSquareIcon} from '@mui/icons-material/CropSquare'\nexport {default as VoiceIcon} from '@mui/icons-material/GraphicEqRounded'\nexport {default as MemoryIcon} from '@mui/icons-material/MemoryRounded'\n\n// button\nexport {default as AddCircleIcon} from '@mui/icons-material/AddCircleOutlineRounded'\nexport {default as AddIcon} from '@mui/icons-material/Add'\nexport {default as CloseIcon} from '@mui/icons-material/Close'\nexport {default as ExpandMoreIcon} from '@mui/icons-material/ExpandMore'\nexport {default as AutorenewIcon} from '@mui/icons-material/Autorenew'\nexport {default as CheckCircleIcon} from '@mui/icons-material/CheckCircle'\nexport {default as MenuIcon} from '@mui/icons-material/Menu'\nexport {default as MoreIcon} from '@mui/icons-material/MoreVert'\nexport {default as MoreHorizIcon} from '@mui/icons-material/MoreHoriz'\nexport {default as CopyIcon} from '@mui/icons-material/ContentCopy'\nexport {default as PasteIcon} from '@mui/icons-material/ContentPaste'\nexport {default as CloudIcon} from '@mui/icons-material/Cloud'\nexport {default as DownloadIcon} from '@mui/icons-material/DownloadOutlined'\nexport {default as DownloadDoneIcon} from '@mui/icons-material/DownloadDoneOutlined'\nexport {default as StartIcon} from '@mui/icons-material/StarBorderOutlined'\nexport {default as DeleteIcon} from '@mui/icons-material/DeleteForever'\nexport {default as LayerClearIcon } from '@mui/icons-material/LayersClear'\nexport {default as CheckIcon } from '@mui/icons-material/Check'\nexport {default as CheckAllIcon } from '@mui/icons-material/DoneAll'\nexport {default as PowerIcon } from '@mui/icons-material/PowerSettingsNew'\nexport {default as SendIcon } from '@mui/icons-material/Send'\nexport {default as ZoomInIcon } from '@mui/icons-material/ZoomInMap'\nexport {default as ZoomOutIcon } from '@mui/icons-material/ZoomOutMap'\nexport {default as ToolIcon } from '@mui/icons-material/HomeRepairService'\nexport {default as ConstructionIcon } from '@mui/icons-material/Construction'\nexport {default as HelpIcon } from '@mui/icons-material/Help'\nexport {default as ReportIcon } from '@mui/icons-material/EmojiFlags'\nexport {default as EditIcon } from '@mui/icons-material/Edit'\nexport {default as ForkIcon } from '@mui/icons-material/ForkRight'\nexport {default as SettingIcon } from '@mui/icons-material/Settings'\nexport {default as RestoreIcon } from '@mui/icons-material/Restore'\nexport {default as EditListIcon } from '@mui/icons-material/EditNote'\nexport {default as HomeIcon } from '@mui/icons-material/HomeOutlined'\nexport {default as EnterRoomIcon } from '@mui/icons-material/ExitToAppOutlined'\nexport {default as SunIcon} from '@mui/icons-material/WbSunnyOutlined'\nexport {default as MoonIcon} from '@mui/icons-material/DarkModeOutlined'\nexport {default as AttachFileIcon} from '@mui/icons-material/AttachFileOutlined'\nexport {default as NoteAddIcon} from '@mui/icons-material/NoteAdd'\nexport {default as CloudUploadIcon} from '@mui/icons-material/CloudUpload'\nexport {default as DoubleRightArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRight'\nexport {default as DoubleLeftArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowLeft'\nexport {default as DoubleArrowIcon} from '@mui/icons-material/KeyboardDoubleArrowRightRounded'\nexport {default as FitScreenIcon} from '@mui/icons-material/FitScreen'\nexport {default as FullscreenIcon} from '@mui/icons-material/Fullscreen'\nexport {default as TestIcon} from '@mui/icons-material/Biotech'\nexport {default as ShareIcon} from '@mui/icons-material/Share'\nexport {default as FilterIcon} from '@mui/icons-material/FilterAlt'\nexport {default as SyncIcon} from '@mui/icons-material/Sync'\nexport {default as PlayIcon} from '@mui/icons-material/PlayArrow'\nexport {default as PauseIcon} from '@mui/icons-material/PauseOutlined'\nexport {default as RandomIcon} from '@mui/icons-material/Casino'\nexport {default as CoinIcon} from '@mui/icons-material/Paid'\nexport {default as SaveChangesIcon} from '@mui/icons-material/Save'\nexport {default as StopIcon} from '@mui/icons-material/StopRounded'\nexport {default as ReplayIcon} from '@mui/icons-material/Replay'\nexport {default as TreeIcon} from '@mui/icons-material/AccountTree'\nexport {default as ClearIcon} from '@mui/icons-material/Close'\nexport {default as KeyboardArrowDownIcon} from '@mui/icons-material/KeyboardArrowDown'\nexport {default as KeyboardArrowRightIcon} from '@mui/icons-material/KeyboardArrowRight'\nexport {default as SearchRoundedIcon} from '@mui/icons-material/SearchRounded'\nexport {default as CloseRoundedIcon} from '@mui/icons-material/CloseRounded'\nexport {default as SortByAlphaRoundedIcon} from '@mui/icons-material/SortByAlphaRounded'\nexport {default as FilterAltOutlinedIcon} from '@mui/icons-material/FilterAltOutlined'\nexport {default as InboxOutlinedIcon} from '@mui/icons-material/InboxOutlined'\nexport {default as SearchOffIcon} from '@mui/icons-material/SearchOff'\nexport {default as ClearRoundedIcon} from '@mui/icons-material/ClearRounded'\nexport {default as ArrowDropDownRoundedIcon} from '@mui/icons-material/ArrowDropDownRounded'\n\n// login\nexport {default as AccountIcon} from '@mui/icons-material/AccountBox'\nexport {default as LogoutIcon} from '@mui/icons-material/Logout'\nexport {default as LoginIcon} from '@mui/icons-material/Login'\nexport {default as DashboardIcon} from '@mui/icons-material/Dashboard'\n\n//logo\nexport {default as WorkFlowIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as HelpOutlineIcon} from '@mui/icons-material/HelpOutline'\nexport {default as NavigateBeforeIcon} from '@mui/icons-material/NavigateBefore'\nexport {default as NavigateNextIcon} from '@mui/icons-material/NavigateNext'\nexport {default as PersonIcon} from '@mui/icons-material/Person'\nexport {default as CalendarTodayIcon} from '@mui/icons-material/CalendarToday'\nexport {default as ChatIcon} from '@mui/icons-material/QuestionAnswerOutlined'\nexport {default as TodayIcon} from '@mui/icons-material/Today'\nexport {default as DeleteForeverIcon} from '@mui/icons-material/DeleteForever'\n\nexport {default as AdsClickIcon} from '@mui/icons-material/AdsClick'\nexport {default as FingerprintIcon} from '@mui/icons-material/Fingerprint'\nexport {default as SportsEsportsOutlinedIcon} from '@mui/icons-material/SportsEsportsOutlined'\nexport {default as HelpOutlineRoundedIcon} from '@mui/icons-material/HelpOutlineRounded'\nexport {default as AccountTreeOutlinedIcon} from '@mui/icons-material/AccountTreeOutlined'\nexport {default as SmartToyOutlinedIcon} from '@mui/icons-material/SmartToyOutlined'\nexport {default as AcUnitIcon} from '@mui/icons-material/AcUnit'\nexport {default as LoopIcon} from '@mui/icons-material/Loop'\nexport {default as PendingIcon} from '@mui/icons-material/Pending'\nexport {default as AllInclusiveIcon} from '@mui/icons-material/AllInclusive'\nexport {default as WarningOutlinedIcon} from '@mui/icons-material/WarningOutlined'\nexport {default as InfoOutlinedIcon} from '@mui/icons-material/InfoOutlined'\nexport {default as AutoAwesomeRoundedIcon} from '@mui/icons-material/AutoAwesomeRounded'\nexport {default as ErrorOutlineOutlinedIcon} from '@mui/icons-material/ErrorOutlineOutlined'\nexport {default as DownloadFilledIcon} from '@mui/icons-material/Download'","import type { MuiComponentTheme } from '@/_utils/_types'\nimport type { SxProps, Theme } from '@mui/material/styles'\n\n/**\n * Classic denser collapsable — solid paper sibling to soft glass.\n * Quiet border-1, subtle elevation, no harsh gray icon squares.\n */\nexport const collapsableAlertClassicRootSx: SxProps<Theme> = {\n '--collapse-bg': 'var(--mui-palette-background-paper)',\n '--collapse-border': 'var(--mui-palette-border-1)',\n '--collapse-title-color': 'var(--mui-palette-text-primary)',\n '--collapse-shadow':\n '0 1px 2px rgba(15, 23, 42, 0.05), 0 2px 8px rgba(15, 23, 42, 0.04)',\n\n pointerEvents: 'auto',\n display: 'flex',\n flexDirection: 'column',\n minWidth: 280,\n maxWidth: 'min(420px, calc(100vw - 24px))',\n width: '100%',\n borderRadius: '10px',\n border: '1px solid var(--collapse-border)',\n backgroundColor: 'var(--collapse-bg)',\n color: 'var(--collapse-title-color)',\n boxShadow: 'var(--collapse-shadow)',\n boxSizing: 'border-box',\n overflow: 'hidden',\n\n '[color-scheme=\"dark\"] &': {\n '--collapse-bg': 'var(--mui-palette-container-bg-1, var(--mui-palette-background-paper))',\n '--collapse-shadow':\n '0 1px 2px rgba(0, 0, 0, 0.22), 0 2px 8px rgba(0, 0, 0, 0.16)',\n },\n}\n\n/** @deprecated Use collapsableAlertClassicRootSx / collapsableAlertSoftRootSx. */\nexport const collapsableAlertRootSx = collapsableAlertClassicRootSx\n\n/**\n * Soft/quiet glass collapsable — matches SoftAlertContent language:\n * border-1, glass blur, soft night shadow, 12px radius. No harsh Paper squares.\n */\nexport const collapsableAlertSoftRootSx: SxProps<Theme> = {\n '--collapse-bg': 'color-mix(in srgb, var(--mui-palette-background-paper) 88%, transparent)',\n '--collapse-border': 'var(--mui-palette-border-1)',\n '--collapse-title-color': 'var(--mui-palette-text-primary)',\n '--collapse-shadow':\n '0 1px 2px rgba(15, 23, 42, 0.04), 0 4px 12px rgba(15, 23, 42, 0.06)',\n\n pointerEvents: 'auto',\n display: 'flex',\n flexDirection: 'column',\n minWidth: 280,\n maxWidth: 'min(420px, calc(100vw - 24px))',\n width: '100%',\n borderRadius: '12px',\n border: '1px solid var(--collapse-border)',\n backgroundColor: 'var(--collapse-bg)',\n color: 'var(--collapse-title-color)',\n boxShadow: 'var(--collapse-shadow)',\n backdropFilter: 'blur(10px)',\n WebkitBackdropFilter: 'blur(10px)',\n boxSizing: 'border-box',\n overflow: 'hidden',\n\n '[color-scheme=\"dark\"] &': {\n '--collapse-shadow':\n '0 1px 2px rgba(0, 0, 0, 0.18), 0 4px 12px rgba(0, 0, 0, 0.14)',\n },\n}\n\nexport const collapsableSoftHeaderSx: SxProps<Theme> = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 1,\n px: 1.5,\n py: 1.25,\n minHeight: 40,\n}\n\n/** Classic denser header — solid, slightly taller hit area than soft. */\nexport const collapsableClassicHeaderSx: SxProps<Theme> = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 1,\n px: 1.5,\n py: 1.125,\n minHeight: 44,\n}\n\n/** Ghost icon buttons — no gray square hit targets. */\nexport const collapsableSoftIconButtonSx: SxProps<Theme> = {\n flexShrink: 0,\n p: 0.25,\n color: 'var(--mui-palette-text-secondary)',\n backgroundColor: 'transparent',\n borderRadius: '8px',\n '&:hover': {\n backgroundColor: 'color-mix(in srgb, var(--mui-palette-text-primary) 6%, transparent)',\n },\n}\n\n/**\n * Classic denser ghost icons — still no harsh gray squares;\n * slightly stronger hover wash than soft.\n */\nexport const collapsableClassicIconButtonSx: SxProps<Theme> = {\n flexShrink: 0,\n p: 0.375,\n color: 'var(--mui-palette-text-secondary)',\n backgroundColor: 'transparent',\n borderRadius: '8px',\n '&:hover': {\n backgroundColor: 'color-mix(in srgb, var(--mui-palette-text-primary) 8%, transparent)',\n color: 'var(--mui-palette-text-primary)',\n },\n}\n\nexport const collapsableSoftPanelSx: SxProps<Theme> = {\n px: 1.5,\n pb: 1.5,\n pt: 0.75,\n borderTop: '1px solid var(--collapse-border)',\n}\n\n/** Classic expand panel — quiet divider, denser tinted content area. */\nexport const collapsableClassicPanelSx: SxProps<Theme> = {\n px: 1.5,\n pb: 1.5,\n pt: 1,\n borderTop: '1px solid var(--collapse-border)',\n backgroundColor:\n 'color-mix(in srgb, var(--mui-palette-text-primary) 2.5%, var(--collapse-bg))',\n}\n\n/**\n * Soft/quiet glass alert — matches former Toast chrome:\n * quiet border-1, glass blur, accent bar, soft night shadow. No thick severity outlines.\n */\nexport const softAlertItemRootSx: SxProps<Theme> = {\n '--soft-alert-bg': 'color-mix(in srgb, var(--mui-palette-background-paper) 88%, transparent)',\n '--soft-alert-border': 'var(--mui-palette-border-1)',\n '--soft-alert-fg': 'var(--mui-palette-text-primary)',\n '--soft-alert-accent': 'var(--mui-palette-info-main)',\n '--soft-alert-shadow':\n '0 1px 2px rgba(15, 23, 42, 0.04), 0 4px 12px rgba(15, 23, 42, 0.06)',\n\n pointerEvents: 'auto',\n display: 'flex',\n alignItems: 'center',\n gap: 1,\n px: 1.5,\n py: 1.25,\n minWidth: 280,\n maxWidth: 'min(420px, calc(100vw - 24px))',\n borderRadius: '12px',\n border: '1px solid var(--soft-alert-border)',\n backgroundColor: 'var(--soft-alert-bg)',\n color: 'var(--soft-alert-fg)',\n boxShadow: 'var(--soft-alert-shadow)',\n backdropFilter: 'blur(10px)',\n WebkitBackdropFilter: 'blur(10px)',\n boxSizing: 'border-box',\n\n '[color-scheme=\"dark\"] &': {\n '--soft-alert-shadow':\n '0 1px 2px rgba(0, 0, 0, 0.18), 0 4px 12px rgba(0, 0, 0, 0.14)',\n },\n\n '&[data-variant=success]': {\n '--soft-alert-accent': 'var(--mui-palette-success-main)',\n },\n '&[data-variant=error]': {\n '--soft-alert-accent': 'var(--mui-palette-error-main)',\n },\n '&[data-variant=warning]': {\n '--soft-alert-accent': 'var(--mui-palette-warning-main)',\n },\n '&[data-variant=info]': {\n '--soft-alert-accent': 'var(--mui-palette-info-main)',\n },\n '&[data-variant=system]': {\n '--soft-alert-accent': 'var(--mui-palette-system-main)',\n },\n '&[data-variant=insight]': {\n '--soft-alert-accent': 'var(--mui-palette-insight-main)',\n },\n}\n\nexport const softAlertAccentBarSx: SxProps<Theme> = {\n width: 3,\n alignSelf: 'stretch',\n borderRadius: 2,\n backgroundColor: 'var(--soft-alert-accent)',\n flexShrink: 0,\n opacity: 0.85,\n}\n\nexport const softAlertIconSx: SxProps<Theme> = {\n color: 'var(--soft-alert-accent)',\n fontSize: '1.25rem',\n flexShrink: 0,\n}\n\n/** Classic MUI Alert severity fill + colored border (legacy notistack look). */\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","'use client'\nimport { forwardRef, useState, useCallback } from 'react'\nimport { CustomContentProps, useSnackbar } from 'notistack'\nimport type { BoxProps } from '@mui/material/Box'\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, DEFAULTs } from './_utils'\nimport { useAlertStyleVariantDefault } from './AlertStyleVariantContext'\nimport {\n collapsableAlertClassicRootSx,\n collapsableAlertSoftRootSx,\n collapsableClassicHeaderSx,\n collapsableClassicIconButtonSx,\n collapsableClassicPanelSx,\n collapsableSoftHeaderSx,\n collapsableSoftIconButtonSx,\n collapsableSoftPanelSx,\n} from './theme'\nimport { mergeSx } from '@/_utils/_func'\n\nexport const CollapsableAlert = forwardRef<\n HTMLDivElement,\n CustomContentProps & CollapsableAlertOptions\n>(function CollapsableAlert(\n { id, componentProps, componentWrapperProps, style, styleVariant: styleVariantProp },\n ref,\n) {\n const [expanded, setExpanded] = useState(false)\n const { closeSnackbar } = useSnackbar()\n const providerDefault = useAlertStyleVariantDefault()\n const styleVariant =\n styleVariantProp ?? providerDefault ?? DEFAULTs.STYLE_VARIANT\n const isSoft = styleVariant === 'soft'\n\n const handleExpandClick = useCallback(() => {\n setExpanded((oldExpanded) => !oldExpanded)\n }, [])\n\n const handleDismiss = useCallback(() => {\n closeSnackbar(id)\n }, [id, closeSnackbar])\n\n const { Renderer, ...restCollapse } = componentWrapperProps || {}\n\n const titleNode = componentProps?.title || 'Alert Title'\n\n const iconButtonSx = isSoft\n ? collapsableSoftIconButtonSx\n : collapsableClassicIconButtonSx\n\n const iconButtons = (\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 0.25,\n flexShrink: 0,\n }}\n >\n <IconButton\n aria-label=\"Show more\"\n size=\"small\"\n onClick={handleExpandClick}\n sx={iconButtonSx}\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 sx={iconButtonSx}\n >\n <CloseIcon sx={{ fontSize: '1rem' }} />\n </IconButton>\n </Box>\n )\n\n const body = (\n <Collapse in={expanded} timeout=\"auto\" unmountOnExit>\n <Box\n {...(restCollapse as BoxProps)}\n sx={mergeSx(\n isSoft ? collapsableSoftPanelSx : collapsableClassicPanelSx,\n (restCollapse as BoxProps).sx,\n )}\n >\n {Renderer ? <Renderer {...componentProps} /> : null}\n {!Renderer && (\n <Box sx={{ py: 0.25 }}>\n {componentProps?.children || 'Collapsible content'}\n </Box>\n )}\n </Box>\n </Collapse>\n )\n\n return (\n <Box\n ref={ref}\n style={style}\n role=\"status\"\n aria-live=\"polite\"\n data-style-variant={isSoft ? 'soft' : 'classic'}\n data-testid={isSoft ? 'collapsable-alert-soft' : 'collapsable-alert-classic'}\n sx={isSoft ? collapsableAlertSoftRootSx : collapsableAlertClassicRootSx}\n >\n <Box sx={isSoft ? collapsableSoftHeaderSx : collapsableClassicHeaderSx}>\n <Typography\n variant=\"body2\"\n sx={{\n color: 'var(--collapse-title-color)',\n fontWeight: 600,\n lineHeight: 1.4,\n m: 0,\n minWidth: 0,\n flex: 1,\n }}\n >\n {titleNode}\n </Typography>\n {iconButtons}\n </Box>\n {body}\n </Box>\n )\n})\n","export {default as Collapse} from '@mui/material/Collapse'\nexport * from './theme'\n","import type { ReactNode } from 'react'\nimport { closeSnackbar } from 'notistack'\nimport { ALERT_VARIANTs, enqueueAlert } from './_utils'\nimport type { AlertAction, AlertVariant } from './_utils'\n\n/** @deprecated Prefer AlertVariant / enqueue* with styleVariant soft. */\nexport type ToastVariant = 'success' | 'error' | 'info' | 'warning'\n\n/** @deprecated Prefer AlertAction. */\nexport type ToastAction = AlertAction\n\n/** @deprecated Prefer AlertOptions (styleVariant soft). */\nexport type ToastOptions = {\n id?: string\n /** Auto-dismiss ms. `null` keeps until closed. Default 4000. */\n duration?: number | null\n action?: ToastAction\n onClose?: () => void\n}\n\nexport type ToastShowOptions = ToastOptions & {\n variant?: ToastVariant\n}\n\nconst TOAST_TO_ALERT: Record<ToastVariant, AlertVariant> = {\n success: ALERT_VARIANTs.success,\n error: ALERT_VARIANTs.error,\n info: ALERT_VARIANTs.info,\n warning: ALERT_VARIANTs.warning,\n}\n\nconst DEFAULT_DURATION = 4000\n\nfunction toAlertOptions(message: ReactNode, options: ToastShowOptions = {}) {\n const variant: ToastVariant = options.variant ?? 'info'\n const duration =\n options.duration === undefined ? DEFAULT_DURATION : options.duration\n\n return {\n message,\n variant: TOAST_TO_ALERT[variant],\n id: options.id,\n autoHideDuration: duration,\n styleVariant: 'soft' as const,\n action: options.action,\n // Historical toast.* corner was bottom-right.\n anchorOrigin: { horizontal: 'right' as const, vertical: 'bottom' as const },\n }\n}\n\nfunction show(message: ReactNode, options?: ToastShowOptions) {\n const result = enqueueAlert(toAlertOptions(message, options))\n return result.success ? result.data : (options?.id ?? '')\n}\n\nfunction success(message: ReactNode, options?: ToastOptions) {\n return show(message, { ...options, variant: 'success' })\n}\n\nfunction error(message: ReactNode, options?: ToastOptions) {\n return show(message, { ...options, variant: 'error' })\n}\n\nfunction info(message: ReactNode, options?: ToastOptions) {\n return show(message, { ...options, variant: 'info' })\n}\n\nfunction warning(message: ReactNode, options?: ToastOptions) {\n return show(message, { ...options, variant: 'warning' })\n}\n\nfunction dismiss(id?: string) {\n closeSnackbar(id)\n}\n\nfunction dismissAll() {\n closeSnackbar()\n}\n\n/**\n * Convenience alias that enqueues soft Alert (`styleVariant: 'soft'`).\n * Requires AlertProvider (ThemeProvider mounts it). Prefer `useAlert` /\n * `enqueueSuccess` for new code — there is no separate Toast compound.\n *\n * @example\n * toast.success('Saved')\n * toast.error('Failed', { action: { label: 'Undo', onClick: restore } })\n */\nexport const toast = Object.assign(show, {\n success,\n error,\n info,\n warning,\n dismiss,\n dismissAll,\n show,\n})\n","'use client'\nimport { useCallback } from 'react'\nimport { useSnackbar } from 'notistack'\nimport { toast } from './toast'\nimport type { ToastOptions, ToastShowOptions } from './toast'\nimport type { ReactNode } from 'react'\n\n/**\n * Hook mirror of the imperative `toast` soft-Alert alias.\n * @deprecated Prefer `useAlert` with default soft styleVariant.\n */\nexport function useToast() {\n const { closeSnackbar } = useSnackbar()\n\n const show = useCallback(\n (message: ReactNode, options?: ToastShowOptions) => toast.show(message, options),\n [],\n )\n const success = useCallback(\n (message: ReactNode, options?: ToastOptions) => toast.success(message, options),\n [],\n )\n const error = useCallback(\n (message: ReactNode, options?: ToastOptions) => toast.error(message, options),\n [],\n )\n const info = useCallback(\n (message: ReactNode, options?: ToastOptions) => toast.info(message, options),\n [],\n )\n const warning = useCallback(\n (message: ReactNode, options?: ToastOptions) => toast.warning(message, options),\n [],\n )\n const dismiss = useCallback((id?: string) => closeSnackbar(id), [closeSnackbar])\n const dismissAll = useCallback(() => closeSnackbar(), [closeSnackbar])\n\n return {\n show,\n success,\n error,\n info,\n warning,\n dismiss,\n dismissAll,\n }\n}\n"],"mappings":"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","names":["import_react","import_notistack","import_react","import_notistack","MuiButton","import_jsx_runtime","MuiIconButton","error","closeSnackbar","enqueueAlert","enqueueCollapsable","enqueueError","enqueueSuccess","enqueueWarning","enqueueInfo","enqueueSystem","enqueueInsight","import_react","React","import_react","import_notistack","import_PhotoSizeSelectLarge","import_Close","import_Person","import_DeleteForever","import_AccountTreeOutlined","import_jsx_runtime","SoftAlertContent","closeSnackbar","import_jsx_runtime","closeSnackbar","Alert","import_react","import_notistack","import_jsx_runtime","CollapsableAlert","closeSnackbar","import_jsx_runtime","React","AlertProvider","import_notistack","import_react","import_notistack","closeSnackbar","show","success","error","info","warning","dismiss","dismissAll"]}
|
package/dist/alert.mjs
CHANGED
|
@@ -1,11 +1,30 @@
|
|
|
1
1
|
import {
|
|
2
|
-
ALERT_VARIANTs,
|
|
3
2
|
AlertProvider,
|
|
3
|
+
AlertStyleVariantContext,
|
|
4
4
|
CollapsableAlert,
|
|
5
|
-
|
|
6
|
-
ERRORs,
|
|
5
|
+
SoftAlertContent,
|
|
7
6
|
alertTheme,
|
|
7
|
+
collapsableAlertClassicRootSx,
|
|
8
8
|
collapsableAlertRootSx,
|
|
9
|
+
collapsableAlertSoftRootSx,
|
|
10
|
+
collapsableClassicHeaderSx,
|
|
11
|
+
collapsableClassicIconButtonSx,
|
|
12
|
+
collapsableClassicPanelSx,
|
|
13
|
+
collapsableSoftHeaderSx,
|
|
14
|
+
collapsableSoftIconButtonSx,
|
|
15
|
+
collapsableSoftPanelSx,
|
|
16
|
+
softAlertAccentBarSx,
|
|
17
|
+
softAlertIconSx,
|
|
18
|
+
softAlertItemRootSx,
|
|
19
|
+
useAlertStyleVariantDefault,
|
|
20
|
+
useToast
|
|
21
|
+
} from "./chunk-QFS5CENY.mjs";
|
|
22
|
+
import "./chunk-B7DAB22K.mjs";
|
|
23
|
+
import {
|
|
24
|
+
ALERT_STYLE_VARIANTs,
|
|
25
|
+
ALERT_VARIANTs,
|
|
26
|
+
DEFAULTs,
|
|
27
|
+
ERRORs,
|
|
9
28
|
enqueueAlert,
|
|
10
29
|
enqueueCollapsable,
|
|
11
30
|
enqueueError,
|
|
@@ -14,26 +33,37 @@ import {
|
|
|
14
33
|
enqueueSuccess,
|
|
15
34
|
enqueueSystem,
|
|
16
35
|
enqueueWarning,
|
|
36
|
+
toast,
|
|
17
37
|
useAlert
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import "./chunk-B7DAB22K.mjs";
|
|
20
|
-
import "./chunk-I5JWS4Z7.mjs";
|
|
38
|
+
} from "./chunk-YIJ5QVJ6.mjs";
|
|
21
39
|
import "./chunk-QFF3HTHL.mjs";
|
|
22
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-ZVFYOXDE.mjs";
|
|
41
|
+
import "./chunk-D4XPNSSI.mjs";
|
|
23
42
|
import "./chunk-4Q54P737.mjs";
|
|
24
43
|
import "./chunk-OP6LKXPA.mjs";
|
|
25
|
-
import "./chunk-ZVFYOXDE.mjs";
|
|
26
44
|
import "./chunk-4RPFRNXG.mjs";
|
|
27
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-PNSJC6PC.mjs";
|
|
46
|
+
import "./chunk-AFLEG5ZC.mjs";
|
|
28
47
|
import "./chunk-FJ6ZGZIA.mjs";
|
|
29
48
|
export {
|
|
49
|
+
ALERT_STYLE_VARIANTs,
|
|
30
50
|
ALERT_VARIANTs,
|
|
31
51
|
AlertProvider,
|
|
52
|
+
AlertStyleVariantContext,
|
|
32
53
|
CollapsableAlert,
|
|
33
54
|
DEFAULTs,
|
|
34
55
|
ERRORs,
|
|
56
|
+
SoftAlertContent,
|
|
35
57
|
alertTheme,
|
|
58
|
+
collapsableAlertClassicRootSx,
|
|
36
59
|
collapsableAlertRootSx,
|
|
60
|
+
collapsableAlertSoftRootSx,
|
|
61
|
+
collapsableClassicHeaderSx,
|
|
62
|
+
collapsableClassicIconButtonSx,
|
|
63
|
+
collapsableClassicPanelSx,
|
|
64
|
+
collapsableSoftHeaderSx,
|
|
65
|
+
collapsableSoftIconButtonSx,
|
|
66
|
+
collapsableSoftPanelSx,
|
|
37
67
|
enqueueAlert,
|
|
38
68
|
enqueueCollapsable,
|
|
39
69
|
enqueueError,
|
|
@@ -42,6 +72,12 @@ export {
|
|
|
42
72
|
enqueueSuccess,
|
|
43
73
|
enqueueSystem,
|
|
44
74
|
enqueueWarning,
|
|
45
|
-
|
|
75
|
+
softAlertAccentBarSx,
|
|
76
|
+
softAlertIconSx,
|
|
77
|
+
softAlertItemRootSx,
|
|
78
|
+
toast,
|
|
79
|
+
useAlert,
|
|
80
|
+
useAlertStyleVariantDefault,
|
|
81
|
+
useToast
|
|
46
82
|
};
|
|
47
83
|
//# sourceMappingURL=alert.mjs.map
|