@apple-pie/slice 0.1.29 → 0.1.30
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/README.md +164 -3
- package/dist/cjs/chunks/{Avatar-vIquH-Uk.js → Avatar-CqUSRzVd.js} +1 -1
- package/dist/cjs/chunks/{AvatarGroup-DYN73N5x.js → AvatarGroup-DhGp_qLw.js} +1 -1
- package/dist/cjs/chunks/{Button-B1qbfQgN.js → Button-PsJx1WmV.js} +1 -1
- package/dist/cjs/chunks/{ButtonBar-zpC3sClM.js → ButtonBar-8zm6a_h7.js} +1 -1
- package/dist/cjs/chunks/{Camera-CCzynmXT.js → Camera-zFyIXcge.js} +2 -2
- package/dist/cjs/chunks/{CheckBox-DNctUlTA.js → CheckBox-Cbh6UK-7.js} +1 -1
- package/dist/cjs/chunks/{Chip-BN4qBz6w.js → Chip-DcS8dtW2.js} +1 -1
- package/dist/cjs/chunks/{DivInput-932r3bvF.js → DivInput-2cMdJQ9U.js} +1 -1
- package/dist/cjs/chunks/{DrggablePanel-u8C-Y4dA.js → DrggablePanel-P7TgBI3j.js} +1 -1
- package/dist/cjs/chunks/{DropDown-BZbrZOkx.js → DropDown-B0970yVe.js} +1 -1
- package/dist/cjs/chunks/{FileIcon-Dxn9OL10.js → FileIcon-PuDoz0mF.js} +1 -1
- package/dist/cjs/chunks/{FileList-D5_igVaC.js → FileList-sDq1jK0b.js} +1 -1
- package/dist/cjs/chunks/{Grouper-D6rSl9nK.js → Grouper-Ccd-x_Nb.js} +1 -1
- package/dist/cjs/chunks/{Icon-BFiN8Wzm.js → Icon-BtcHXeqE.js} +1 -1
- package/dist/cjs/chunks/{IconButton-Cv-po19M.js → IconButton-CF4cR7Tr.js} +1 -1
- package/dist/cjs/chunks/{Label-BQ6flU4-.js → Label-htjXHiQ4.js} +1 -1
- package/dist/cjs/chunks/Modal-C0Z59meI.js +101 -0
- package/dist/cjs/chunks/ModalController-13xmvKnm.js +70 -0
- package/dist/cjs/chunks/{Overlay-DDOvMM6L.js → Overlay-GXu6nMnw.js} +9 -3
- package/dist/cjs/chunks/{Pager-GH2y7l5h.js → Pager-D2_fshTy.js} +1 -1
- package/dist/cjs/chunks/{ProgressIndicator-7pLk4Dvn.js → ProgressIndicator-D06PqCQk.js} +55 -51
- package/dist/cjs/chunks/{PromptInput-C8-V67sS.js → PromptInput-DuE4vGxR.js} +1 -1
- package/dist/cjs/chunks/{RadioButton-3CzhKBn6.js → RadioButton-DPB2ZGVf.js} +1 -1
- package/dist/cjs/chunks/{RadioButtonList-DvJV6Qdg.js → RadioButtonList-N7Fmvr5W.js} +1 -1
- package/dist/cjs/chunks/{Slider-D8OYGFsN.js → Slider-BSy8xciG.js} +2 -4
- package/dist/cjs/chunks/{TabBar-VzxuAesC.js → TabBar-BtFfMwiB.js} +1 -1
- package/dist/cjs/chunks/{TextArea-CBNHvcK3.js → TextArea-CRiPRF8v.js} +1 -1
- package/dist/cjs/chunks/{TextField-BpoLF6pZ.js → TextField-Bh2EA082.js} +2 -2
- package/dist/cjs/chunks/{Tip-CUKFhP9K.js → Tip-C5keUoHx.js} +1 -1
- package/dist/cjs/chunks/{Toast-CKqGjsEk.js → Toast-CyiFOsI3.js} +16 -7
- package/dist/cjs/chunks/{ToggleButton-BdCsChJM.js → ToggleButton-D5_WnW0o.js} +2 -2
- package/dist/cjs/chunks/{UploadArea-M9oc-No2.js → UploadArea-KqES_OLl.js} +1 -1
- package/dist/cjs/chunks/{misc-CTl4GDxI.js → misc-QpU0XEOW.js} +15 -18
- package/dist/cjs/chunks/modalStore-7VjHHM8X.js +70 -0
- package/dist/cjs/chunks/{uploads-worker-mD8pcsGP.js → uploads-worker-Az040BSN.js} +1 -1
- package/dist/cjs/chunks/{uploadsStore-CxWIctvI.js → uploadsStore-8mOTz0Qe.js} +2 -2
- package/dist/cjs/chunks/{volumeStore-oYwlRVN0.js → volumeStore-Pv23v12t.js} +2 -2
- package/dist/cjs/components/Avatar/index.js +2 -2
- package/dist/cjs/components/AvatarGroup/index.js +2 -2
- package/dist/cjs/components/Button/index.js +4 -4
- package/dist/cjs/components/ButtonBar/index.js +2 -2
- package/dist/cjs/components/Camera/index.js +4 -4
- package/dist/cjs/components/CheckBox/index.js +2 -2
- package/dist/cjs/components/Chip/index.js +2 -2
- package/dist/cjs/components/DivInput/index.js +2 -2
- package/dist/cjs/components/DraggablePanel/index.js +2 -2
- package/dist/cjs/components/DropDown/index.js +2 -2
- package/dist/cjs/components/FileIcon/index.js +2 -2
- package/dist/cjs/components/FileList/index.js +3 -3
- package/dist/cjs/components/Grouper/index.js +2 -2
- package/dist/cjs/components/Icon/index.js +2 -2
- package/dist/cjs/components/IconButton/index.js +3 -3
- package/dist/cjs/components/Label/index.js +2 -2
- package/dist/cjs/components/Modal/index.js +14 -0
- package/dist/cjs/components/ModalController/index.js +7 -0
- package/dist/cjs/components/Overlay/index.js +1 -1
- package/dist/cjs/components/Pager/index.js +2 -2
- package/dist/cjs/components/Progress/index.js +2 -2
- package/dist/cjs/components/PromptInput/index.js +5 -5
- package/dist/cjs/components/RadioButton/index.js +2 -2
- package/dist/cjs/components/RadioButtonList/index.js +3 -3
- package/dist/cjs/components/Slider/index.js +2 -2
- package/dist/cjs/components/TabBar/index.js +3 -3
- package/dist/cjs/components/TextArea/index.js +5 -5
- package/dist/cjs/components/Textfield/index.js +4 -4
- package/dist/cjs/components/Tip/index.js +2 -2
- package/dist/cjs/components/Toast/index.js +4 -3
- package/dist/cjs/components/ToggleButton/index.js +5 -5
- package/dist/cjs/components/UploadArea/index.js +5 -5
- package/dist/cjs/hooks/useAudioRecorder.js +3 -4
- package/dist/cjs/hooks/useLocalStore.js +3 -9
- package/dist/cjs/hooks/useMicrophone.js +6 -10
- package/dist/cjs/hooks/useTrackRenders.js +1 -1
- package/dist/cjs/index.js +6 -4
- package/dist/cjs/providers/ThemeProvider.js +1 -1
- package/dist/cjs/stores/modal.js +7 -0
- package/dist/cjs/stores/uploads.js +2 -2
- package/dist/cjs/stores/volume.js +1 -1
- package/dist/cjs/stores.js +16 -13
- package/dist/cjs/theme/colors.js +1 -1
- package/dist/cjs/utils/index.js +1 -1
- package/dist/cjs/workers/uploads/uploads.js +1 -1
- package/dist/esm/chunks/{Avatar-Ds6MWC2c.mjs → Avatar-29zhNfxX.mjs} +1 -1
- package/dist/esm/chunks/{AvatarGroup-CBGi99eo.mjs → AvatarGroup-C7YRtPmJ.mjs} +1 -1
- package/dist/esm/chunks/{Button-CYFpitCp.mjs → Button-BQS3rwrS.mjs} +2 -2
- package/dist/esm/chunks/{ButtonBar-ieMA0SHi.mjs → ButtonBar-GLNRjmjv.mjs} +2 -2
- package/dist/esm/chunks/{Camera-jn9CcaD0.mjs → Camera-CAp0Y2gN.mjs} +3 -3
- package/dist/esm/chunks/{CheckBox-CoOmnGWD.mjs → CheckBox-7TiT2U47.mjs} +2 -2
- package/dist/esm/chunks/{Chip-ClG6cUX0.mjs → Chip-CKsojimU.mjs} +2 -2
- package/dist/esm/chunks/{DivInput-BVhcU0y0.mjs → DivInput-g6F1YWTo.mjs} +1 -1
- package/dist/esm/chunks/{DrggablePanel-G5HHlntD.mjs → DrggablePanel-C0AmJy8g.mjs} +1 -1
- package/dist/esm/chunks/{DropDown-AuQW_DWv.mjs → DropDown-mwo8fY7p.mjs} +2 -2
- package/dist/esm/chunks/{FileIcon-fJV_Cl6v.mjs → FileIcon-BQ2zZIW5.mjs} +1 -1
- package/dist/esm/chunks/{FileList-CxHaEEUi.mjs → FileList-fh-x9Dzm.mjs} +4 -4
- package/dist/esm/chunks/{Grouper-CyWZ8tfm.mjs → Grouper-naJMvpB9.mjs} +1 -1
- package/dist/esm/chunks/{Icon-BOJAk-hM.mjs → Icon--RjjODc9.mjs} +1 -1
- package/dist/esm/chunks/{IconButton-Ck0IMn4i.mjs → IconButton-ByBYppAj.mjs} +1 -1
- package/dist/esm/chunks/{Label-DSfCcKtQ.mjs → Label-C04tD7UZ.mjs} +1 -1
- package/dist/esm/chunks/Modal-B9ad9OfJ.mjs +115 -0
- package/dist/esm/chunks/ModalController-BO5FkAqu.mjs +80 -0
- package/dist/esm/chunks/{Overlay-DiSvgIQP.mjs → Overlay-sXM7cEYc.mjs} +9 -3
- package/dist/esm/chunks/{Pager-ByJ2Cr0n.mjs → Pager-Bz0FpgO5.mjs} +1 -1
- package/dist/esm/chunks/{ProgressIndicator-d2JGUDW_.mjs → ProgressIndicator-B5oByN3i.mjs} +56 -52
- package/dist/esm/chunks/{PromptInput-COJnOFZf.mjs → PromptInput-Cwd53ux7.mjs} +2 -2
- package/dist/esm/chunks/{RadioButton-BB73OY2a.mjs → RadioButton-CLeRiZ8x.mjs} +2 -2
- package/dist/esm/chunks/{RadioButtonList-XqlqadYn.mjs → RadioButtonList-C_heuiis.mjs} +2 -2
- package/dist/esm/chunks/{Slider-CU0Zdlpu.mjs → Slider-XEV0D2Rd.mjs} +2 -4
- package/dist/esm/chunks/{TabBar-v8Dp4dr-.mjs → TabBar-kPZ6ZJxr.mjs} +2 -2
- package/dist/esm/chunks/{TextArea-DGF43RON.mjs → TextArea-CxscPLwN.mjs} +1 -1
- package/dist/esm/chunks/{TextField-j4q0RUzH.mjs → TextField-DwVKlLI_.mjs} +4 -4
- package/dist/esm/chunks/{Tip-Bj9d-230.mjs → Tip-C6EcX7_M.mjs} +1 -1
- package/dist/esm/chunks/{Toast-CoioLlEG.mjs → Toast-D4uMNvaa.mjs} +18 -7
- package/dist/esm/chunks/{ToggleButton-CwTm8Yx0.mjs → ToggleButton-C0QIflzX.mjs} +3 -3
- package/dist/esm/chunks/{UploadArea-DAwoJxtr.mjs → UploadArea-je-1NhGb.mjs} +4 -4
- package/dist/esm/chunks/{misc-Bjbro8Xe.mjs → misc-wS74txaa.mjs} +15 -18
- package/dist/esm/chunks/modalStore-BpWnLtOF.mjs +68 -0
- package/dist/esm/chunks/{uploads-worker-7X9EwX9N.mjs → uploads-worker-CYp-F4dz.mjs} +1 -1
- package/dist/esm/chunks/{uploadsStore-B7VECR5Q.mjs → uploadsStore-DeRMJ5c9.mjs} +1 -1
- package/dist/esm/chunks/{volumeStore-GZnCDBMU.mjs → volumeStore-BX7QcrL-.mjs} +2 -2
- package/dist/esm/components/Avatar/index.mjs +2 -2
- package/dist/esm/components/AvatarGroup/index.mjs +3 -3
- package/dist/esm/components/Button/index.mjs +4 -4
- package/dist/esm/components/ButtonBar/index.mjs +3 -3
- package/dist/esm/components/Camera/index.mjs +4 -4
- package/dist/esm/components/CheckBox/index.mjs +3 -3
- package/dist/esm/components/Chip/index.mjs +3 -3
- package/dist/esm/components/DivInput/index.mjs +2 -2
- package/dist/esm/components/DraggablePanel/index.mjs +2 -2
- package/dist/esm/components/DropDown/index.mjs +3 -3
- package/dist/esm/components/FileIcon/index.mjs +2 -2
- package/dist/esm/components/FileList/index.mjs +5 -5
- package/dist/esm/components/Grouper/index.mjs +3 -3
- package/dist/esm/components/Icon/index.mjs +2 -2
- package/dist/esm/components/IconButton/index.mjs +3 -3
- package/dist/esm/components/Label/index.mjs +2 -2
- package/dist/esm/components/Modal/index.mjs +47 -0
- package/dist/esm/components/ModalController/index.mjs +17 -0
- package/dist/esm/components/Overlay/index.mjs +1 -1
- package/dist/esm/components/Pager/index.mjs +2 -2
- package/dist/esm/components/Progress/index.mjs +3 -3
- package/dist/esm/components/PromptInput/index.mjs +7 -7
- package/dist/esm/components/RadioButton/index.mjs +3 -3
- package/dist/esm/components/RadioButtonList/index.mjs +4 -4
- package/dist/esm/components/Slider/index.mjs +2 -2
- package/dist/esm/components/TabBar/index.mjs +4 -4
- package/dist/esm/components/TextArea/index.mjs +5 -5
- package/dist/esm/components/Textfield/index.mjs +6 -6
- package/dist/esm/components/Tip/index.mjs +2 -2
- package/dist/esm/components/Toast/index.mjs +5 -3
- package/dist/esm/components/ToggleButton/index.mjs +5 -5
- package/dist/esm/components/UploadArea/index.mjs +6 -6
- package/dist/esm/hooks/useAudioRecorder.mjs +3 -4
- package/dist/esm/hooks/useLocalStore.mjs +3 -9
- package/dist/esm/hooks/useMicrophone.mjs +6 -10
- package/dist/esm/hooks/useTrackRenders.mjs +1 -1
- package/dist/esm/index.mjs +39 -31
- package/dist/esm/providers/ThemeProvider.mjs +1 -1
- package/dist/esm/stores/modal.mjs +3 -0
- package/dist/esm/stores/uploads.mjs +2 -2
- package/dist/esm/stores/volume.mjs +1 -1
- package/dist/esm/stores.mjs +5 -3
- package/dist/esm/theme/colors.mjs +1 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/workers/uploads/uploads.mjs +1 -1
- package/dist/types/components/Modal/Modal.d.ts +3 -0
- package/dist/types/components/Modal/_types.d.ts +45 -0
- package/dist/types/components/Modal/index.d.ts +2 -0
- package/dist/types/components/ModalController/ModalController.d.ts +2 -0
- package/dist/types/components/ModalController/_types.d.ts +13 -0
- package/dist/types/components/ModalController/index.d.ts +2 -0
- package/dist/types/components/Overlay/_types.d.ts +4 -0
- package/dist/types/components/Progress/ProgressIndicator/ProgressIndicator.d.ts +1 -1
- package/dist/types/components/Progress/ProgressIndicator/_types.d.ts +2 -1
- package/dist/types/components/Toast/_types.d.ts +2 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/stores/index.d.ts +1 -0
- package/dist/types/stores/modal/_types.d.ts +27 -0
- package/dist/types/stores/modal/index.d.ts +2 -0
- package/dist/types/stores/modal/modalStore.d.ts +20 -0
- package/dist/types/stores/toast/_types.d.ts +3 -1
- package/package.json +1 -1
package/dist/esm/utils/index.mjs
CHANGED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { ToolTip } from '../sharedTypes';
|
|
3
|
+
export type ModalAction<T = string> = {
|
|
4
|
+
id: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
value?: T;
|
|
7
|
+
primary?: boolean;
|
|
8
|
+
iconLeft?: string;
|
|
9
|
+
tooltip?: string;
|
|
10
|
+
iconRight?: string;
|
|
11
|
+
round?: boolean;
|
|
12
|
+
position?: 'left' | 'right';
|
|
13
|
+
promise?: 'resolve' | 'reject';
|
|
14
|
+
};
|
|
15
|
+
type ModalBaseProps<T = string> = {
|
|
16
|
+
children?: React.ReactNode;
|
|
17
|
+
minHeight?: number | string;
|
|
18
|
+
minWidth?: number | string;
|
|
19
|
+
maxWidth?: number | string;
|
|
20
|
+
maxHeight?: number | string;
|
|
21
|
+
borderRadius?: number | string;
|
|
22
|
+
borderColor?: string;
|
|
23
|
+
borderWidth?: number | string;
|
|
24
|
+
backgroundColor?: string;
|
|
25
|
+
padding?: number | string;
|
|
26
|
+
title?: string;
|
|
27
|
+
titleColor?: string;
|
|
28
|
+
titleBorderColor?: string;
|
|
29
|
+
titleBorderWidth?: number;
|
|
30
|
+
titleIcon?: string;
|
|
31
|
+
titleSize?: 'xs' | 's' | 'm' | 'l' | 'xl';
|
|
32
|
+
contentSize?: 'xs' | 's' | 'm' | 'l' | 'xl';
|
|
33
|
+
close?: boolean;
|
|
34
|
+
actions?: ModalAction<T>[];
|
|
35
|
+
actionsBorderColor?: string;
|
|
36
|
+
actionsBorderWidth?: number;
|
|
37
|
+
onAction?: (value?: T) => void;
|
|
38
|
+
onResolve?: (value?: T) => void;
|
|
39
|
+
onReject?: (value?: Error) => void;
|
|
40
|
+
onClose?: () => void;
|
|
41
|
+
onDragPointerDown?: (e: React.PointerEvent<any>) => void;
|
|
42
|
+
onToolTip?: (tip: ToolTip | null) => void;
|
|
43
|
+
};
|
|
44
|
+
export type ModalProps<T = string> = Omit<React.HTMLAttributes<HTMLElement>, keyof ModalBaseProps<T>> & ModalBaseProps<T>;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Transition, Variants } from 'motion/react';
|
|
2
|
+
import type React from 'react';
|
|
3
|
+
export type ModalControllerProps = {
|
|
4
|
+
dragConstraintsRef?: React.RefObject<HTMLElement | null>;
|
|
5
|
+
overlayColor?: string;
|
|
6
|
+
overlayOpacity?: number;
|
|
7
|
+
transition?: Transition;
|
|
8
|
+
variants?: Variants;
|
|
9
|
+
initial?: string;
|
|
10
|
+
animate?: string;
|
|
11
|
+
exit?: string;
|
|
12
|
+
draggable?: boolean;
|
|
13
|
+
};
|
|
@@ -1,11 +1,15 @@
|
|
|
1
|
+
import type { Transition } from 'motion/react';
|
|
1
2
|
import type React from 'react';
|
|
2
3
|
type OverlayBaseProps = {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
show?: boolean;
|
|
3
6
|
opacity?: number;
|
|
4
7
|
color?: string;
|
|
5
8
|
type?: 'clear' | 'dark';
|
|
6
9
|
global?: boolean;
|
|
7
10
|
overlay?: any;
|
|
8
11
|
onClick?: () => void;
|
|
12
|
+
transition?: Transition;
|
|
9
13
|
toggleOverlay?: (state: boolean) => void;
|
|
10
14
|
};
|
|
11
15
|
export type OverlayProps = Omit<React.HTMLAttributes<HTMLDivElement>, keyof OverlayBaseProps> & OverlayBaseProps;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { ProgressIndicatorProps } from './_types';
|
|
2
2
|
export declare function ProgressIndicator(props: Readonly<ProgressIndicatorProps>): import("react/jsx-runtime").JSX.Element;
|
|
3
|
-
export declare const OpenCircle: (size: number, secondsPerSpin: number, color: string, stroke?: number, playing?: boolean) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export declare const OpenCircle: (size: number | string, secondsPerSpin: number, color: string, stroke?: number, playing?: boolean, inset?: boolean, gradientId?: string) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
type ProgressIndicatorBaseProps = {
|
|
3
|
-
size?: number;
|
|
3
|
+
size?: number | string;
|
|
4
4
|
secondsPerSpin?: number;
|
|
5
5
|
show?: boolean;
|
|
6
6
|
color?: string;
|
|
7
7
|
stroke?: number;
|
|
8
8
|
duration?: number;
|
|
9
9
|
inline?: boolean;
|
|
10
|
+
inset?: boolean;
|
|
10
11
|
didStart?: () => void;
|
|
11
12
|
didStop?: () => void;
|
|
12
13
|
};
|
|
@@ -18,6 +18,8 @@ type ToastBaseProps = {
|
|
|
18
18
|
duration?: number | 'Infinite';
|
|
19
19
|
close?: boolean;
|
|
20
20
|
type?: ToastType;
|
|
21
|
+
progress?: boolean;
|
|
22
|
+
onShow?: () => void;
|
|
21
23
|
didHide?: () => void;
|
|
22
24
|
};
|
|
23
25
|
type ReservedToastEvents = 'onMouseEnter' | 'onMouseLeave' | 'onFocus' | 'onBlur';
|
package/dist/types/index.d.ts
CHANGED
|
@@ -31,6 +31,10 @@ export { Grouper } from './components/Grouper';
|
|
|
31
31
|
export type { GrouperProps } from './components/Grouper';
|
|
32
32
|
export { Overlay } from './components/Overlay';
|
|
33
33
|
export type { OverlayProps } from './components/Overlay';
|
|
34
|
+
export { Modal } from './components/Modal';
|
|
35
|
+
export type { ModalAction, ModalProps } from './components/Modal';
|
|
36
|
+
export { ModalController } from './components/ModalController';
|
|
37
|
+
export type { ModalControllerProps } from './components/ModalController';
|
|
34
38
|
export { FlexDiv, Size, Preset } from './components/FlexDiv';
|
|
35
39
|
export type { FlexDivProps } from './components/FlexDiv';
|
|
36
40
|
export { Pager } from './components/Pager';
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
export type ModalComponentProps<TResult = unknown> = {
|
|
3
|
+
onResolve?: (value?: TResult) => void;
|
|
4
|
+
onReject?: (error?: Error) => void;
|
|
5
|
+
onClose?: () => void;
|
|
6
|
+
onDragPointerDown?: React.PointerEventHandler;
|
|
7
|
+
};
|
|
8
|
+
export type ModalDescriptor<TProps extends Record<string, unknown> = Record<string, unknown>, TResult = unknown> = {
|
|
9
|
+
id?: string;
|
|
10
|
+
component: React.ComponentType<TProps & ModalComponentProps<TResult>>;
|
|
11
|
+
props?: TProps;
|
|
12
|
+
};
|
|
13
|
+
export type ActiveModal = ModalDescriptor & {
|
|
14
|
+
resolve?: (value?: unknown) => void;
|
|
15
|
+
reject?: (reason?: unknown) => void;
|
|
16
|
+
};
|
|
17
|
+
export interface ModalStore {
|
|
18
|
+
modal: ActiveModal | null;
|
|
19
|
+
actions: {
|
|
20
|
+
show: (modal: ModalDescriptor | null) => void;
|
|
21
|
+
hide: (reason?: unknown) => void;
|
|
22
|
+
modalResponse: <TResult = unknown>(modal: ModalDescriptor) => Promise<TResult | undefined>;
|
|
23
|
+
resolve: <TResult = unknown>(value?: TResult) => void;
|
|
24
|
+
reject: (reason?: unknown) => void;
|
|
25
|
+
clear: () => void;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ActiveModal, ModalDescriptor, ModalStore } from './_types';
|
|
2
|
+
export declare const useModalStore: import("zustand").UseBoundStore<import("zustand").StoreApi<ModalStore>>;
|
|
3
|
+
export declare const useModal: () => ActiveModal | null;
|
|
4
|
+
export declare const useModalActions: () => {
|
|
5
|
+
show: (modal: ModalDescriptor | null) => void;
|
|
6
|
+
hide: (reason?: unknown) => void;
|
|
7
|
+
modalResponse: <TResult = unknown>(modal: ModalDescriptor) => Promise<TResult | undefined>;
|
|
8
|
+
resolve: <TResult = unknown>(value?: TResult) => void;
|
|
9
|
+
reject: (reason?: unknown) => void;
|
|
10
|
+
clear: () => void;
|
|
11
|
+
};
|
|
12
|
+
export declare const modalActions: {
|
|
13
|
+
show: (modal: ModalDescriptor | null) => void;
|
|
14
|
+
hide: (reason?: unknown) => void;
|
|
15
|
+
modalResponse: <TResult = unknown>(modal: ModalDescriptor) => Promise<TResult | undefined>;
|
|
16
|
+
resolve: <TResult = unknown>(value?: TResult) => void;
|
|
17
|
+
reject: (reason?: unknown) => void;
|
|
18
|
+
clear: () => void;
|
|
19
|
+
};
|
|
20
|
+
export declare const getModal: () => ActiveModal | null;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { ToastType } from '../../components/Toast';
|
|
2
2
|
export type Toast = {
|
|
3
3
|
message: string | null;
|
|
4
|
-
duration?: number;
|
|
4
|
+
duration?: number | 'Infinite';
|
|
5
5
|
type?: ToastType;
|
|
6
6
|
close?: boolean;
|
|
7
|
+
position?: 'top' | 'bottom';
|
|
8
|
+
progress?: boolean;
|
|
7
9
|
};
|
|
8
10
|
export interface ToastStore {
|
|
9
11
|
toast: Toast | null;
|