enr 2.0.4 → 2.0.6
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 +0 -4
- package/{cjs/components/ThemeContext/index.js → components/ThemeContext/index.cjs.js} +4 -6
- package/{es/components/ThemeContext/index.js → components/ThemeContext/index.es.js} +4 -6
- package/{cjs/components/image/index.js → components/image/index.cjs.js} +2 -2
- package/{es/components/image/index.js → components/image/index.es.js} +2 -2
- package/{cjs/components/image/useSrcChange.js → components/image/useSrcChange.cjs.js} +1 -1
- package/{es/components/image/useSrcChange.js → components/image/useSrcChange.es.js} +1 -1
- package/{cjs/components/layout/content.js → components/layout/content.cjs.js} +1 -1
- package/{es/components/layout/content.js → components/layout/content.es.js} +1 -1
- package/{cjs/components/layout/footer.js → components/layout/footer.cjs.js} +1 -1
- package/{es/components/layout/footer.js → components/layout/footer.es.js} +1 -1
- package/{cjs/components/layout/header.js → components/layout/header.cjs.js} +1 -1
- package/{es/components/layout/header.js → components/layout/header.es.js} +1 -1
- package/{cjs/components/layout/layout.js → components/layout/layout.cjs.js} +7 -9
- package/{es/components/layout/layout.js → components/layout/layout.es.js} +7 -9
- package/{cjs/components/layout/sidebar.js → components/layout/sidebar.cjs.js} +1 -1
- package/{es/components/layout/sidebar.js → components/layout/sidebar.es.js} +1 -1
- package/{es/src/components → components}/marquee/MarqueeEle.d.ts +0 -1
- package/{es/src/components → components}/menu/index.d.ts +2 -4
- package/{es/src/components → components}/menu/menu.d.ts +2 -4
- package/{cjs/components/ripples/Content.js → components/ripples/Content.cjs.js} +3 -2
- package/{es/src/components → components}/ripples/Content.d.ts +1 -0
- package/{es/components/ripples/Content.js → components/ripples/Content.es.js} +3 -2
- package/{cjs/components/ripples/LazyRippleEle.js → components/ripples/LazyRippleEle.cjs.js} +6 -8
- package/{es/src/components → components}/ripples/LazyRippleEle.d.ts +5 -8
- package/{es/components/ripples/LazyRippleEle.js → components/ripples/LazyRippleEle.es.js} +6 -8
- package/{cjs/components/ripples/RipplesEle.js → components/ripples/RipplesEle.cjs.js} +3 -9
- package/{es/src/components → components}/ripples/RipplesEle.d.ts +2 -9
- package/{es/components/ripples/RipplesEle.js → components/ripples/RipplesEle.es.js} +3 -9
- package/{cjs/components/ripples/imperative-handle.js → components/ripples/imperative-handle.cjs.js} +2 -3
- package/{es/src/components → components}/ripples/imperative-handle.d.ts +1 -2
- package/{es/components/ripples/imperative-handle.js → components/ripples/imperative-handle.es.js} +2 -3
- package/{es/src/components → components}/ripples/types.d.ts +2 -5
- package/{cjs/components/ripples/use-option-update.js → components/ripples/use-option-update.cjs.js} +1 -1
- package/{es/components/ripples/use-option-update.js → components/ripples/use-option-update.es.js} +1 -1
- package/{cjs/components/switch/index.js → components/switch/index.cjs.js} +3 -3
- package/{es/components/switch/index.js → components/switch/index.es.js} +3 -3
- package/{es/src/components → components}/type.d.ts +1 -3
- package/{cjs/customHooks/use-xcn/core.js → customHooks/use-xcn/core.cjs.js} +2 -4
- package/{es/src/customHooks → customHooks}/use-xcn/core.d.ts +2 -4
- package/{es/customHooks/use-xcn/core.js → customHooks/use-xcn/core.es.js} +2 -4
- package/{es/src/customHooks → customHooks}/use-xcn/types.d.ts +1 -3
- package/{cjs/customHooks/useAnimationFrame.js → customHooks/useAnimationFrame.cjs.js} +2 -11
- package/{es/src/customHooks → customHooks}/useAnimationFrame.d.ts +2 -11
- package/{es/customHooks/useAnimationFrame.js → customHooks/useAnimationFrame.es.js} +2 -11
- package/{cjs/customHooks/useInputIsComposing.js → customHooks/useInputIsComposing.cjs.js} +2 -8
- package/{es/src/customHooks → customHooks}/useInputIsComposing.d.ts +2 -8
- package/{es/customHooks/useInputIsComposing.js → customHooks/useInputIsComposing.es.js} +2 -8
- package/{cjs/customHooks/useRipples/class-build-background.js → customHooks/useRipples/class-build-background.cjs.js} +2 -5
- package/{es/src/customHooks → customHooks}/useRipples/class-build-background.d.ts +1 -4
- package/{es/customHooks/useRipples/class-build-background.js → customHooks/useRipples/class-build-background.es.js} +2 -5
- package/{cjs/customHooks/useRipples/class-element-environment.js → customHooks/useRipples/class-element-environment.cjs.js} +1 -3
- package/{es/src/customHooks → customHooks}/useRipples/class-element-environment.d.ts +1 -3
- package/{es/customHooks/useRipples/class-element-environment.js → customHooks/useRipples/class-element-environment.es.js} +1 -3
- package/{cjs/customHooks/useRipples/class-event-action.js → customHooks/useRipples/class-event-action.cjs.js} +2 -3
- package/{es/src/customHooks → customHooks}/useRipples/class-event-action.d.ts +2 -3
- package/{es/customHooks/useRipples/class-event-action.js → customHooks/useRipples/class-event-action.es.js} +2 -3
- package/{cjs/customHooks/useRipples/class-html-element-meta.js → customHooks/useRipples/class-html-element-meta.cjs.js} +2 -4
- package/{es/src/customHooks → customHooks}/useRipples/class-html-element-meta.d.ts +1 -3
- package/{es/customHooks/useRipples/class-html-element-meta.js → customHooks/useRipples/class-html-element-meta.es.js} +2 -4
- package/{cjs/customHooks/useRipples/class-param.js → customHooks/useRipples/class-param.cjs.js} +2 -4
- package/{es/src/customHooks → customHooks}/useRipples/class-param.d.ts +1 -3
- package/{es/customHooks/useRipples/class-param.js → customHooks/useRipples/class-param.es.js} +2 -4
- package/{cjs/customHooks/useRipples/class-render-action.js → customHooks/useRipples/class-render-action.cjs.js} +2 -4
- package/{es/src/customHooks → customHooks}/useRipples/class-render-action.d.ts +1 -3
- package/{es/customHooks/useRipples/class-render-action.js → customHooks/useRipples/class-render-action.es.js} +2 -4
- package/{cjs/customHooks/useRipples/class-render-data.js → customHooks/useRipples/class-render-data.cjs.js} +1 -3
- package/{es/src/customHooks → customHooks}/useRipples/class-render-data.d.ts +2 -4
- package/{es/customHooks/useRipples/class-render-data.js → customHooks/useRipples/class-render-data.es.js} +1 -3
- package/{cjs/customHooks/useRipples/class-ripple.js → customHooks/useRipples/class-ripple.cjs.js} +10 -15
- package/{es/src/customHooks → customHooks}/useRipples/class-ripple.d.ts +1 -6
- package/{es/customHooks/useRipples/class-ripple.js → customHooks/useRipples/class-ripple.es.js} +10 -15
- package/{cjs/customHooks/useRipples/class-webgl.js → customHooks/useRipples/class-webgl.cjs.js} +1 -3
- package/{es/src/customHooks → customHooks}/useRipples/class-webgl.d.ts +1 -3
- package/{es/customHooks/useRipples/class-webgl.js → customHooks/useRipples/class-webgl.es.js} +1 -3
- package/{cjs/customHooks/useRipples/data-default.js → customHooks/useRipples/data-default.cjs.js} +3 -1
- package/{es/src/customHooks → customHooks}/useRipples/data-default.d.ts +10 -1
- package/{es/customHooks/useRipples/data-default.js → customHooks/useRipples/data-default.es.js} +3 -1
- package/{cjs/customHooks/useRipples/index.js → customHooks/useRipples/index.cjs.js} +2 -11
- package/{es/src/customHooks → customHooks}/useRipples/index.d.ts +0 -19
- package/{es/customHooks/useRipples/index.js → customHooks/useRipples/index.es.js} +2 -11
- package/{cjs/customHooks/useRipples/tools.js → customHooks/useRipples/tools.cjs.js} +1 -2
- package/{es/src/customHooks → customHooks}/useRipples/tools.d.ts +1 -2
- package/{es/customHooks/useRipples/tools.js → customHooks/useRipples/tools.es.js} +1 -2
- package/{cjs/customHooks/useRipples/use-lazy-ripple.js → customHooks/useRipples/use-lazy-ripple.cjs.js} +9 -3
- package/{es/src/customHooks → customHooks}/useRipples/use-lazy-ripple.d.ts +1 -1
- package/{es/customHooks/useRipples/use-lazy-ripple.js → customHooks/useRipples/use-lazy-ripple.es.js} +9 -3
- package/{es/src/customHooks → customHooks}/useRipples/util-decoration-observable.d.ts +2 -6
- package/{cjs/customHooks/useTimeId.js → customHooks/useTimeId.cjs.js} +4 -17
- package/{es/src/customHooks → customHooks}/useTimeId.d.ts +2 -17
- package/{es/customHooks/useTimeId.js → customHooks/useTimeId.es.js} +4 -17
- package/{cjs/index.js → index.cjs.js} +17 -17
- package/{es/index.js → index.es.js} +17 -17
- package/package.json +24 -17
- package/{cjs/shared/dist/es/cookie.js → shared/dist/es/cookie.cjs.js} +10 -8
- package/{es/shared/dist/es/cookie.js → shared/dist/es/cookie.es.js} +10 -8
- package/{cjs/shared/dist/es/log-production.js → shared/dist/es/log-production.cjs.js} +1 -1
- package/{es/shared/dist/es/log-production.js → shared/dist/es/log-production.es.js} +1 -1
- package/{cjs/shared/dist/es/storage-store.js → shared/dist/es/storage-store.cjs.js} +1 -1
- package/{es/shared/dist/es/storage-store.js → shared/dist/es/storage-store.es.js} +1 -1
- package/styles/text.scss +2 -2
- /package/{cjs/components/Details/index.js → components/Details/index.cjs.js} +0 -0
- /package/{es/src/components → components}/Details/index.d.ts +0 -0
- /package/{es/components/Details/index.js → components/Details/index.es.js} +0 -0
- /package/{es/src/components → components}/ThemeContext/index.d.ts +0 -0
- /package/{es/src/components → components}/ThemeContext/types.d.ts +0 -0
- /package/{es/src/components → components}/button/button.d.ts +0 -0
- /package/{es/src/components → components}/button/index.d.ts +0 -0
- /package/{cjs/components/image/default.png.js → components/image/default.png.cjs.js} +0 -0
- /package/{es/components/image/default.png.js → components/image/default.png.es.js} +0 -0
- /package/{es/src/components → components}/image/index.d.ts +0 -0
- /package/{es/src/components → components}/image/useSrcChange.d.ts +0 -0
- /package/{es/src/components → components}/layout/content.d.ts +0 -0
- /package/{es/src/components → components}/layout/footer.d.ts +0 -0
- /package/{es/src/components → components}/layout/header.d.ts +0 -0
- /package/{es/src/components → components}/layout/index.d.ts +0 -0
- /package/{es/src/components → components}/layout/layout.d.ts +0 -0
- /package/{es/src/components → components}/layout/sidebar.d.ts +0 -0
- /package/{es/src/components → components}/layout/types.d.ts +0 -0
- /package/{cjs/components/layout/utils.js → components/layout/utils.cjs.js} +0 -0
- /package/{es/src/components → components}/layout/utils.d.ts +0 -0
- /package/{es/components/layout/utils.js → components/layout/utils.es.js} +0 -0
- /package/{es/src/components → components}/marquee/index.d.ts +0 -0
- /package/{es/src/components → components}/ripples/index.d.ts +0 -0
- /package/{es/src/components → components}/ripples/use-option-update.d.ts +0 -0
- /package/{cjs/components/shared/EnLayoutContent/index.js → components/shared/EnLayoutContent/index.cjs.js} +0 -0
- /package/{es/src/components → components}/shared/EnLayoutContent/index.d.ts +0 -0
- /package/{es/components/shared/EnLayoutContent/index.js → components/shared/EnLayoutContent/index.es.js} +0 -0
- /package/{es/src/components → components}/shared/EnLayoutContent/types.d.ts +0 -0
- /package/{cjs/components/switch/SwitchContainer.js → components/switch/SwitchContainer.cjs.js} +0 -0
- /package/{es/src/components → components}/switch/SwitchContainer.d.ts +0 -0
- /package/{es/components/switch/SwitchContainer.js → components/switch/SwitchContainer.es.js} +0 -0
- /package/{cjs/components/switch/SwitchContent.js → components/switch/SwitchContent.cjs.js} +0 -0
- /package/{es/src/components → components}/switch/SwitchContent.d.ts +0 -0
- /package/{es/components/switch/SwitchContent.js → components/switch/SwitchContent.es.js} +0 -0
- /package/{cjs/components/switch/SwitchLabel.js → components/switch/SwitchLabel.cjs.js} +0 -0
- /package/{es/src/components → components}/switch/SwitchLabel.d.ts +0 -0
- /package/{es/components/switch/SwitchLabel.js → components/switch/SwitchLabel.es.js} +0 -0
- /package/{es/src/components → components}/switch/index.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/use-xcn/css.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/use-xcn/index.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/use-xcn/reset-css.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/useRipples/ripple.html.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/useRipples/types.d.ts +0 -0
- /package/{es/src/customHooks → customHooks}/useRipples/util-scale.d.ts +0 -0
- /package/{es/src/index.client.d.ts → index.client.d.ts} +0 -0
- /package/{es/src/index.d.ts → index.d.ts} +0 -0
- /package/{es/src/index.server.d.ts → index.server.d.ts} +0 -0
- /package/{es/src/index.umd.d.ts → index.umd.d.ts} +0 -0
- /package/{cjs/shared/dist/es/node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.js → shared/dist/es/node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.cjs.js} +0 -0
- /package/{es/shared/dist/es/node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.js → shared/dist/es/node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.es.js} +0 -0
- /package/{cjs/shared/dist/es/storage.js → shared/dist/es/storage.cjs.js} +0 -0
- /package/{es/shared/dist/es/storage.js → shared/dist/es/storage.es.js} +0 -0
- /package/{cjs/shared/dist/es/sys.js → shared/dist/es/sys.cjs.js} +0 -0
- /package/{es/shared/dist/es/sys.js → shared/dist/es/sys.es.js} +0 -0
|
@@ -3,7 +3,7 @@ import { isNull } from 'a-type-of-js';
|
|
|
3
3
|
import { useRef, useState, useEffect } from 'react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* ## 懒加载使用涟漪 hook
|
|
7
7
|
* @param canvas
|
|
8
8
|
* @param option
|
|
9
9
|
*/
|
|
@@ -18,6 +18,8 @@ function useLazyRipples(canvas, option) {
|
|
|
18
18
|
const [isLoading, setIsLoading] = useState(false);
|
|
19
19
|
// 错误状态
|
|
20
20
|
const [error, setError] = useState(null);
|
|
21
|
+
// 参数
|
|
22
|
+
const optionRef = useRef(option);
|
|
21
23
|
/** 卸载 */
|
|
22
24
|
function unmounted() {
|
|
23
25
|
isUnmounted.current = true;
|
|
@@ -28,6 +30,10 @@ function useLazyRipples(canvas, option) {
|
|
|
28
30
|
}
|
|
29
31
|
}, 0);
|
|
30
32
|
}
|
|
33
|
+
// 更新 option,防止加载 option 为旧数据
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
optionRef.current = option;
|
|
36
|
+
}, [option]);
|
|
31
37
|
useEffect(() => {
|
|
32
38
|
isUnmounted.current = false;
|
|
33
39
|
/** 非空检验(这里一般都是有值的,除非故障) */
|
|
@@ -37,12 +43,12 @@ function useLazyRipples(canvas, option) {
|
|
|
37
43
|
// 设置加载状态
|
|
38
44
|
setIsLoading(true);
|
|
39
45
|
isLoaded.current = true;
|
|
40
|
-
import('./class-ripple.js')
|
|
46
|
+
import('./class-ripple.es.js')
|
|
41
47
|
.then(module => {
|
|
42
48
|
if (isNull(canvas.current) || isUnmounted.current) {
|
|
43
49
|
return;
|
|
44
50
|
}
|
|
45
|
-
ripples.current = new module.Ripples(canvas.current,
|
|
51
|
+
ripples.current = new module.Ripples(canvas.current, optionRef.current);
|
|
46
52
|
return;
|
|
47
53
|
})
|
|
48
54
|
.catch(err => {
|
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module @enr/decoration-observable
|
|
3
|
-
* @file decoration-observable.ts
|
|
3
|
+
* @file util-decoration-observable.ts
|
|
4
4
|
* @description 监听者装饰器 「由于决定采用更*麻烦*的状态管理模式(@qqi/state),所以该文件并未被使用」
|
|
5
5
|
* @author MrMudBean <Mr.MudBean@outlook.com>
|
|
6
|
-
* @license MIT
|
|
7
6
|
* @copyright 2026 ©️ MrMudBean
|
|
8
7
|
* @since 2026-01-26 10:01
|
|
9
8
|
* @version 2.0.0-alpha.0
|
|
10
|
-
* @lastModified 2026-
|
|
11
|
-
*
|
|
12
|
-
*
|
|
9
|
+
* @lastModified 2026-03-25 19:11
|
|
13
10
|
*/
|
|
14
11
|
/**
|
|
15
12
|
* ## 用于订阅模式的监听者装饰器
|
|
16
13
|
* @param target 对象
|
|
17
14
|
* @param key 键
|
|
18
|
-
*
|
|
19
15
|
* @example
|
|
20
16
|
* ```ts
|
|
21
17
|
* // 数据类
|
|
@@ -8,24 +8,17 @@ var react = require('react');
|
|
|
8
8
|
* @file useTimeId.ts
|
|
9
9
|
* @description 使用定时器返回的时间戳
|
|
10
10
|
* @author MrMudBean <Mr.MudBean@outlook.com>
|
|
11
|
-
* @license MIT
|
|
12
11
|
* @copyright 2026 ©️ MrMudBean
|
|
13
12
|
* @since 2025-01-07 11:20
|
|
14
13
|
* @version 2.0.0-alpha.0
|
|
15
|
-
* @lastModified 2026-
|
|
14
|
+
* @lastModified 2026-03-25 19:11
|
|
16
15
|
*/
|
|
17
16
|
/**
|
|
18
|
-
*
|
|
19
17
|
* ### 导出一个使用 `useRef` 创建的 `NodeJS.Timeout`
|
|
20
|
-
*
|
|
21
18
|
* 该数值在组件卸载时会自动调用 `clearTimeout` 清理
|
|
22
|
-
*
|
|
23
19
|
* @version 0.0.3
|
|
24
20
|
* @see https://lmssee.com/custom-hooks/use-time-id
|
|
25
21
|
* @example
|
|
26
|
-
*
|
|
27
|
-
* 使用:
|
|
28
|
-
*
|
|
29
22
|
* ```ts
|
|
30
23
|
* // import { useTimeId } from 'enr';
|
|
31
24
|
* ...
|
|
@@ -37,13 +30,9 @@ var react = require('react');
|
|
|
37
30
|
* } ,delay);
|
|
38
31
|
* });
|
|
39
32
|
* ...
|
|
40
|
-
*
|
|
41
33
|
* ```
|
|
42
|
-
*
|
|
43
34
|
* 其实,正确的用法是这样的:
|
|
44
|
-
*
|
|
45
35
|
* ```ts
|
|
46
|
-
*
|
|
47
36
|
* useEffect(()=>{
|
|
48
37
|
* const timeId = setTimeout(()=>{
|
|
49
38
|
* ...
|
|
@@ -51,15 +40,13 @@ var react = require('react');
|
|
|
51
40
|
*
|
|
52
41
|
* return ()=> timeId && clearTimeout(timeId);
|
|
53
42
|
* });
|
|
54
|
-
*
|
|
55
43
|
* ```
|
|
56
|
-
*
|
|
57
|
-
* 根本就不用引入这个自定义 `hook` , 哈哈哈哈哈
|
|
58
|
-
*
|
|
59
44
|
*/
|
|
60
45
|
function useTimeId() {
|
|
61
46
|
const timeId = react.useRef(undefined);
|
|
62
|
-
react.useEffect(() => () =>
|
|
47
|
+
react.useEffect(() => () => {
|
|
48
|
+
timeId.current && clearTimeout(timeId.current);
|
|
49
|
+
}, []);
|
|
63
50
|
return timeId;
|
|
64
51
|
}
|
|
65
52
|
|
|
@@ -3,24 +3,17 @@
|
|
|
3
3
|
* @file useTimeId.ts
|
|
4
4
|
* @description 使用定时器返回的时间戳
|
|
5
5
|
* @author MrMudBean <Mr.MudBean@outlook.com>
|
|
6
|
-
* @license MIT
|
|
7
6
|
* @copyright 2026 ©️ MrMudBean
|
|
8
7
|
* @since 2025-01-07 11:20
|
|
9
8
|
* @version 2.0.0-alpha.0
|
|
10
|
-
* @lastModified 2026-
|
|
9
|
+
* @lastModified 2026-03-25 19:11
|
|
11
10
|
*/
|
|
12
11
|
/**
|
|
13
|
-
*
|
|
14
12
|
* ### 导出一个使用 `useRef` 创建的 `NodeJS.Timeout`
|
|
15
|
-
*
|
|
16
13
|
* 该数值在组件卸载时会自动调用 `clearTimeout` 清理
|
|
17
|
-
*
|
|
18
14
|
* @version 0.0.3
|
|
19
15
|
* @see https://lmssee.com/custom-hooks/use-time-id
|
|
20
16
|
* @example
|
|
21
|
-
*
|
|
22
|
-
* 使用:
|
|
23
|
-
*
|
|
24
17
|
* ```ts
|
|
25
18
|
* // import { useTimeId } from 'enr';
|
|
26
19
|
* ...
|
|
@@ -32,13 +25,9 @@
|
|
|
32
25
|
* } ,delay);
|
|
33
26
|
* });
|
|
34
27
|
* ...
|
|
35
|
-
*
|
|
36
28
|
* ```
|
|
37
|
-
*
|
|
38
29
|
* 其实,正确的用法是这样的:
|
|
39
|
-
*
|
|
40
30
|
* ```ts
|
|
41
|
-
*
|
|
42
31
|
* useEffect(()=>{
|
|
43
32
|
* const timeId = setTimeout(()=>{
|
|
44
33
|
* ...
|
|
@@ -46,10 +35,6 @@
|
|
|
46
35
|
*
|
|
47
36
|
* return ()=> timeId && clearTimeout(timeId);
|
|
48
37
|
* });
|
|
49
|
-
*
|
|
50
38
|
* ```
|
|
51
|
-
*
|
|
52
|
-
* 根本就不用引入这个自定义 `hook` , 哈哈哈哈哈
|
|
53
|
-
*
|
|
54
39
|
*/
|
|
55
|
-
export declare function useTimeId(): import("react").RefObject<
|
|
40
|
+
export declare function useTimeId(): import("react").RefObject<number | undefined>;
|
|
@@ -6,24 +6,17 @@ import { useRef, useEffect } from 'react';
|
|
|
6
6
|
* @file useTimeId.ts
|
|
7
7
|
* @description 使用定时器返回的时间戳
|
|
8
8
|
* @author MrMudBean <Mr.MudBean@outlook.com>
|
|
9
|
-
* @license MIT
|
|
10
9
|
* @copyright 2026 ©️ MrMudBean
|
|
11
10
|
* @since 2025-01-07 11:20
|
|
12
11
|
* @version 2.0.0-alpha.0
|
|
13
|
-
* @lastModified 2026-
|
|
12
|
+
* @lastModified 2026-03-25 19:11
|
|
14
13
|
*/
|
|
15
14
|
/**
|
|
16
|
-
*
|
|
17
15
|
* ### 导出一个使用 `useRef` 创建的 `NodeJS.Timeout`
|
|
18
|
-
*
|
|
19
16
|
* 该数值在组件卸载时会自动调用 `clearTimeout` 清理
|
|
20
|
-
*
|
|
21
17
|
* @version 0.0.3
|
|
22
18
|
* @see https://lmssee.com/custom-hooks/use-time-id
|
|
23
19
|
* @example
|
|
24
|
-
*
|
|
25
|
-
* 使用:
|
|
26
|
-
*
|
|
27
20
|
* ```ts
|
|
28
21
|
* // import { useTimeId } from 'enr';
|
|
29
22
|
* ...
|
|
@@ -35,13 +28,9 @@ import { useRef, useEffect } from 'react';
|
|
|
35
28
|
* } ,delay);
|
|
36
29
|
* });
|
|
37
30
|
* ...
|
|
38
|
-
*
|
|
39
31
|
* ```
|
|
40
|
-
*
|
|
41
32
|
* 其实,正确的用法是这样的:
|
|
42
|
-
*
|
|
43
33
|
* ```ts
|
|
44
|
-
*
|
|
45
34
|
* useEffect(()=>{
|
|
46
35
|
* const timeId = setTimeout(()=>{
|
|
47
36
|
* ...
|
|
@@ -49,15 +38,13 @@ import { useRef, useEffect } from 'react';
|
|
|
49
38
|
*
|
|
50
39
|
* return ()=> timeId && clearTimeout(timeId);
|
|
51
40
|
* });
|
|
52
|
-
*
|
|
53
41
|
* ```
|
|
54
|
-
*
|
|
55
|
-
* 根本就不用引入这个自定义 `hook` , 哈哈哈哈哈
|
|
56
|
-
*
|
|
57
42
|
*/
|
|
58
43
|
function useTimeId() {
|
|
59
44
|
const timeId = useRef(undefined);
|
|
60
|
-
useEffect(() => () =>
|
|
45
|
+
useEffect(() => () => {
|
|
46
|
+
timeId.current && clearTimeout(timeId.current);
|
|
47
|
+
}, []);
|
|
61
48
|
return timeId;
|
|
62
49
|
}
|
|
63
50
|
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var useLazyRipple = require('./customHooks/useRipples/use-lazy-ripple.js');
|
|
4
|
-
var useTimeId = require('./customHooks/useTimeId.js');
|
|
5
|
-
var useAnimationFrame = require('./customHooks/useAnimationFrame.js');
|
|
6
|
-
var useInputIsComposing = require('./customHooks/useInputIsComposing.js');
|
|
7
|
-
var index$4 = require('./customHooks/useRipples/index.js');
|
|
8
|
-
var index$1 = require('./components/image/index.js');
|
|
9
|
-
var index$3 = require('./components/ThemeContext/index.js');
|
|
10
|
-
var index$2 = require('./components/switch/index.js');
|
|
11
|
-
var index = require('./components/Details/index.js');
|
|
12
|
-
var RipplesEle = require('./components/ripples/RipplesEle.js');
|
|
13
|
-
var LazyRippleEle = require('./components/ripples/LazyRippleEle.js');
|
|
14
|
-
var core = require('./customHooks/use-xcn/core.js');
|
|
15
|
-
var layout = require('./components/layout/layout.js');
|
|
16
|
-
var content = require('./components/layout/content.js');
|
|
17
|
-
var footer = require('./components/layout/footer.js');
|
|
18
|
-
var header = require('./components/layout/header.js');
|
|
19
|
-
var sidebar = require('./components/layout/sidebar.js');
|
|
3
|
+
var useLazyRipple = require('./customHooks/useRipples/use-lazy-ripple.cjs.js');
|
|
4
|
+
var useTimeId = require('./customHooks/useTimeId.cjs.js');
|
|
5
|
+
var useAnimationFrame = require('./customHooks/useAnimationFrame.cjs.js');
|
|
6
|
+
var useInputIsComposing = require('./customHooks/useInputIsComposing.cjs.js');
|
|
7
|
+
var index$4 = require('./customHooks/useRipples/index.cjs.js');
|
|
8
|
+
var index$1 = require('./components/image/index.cjs.js');
|
|
9
|
+
var index$3 = require('./components/ThemeContext/index.cjs.js');
|
|
10
|
+
var index$2 = require('./components/switch/index.cjs.js');
|
|
11
|
+
var index = require('./components/Details/index.cjs.js');
|
|
12
|
+
var RipplesEle = require('./components/ripples/RipplesEle.cjs.js');
|
|
13
|
+
var LazyRippleEle = require('./components/ripples/LazyRippleEle.cjs.js');
|
|
14
|
+
var core = require('./customHooks/use-xcn/core.cjs.js');
|
|
15
|
+
var layout = require('./components/layout/layout.cjs.js');
|
|
16
|
+
var content = require('./components/layout/content.cjs.js');
|
|
17
|
+
var footer = require('./components/layout/footer.cjs.js');
|
|
18
|
+
var header = require('./components/layout/header.cjs.js');
|
|
19
|
+
var sidebar = require('./components/layout/sidebar.cjs.js');
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { useLazyRipples } from './customHooks/useRipples/use-lazy-ripple.js';
|
|
2
|
-
export { useTimeId } from './customHooks/useTimeId.js';
|
|
3
|
-
export { useAnimationFrame } from './customHooks/useAnimationFrame.js';
|
|
4
|
-
export { useInputIsComposing } from './customHooks/useInputIsComposing.js';
|
|
5
|
-
export { useRipples } from './customHooks/useRipples/index.js';
|
|
6
|
-
export { Image as EnImage, Image } from './components/image/index.js';
|
|
7
|
-
export { ThemeColorModeProvider, useColorMode } from './components/ThemeContext/index.js';
|
|
8
|
-
export { Switch as EnSwitch, Switch } from './components/switch/index.js';
|
|
9
|
-
export { Details, Details as EnDetails } from './components/Details/index.js';
|
|
10
|
-
export { BackgroundRipple } from './components/ripples/RipplesEle.js';
|
|
11
|
-
export { LazyBackgroundRipple } from './components/ripples/LazyRippleEle.js';
|
|
12
|
-
export { _en, _en as en, _en as enc } from './customHooks/use-xcn/core.js';
|
|
13
|
-
export { Layout as EnLayout, Layout } from './components/layout/layout.js';
|
|
14
|
-
export { InternalValueC as EnLayoutContent, InternalValueC as LayoutContent } from './components/layout/content.js';
|
|
15
|
-
export { InternalValueF as EnLayoutFooter, InternalValueF as LayoutFooter } from './components/layout/footer.js';
|
|
16
|
-
export { InternalValueH as EnLayoutHeader, InternalValueH as LayoutHeader } from './components/layout/header.js';
|
|
17
|
-
export { InternalValueS as EnLayoutSideBar, InternalValueS as LayoutSideBar } from './components/layout/sidebar.js';
|
|
1
|
+
export { useLazyRipples } from './customHooks/useRipples/use-lazy-ripple.es.js';
|
|
2
|
+
export { useTimeId } from './customHooks/useTimeId.es.js';
|
|
3
|
+
export { useAnimationFrame } from './customHooks/useAnimationFrame.es.js';
|
|
4
|
+
export { useInputIsComposing } from './customHooks/useInputIsComposing.es.js';
|
|
5
|
+
export { useRipples } from './customHooks/useRipples/index.es.js';
|
|
6
|
+
export { Image as EnImage, Image } from './components/image/index.es.js';
|
|
7
|
+
export { ThemeColorModeProvider, useColorMode } from './components/ThemeContext/index.es.js';
|
|
8
|
+
export { Switch as EnSwitch, Switch } from './components/switch/index.es.js';
|
|
9
|
+
export { Details, Details as EnDetails } from './components/Details/index.es.js';
|
|
10
|
+
export { BackgroundRipple } from './components/ripples/RipplesEle.es.js';
|
|
11
|
+
export { LazyBackgroundRipple } from './components/ripples/LazyRippleEle.es.js';
|
|
12
|
+
export { _en, _en as en, _en as enc } from './customHooks/use-xcn/core.es.js';
|
|
13
|
+
export { Layout as EnLayout, Layout } from './components/layout/layout.es.js';
|
|
14
|
+
export { InternalValueC as EnLayoutContent, InternalValueC as LayoutContent } from './components/layout/content.es.js';
|
|
15
|
+
export { InternalValueF as EnLayoutFooter, InternalValueF as LayoutFooter } from './components/layout/footer.es.js';
|
|
16
|
+
export { InternalValueH as EnLayoutHeader, InternalValueH as LayoutHeader } from './components/layout/header.es.js';
|
|
17
|
+
export { InternalValueS as EnLayoutSideBar, InternalValueS as LayoutSideBar } from './components/layout/sidebar.es.js';
|
package/package.json
CHANGED
|
@@ -1,44 +1,51 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
3
|
"name": "enr",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.6",
|
|
5
5
|
"description": "一个简单的 ui",
|
|
6
6
|
"peerDependencies": {
|
|
7
7
|
"react": "^19.1.0",
|
|
8
8
|
"react-dom": "^19.1.0"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"
|
|
12
|
-
"@babel/runtime": "^7.28.6",
|
|
11
|
+
"@babel/runtime": "^7.29.2",
|
|
13
12
|
"@qqi/state": "^0.0.0",
|
|
14
|
-
"a-element-inline-style": "^1.0.
|
|
15
|
-
"a-js-tools": "^2.0.
|
|
16
|
-
"a-type-of-js": "^2.0.
|
|
17
|
-
"
|
|
13
|
+
"a-element-inline-style": "^1.0.2",
|
|
14
|
+
"a-js-tools": "^2.0.2",
|
|
15
|
+
"a-type-of-js": "^2.0.1",
|
|
16
|
+
"styled-component": "^2.6.0",
|
|
17
|
+
"xcn": "^1.1.2"
|
|
18
18
|
},
|
|
19
19
|
"sideEffects": [
|
|
20
20
|
"*.scss",
|
|
21
21
|
"*.css"
|
|
22
22
|
],
|
|
23
|
-
"main": "
|
|
24
|
-
"module": "
|
|
25
|
-
"types": "
|
|
23
|
+
"main": "index.cjs.js",
|
|
24
|
+
"module": "index.es.js",
|
|
25
|
+
"types": "index.d.ts",
|
|
26
26
|
"author": {
|
|
27
27
|
"name": "泥豆君",
|
|
28
28
|
"email": "Mr.MudBean@outlook.com",
|
|
29
29
|
"url": "https://lmssee.com"
|
|
30
30
|
},
|
|
31
31
|
"files": [
|
|
32
|
+
"components",
|
|
33
|
+
"customHooks",
|
|
34
|
+
"shared",
|
|
32
35
|
"styles",
|
|
33
|
-
"cjs",
|
|
34
|
-
"
|
|
36
|
+
"index.cjs.js",
|
|
37
|
+
"index.client.d.ts",
|
|
38
|
+
"index.d.ts",
|
|
39
|
+
"index.es.js",
|
|
40
|
+
"index.server.d.ts",
|
|
41
|
+
"index.umd.d.ts",
|
|
35
42
|
"LICENSE",
|
|
36
43
|
"README.md"
|
|
37
44
|
],
|
|
38
45
|
"keywords": [
|
|
39
46
|
"enr"
|
|
40
47
|
],
|
|
41
|
-
"homepage": "https://lmssee.com/
|
|
48
|
+
"homepage": "https://lmssee.com/enr",
|
|
42
49
|
"bugs": {
|
|
43
50
|
"url": "https://github.com/MrMudBean/enr/issues",
|
|
44
51
|
"email": "Mr.MudBean@outlook.com"
|
|
@@ -55,10 +62,10 @@
|
|
|
55
62
|
"license": "MIT",
|
|
56
63
|
"exports": {
|
|
57
64
|
".": {
|
|
58
|
-
"default": "./
|
|
59
|
-
"require": "./
|
|
60
|
-
"import": "./
|
|
61
|
-
"types": "./
|
|
65
|
+
"default": "./index.es.js",
|
|
66
|
+
"require": "./index.cjs.js",
|
|
67
|
+
"import": "./index.es.js",
|
|
68
|
+
"types": "./index.d.ts"
|
|
62
69
|
},
|
|
63
70
|
"./common.scss": "./styles/common.scss",
|
|
64
71
|
"./common.css": "./styles/common.css",
|
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
var aTypeOfJs = require('a-type-of-js');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
|
|
5
|
+
/**
|
|
6
|
+
* @module @zza/cookie
|
|
7
|
+
* @file cookie.ts
|
|
8
|
+
* @description cookie 管理
|
|
9
|
+
* @author Mr.MudBean <Mr.MudBean@outlook.com>
|
|
10
|
+
* @copyright 2026 ©️ Mr.MudBean
|
|
11
|
+
* @since 01/10/2025
|
|
12
|
+
* @version 0.0.0
|
|
13
|
+
* @lastModified 2026-03-25 16:10
|
|
14
|
+
*/
|
|
13
15
|
const manageCookie = {
|
|
14
16
|
getItem(keyItem) {
|
|
15
17
|
return (decodeURIComponent(document.cookie.replace(new RegExp('(?:(?:^|.*;)\\s*' +
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { typeOf } from 'a-type-of-js';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
|
|
3
|
+
/**
|
|
4
|
+
* @module @zza/cookie
|
|
5
|
+
* @file cookie.ts
|
|
6
|
+
* @description cookie 管理
|
|
7
|
+
* @author Mr.MudBean <Mr.MudBean@outlook.com>
|
|
8
|
+
* @copyright 2026 ©️ Mr.MudBean
|
|
9
|
+
* @since 01/10/2025
|
|
10
|
+
* @version 0.0.0
|
|
11
|
+
* @lastModified 2026-03-25 16:10
|
|
12
|
+
*/
|
|
11
13
|
const manageCookie = {
|
|
12
14
|
getItem(keyItem) {
|
|
13
15
|
return (decodeURIComponent(document.cookie.replace(new RegExp('(?:(?:^|.*;)\\s*' +
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DogVirtual as DogVirtualConstructor } from './node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.js';
|
|
1
|
+
import { DogVirtual as DogVirtualConstructor } from './node_modules/.pnpm/@qqi_log@1.1.4/node_modules/@qqi/log/es/virtual-dog.es.js';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* @packageDocumentation
|
package/styles/text.scss
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{cjs/components/switch/SwitchContainer.js → components/switch/SwitchContainer.cjs.js}
RENAMED
|
File without changes
|
|
File without changes
|
/package/{es/components/switch/SwitchContainer.js → components/switch/SwitchContainer.es.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|