@snack-uikit/utils 3.9.1-preview-09106514.0 → 3.10.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/CHANGELOG.md +22 -0
- package/README.md +4 -0
- package/dist/cjs/hooks/useModalOpenState.d.ts +8 -5
- package/dist/cjs/hooks/useModalOpenState.js +4 -5
- package/dist/esm/hooks/useModalOpenState.d.ts +8 -5
- package/dist/esm/hooks/useModalOpenState.js +6 -5
- package/package.json +2 -2
- package/src/hooks/useModalOpenState.ts +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## 3.10.1 (2025-07-16)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **PDS-2594:** close watcher ([c7678e0](https://github.com/cloud-ru-tech/snack-uikit/commit/c7678e0f4167e0d6e3a4286cca7460d0fe25dec5))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# 3.10.0 (2025-07-15)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* **PDS-2594:** add CloseWatcher using in modals and drawers ([7699e55](https://github.com/cloud-ru-tech/snack-uikit/commit/7699e55dc172f6082369b6fb83815c12d28b3f7a))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
6
28
|
# 3.9.0 (2025-07-07)
|
|
7
29
|
|
|
8
30
|
|
package/README.md
CHANGED
|
@@ -78,6 +78,10 @@
|
|
|
78
78
|
| options | `FilterStateOptions<TFilter>` | - | |
|
|
79
79
|
| parser | `(jsonFilter: string) => TFilter` | - | |
|
|
80
80
|
| serializer | `(filter: TFilter) => string` | - | |
|
|
81
|
+
## useModalOpenState
|
|
82
|
+
`hook`
|
|
83
|
+
|
|
84
|
+
Хук для управления состоянием модалки
|
|
81
85
|
## ThemeProvider
|
|
82
86
|
Провайдер, предназначенный для работы с темами
|
|
83
87
|
### Props
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
type UseModalOpenStateOptions = {
|
|
2
|
+
/** закрывать модалку при переходе по истории браузера (по умолчанию false) */
|
|
2
3
|
closeOnPopstate?: boolean;
|
|
4
|
+
/** закрывать модалку через CloseWatcher (по умолчанию true) */
|
|
3
5
|
closeByCloseWatcher?: boolean;
|
|
4
6
|
};
|
|
5
7
|
/**
|
|
6
8
|
* Хук для управления состоянием модалки
|
|
7
|
-
* @param open состояние модалки
|
|
8
|
-
* @param onClose колбек закрытия
|
|
9
|
-
* @param options.closeOnPopstate закрывать модалку при переходе по истории браузера (по умолчанию false)
|
|
10
|
-
* @param options.closeByCloseWatcher закрывать модалку через CloseWatcher (по умолчанию true)
|
|
11
9
|
* @returns [open, onClose]
|
|
12
10
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CloseWatcher
|
|
11
|
+
* @function hook
|
|
13
12
|
*/
|
|
14
|
-
export declare function useModalOpenState(
|
|
13
|
+
export declare function useModalOpenState(
|
|
14
|
+
/** состояние модалки */
|
|
15
|
+
open: boolean,
|
|
16
|
+
/** колбек закрытия */
|
|
17
|
+
onClose: () => void, { closeOnPopstate, closeByCloseWatcher }: UseModalOpenStateOptions): void;
|
|
15
18
|
export {};
|
|
@@ -9,14 +9,13 @@ const useEventHandler_1 = require("./useEventHandler");
|
|
|
9
9
|
const usePopstateSubscription_1 = require("./usePopstateSubscription");
|
|
10
10
|
/**
|
|
11
11
|
* Хук для управления состоянием модалки
|
|
12
|
-
* @param open состояние модалки
|
|
13
|
-
* @param onClose колбек закрытия
|
|
14
|
-
* @param options.closeOnPopstate закрывать модалку при переходе по истории браузера (по умолчанию false)
|
|
15
|
-
* @param options.closeByCloseWatcher закрывать модалку через CloseWatcher (по умолчанию true)
|
|
16
12
|
* @returns [open, onClose]
|
|
17
13
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CloseWatcher
|
|
14
|
+
* @function hook
|
|
18
15
|
*/
|
|
19
|
-
function useModalOpenState(
|
|
16
|
+
function useModalOpenState(/** состояние модалки */
|
|
17
|
+
open, /** колбек закрытия */
|
|
18
|
+
onClose, _ref) {
|
|
20
19
|
let {
|
|
21
20
|
closeOnPopstate = false,
|
|
22
21
|
closeByCloseWatcher = true
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
type UseModalOpenStateOptions = {
|
|
2
|
+
/** закрывать модалку при переходе по истории браузера (по умолчанию false) */
|
|
2
3
|
closeOnPopstate?: boolean;
|
|
4
|
+
/** закрывать модалку через CloseWatcher (по умолчанию true) */
|
|
3
5
|
closeByCloseWatcher?: boolean;
|
|
4
6
|
};
|
|
5
7
|
/**
|
|
6
8
|
* Хук для управления состоянием модалки
|
|
7
|
-
* @param open состояние модалки
|
|
8
|
-
* @param onClose колбек закрытия
|
|
9
|
-
* @param options.closeOnPopstate закрывать модалку при переходе по истории браузера (по умолчанию false)
|
|
10
|
-
* @param options.closeByCloseWatcher закрывать модалку через CloseWatcher (по умолчанию true)
|
|
11
9
|
* @returns [open, onClose]
|
|
12
10
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CloseWatcher
|
|
11
|
+
* @function hook
|
|
13
12
|
*/
|
|
14
|
-
export declare function useModalOpenState(
|
|
13
|
+
export declare function useModalOpenState(
|
|
14
|
+
/** состояние модалки */
|
|
15
|
+
open: boolean,
|
|
16
|
+
/** колбек закрытия */
|
|
17
|
+
onClose: () => void, { closeOnPopstate, closeByCloseWatcher }: UseModalOpenStateOptions): void;
|
|
15
18
|
export {};
|
|
@@ -3,14 +3,15 @@ import { useEventHandler } from './useEventHandler';
|
|
|
3
3
|
import { usePopstateSubscription } from './usePopstateSubscription';
|
|
4
4
|
/**
|
|
5
5
|
* Хук для управления состоянием модалки
|
|
6
|
-
* @param open состояние модалки
|
|
7
|
-
* @param onClose колбек закрытия
|
|
8
|
-
* @param options.closeOnPopstate закрывать модалку при переходе по истории браузера (по умолчанию false)
|
|
9
|
-
* @param options.closeByCloseWatcher закрывать модалку через CloseWatcher (по умолчанию true)
|
|
10
6
|
* @returns [open, onClose]
|
|
11
7
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CloseWatcher
|
|
8
|
+
* @function hook
|
|
12
9
|
*/
|
|
13
|
-
export function useModalOpenState(
|
|
10
|
+
export function useModalOpenState(
|
|
11
|
+
/** состояние модалки */
|
|
12
|
+
open,
|
|
13
|
+
/** колбек закрытия */
|
|
14
|
+
onClose, { closeOnPopstate = false, closeByCloseWatcher = true }) {
|
|
14
15
|
const closeHandler = useEventHandler(onClose);
|
|
15
16
|
usePopstateSubscription(() => open && closeHandler(), closeOnPopstate);
|
|
16
17
|
useEffect(() => {
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
6
|
"title": "Utils",
|
|
7
|
-
"version": "3.
|
|
7
|
+
"version": "3.10.1",
|
|
8
8
|
"sideEffects": [
|
|
9
9
|
"*.css",
|
|
10
10
|
"*.woff",
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"react-swipeable": "7.0.2",
|
|
40
40
|
"uncontrollable": "8.0.4"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "2871794a46212ecbb3bc0002d7d8912310643332"
|
|
43
43
|
}
|
|
@@ -4,21 +4,22 @@ import { useEventHandler } from './useEventHandler';
|
|
|
4
4
|
import { usePopstateSubscription } from './usePopstateSubscription';
|
|
5
5
|
|
|
6
6
|
type UseModalOpenStateOptions = {
|
|
7
|
+
/** закрывать модалку при переходе по истории браузера (по умолчанию false) */
|
|
7
8
|
closeOnPopstate?: boolean;
|
|
9
|
+
/** закрывать модалку через CloseWatcher (по умолчанию true) */
|
|
8
10
|
closeByCloseWatcher?: boolean;
|
|
9
11
|
};
|
|
10
12
|
|
|
11
13
|
/**
|
|
12
14
|
* Хук для управления состоянием модалки
|
|
13
|
-
* @param open состояние модалки
|
|
14
|
-
* @param onClose колбек закрытия
|
|
15
|
-
* @param options.closeOnPopstate закрывать модалку при переходе по истории браузера (по умолчанию false)
|
|
16
|
-
* @param options.closeByCloseWatcher закрывать модалку через CloseWatcher (по умолчанию true)
|
|
17
15
|
* @returns [open, onClose]
|
|
18
16
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/CloseWatcher
|
|
17
|
+
* @function hook
|
|
19
18
|
*/
|
|
20
19
|
export function useModalOpenState(
|
|
20
|
+
/** состояние модалки */
|
|
21
21
|
open: boolean,
|
|
22
|
+
/** колбек закрытия */
|
|
22
23
|
onClose: () => void,
|
|
23
24
|
{ closeOnPopstate = false, closeByCloseWatcher = true }: UseModalOpenStateOptions,
|
|
24
25
|
) {
|