@popsure/dirty-swan 0.55.3 → 0.56.1
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/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +2684 -889
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/components/modal/bottomModal/index.d.ts +1 -1
- package/dist/cjs/lib/components/modal/fullScreenModal/index.d.ts +3 -0
- package/dist/cjs/lib/components/modal/genericModal/index.d.ts +16 -14
- package/dist/cjs/lib/components/modal/index.d.ts +4 -1
- package/dist/cjs/lib/components/modal/index.stories.d.ts +19 -1
- package/dist/cjs/lib/components/modal/regularModal/index.d.ts +1 -1
- package/dist/cjs/lib/hooks/useEscapeKey.d.ts +1 -0
- package/dist/cjs/lib/hooks/useFocusWithin.d.ts +1 -0
- package/dist/cjs/lib/index.d.ts +4 -2
- package/dist/esm/{Calendar-3239814b.js → Calendar-d39056f4.js} +9 -9
- package/dist/esm/{Calendar-3239814b.js.map → Calendar-d39056f4.js.map} +1 -1
- package/dist/esm/{TableSection-a1be2bd3.js → TableSection-24337bc7.js} +1 -1
- package/dist/esm/{TableSection-a1be2bd3.js.map → TableSection-24337bc7.js.map} +1 -1
- package/dist/esm/components/accordion/index.js +1 -1
- package/dist/esm/components/accordion/index.stories.js +1 -1
- package/dist/esm/components/autocompleteAddress/index.test.js +1 -1
- package/dist/esm/components/badge/index.test.js +1 -1
- package/dist/esm/components/button/index.js +4 -4
- package/dist/esm/components/button/index.js.map +1 -1
- package/dist/esm/components/button/index.test.js +1 -1
- package/dist/esm/components/comparisonTable/components/AccordionItem/AccordionItem.js +1 -1
- package/dist/esm/components/comparisonTable/components/AccordionItem/index.js +1 -1
- package/dist/esm/components/comparisonTable/components/Row/index.js +2 -2
- package/dist/esm/components/comparisonTable/components/Row/index.js.map +1 -1
- package/dist/esm/components/comparisonTable/components/TableButton/index.test.js +2 -2
- package/dist/esm/components/comparisonTable/components/TableRowHeader/index.test.js +2 -2
- package/dist/esm/components/comparisonTable/index.js +2 -2
- package/dist/esm/components/comparisonTable/index.stories.js +2 -2
- package/dist/esm/components/dateSelector/components/Calendar.js +1 -1
- package/dist/esm/components/dateSelector/index.js +1 -1
- package/dist/esm/components/dateSelector/index.stories.js +1 -1
- package/dist/esm/components/dateSelector/index.test.js +2 -2
- package/dist/esm/components/informationBox/index.test.js +1 -1
- package/dist/esm/components/input/autoSuggestInput/index.js +8 -998
- package/dist/esm/components/input/autoSuggestInput/index.js.map +1 -1
- package/dist/esm/components/input/autoSuggestInput/index.stories.js +1 -0
- package/dist/esm/components/input/autoSuggestInput/index.stories.js.map +1 -1
- package/dist/esm/components/input/autoSuggestMultiSelect/index.js +1 -0
- package/dist/esm/components/input/autoSuggestMultiSelect/index.js.map +1 -1
- package/dist/esm/components/input/autoSuggestMultiSelect/index.stories.js +1 -0
- package/dist/esm/components/input/autoSuggestMultiSelect/index.stories.js.map +1 -1
- package/dist/esm/components/input/checkbox/index.test.js +1 -1
- package/dist/esm/components/input/currency/index.test.js +1 -1
- package/dist/esm/components/input/index.js +2 -2
- package/dist/esm/components/input/index.js.map +1 -1
- package/dist/esm/components/input/radio/index.test.js +1 -1
- package/dist/esm/components/input/toggle/index.test.js +1 -1
- package/dist/esm/components/modal/bottomModal/index.js +6 -8
- package/dist/esm/components/modal/bottomModal/index.js.map +1 -1
- package/dist/esm/components/modal/bottomOrRegularModal/index.js +2 -0
- package/dist/esm/components/modal/bottomOrRegularModal/index.js.map +1 -1
- package/dist/esm/components/modal/fullScreenModal/index.js +29 -0
- package/dist/esm/components/modal/fullScreenModal/index.js.map +1 -0
- package/dist/esm/components/modal/genericModal/index.js +1751 -13
- package/dist/esm/components/modal/genericModal/index.js.map +1 -1
- package/dist/esm/components/modal/index.stories.js +48 -21
- package/dist/esm/components/modal/index.stories.js.map +1 -1
- package/dist/esm/components/modal/regularModal/index.js +6 -7
- package/dist/esm/components/modal/regularModal/index.js.map +1 -1
- package/dist/esm/components/multiDropzone/index.js +3 -3
- package/dist/esm/components/multiDropzone/index.js.map +1 -1
- package/dist/esm/components/multiDropzone/index.stories.js +1 -1
- package/dist/esm/components/multiDropzone/index.test.js +3 -3
- package/dist/esm/components/segmentedControl/index.test.js +1 -1
- package/dist/esm/components/signaturePad/index.js +2 -2
- package/dist/esm/components/signaturePad/index.js.map +1 -1
- package/dist/esm/components/spinner/index.test.js +1 -1
- package/dist/esm/components/table/Table.js +4 -2
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.stories.js +4 -2
- package/dist/esm/components/table/Table.stories.js.map +1 -1
- package/dist/esm/components/table/Table.test.js +5 -3
- package/dist/esm/components/table/Table.test.js.map +1 -1
- package/dist/esm/components/table/components/TableCell/BaseCell/BaseCell.js +1 -1
- package/dist/esm/components/table/components/TableCell/BaseCell/BaseCell.stories.js +1 -1
- package/dist/esm/components/table/components/TableCell/TableCell.js +3 -3
- package/dist/esm/components/table/components/TableCell/TableCell.js.map +1 -1
- package/dist/esm/components/table/components/TableCell/TableCell.test.js +2 -2
- package/dist/esm/components/table/components/TableContents/TableContents.js +2 -2
- package/dist/esm/components/table/components/TableContents/TableContents.test.js +3 -3
- package/dist/esm/components/table/components/TableControls/TableControls.test.js +1 -1
- package/dist/esm/components/table/components/TableSection/TableSection.js +2 -2
- package/dist/esm/components/table/components/TableSection/TableSection.test.js +3 -3
- package/dist/esm/components/toast/index.js +1 -1
- package/dist/esm/components/toast/index.stories.js +1 -1
- package/dist/esm/components/toast/index.test.js +2 -2
- package/dist/esm/{customRender-d03c10b6.js → customRender-be47569b.js} +4 -4
- package/dist/esm/{customRender-d03c10b6.js.map → customRender-be47569b.js.map} +1 -1
- package/dist/esm/index-171a0108.js +997 -0
- package/dist/esm/index-171a0108.js.map +1 -0
- package/dist/esm/{index-3aa7e697.js → index-4b19aafb.js} +4 -4
- package/dist/esm/{index-3aa7e697.js.map → index-4b19aafb.js.map} +1 -1
- package/dist/esm/{index-6f567b0b.js → index-86558de6.js} +2 -2
- package/dist/esm/{index-6f567b0b.js.map → index-86558de6.js.map} +1 -1
- package/dist/esm/{index-3d286178.js → index-af1860d8.js} +3 -3
- package/dist/esm/{index-3d286178.js.map → index-af1860d8.js.map} +1 -1
- package/dist/esm/{index-a0ef2ab4.js → index-e27b50cf.js} +4 -4
- package/dist/esm/{index-a0ef2ab4.js.map → index-e27b50cf.js.map} +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +36 -6
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/components/modal/bottomModal/index.d.ts +1 -1
- package/dist/esm/lib/components/modal/fullScreenModal/index.d.ts +3 -0
- package/dist/esm/lib/components/modal/genericModal/index.d.ts +16 -14
- package/dist/esm/lib/components/modal/index.d.ts +4 -1
- package/dist/esm/lib/components/modal/index.stories.d.ts +19 -1
- package/dist/esm/lib/components/modal/regularModal/index.d.ts +1 -1
- package/dist/esm/lib/hooks/useEscapeKey.d.ts +1 -0
- package/dist/esm/lib/hooks/useFocusWithin.d.ts +1 -0
- package/dist/esm/lib/index.d.ts +4 -2
- package/dist/esm/util/testUtils/customRender.js +1 -1
- package/package.json +2 -1
- package/src/index.tsx +4 -1
- package/src/lib/components/modal/bottomModal/index.tsx +17 -13
- package/src/lib/components/modal/fullScreenModal/index.tsx +28 -0
- package/src/lib/components/modal/fullScreenModal/style.module.scss +49 -0
- package/src/lib/components/modal/genericModal/index.tsx +88 -88
- package/src/lib/components/modal/hooks/useOnClose.ts +10 -8
- package/src/lib/components/modal/index.stories.tsx +133 -80
- package/src/lib/components/modal/index.ts +4 -1
- package/src/lib/components/modal/regularModal/index.tsx +17 -12
- package/src/lib/hooks/useEscapeKey.ts +18 -0
- package/src/lib/hooks/useFocusWithin.ts +22 -0
- package/src/lib/index.tsx +6 -0
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { BottomModal } from './bottomModal';
|
|
2
2
|
import { RegularModal } from './regularModal';
|
|
3
3
|
import { BottomOrRegularModal } from './bottomOrRegularModal';
|
|
4
|
+
import { FullScreenModal } from './fullScreenModal';
|
|
4
5
|
import { ReactNode } from 'react';
|
|
6
|
+
import { GenericModalClassNames } from './genericModal';
|
|
5
7
|
|
|
6
8
|
export interface Props {
|
|
7
9
|
title?: ReactNode;
|
|
@@ -10,9 +12,10 @@ export interface Props {
|
|
|
10
12
|
onClose: () => void;
|
|
11
13
|
onModalScroll?: (scrollTop: number, element: HTMLDivElement) => void;
|
|
12
14
|
className?: string;
|
|
15
|
+
classNames?: GenericModalClassNames;
|
|
13
16
|
dismissible?: boolean;
|
|
14
17
|
size?: 'default' | 'large';
|
|
15
18
|
footer?: ReactNode;
|
|
16
19
|
}
|
|
17
20
|
|
|
18
|
-
export { BottomModal, RegularModal, BottomOrRegularModal };
|
|
21
|
+
export { BottomModal, RegularModal, BottomOrRegularModal, FullScreenModal };
|
|
@@ -1,23 +1,28 @@
|
|
|
1
1
|
import { Props } from '..';
|
|
2
2
|
import styles from './style.module.scss';
|
|
3
|
-
import
|
|
3
|
+
import classNamesUtil from 'classnames';
|
|
4
4
|
import { GenericModal } from '../genericModal';
|
|
5
5
|
|
|
6
|
-
const RegularModal = ({ className = '', size, ...rest }: Props) => (
|
|
6
|
+
const RegularModal = ({ className = '', classNames, size, ...rest }: Props) => (
|
|
7
7
|
<GenericModal
|
|
8
8
|
classNames={{
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
9
|
+
...classNames,
|
|
10
|
+
wrapper: ({ isClosing }) =>
|
|
11
|
+
classNamesUtil(
|
|
12
|
+
'd-flex ai-center w90 mx-auto my0',
|
|
13
|
+
className,
|
|
14
|
+
styles.wrapper,
|
|
15
|
+
classNames?.wrapper,
|
|
16
|
+
{
|
|
17
|
+
[styles.wrapperClose]: isClosing,
|
|
18
|
+
}
|
|
19
|
+
),
|
|
20
|
+
container: classNamesUtil(
|
|
17
21
|
'bg-white br8 d-flex ai-center fd-column mx-auto my0',
|
|
18
22
|
styles.container,
|
|
19
|
-
size === 'large' ? 'wmx10' : 'wmx8'
|
|
20
|
-
|
|
23
|
+
size === 'large' ? 'wmx10' : 'wmx8',
|
|
24
|
+
classNames?.container
|
|
25
|
+
),
|
|
21
26
|
}}
|
|
22
27
|
{...rest}
|
|
23
28
|
/>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { useCallback, useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
export const useEscapeKey = (callback: () => void) => {
|
|
4
|
+
const handleOnEscape = useCallback(
|
|
5
|
+
(e: KeyboardEvent) => {
|
|
6
|
+
if (e.key === 'Escape') {
|
|
7
|
+
callback();
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
[callback]
|
|
11
|
+
);
|
|
12
|
+
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
window.addEventListener('keydown', handleOnEscape);
|
|
15
|
+
|
|
16
|
+
return () => window.removeEventListener('keydown', handleOnEscape);
|
|
17
|
+
}, [handleOnEscape]);
|
|
18
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
export const useFocusWithin = (
|
|
4
|
+
ref: HTMLElement | null,
|
|
5
|
+
callback: (isFocusWithin: boolean) => void
|
|
6
|
+
) => {
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
const handleOnFocusIn = () => {
|
|
9
|
+
if (!ref) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const hasFocus = ref?.contains(document.activeElement);
|
|
14
|
+
|
|
15
|
+
callback(Boolean(hasFocus));
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
document.addEventListener('focusin', handleOnFocusIn);
|
|
19
|
+
|
|
20
|
+
return () => document?.removeEventListener('focusin', handleOnFocusIn);
|
|
21
|
+
}, [callback, ref]);
|
|
22
|
+
};
|
package/src/lib/index.tsx
CHANGED
|
@@ -23,6 +23,7 @@ import {
|
|
|
23
23
|
BottomModal,
|
|
24
24
|
RegularModal,
|
|
25
25
|
BottomOrRegularModal,
|
|
26
|
+
FullScreenModal,
|
|
26
27
|
} from './components/modal';
|
|
27
28
|
import { InfoCard, CardButton } from './components/cards';
|
|
28
29
|
import { Card, CardProps } from './components/cards/card';
|
|
@@ -48,6 +49,8 @@ import { Toaster, toast } from './components/toast';
|
|
|
48
49
|
import { IconWrapperProps } from './components/icon/IconWrapper';
|
|
49
50
|
import { Accordion, AccordionProps } from './components/accordion';
|
|
50
51
|
import { Table, TableData, TableProps } from './components/table/Table';
|
|
52
|
+
import { useEscapeKey } from './hooks/useEscapeKey';
|
|
53
|
+
import { useFocusWithin } from './hooks/useFocusWithin';
|
|
51
54
|
|
|
52
55
|
export * from './components/icon';
|
|
53
56
|
|
|
@@ -63,6 +66,7 @@ export {
|
|
|
63
66
|
BottomModal,
|
|
64
67
|
RegularModal,
|
|
65
68
|
BottomOrRegularModal,
|
|
69
|
+
FullScreenModal,
|
|
66
70
|
InfoCard,
|
|
67
71
|
Card,
|
|
68
72
|
CardButton,
|
|
@@ -90,6 +94,8 @@ export {
|
|
|
90
94
|
Toggle,
|
|
91
95
|
Toaster,
|
|
92
96
|
toast,
|
|
97
|
+
useEscapeKey,
|
|
98
|
+
useFocusWithin,
|
|
93
99
|
};
|
|
94
100
|
|
|
95
101
|
export type {
|