@vef-framework/hooks 1.0.135 → 2.0.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/README +15 -0
- package/dist/cjs/index.cjs +172 -0
- package/dist/cjs/lib.cjs +148 -0
- package/dist/cjs/use-authorized-items/index.cjs +20 -0
- package/dist/cjs/use-breakpoints/index.cjs +74 -0
- package/dist/cjs/use-check-permission/index.cjs +18 -0
- package/dist/cjs/use-data-dict-query/index.cjs +34 -0
- package/dist/cjs/use-data-options/index.cjs +119 -0
- package/dist/cjs/use-deep-callback/index.cjs +13 -0
- package/dist/cjs/use-deep-compare/index.cjs +36 -0
- package/dist/cjs/use-deep-effect/index.cjs +13 -0
- package/dist/cjs/use-deep-isomorphic-effect/index.cjs +14 -0
- package/dist/cjs/use-deep-layout-effect/index.cjs +13 -0
- package/dist/cjs/use-deep-memo/index.cjs +13 -0
- package/dist/cjs/use-document-event/index.cjs +22 -0
- package/dist/cjs/use-emitter-event/index.cjs +22 -0
- package/dist/cjs/use-has-fetching/index.cjs +17 -0
- package/dist/cjs/use-has-mutating/index.cjs +16 -0
- package/dist/cjs/use-is-authorized/index.cjs +18 -0
- package/dist/cjs/use-latest/index.cjs +14 -0
- package/dist/cjs/use-raf-state/index.cjs +23 -0
- package/dist/cjs/use-shallow-callback/index.cjs +13 -0
- package/dist/cjs/use-shallow-compare/index.cjs +36 -0
- package/dist/cjs/use-shallow-effect/index.cjs +13 -0
- package/dist/cjs/use-shallow-isomorphic-effect/index.cjs +14 -0
- package/dist/cjs/use-shallow-layout-effect/index.cjs +13 -0
- package/dist/cjs/use-shallow-memo/index.cjs +13 -0
- package/dist/cjs/use-singleton/index.cjs +16 -0
- package/dist/es/index.js +29 -0
- package/dist/es/lib.js +35 -0
- package/dist/es/use-authorized-items/index.js +16 -0
- package/dist/es/use-breakpoints/index.js +70 -0
- package/dist/es/use-check-permission/index.js +14 -0
- package/dist/es/use-data-dict-query/index.js +30 -0
- package/dist/es/use-data-options/index.js +115 -0
- package/dist/es/use-deep-callback/index.js +9 -0
- package/dist/es/use-deep-compare/index.js +32 -0
- package/dist/es/use-deep-effect/index.js +9 -0
- package/dist/es/use-deep-isomorphic-effect/index.js +10 -0
- package/dist/es/use-deep-layout-effect/index.js +9 -0
- package/dist/es/use-deep-memo/index.js +9 -0
- package/dist/es/use-document-event/index.js +18 -0
- package/dist/es/use-emitter-event/index.js +18 -0
- package/dist/es/use-has-fetching/index.js +13 -0
- package/dist/es/use-has-mutating/index.js +12 -0
- package/dist/es/use-is-authorized/index.js +14 -0
- package/dist/es/use-latest/index.js +10 -0
- package/dist/es/use-raf-state/index.js +19 -0
- package/dist/es/use-shallow-callback/index.js +9 -0
- package/dist/es/use-shallow-compare/index.js +32 -0
- package/dist/es/use-shallow-effect/index.js +9 -0
- package/dist/es/use-shallow-isomorphic-effect/index.js +10 -0
- package/dist/es/use-shallow-layout-effect/index.js +9 -0
- package/dist/es/use-shallow-memo/index.js +9 -0
- package/dist/es/use-singleton/index.js +12 -0
- package/dist/types/index.d.ts +26 -0
- package/dist/types/lib.d.ts +6 -0
- package/{types/use-authorized-items.d.ts → dist/types/use-authorized-items/index.d.ts} +4 -3
- package/dist/types/use-breakpoints/index.d.ts +47 -0
- package/dist/types/use-check-permission/index.d.ts +8 -0
- package/dist/types/use-data-dict-query/index.d.ts +15 -0
- package/dist/types/use-data-options/index.d.ts +80 -0
- package/dist/types/use-deep-callback/index.d.ts +9 -0
- package/dist/types/use-deep-compare/index.d.ts +8 -0
- package/dist/types/use-deep-effect/index.d.ts +9 -0
- package/dist/types/use-deep-isomorphic-effect/index.d.ts +9 -0
- package/dist/types/use-deep-layout-effect/index.d.ts +9 -0
- package/dist/types/use-deep-memo/index.d.ts +9 -0
- package/dist/types/use-document-event/index.d.ts +8 -0
- package/dist/types/use-emitter-event/index.d.ts +9 -0
- package/dist/types/use-has-fetching/index.d.ts +8 -0
- package/dist/types/use-has-mutating/index.d.ts +7 -0
- package/dist/types/use-is-authorized/index.d.ts +10 -0
- package/dist/types/use-latest/index.d.ts +8 -0
- package/dist/types/use-raf-state/index.d.ts +8 -0
- package/dist/types/use-shallow-callback/index.d.ts +9 -0
- package/dist/types/use-shallow-compare/index.d.ts +8 -0
- package/dist/types/use-shallow-effect/index.d.ts +9 -0
- package/dist/types/use-shallow-isomorphic-effect/index.d.ts +9 -0
- package/dist/types/use-shallow-layout-effect/index.d.ts +9 -0
- package/dist/types/use-shallow-memo/index.d.ts +9 -0
- package/dist/types/use-singleton/index.d.ts +11 -0
- package/package.json +46 -35
- package/README.md +0 -27
- package/cjs/index.cjs +0 -2
- package/cjs/lib.cjs +0 -2
- package/cjs/use-authorized-items.cjs +0 -2
- package/cjs/use-color-tokens.cjs +0 -2
- package/cjs/use-computed-action-buttons.cjs +0 -2
- package/cjs/use-computed-options.cjs +0 -2
- package/cjs/use-context-disabled.cjs +0 -2
- package/cjs/use-data-query.cjs +0 -2
- package/cjs/use-deep-callback.cjs +0 -2
- package/cjs/use-deep-memo.cjs +0 -2
- package/cjs/use-deep-selector.cjs +0 -2
- package/cjs/use-fallback-options.cjs +0 -2
- package/cjs/use-gap-size-normalizer.cjs +0 -2
- package/cjs/use-normalized-gap-size.cjs +0 -2
- package/cjs/use-normalized-menu-items.cjs +0 -2
- package/cjs/use-normalized-options.cjs +0 -2
- package/cjs/use-option-filter.cjs +0 -2
- package/cjs/use-remote-filter.cjs +0 -2
- package/cjs/use-shallow-callback.cjs +0 -2
- package/cjs/use-shallow-memo.cjs +0 -2
- package/cjs/use-shallow-selector.cjs +0 -2
- package/cjs/use-singleton.cjs +0 -2
- package/cjs/use-theme-tokens.cjs +0 -2
- package/cjs/use-transient-store.cjs +0 -2
- package/cjs/use-window-size.cjs +0 -2
- package/esm/index.js +0 -2
- package/esm/lib.js +0 -2
- package/esm/use-authorized-items.js +0 -2
- package/esm/use-color-tokens.js +0 -2
- package/esm/use-computed-action-buttons.js +0 -2
- package/esm/use-computed-options.js +0 -2
- package/esm/use-context-disabled.js +0 -2
- package/esm/use-data-query.js +0 -2
- package/esm/use-deep-callback.js +0 -2
- package/esm/use-deep-memo.js +0 -2
- package/esm/use-deep-selector.js +0 -2
- package/esm/use-fallback-options.js +0 -2
- package/esm/use-gap-size-normalizer.js +0 -2
- package/esm/use-normalized-gap-size.js +0 -2
- package/esm/use-normalized-menu-items.js +0 -2
- package/esm/use-normalized-options.js +0 -2
- package/esm/use-option-filter.js +0 -2
- package/esm/use-remote-filter.js +0 -2
- package/esm/use-shallow-callback.js +0 -2
- package/esm/use-shallow-memo.js +0 -2
- package/esm/use-shallow-selector.js +0 -2
- package/esm/use-singleton.js +0 -2
- package/esm/use-theme-tokens.js +0 -2
- package/esm/use-transient-store.js +0 -2
- package/esm/use-window-size.js +0 -2
- package/types/index.d.ts +0 -24
- package/types/lib.d.ts +0 -3
- package/types/use-color-tokens.d.ts +0 -19
- package/types/use-computed-action-buttons.d.ts +0 -35
- package/types/use-computed-options.d.ts +0 -54
- package/types/use-context-disabled.d.ts +0 -6
- package/types/use-data-query.d.ts +0 -9
- package/types/use-deep-callback.d.ts +0 -10
- package/types/use-deep-memo.d.ts +0 -10
- package/types/use-deep-selector.d.ts +0 -8
- package/types/use-fallback-options.d.ts +0 -34
- package/types/use-gap-size-normalizer.d.ts +0 -8
- package/types/use-normalized-gap-size.d.ts +0 -9
- package/types/use-normalized-menu-items.d.ts +0 -16
- package/types/use-normalized-options.d.ts +0 -33
- package/types/use-option-filter.d.ts +0 -8
- package/types/use-remote-filter.d.ts +0 -9
- package/types/use-shallow-callback.d.ts +0 -10
- package/types/use-shallow-memo.d.ts +0 -10
- package/types/use-shallow-selector.d.ts +0 -8
- package/types/use-singleton.d.ts +0 -7
- package/types/use-theme-tokens.d.ts +0 -6
- package/types/use-transient-store.d.ts +0 -34
- package/types/use-window-size.d.ts +0 -17
package/README
ADDED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const lib = require('./lib.cjs');
|
|
7
|
+
const index = require('./use-authorized-items/index.cjs');
|
|
8
|
+
const index$1 = require('./use-breakpoints/index.cjs');
|
|
9
|
+
const index$2 = require('./use-check-permission/index.cjs');
|
|
10
|
+
const index$3 = require('./use-data-dict-query/index.cjs');
|
|
11
|
+
const index$4 = require('./use-data-options/index.cjs');
|
|
12
|
+
const index$5 = require('./use-deep-callback/index.cjs');
|
|
13
|
+
const index$6 = require('./use-deep-compare/index.cjs');
|
|
14
|
+
const index$7 = require('./use-deep-effect/index.cjs');
|
|
15
|
+
const index$8 = require('./use-deep-isomorphic-effect/index.cjs');
|
|
16
|
+
const index$9 = require('./use-deep-layout-effect/index.cjs');
|
|
17
|
+
const index$a = require('./use-deep-memo/index.cjs');
|
|
18
|
+
const index$b = require('./use-document-event/index.cjs');
|
|
19
|
+
const index$c = require('./use-emitter-event/index.cjs');
|
|
20
|
+
const index$d = require('./use-has-fetching/index.cjs');
|
|
21
|
+
const index$e = require('./use-has-mutating/index.cjs');
|
|
22
|
+
const index$f = require('./use-is-authorized/index.cjs');
|
|
23
|
+
const index$g = require('./use-latest/index.cjs');
|
|
24
|
+
const index$h = require('./use-raf-state/index.cjs');
|
|
25
|
+
const index$i = require('./use-shallow-callback/index.cjs');
|
|
26
|
+
const index$j = require('./use-shallow-compare/index.cjs');
|
|
27
|
+
const index$k = require('./use-shallow-effect/index.cjs');
|
|
28
|
+
const index$l = require('./use-shallow-isomorphic-effect/index.cjs');
|
|
29
|
+
const index$m = require('./use-shallow-layout-effect/index.cjs');
|
|
30
|
+
const index$n = require('./use-shallow-memo/index.cjs');
|
|
31
|
+
const index$o = require('./use-singleton/index.cjs');
|
|
32
|
+
const hooks = require('@mantine/hooks');
|
|
33
|
+
const reactHotkeysHook = require('react-hotkeys-hook');
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
exports.useColorScheme = lib.useColorScheme;
|
|
38
|
+
exports.useMediaQuery = lib.useMediaQuery;
|
|
39
|
+
exports.useReducedMotion = lib.useReducedMotion;
|
|
40
|
+
exports.useAuthorizedItems = index.useAuthorizedItems;
|
|
41
|
+
exports.useBreakpoints = index$1.useBreakpoints;
|
|
42
|
+
exports.useCheckPermission = index$2.useCheckPermission;
|
|
43
|
+
exports.useDataDictQuery = index$3.useDataDictQuery;
|
|
44
|
+
exports.useDataOptionsQuery = index$4.useDataOptionsQuery;
|
|
45
|
+
exports.useDeepCallback = index$5.useDeepCallback;
|
|
46
|
+
exports.useDeepCompare = index$6.useDeepCompare;
|
|
47
|
+
exports.useDeepEffect = index$7.useDeepEffect;
|
|
48
|
+
exports.useDeepIsomorphicEffect = index$8.useDeepIsomorphicEffect;
|
|
49
|
+
exports.useDeepLayoutEffect = index$9.useDeepLayoutEffect;
|
|
50
|
+
exports.useDeepMemo = index$a.useDeepMemo;
|
|
51
|
+
exports.useDocumentEvent = index$b.useDocumentEvent;
|
|
52
|
+
exports.useEmitterEvent = index$c.useEmitterEvent;
|
|
53
|
+
exports.useHasFetching = index$d.useHasFetching;
|
|
54
|
+
exports.useHasMutating = index$e.useHasMutating;
|
|
55
|
+
exports.useIsAuthorized = index$f.useIsAuthorized;
|
|
56
|
+
exports.useLatest = index$g.useLatest;
|
|
57
|
+
exports.useRafState = index$h.useRafState;
|
|
58
|
+
exports.useShallowCallback = index$i.useShallowCallback;
|
|
59
|
+
exports.useShallowCompare = index$j.useShallowCompare;
|
|
60
|
+
exports.useShallowEffect = index$k.useShallowEffect;
|
|
61
|
+
exports.useShallowIsomorphicEffect = index$l.useShallowIsomorphicEffect;
|
|
62
|
+
exports.useShallowLayoutEffect = index$m.useShallowLayoutEffect;
|
|
63
|
+
exports.useShallowMemo = index$n.useShallowMemo;
|
|
64
|
+
exports.useSingleton = index$o.useSingleton;
|
|
65
|
+
Object.defineProperty(exports, "assignRef", {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: () => hooks.assignRef
|
|
68
|
+
});
|
|
69
|
+
Object.defineProperty(exports, "getHotkeyHandler", {
|
|
70
|
+
enumerable: true,
|
|
71
|
+
get: () => hooks.getHotkeyHandler
|
|
72
|
+
});
|
|
73
|
+
Object.defineProperty(exports, "mergeRefs", {
|
|
74
|
+
enumerable: true,
|
|
75
|
+
get: () => hooks.mergeRefs
|
|
76
|
+
});
|
|
77
|
+
Object.defineProperty(exports, "useDebouncedCallback", {
|
|
78
|
+
enumerable: true,
|
|
79
|
+
get: () => hooks.useDebouncedCallback
|
|
80
|
+
});
|
|
81
|
+
Object.defineProperty(exports, "useDebouncedState", {
|
|
82
|
+
enumerable: true,
|
|
83
|
+
get: () => hooks.useDebouncedState
|
|
84
|
+
});
|
|
85
|
+
Object.defineProperty(exports, "useDebouncedValue", {
|
|
86
|
+
enumerable: true,
|
|
87
|
+
get: () => hooks.useDebouncedValue
|
|
88
|
+
});
|
|
89
|
+
Object.defineProperty(exports, "useDidUpdate", {
|
|
90
|
+
enumerable: true,
|
|
91
|
+
get: () => hooks.useDidUpdate
|
|
92
|
+
});
|
|
93
|
+
Object.defineProperty(exports, "useDocumentTitle", {
|
|
94
|
+
enumerable: true,
|
|
95
|
+
get: () => hooks.useDocumentTitle
|
|
96
|
+
});
|
|
97
|
+
Object.defineProperty(exports, "useElementSize", {
|
|
98
|
+
enumerable: true,
|
|
99
|
+
get: () => hooks.useElementSize
|
|
100
|
+
});
|
|
101
|
+
Object.defineProperty(exports, "useEventListener", {
|
|
102
|
+
enumerable: true,
|
|
103
|
+
get: () => hooks.useEventListener
|
|
104
|
+
});
|
|
105
|
+
Object.defineProperty(exports, "useFocusTrap", {
|
|
106
|
+
enumerable: true,
|
|
107
|
+
get: () => hooks.useFocusTrap
|
|
108
|
+
});
|
|
109
|
+
Object.defineProperty(exports, "useFullscreen", {
|
|
110
|
+
enumerable: true,
|
|
111
|
+
get: () => hooks.useFullscreen
|
|
112
|
+
});
|
|
113
|
+
Object.defineProperty(exports, "useIntersection", {
|
|
114
|
+
enumerable: true,
|
|
115
|
+
get: () => hooks.useIntersection
|
|
116
|
+
});
|
|
117
|
+
Object.defineProperty(exports, "useInterval", {
|
|
118
|
+
enumerable: true,
|
|
119
|
+
get: () => hooks.useInterval
|
|
120
|
+
});
|
|
121
|
+
Object.defineProperty(exports, "useIsFirstRender", {
|
|
122
|
+
enumerable: true,
|
|
123
|
+
get: () => hooks.useIsFirstRender
|
|
124
|
+
});
|
|
125
|
+
Object.defineProperty(exports, "useIsomorphicEffect", {
|
|
126
|
+
enumerable: true,
|
|
127
|
+
get: () => hooks.useIsomorphicEffect
|
|
128
|
+
});
|
|
129
|
+
Object.defineProperty(exports, "useMergedRef", {
|
|
130
|
+
enumerable: true,
|
|
131
|
+
get: () => hooks.useMergedRef
|
|
132
|
+
});
|
|
133
|
+
Object.defineProperty(exports, "useMounted", {
|
|
134
|
+
enumerable: true,
|
|
135
|
+
get: () => hooks.useMounted
|
|
136
|
+
});
|
|
137
|
+
Object.defineProperty(exports, "useMutationObserver", {
|
|
138
|
+
enumerable: true,
|
|
139
|
+
get: () => hooks.useMutationObserver
|
|
140
|
+
});
|
|
141
|
+
Object.defineProperty(exports, "usePrevious", {
|
|
142
|
+
enumerable: true,
|
|
143
|
+
get: () => hooks.usePrevious
|
|
144
|
+
});
|
|
145
|
+
Object.defineProperty(exports, "useResizeObserver", {
|
|
146
|
+
enumerable: true,
|
|
147
|
+
get: () => hooks.useResizeObserver
|
|
148
|
+
});
|
|
149
|
+
Object.defineProperty(exports, "useTimeout", {
|
|
150
|
+
enumerable: true,
|
|
151
|
+
get: () => hooks.useTimeout
|
|
152
|
+
});
|
|
153
|
+
Object.defineProperty(exports, "useWindowEvent", {
|
|
154
|
+
enumerable: true,
|
|
155
|
+
get: () => hooks.useWindowEvent
|
|
156
|
+
});
|
|
157
|
+
Object.defineProperty(exports, "HotkeysProvider", {
|
|
158
|
+
enumerable: true,
|
|
159
|
+
get: () => reactHotkeysHook.HotkeysProvider
|
|
160
|
+
});
|
|
161
|
+
Object.defineProperty(exports, "useHotkeys", {
|
|
162
|
+
enumerable: true,
|
|
163
|
+
get: () => reactHotkeysHook.useHotkeys
|
|
164
|
+
});
|
|
165
|
+
Object.defineProperty(exports, "useHotkeysContext", {
|
|
166
|
+
enumerable: true,
|
|
167
|
+
get: () => reactHotkeysHook.useHotkeysContext
|
|
168
|
+
});
|
|
169
|
+
Object.defineProperty(exports, "useRecordHotkeys", {
|
|
170
|
+
enumerable: true,
|
|
171
|
+
get: () => reactHotkeysHook.useRecordHotkeys
|
|
172
|
+
});
|
package/dist/cjs/lib.cjs
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const hooks = require('@mantine/hooks');
|
|
7
|
+
const reactHotkeysHook = require('react-hotkeys-hook');
|
|
8
|
+
|
|
9
|
+
function useMediaQuery(query, initialValue, options) {
|
|
10
|
+
const { getInitialValueInEffect = false } = options ?? {};
|
|
11
|
+
return hooks.useMediaQuery(
|
|
12
|
+
query,
|
|
13
|
+
initialValue,
|
|
14
|
+
{
|
|
15
|
+
getInitialValueInEffect
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
function useColorScheme(initialValue, options) {
|
|
20
|
+
const { getInitialValueInEffect = false } = options ?? {};
|
|
21
|
+
return hooks.useColorScheme(
|
|
22
|
+
initialValue,
|
|
23
|
+
{
|
|
24
|
+
getInitialValueInEffect
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
function useReducedMotion(initialValue, options) {
|
|
29
|
+
const { getInitialValueInEffect = false } = options ?? {};
|
|
30
|
+
return hooks.useReducedMotion(
|
|
31
|
+
initialValue,
|
|
32
|
+
{
|
|
33
|
+
getInitialValueInEffect
|
|
34
|
+
}
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
Object.defineProperty(exports, "assignRef", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: () => hooks.assignRef
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "getHotkeyHandler", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: () => hooks.getHotkeyHandler
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(exports, "mergeRefs", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
get: () => hooks.mergeRefs
|
|
49
|
+
});
|
|
50
|
+
Object.defineProperty(exports, "useDebouncedCallback", {
|
|
51
|
+
enumerable: true,
|
|
52
|
+
get: () => hooks.useDebouncedCallback
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "useDebouncedState", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: () => hooks.useDebouncedState
|
|
57
|
+
});
|
|
58
|
+
Object.defineProperty(exports, "useDebouncedValue", {
|
|
59
|
+
enumerable: true,
|
|
60
|
+
get: () => hooks.useDebouncedValue
|
|
61
|
+
});
|
|
62
|
+
Object.defineProperty(exports, "useDidUpdate", {
|
|
63
|
+
enumerable: true,
|
|
64
|
+
get: () => hooks.useDidUpdate
|
|
65
|
+
});
|
|
66
|
+
Object.defineProperty(exports, "useDocumentTitle", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: () => hooks.useDocumentTitle
|
|
69
|
+
});
|
|
70
|
+
Object.defineProperty(exports, "useElementSize", {
|
|
71
|
+
enumerable: true,
|
|
72
|
+
get: () => hooks.useElementSize
|
|
73
|
+
});
|
|
74
|
+
Object.defineProperty(exports, "useEventListener", {
|
|
75
|
+
enumerable: true,
|
|
76
|
+
get: () => hooks.useEventListener
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(exports, "useFocusTrap", {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: () => hooks.useFocusTrap
|
|
81
|
+
});
|
|
82
|
+
Object.defineProperty(exports, "useFullscreen", {
|
|
83
|
+
enumerable: true,
|
|
84
|
+
get: () => hooks.useFullscreen
|
|
85
|
+
});
|
|
86
|
+
Object.defineProperty(exports, "useIntersection", {
|
|
87
|
+
enumerable: true,
|
|
88
|
+
get: () => hooks.useIntersection
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(exports, "useInterval", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: () => hooks.useInterval
|
|
93
|
+
});
|
|
94
|
+
Object.defineProperty(exports, "useIsFirstRender", {
|
|
95
|
+
enumerable: true,
|
|
96
|
+
get: () => hooks.useIsFirstRender
|
|
97
|
+
});
|
|
98
|
+
Object.defineProperty(exports, "useIsomorphicEffect", {
|
|
99
|
+
enumerable: true,
|
|
100
|
+
get: () => hooks.useIsomorphicEffect
|
|
101
|
+
});
|
|
102
|
+
Object.defineProperty(exports, "useMergedRef", {
|
|
103
|
+
enumerable: true,
|
|
104
|
+
get: () => hooks.useMergedRef
|
|
105
|
+
});
|
|
106
|
+
Object.defineProperty(exports, "useMounted", {
|
|
107
|
+
enumerable: true,
|
|
108
|
+
get: () => hooks.useMounted
|
|
109
|
+
});
|
|
110
|
+
Object.defineProperty(exports, "useMutationObserver", {
|
|
111
|
+
enumerable: true,
|
|
112
|
+
get: () => hooks.useMutationObserver
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, "usePrevious", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: () => hooks.usePrevious
|
|
117
|
+
});
|
|
118
|
+
Object.defineProperty(exports, "useResizeObserver", {
|
|
119
|
+
enumerable: true,
|
|
120
|
+
get: () => hooks.useResizeObserver
|
|
121
|
+
});
|
|
122
|
+
Object.defineProperty(exports, "useTimeout", {
|
|
123
|
+
enumerable: true,
|
|
124
|
+
get: () => hooks.useTimeout
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, "useWindowEvent", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: () => hooks.useWindowEvent
|
|
129
|
+
});
|
|
130
|
+
Object.defineProperty(exports, "HotkeysProvider", {
|
|
131
|
+
enumerable: true,
|
|
132
|
+
get: () => reactHotkeysHook.HotkeysProvider
|
|
133
|
+
});
|
|
134
|
+
Object.defineProperty(exports, "useHotkeys", {
|
|
135
|
+
enumerable: true,
|
|
136
|
+
get: () => reactHotkeysHook.useHotkeys
|
|
137
|
+
});
|
|
138
|
+
Object.defineProperty(exports, "useHotkeysContext", {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: () => reactHotkeysHook.useHotkeysContext
|
|
141
|
+
});
|
|
142
|
+
Object.defineProperty(exports, "useRecordHotkeys", {
|
|
143
|
+
enumerable: true,
|
|
144
|
+
get: () => reactHotkeysHook.useRecordHotkeys
|
|
145
|
+
});
|
|
146
|
+
exports.useColorScheme = useColorScheme;
|
|
147
|
+
exports.useMediaQuery = useMediaQuery;
|
|
148
|
+
exports.useReducedMotion = useReducedMotion;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const core = require('@vef-framework/core');
|
|
7
|
+
const react = require('react');
|
|
8
|
+
|
|
9
|
+
function useAuthorizedItems(items) {
|
|
10
|
+
const { hasPermission = () => true } = core.useAppContext();
|
|
11
|
+
return react.useMemo(
|
|
12
|
+
() => items.filter((item) => {
|
|
13
|
+
const { permTokens, checkMode = "any" } = item;
|
|
14
|
+
return core.checkPermission(hasPermission, permTokens, checkMode);
|
|
15
|
+
}),
|
|
16
|
+
[items, hasPermission]
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
exports.useAuthorizedItems = useAuthorizedItems;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const shared = require('@vef-framework/shared');
|
|
7
|
+
const react = require('react');
|
|
8
|
+
|
|
9
|
+
function createMediaQuery(value) {
|
|
10
|
+
return `(min-width: ${shared.isNumber(value) ? `${value}px` : value})`;
|
|
11
|
+
}
|
|
12
|
+
function useBreakpoints(breakpoints, options = {}) {
|
|
13
|
+
const { initialBreakpoint, getInitialValueInEffect = false } = options;
|
|
14
|
+
const sortedBreakpoints = react.useMemo(
|
|
15
|
+
() => Object.entries(breakpoints).map(([name, value]) => {
|
|
16
|
+
return {
|
|
17
|
+
name,
|
|
18
|
+
value,
|
|
19
|
+
query: createMediaQuery(value),
|
|
20
|
+
order: shared.isNumber(value) ? value : Number.parseInt(value)
|
|
21
|
+
};
|
|
22
|
+
}).toSorted((a, b) => a.order - b.order),
|
|
23
|
+
[breakpoints]
|
|
24
|
+
);
|
|
25
|
+
const [state, setState] = react.useState(() => {
|
|
26
|
+
if (globalThis.window === void 0 || getInitialValueInEffect) {
|
|
27
|
+
const initialEntry = sortedBreakpoints.find((bp) => bp.name === initialBreakpoint);
|
|
28
|
+
return {
|
|
29
|
+
current: initialBreakpoint,
|
|
30
|
+
value: initialEntry?.value,
|
|
31
|
+
matches: initialBreakpoint ? [initialBreakpoint] : []
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const matchingBreakpoints = sortedBreakpoints.filter((bp) => globalThis.matchMedia(bp.query).matches);
|
|
35
|
+
const currentBreakpoint = matchingBreakpoints.at(-1);
|
|
36
|
+
return {
|
|
37
|
+
current: currentBreakpoint?.name,
|
|
38
|
+
value: currentBreakpoint?.value,
|
|
39
|
+
matches: matchingBreakpoints.map((bp) => bp.name)
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
react.useEffect(() => {
|
|
43
|
+
const mediaQueryLists = sortedBreakpoints.map((bp) => {
|
|
44
|
+
return {
|
|
45
|
+
name: bp.name,
|
|
46
|
+
value: bp.value,
|
|
47
|
+
mql: globalThis.matchMedia(bp.query)
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
const updateBreakpoint = () => {
|
|
51
|
+
const matchingBreakpoints = mediaQueryLists.filter((item) => item.mql.matches);
|
|
52
|
+
const currentBreakpoint = matchingBreakpoints.at(-1);
|
|
53
|
+
setState({
|
|
54
|
+
current: currentBreakpoint?.name,
|
|
55
|
+
value: currentBreakpoint?.value,
|
|
56
|
+
matches: matchingBreakpoints.map((mbp) => mbp.name)
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
if (getInitialValueInEffect) {
|
|
60
|
+
updateBreakpoint();
|
|
61
|
+
}
|
|
62
|
+
for (const item of mediaQueryLists) {
|
|
63
|
+
item.mql.addEventListener("change", updateBreakpoint);
|
|
64
|
+
}
|
|
65
|
+
return () => {
|
|
66
|
+
for (const item of mediaQueryLists) {
|
|
67
|
+
item.mql.removeEventListener("change", updateBreakpoint);
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
}, [getInitialValueInEffect, sortedBreakpoints]);
|
|
71
|
+
return state;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
exports.useBreakpoints = useBreakpoints;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const core = require('@vef-framework/core');
|
|
7
|
+
const react = require('react');
|
|
8
|
+
|
|
9
|
+
function useCheckPermission() {
|
|
10
|
+
const { hasPermission = () => true } = core.useAppContext();
|
|
11
|
+
const checkPermission = react.useCallback(
|
|
12
|
+
(permTokens, checkMode) => core.checkPermission(hasPermission, permTokens, checkMode),
|
|
13
|
+
[hasPermission]
|
|
14
|
+
);
|
|
15
|
+
return checkPermission;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
exports.useCheckPermission = useCheckPermission;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const core = require('@vef-framework/core');
|
|
7
|
+
const shared = require('@vef-framework/shared');
|
|
8
|
+
const react = require('react');
|
|
9
|
+
|
|
10
|
+
function useDataDictQuery({
|
|
11
|
+
dataDictKey,
|
|
12
|
+
onFetch,
|
|
13
|
+
...options
|
|
14
|
+
}) {
|
|
15
|
+
const { dataDictQueryFn } = core.useAppContext();
|
|
16
|
+
if (!shared.isFunction(dataDictQueryFn)) {
|
|
17
|
+
throw new Error("Data dictionary query function is not provided in the app context.");
|
|
18
|
+
}
|
|
19
|
+
const result = core.useQuery({
|
|
20
|
+
...options,
|
|
21
|
+
queryFn: shared.isEmpty(dataDictKey) ? core.skipQueryToken : dataDictQueryFn,
|
|
22
|
+
queryKey: [dataDictQueryFn.key, dataDictKey],
|
|
23
|
+
staleTime: options?.staleTime ?? Infinity
|
|
24
|
+
});
|
|
25
|
+
const onFetchFn = react.useEffectEvent((data) => {
|
|
26
|
+
onFetch?.(data);
|
|
27
|
+
});
|
|
28
|
+
react.useEffect(() => {
|
|
29
|
+
result.promise.then(onFetchFn);
|
|
30
|
+
}, [result.promise]);
|
|
31
|
+
return result;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
exports.useDataDictQuery = useDataDictQuery;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const core = require('@vef-framework/core');
|
|
7
|
+
const shared = require('@vef-framework/shared');
|
|
8
|
+
const react = require('react');
|
|
9
|
+
const index = require('../use-data-dict-query/index.cjs');
|
|
10
|
+
|
|
11
|
+
function extractField(item, extractor, defaultKey) {
|
|
12
|
+
if (!extractor) {
|
|
13
|
+
return item[defaultKey];
|
|
14
|
+
}
|
|
15
|
+
if (shared.isFunction(extractor)) {
|
|
16
|
+
return extractor(item);
|
|
17
|
+
}
|
|
18
|
+
return shared.get(item, extractor);
|
|
19
|
+
}
|
|
20
|
+
function transformDataItem(item, options, withPinyin) {
|
|
21
|
+
const {
|
|
22
|
+
labelKey,
|
|
23
|
+
valueKey,
|
|
24
|
+
disabledKey,
|
|
25
|
+
descriptionKey,
|
|
26
|
+
childrenKey
|
|
27
|
+
} = options;
|
|
28
|
+
const label = extractField(item, labelKey, "label");
|
|
29
|
+
const value = extractField(item, valueKey, "value");
|
|
30
|
+
const disabled = extractField(item, disabledKey, "disabled");
|
|
31
|
+
const description = extractField(item, descriptionKey, "description");
|
|
32
|
+
const children = extractField(item, childrenKey, "children");
|
|
33
|
+
const option = {
|
|
34
|
+
...item,
|
|
35
|
+
label,
|
|
36
|
+
value,
|
|
37
|
+
...!shared.isNullish(disabled) && { disabled },
|
|
38
|
+
...!shared.isNullish(description) && { description }
|
|
39
|
+
};
|
|
40
|
+
const optionWithPinyin = withPinyin ? shared.withPinyin(
|
|
41
|
+
option,
|
|
42
|
+
"label",
|
|
43
|
+
"description"
|
|
44
|
+
) : option;
|
|
45
|
+
if (Array.isArray(children) && children.length > 0) {
|
|
46
|
+
optionWithPinyin.children = children.map((child) => transformDataItem(child, options, withPinyin));
|
|
47
|
+
}
|
|
48
|
+
return optionWithPinyin;
|
|
49
|
+
}
|
|
50
|
+
function transformData(data, options, withPinyin) {
|
|
51
|
+
if (!data || shared.isEmpty(data)) {
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
if (withPinyin) {
|
|
55
|
+
return data.map((item) => transformDataItem(item, options, true));
|
|
56
|
+
}
|
|
57
|
+
return data.map((item) => transformDataItem(item, options, false));
|
|
58
|
+
}
|
|
59
|
+
function useDataOptionsQuery({
|
|
60
|
+
queryOptions,
|
|
61
|
+
dataDictKey,
|
|
62
|
+
labelKey,
|
|
63
|
+
valueKey,
|
|
64
|
+
disabledKey,
|
|
65
|
+
descriptionKey,
|
|
66
|
+
childrenKey,
|
|
67
|
+
withPinyin = false
|
|
68
|
+
}) {
|
|
69
|
+
const isDataDictQuery = shared.isString(dataDictKey) && dataDictKey.length > 0;
|
|
70
|
+
const queryResult = core.useQuery({
|
|
71
|
+
...queryOptions,
|
|
72
|
+
queryFn: isDataDictQuery ? core.skipQueryToken : queryOptions?.queryFn
|
|
73
|
+
});
|
|
74
|
+
const dictQueryResult = index.useDataDictQuery({
|
|
75
|
+
dataDictKey
|
|
76
|
+
});
|
|
77
|
+
const mergedResult = isDataDictQuery ? dictQueryResult : queryResult;
|
|
78
|
+
const { data, ...result } = mergedResult;
|
|
79
|
+
const options = react.useMemo(
|
|
80
|
+
() => {
|
|
81
|
+
if (withPinyin) {
|
|
82
|
+
return transformData(
|
|
83
|
+
data,
|
|
84
|
+
{
|
|
85
|
+
labelKey,
|
|
86
|
+
valueKey,
|
|
87
|
+
disabledKey,
|
|
88
|
+
descriptionKey,
|
|
89
|
+
childrenKey
|
|
90
|
+
},
|
|
91
|
+
true
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
return transformData(
|
|
95
|
+
data,
|
|
96
|
+
{
|
|
97
|
+
labelKey,
|
|
98
|
+
valueKey,
|
|
99
|
+
disabledKey,
|
|
100
|
+
descriptionKey,
|
|
101
|
+
childrenKey
|
|
102
|
+
},
|
|
103
|
+
false
|
|
104
|
+
);
|
|
105
|
+
},
|
|
106
|
+
[
|
|
107
|
+
data,
|
|
108
|
+
labelKey,
|
|
109
|
+
valueKey,
|
|
110
|
+
disabledKey,
|
|
111
|
+
descriptionKey,
|
|
112
|
+
childrenKey,
|
|
113
|
+
withPinyin
|
|
114
|
+
]
|
|
115
|
+
);
|
|
116
|
+
return { options, ...result };
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
exports.useDataOptionsQuery = useDataOptionsQuery;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const react = require('react');
|
|
7
|
+
const index = require('../use-deep-compare/index.cjs');
|
|
8
|
+
|
|
9
|
+
function useDeepCallback(callback, dependencies) {
|
|
10
|
+
return react.useCallback(callback, index.useDeepCompare(dependencies));
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
exports.useDeepCallback = useDeepCallback;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const shared = require('@vef-framework/shared');
|
|
7
|
+
const react = require('react');
|
|
8
|
+
|
|
9
|
+
function useDeepCompare(dependencies) {
|
|
10
|
+
const ref = react.useRef(void 0);
|
|
11
|
+
const signalRef = react.useRef(0);
|
|
12
|
+
if (!deepCompare(ref.current, dependencies)) {
|
|
13
|
+
ref.current = dependencies;
|
|
14
|
+
signalRef.current += 1;
|
|
15
|
+
}
|
|
16
|
+
return [signalRef.current];
|
|
17
|
+
}
|
|
18
|
+
function deepCompare(previous, current) {
|
|
19
|
+
if (!previous || !current) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
if (Object.is(previous, current)) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
if (previous.length !== current.length) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
for (const [index, element] of previous.entries()) {
|
|
29
|
+
if (!shared.isDeepEqual(element, current[index])) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
exports.useDeepCompare = useDeepCompare;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
const react = require('react');
|
|
7
|
+
const index = require('../use-deep-compare/index.cjs');
|
|
8
|
+
|
|
9
|
+
function useDeepEffect(effect, dependencies) {
|
|
10
|
+
return react.useEffect(effect, index.useDeepCompare(dependencies));
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
exports.useDeepEffect = useDeepEffect;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/*! @vef-framework/hooks v2.0.0 made with ❤️ by Venus | 2025-11-25T10:06:31.592Z */
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
5
|
+
|
|
6
|
+
require('../lib.cjs');
|
|
7
|
+
const index = require('../use-deep-compare/index.cjs');
|
|
8
|
+
const hooks = require('@mantine/hooks');
|
|
9
|
+
|
|
10
|
+
function useDeepIsomorphicEffect(effect, dependencies) {
|
|
11
|
+
return hooks.useIsomorphicEffect(effect, index.useDeepCompare(dependencies));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
exports.useDeepIsomorphicEffect = useDeepIsomorphicEffect;
|