@cwncollab-org/mui-component-kit 0.9.1 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common-dialogs/ConfirmDeleteDialog.d.ts +21 -0
- package/dist/common-dialogs/ConfirmDeleteDialog.d.ts.map +1 -0
- package/dist/common-dialogs/ConfirmDeleteDialog.js +46 -0
- package/dist/common-dialogs/ConfirmDeleteDialog.js.map +1 -0
- package/dist/common-dialogs/index.d.ts +1 -0
- package/dist/common-dialogs/index.d.ts.map +1 -1
- package/dist/common-dialogs/index.js.map +1 -1
- package/dist/common-dialogs/useConfirmDeleteDialog.d.ts +2 -2
- package/dist/common-dialogs/useConfirmDeleteDialog.d.ts.map +1 -1
- package/dist/common-dialogs/useConfirmDeleteDialog.js +11 -7
- package/dist/common-dialogs/useConfirmDeleteDialog.js.map +1 -1
- package/dist/common-dialogs/useConfirmDialog.d.ts.map +1 -1
- package/dist/common-dialogs/useConfirmDialog.js +3 -2
- package/dist/common-dialogs/useConfirmDialog.js.map +1 -1
- package/dist/dialogs/DialogsProvider.d.ts.map +1 -1
- package/dist/dialogs/DialogsProvider.js +5 -5
- package/dist/dialogs/DialogsProvider.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ButtonProps, TextFieldProps } from '@mui/material';
|
|
2
|
+
import { DialogProps } from '../dialogs/types';
|
|
3
|
+
export type ConfirmDeleteDialogOptions = {
|
|
4
|
+
title?: string;
|
|
5
|
+
message?: string | React.ReactNode;
|
|
6
|
+
confirmText?: string;
|
|
7
|
+
cancelText?: string;
|
|
8
|
+
confirmInputText?: string;
|
|
9
|
+
inputLabel?: string;
|
|
10
|
+
inputPlaceholder?: string;
|
|
11
|
+
slotProps?: {
|
|
12
|
+
confirm?: ButtonProps;
|
|
13
|
+
cancel?: ButtonProps;
|
|
14
|
+
input?: Omit<TextFieldProps, 'value' | 'onChange'>;
|
|
15
|
+
};
|
|
16
|
+
dialogKey?: string;
|
|
17
|
+
};
|
|
18
|
+
type ConfirmDeleteDialogProps = DialogProps<ConfirmDeleteDialogOptions>;
|
|
19
|
+
export declare function ConfirmDeleteDialog(props: ConfirmDeleteDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=ConfirmDeleteDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfirmDeleteDialog.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/ConfirmDeleteDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAOX,cAAc,EACf,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,WAAW,EAAgB,MAAM,kBAAkB,CAAA;AAE5D,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,WAAW,CAAA;QACrB,MAAM,CAAC,EAAE,WAAW,CAAA;QACpB,KAAK,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,UAAU,CAAC,CAAA;KACnD,CAAA;IACD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,KAAK,wBAAwB,GAAG,WAAW,CAAC,0BAA0B,CAAC,CAAA;AAEvE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,2CA8ElE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, TextField, } from '@mui/material';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
export function ConfirmDeleteDialog(props) {
|
|
5
|
+
const { open, onClose, payload, ...rest } = props;
|
|
6
|
+
const [inputValue, setInputValue] = useState('');
|
|
7
|
+
const title = payload?.title ?? 'Confirm Delete';
|
|
8
|
+
const message = payload?.message ?? 'Are you sure you want to delete this item?';
|
|
9
|
+
const confirmText = payload?.confirmText ?? 'Delete';
|
|
10
|
+
const cancelText = payload?.cancelText ?? 'Cancel';
|
|
11
|
+
const confirmInputText = payload?.confirmInputText;
|
|
12
|
+
const inputLabel = payload?.inputLabel ?? 'Type to confirm';
|
|
13
|
+
const inputPlaceholder = payload?.inputPlaceholder ?? confirmInputText;
|
|
14
|
+
const requiresInput = !!confirmInputText;
|
|
15
|
+
const isConfirmEnabled = !requiresInput || inputValue === confirmInputText;
|
|
16
|
+
const confirmProps = {
|
|
17
|
+
color: 'error',
|
|
18
|
+
variant: 'contained',
|
|
19
|
+
...payload?.slotProps?.confirm,
|
|
20
|
+
onClick: () => onClose({}, { success: true }),
|
|
21
|
+
disabled: !isConfirmEnabled,
|
|
22
|
+
};
|
|
23
|
+
const cancelProps = {
|
|
24
|
+
color: 'primary',
|
|
25
|
+
variant: 'outlined',
|
|
26
|
+
...payload?.slotProps?.cancel,
|
|
27
|
+
onClick: () => onClose({}, { success: false }),
|
|
28
|
+
};
|
|
29
|
+
const inputProps = {
|
|
30
|
+
autoFocus: true,
|
|
31
|
+
margin: 'dense',
|
|
32
|
+
label: inputLabel,
|
|
33
|
+
placeholder: inputPlaceholder,
|
|
34
|
+
fullWidth: true,
|
|
35
|
+
sx: { mt: 2 },
|
|
36
|
+
...payload?.slotProps?.input,
|
|
37
|
+
};
|
|
38
|
+
const handleDialogClose = (ev, reason) => {
|
|
39
|
+
onClose(ev, reason);
|
|
40
|
+
};
|
|
41
|
+
const handleTransitionExited = () => {
|
|
42
|
+
setInputValue('');
|
|
43
|
+
};
|
|
44
|
+
return (_jsxs(Dialog, { open: open, onClose: handleDialogClose, onTransitionExited: handleTransitionExited, maxWidth: 'sm', fullWidth: true, ...rest, children: [_jsx(DialogTitle, { children: title }), _jsxs(DialogContent, { children: [_jsx(DialogContentText, { children: message }), requiresInput && (_jsx(TextField, { ...inputProps, value: inputValue, onChange: e => setInputValue(e.target.value) }))] }), _jsxs(DialogActions, { sx: { px: 3, pb: 2 }, children: [_jsx(Button, { ...cancelProps, children: cancelText }), _jsx(Button, { ...confirmProps, children: confirmText })] })] }));
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ConfirmDeleteDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfirmDeleteDialog.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/ConfirmDeleteDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { type ConfirmDialogOptions } from './ConfirmDialog';
|
|
2
|
+
export { type ConfirmDeleteDialogOptions } from './ConfirmDeleteDialog';
|
|
2
3
|
export { useConfirmDialog } from './useConfirmDialog';
|
|
3
4
|
export { useConfirmDeleteDialog } from './useConfirmDeleteDialog';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function useConfirmDeleteDialog(): (options?:
|
|
1
|
+
import { ConfirmDeleteDialogOptions } from './ConfirmDeleteDialog';
|
|
2
|
+
export declare function useConfirmDeleteDialog(): (options?: ConfirmDeleteDialogOptions) => Promise<import("..").DialogResult<undefined>>;
|
|
3
3
|
//# sourceMappingURL=useConfirmDeleteDialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfirmDeleteDialog.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDeleteDialog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useConfirmDeleteDialog.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDeleteDialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,0BAA0B,EAC3B,MAAM,uBAAuB,CAAA;AAE9B,wBAAgB,sBAAsB,eAGvB,0BAA0B,mDAoBxC"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useCallback } from 'react';
|
|
2
|
+
import { useDialogs } from '../dialogs/dialogsHooks';
|
|
3
|
+
import { ConfirmDeleteDialog, } from './ConfirmDeleteDialog';
|
|
2
4
|
export function useConfirmDeleteDialog() {
|
|
3
|
-
const
|
|
4
|
-
const confirmDelete =
|
|
5
|
-
|
|
5
|
+
const { openDialog } = useDialogs();
|
|
6
|
+
const confirmDelete = useCallback((options) => openDialog(ConfirmDeleteDialog, {
|
|
7
|
+
dialogKey: 'confirm-delete-dialog',
|
|
8
|
+
payload: {
|
|
9
|
+
title: 'Confirm Delete',
|
|
10
|
+
confirmText: 'Delete',
|
|
6
11
|
...options,
|
|
7
12
|
slotProps: {
|
|
8
13
|
...options?.slotProps,
|
|
@@ -12,9 +17,8 @@ export function useConfirmDeleteDialog() {
|
|
|
12
17
|
...options?.slotProps?.confirm,
|
|
13
18
|
},
|
|
14
19
|
},
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
20
|
+
},
|
|
21
|
+
}), [openDialog]);
|
|
18
22
|
return confirmDelete;
|
|
19
23
|
}
|
|
20
24
|
//# sourceMappingURL=useConfirmDeleteDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfirmDeleteDialog.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDeleteDialog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useConfirmDeleteDialog.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDeleteDialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EACL,mBAAmB,GAEpB,MAAM,uBAAuB,CAAA;AAE9B,MAAM,UAAU,sBAAsB;IACpC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,CAAA;IACnC,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,OAAoC,EAAE,EAAE,CACvC,UAAU,CAAC,mBAAmB,EAAE;QAC9B,SAAS,EAAE,uBAAuB;QAClC,OAAO,EAAE;YACP,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,QAAQ;YACrB,GAAG,OAAO;YACV,SAAS,EAAE;gBACT,GAAG,OAAO,EAAE,SAAS;gBACrB,OAAO,EAAE;oBACP,KAAK,EAAE,OAAO;oBACd,OAAO,EAAE,WAAW;oBACpB,GAAG,OAAO,EAAE,SAAS,EAAE,OAAO;iBAC/B;aACF;SACF;KACF,CAAC,EACJ,CAAC,UAAU,CAAC,CACb,CAAA;IACD,OAAO,aAAa,CAAA;AACtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfirmDialog.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDialog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useConfirmDialog.d.ts","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDialog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAErE,wBAAgB,gBAAgB,eAGjB,oBAAoB,mDAQlC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { useCallback } from 'react';
|
|
1
2
|
import { useDialogs } from '../dialogs/dialogsHooks';
|
|
2
3
|
import { ConfirmDialog } from './ConfirmDialog';
|
|
3
4
|
export function useConfirmDialog() {
|
|
4
5
|
const { openDialog } = useDialogs();
|
|
5
|
-
const confirm = (options) => openDialog(ConfirmDialog, {
|
|
6
|
+
const confirm = useCallback((options) => openDialog(ConfirmDialog, {
|
|
6
7
|
dialogKey: options?.dialogKey,
|
|
7
8
|
payload: options,
|
|
8
|
-
});
|
|
9
|
+
}), [openDialog]);
|
|
9
10
|
return confirm;
|
|
10
11
|
}
|
|
11
12
|
//# sourceMappingURL=useConfirmDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfirmDialog.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAwB,MAAM,iBAAiB,CAAA;AAErE,MAAM,UAAU,gBAAgB;IAC9B,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,CAAA;IACnC,MAAM,OAAO,GAAG,CAAC,OAA8B,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"useConfirmDialog.js","sourceRoot":"","sources":["../../src/lib/common-dialogs/useConfirmDialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAwB,MAAM,iBAAiB,CAAA;AAErE,MAAM,UAAU,gBAAgB;IAC9B,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,CAAA;IACnC,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,OAA8B,EAAE,EAAE,CACjC,UAAU,CAAC,aAAa,EAAE;QACxB,SAAS,EAAE,OAAO,EAAE,SAAS;QAC7B,OAAO,EAAE,OAAO;KACjB,CAAC,EACJ,CAAC,UAAU,CAAC,CACb,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogsProvider.d.ts","sourceRoot":"","sources":["../../src/lib/dialogs/DialogsProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"DialogsProvider.d.ts","sourceRoot":"","sources":["../../src/lib/dialogs/DialogsProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAKlB,MAAM,OAAO,CAAA;AAUd,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CA8G9D"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Suspense, useId, useState } from 'react';
|
|
2
|
+
import { Suspense, useCallback, useId, useState, } from 'react';
|
|
3
3
|
import { dialogsContext, } from './dialogsContext';
|
|
4
4
|
import { Backdrop, CircularProgress } from '@mui/material';
|
|
5
5
|
export function DialogsProvider({ children }) {
|
|
6
6
|
const [dialogs, setDialogs] = useState([]);
|
|
7
7
|
const providerId = useId();
|
|
8
|
-
const openDialog = async (Dialog, opts) => {
|
|
8
|
+
const openDialog = useCallback(async (Dialog, opts) => {
|
|
9
9
|
const { dialogKey = Dialog.name, ...props } = opts || {};
|
|
10
10
|
return new Promise(resolve => {
|
|
11
11
|
const existingDialog = dialogs.find(dialog => dialog.dialogKey === dialogKey);
|
|
@@ -27,8 +27,8 @@ export function DialogsProvider({ children }) {
|
|
|
27
27
|
};
|
|
28
28
|
setDialogs(prev => [...prev, dialog]);
|
|
29
29
|
});
|
|
30
|
-
};
|
|
31
|
-
const closeDialog = (key, result) => {
|
|
30
|
+
}, [dialogs, providerId]);
|
|
31
|
+
const closeDialog = useCallback((key, result) => {
|
|
32
32
|
const dialog = dialogs.find(dialog => dialog.dialogKey === key);
|
|
33
33
|
if (!dialog) {
|
|
34
34
|
return;
|
|
@@ -40,7 +40,7 @@ export function DialogsProvider({ children }) {
|
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
42
|
dialog.resolve(result);
|
|
43
|
-
};
|
|
43
|
+
}, [dialogs]);
|
|
44
44
|
const removeDialog = (key) => {
|
|
45
45
|
setDialogs(prev => prev.filter(d => d.dialogKey !== key));
|
|
46
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogsProvider.js","sourceRoot":"","sources":["../../src/lib/dialogs/DialogsProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"DialogsProvider.js","sourceRoot":"","sources":["../../src/lib/dialogs/DialogsProvider.tsx"],"names":[],"mappings":"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"}
|