@cwncollab-org/mui-component-kit 0.9.2 → 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.
@@ -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":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA"}
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 { ConfirmDialogOptions } from './ConfirmDialog';
2
- export declare function useConfirmDeleteDialog(): (options?: ConfirmDialogOptions) => Promise<import("..").DialogResult<undefined>>;
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":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAGtD,wBAAgB,sBAAsB,eAEG,oBAAoB,mDAe5D"}
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 { useConfirmDialog } from './useConfirmDialog';
1
+ import { useCallback } from 'react';
2
+ import { useDialogs } from '../dialogs/dialogsHooks';
3
+ import { ConfirmDeleteDialog, } from './ConfirmDeleteDialog';
2
4
  export function useConfirmDeleteDialog() {
3
- const confirm = useConfirmDialog();
4
- const confirmDelete = async (options) => {
5
- return await confirm({
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
- dialogKey: 'confirm-delete-dialog',
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":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,MAAM,UAAU,sBAAsB;IACpC,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,aAAa,GAAG,KAAK,EAAE,OAA8B,EAAE,EAAE;QAC7D,OAAO,MAAM,OAAO,CAAC;YACnB,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;YACD,SAAS,EAAE,uBAAuB;SACnC,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,OAAO,aAAa,CAAA;AACtB,CAAC"}
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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cwncollab-org/mui-component-kit",
3
3
  "private": false,
4
- "version": "0.9.2",
4
+ "version": "0.10.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",