enr 0.2.3-alpha.2

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.
Files changed (109) hide show
  1. package/209.mjs +10 -0
  2. package/209.mjs.map +1 -0
  3. package/LICENSE +25 -0
  4. package/README.md +139 -0
  5. package/client.mjs +10 -0
  6. package/components/ThemeContext/index.d.ts +11 -0
  7. package/components/ThemeContext/types.d.ts +26 -0
  8. package/components/button/button.d.ts +10 -0
  9. package/components/button/index.d.ts +9 -0
  10. package/components/image/index.d.ts +11 -0
  11. package/components/image/types.d.ts +13 -0
  12. package/components/image/useSrcChange.d.ts +11 -0
  13. package/components/layout/content.d.ts +17 -0
  14. package/components/layout/footer.d.ts +21 -0
  15. package/components/layout/get-value.d.ts +10 -0
  16. package/components/layout/header.d.ts +23 -0
  17. package/components/layout/index.d.ts +8 -0
  18. package/components/layout/is-fragment.d.ts +9 -0
  19. package/components/layout/layout.d.ts +55 -0
  20. package/components/layout/sidebar.d.ts +29 -0
  21. package/components/layout/types.d.ts +99 -0
  22. package/components/marquee/MarqueeEle.d.ts +15 -0
  23. package/components/marquee/index.d.ts +7 -0
  24. package/components/marquee/type.d.ts +9 -0
  25. package/components/menu/index.d.ts +6 -0
  26. package/components/menu/menu.d.ts +6 -0
  27. package/components/ripples/Content.d.ts +8 -0
  28. package/components/ripples/LazyRippleEle.d.ts +42 -0
  29. package/components/ripples/RipplesEle.d.ts +42 -0
  30. package/components/ripples/index.d.ts +11 -0
  31. package/components/ripples/types.d.ts +17 -0
  32. package/components/ripples/useOptionUpdate.d.ts +12 -0
  33. package/components/shared/EnLayoutContent/index.d.ts +19 -0
  34. package/components/shared/EnLayoutContent/types.d.ts +17 -0
  35. package/components/switch/SwitchContainer.d.ts +7 -0
  36. package/components/switch/SwitchContent.d.ts +10 -0
  37. package/components/switch/SwitchLabel.d.ts +9 -0
  38. package/components/switch/index.d.ts +14 -0
  39. package/customHooks/use-xcn/index.d.ts +14 -0
  40. package/customHooks/useAnimationFrame.d.ts +58 -0
  41. package/customHooks/useInputIsComposing.d.ts +44 -0
  42. package/customHooks/useRipples/buildBackground/create-background-color.d.ts +9 -0
  43. package/customHooks/useRipples/buildBackground/create-linear-gradient.d.ts +9 -0
  44. package/customHooks/useRipples/buildBackground/default-background/_createImageData.d.ts +13 -0
  45. package/customHooks/useRipples/buildBackground/default-background/circleDataList.d.ts +24 -0
  46. package/customHooks/useRipples/buildBackground/default-background/createCanvasElementBySize.d.ts +8 -0
  47. package/customHooks/useRipples/buildBackground/default-background/createDefault.d.ts +8 -0
  48. package/customHooks/useRipples/buildBackground/default-background/index.d.ts +18 -0
  49. package/customHooks/useRipples/buildBackground/load-image.d.ts +19 -0
  50. package/customHooks/useRipples/buildBackground/run-side.d.ts +15 -0
  51. package/customHooks/useRipples/buildBackground/type.d.ts +37 -0
  52. package/customHooks/useRipples/buildBackground/utils/bind-image.d.ts +10 -0
  53. package/customHooks/useRipples/buildBackground/utils/create-canvas-element.d.ts +9 -0
  54. package/customHooks/useRipples/buildBackground/utils/create-image-by-src.d.ts +8 -0
  55. package/customHooks/useRipples/buildBackground/utils/get-background-style.d.ts +9 -0
  56. package/customHooks/useRipples/buildBackground/utils/hide-css-background.d.ts +16 -0
  57. package/customHooks/useRipples/buildBackground/utils/restore-css-background.d.ts +13 -0
  58. package/customHooks/useRipples/callback/can-side.d.ts +14 -0
  59. package/customHooks/useRipples/callback/destroy.d.ts +9 -0
  60. package/customHooks/useRipples/callback/drop.d.ts +9 -0
  61. package/customHooks/useRipples/callback/extract-url.d.ts +8 -0
  62. package/customHooks/useRipples/callback/fade.d.ts +9 -0
  63. package/customHooks/useRipples/callback/get-new-image.d.ts +14 -0
  64. package/customHooks/useRipples/callback/reload-background.d.ts +12 -0
  65. package/customHooks/useRipples/callback/scale.d.ts +8 -0
  66. package/customHooks/useRipples/index.d.ts +45 -0
  67. package/customHooks/useRipples/init/index.d.ts +11 -0
  68. package/customHooks/useRipples/init/initEvent.d.ts +11 -0
  69. package/customHooks/useRipples/init/initShaders.d.ts +13 -0
  70. package/customHooks/useRipples/init/initTexture.d.ts +13 -0
  71. package/customHooks/useRipples/render/computeTextureBoundaries.d.ts +9 -0
  72. package/customHooks/useRipples/render/draw.d.ts +13 -0
  73. package/customHooks/useRipples/render/drawQuad.d.ts +13 -0
  74. package/customHooks/useRipples/render/dropAtPointer.d.ts +13 -0
  75. package/customHooks/useRipples/render/index.d.ts +12 -0
  76. package/customHooks/useRipples/render/swapBufferIndices.d.ts +11 -0
  77. package/customHooks/useRipples/render/update.d.ts +11 -0
  78. package/customHooks/useRipples/rippersData/defaultData.d.ts +11 -0
  79. package/customHooks/useRipples/rippersData/fadeData.d.ts +51 -0
  80. package/customHooks/useRipples/rippersData/index.d.ts +46 -0
  81. package/customHooks/useRipples/rippersData/loadConfig.d.ts +25 -0
  82. package/customHooks/useRipples/rippersData/renderData.d.ts +80 -0
  83. package/customHooks/useRipples/rippersData/useOptions.d.ts +91 -0
  84. package/customHooks/useRipples/rippersData/vertexSource.d.ts +34 -0
  85. package/customHooks/useRipples/ripple.html.d.ts +12 -0
  86. package/customHooks/useRipples/ripplesClass.d.ts +57 -0
  87. package/customHooks/useRipples/tools.d.ts +37 -0
  88. package/customHooks/useRipples/types.d.ts +209 -0
  89. package/customHooks/useRipples/use-lazy-ripple.d.ts +15 -0
  90. package/customHooks/useTimeId.d.ts +50 -0
  91. package/index.client.d.ts +20 -0
  92. package/index.d.ts +8 -0
  93. package/index.mjs +3 -0
  94. package/index.server.d.ts +8 -0
  95. package/layoutUtil.mjs +10 -0
  96. package/layoutUtil.mjs.map +1 -0
  97. package/package.json +82 -0
  98. package/server.mjs +8 -0
  99. package/server.mjs.map +1 -0
  100. package/storage/main-logic .d.ts +26 -0
  101. package/storage/storage-store.d.ts +14 -0
  102. package/styles/common.css +1012 -0
  103. package/styles/common.scss +453 -0
  104. package/styles/reset.scss +93 -0
  105. package/styles/respond.scss +54 -0
  106. package/styles/root.scss +212 -0
  107. package/styles/vars-color.scss +247 -0
  108. package/utilities/cookie.d.ts +28 -0
  109. package/utilities/sys.d.ts +41 -0
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/run-side.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 设置缓变
10
+ *
11
+ * 缓变分两种,一种是没有任何设置的缓变;另一种就是两个不同类型之间的缓变
12
+ *
13
+ *
14
+ */
15
+ export declare function runSide(this: Ripples): void;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/type.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /** 原使用的样式 */
8
+ export type OriginStyle = {
9
+ /** 原始使用行内背景样式 */
10
+ inlineBackground: string;
11
+ /** 原始使用的行内背景色 */
12
+ inlineBackgroundColor: string;
13
+ /** 原始使用的背景图的样式 */
14
+ inlineBackgroundImage: string;
15
+ /** 元素的位置 */
16
+ position: string;
17
+ /** 元素的背景色 */
18
+ backgroundColor: string;
19
+ /** 元素的背景图 */
20
+ backgroundImage: string;
21
+ /** 元素的背景图的尺寸(多背景下) */
22
+ backgroundSize: string;
23
+ /** 元素的背景图的位置 */
24
+ backgroundPosition: string;
25
+ /** 元素的背景图的重复方式 */
26
+ backgroundRepeat: string;
27
+ /** 元素的背景图的剪切方式 */
28
+ backgroundClip: string;
29
+ /** 元素的背景图的起点 */
30
+ backgroundOrigin: string;
31
+ /** 元素的背景图相对视口的滚动方式 */
32
+ backgroundAttachment: string;
33
+ /** 当前的宽 */
34
+ width: number;
35
+ /** 当前的高 */
36
+ height: number;
37
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/bind-image.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../../ripplesClass';
8
+ import { DrawImage } from '../../rippersData/fadeData';
9
+ /** 绑定图片 */
10
+ export declare function bindImage(this: Ripples, textImageSource: DrawImage): void;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/create-canvas-element.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../../../../components/ripples';
8
+ /** 根据给出的 html 数据构建一个 canvas */
9
+ export declare function createCanvasElement(this: Ripples, img: CanvasImageSource): HTMLCanvasElement;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/create-image-by-src.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /** 根据给出的 src 获取一个 img 对象 */
8
+ export declare function createImageBySrc(src: string, width: number, height: number): HTMLImageElement;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/get-background-style.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { OriginStyle } from '../type';
8
+ /** 获取元素的样式 */
9
+ export declare function getBackgroundStyles(element: HTMLElement): OriginStyle;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/hide-css-background.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../../ripplesClass';
8
+ /**
9
+ * ## 隐藏背景
10
+ *
11
+ * 触发于
12
+ * - 手动恢复背景 webGl 的显示
13
+ * - 初始化时隐藏
14
+ * - 父级样式属性发生变更的时候
15
+ */
16
+ export declare function hideCssBackground(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/buildBackground/utils/restore-css-background.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../../ripplesClass';
8
+ /**
9
+ * 恢复背景样式
10
+ *
11
+ * 在使用过程中,可能会切换 webGL 的显隐状态,而手动处理背景的更替
12
+ */
13
+ export declare function restoreCssBackground(this: Ripples): void;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/can-side.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 是否能执行渐变
10
+ *
11
+ * 返回值为 true 时禁止渐变
12
+ *
13
+ */
14
+ export declare function forbiddenRunSide(this: Ripples): boolean;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/destroy.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /** 注销 */
9
+ export declare function destroy(this: Ripples): void;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/drop.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /** 触发滴落效果 */
9
+ export declare function drop(this: Ripples, x: number, y: number, radius: number, strength: number): void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/extract-url.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /** 检测数据是否为 url 外联图像地址 */
8
+ export declare function extractUrl(value: string): string | null;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/fade.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /** 两个图像间的淡入淡出 */
9
+ export declare function fade(this: Ripples): any;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/get-new-image.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { OriginStyle } from '../buildBackground/type';
8
+ import { UseOptions } from '../rippersData/useOptions';
9
+ /** 获取当前的背景图的地址 */
10
+ export declare function getNewImage(options: UseOptions, lastStyle: OriginStyle): string | null;
11
+ /** 获取新的背景图 */
12
+ export declare function getNewColor(options: UseOptions, originStyle: OriginStyle): string;
13
+ /** 获取新的渐变 */
14
+ export declare function getNewGradient(): void;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/reload-background.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 重新加载背景图片
10
+ *
11
+ */
12
+ export declare function reloadBackground(this: Ripples): void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/callback/scale.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /** 缩放效果 (暂未用到) */
8
+ export declare function scale(): void;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/index.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { RefObject } from 'react';
8
+ import { BackgroundRipplesProps, RippleImgUrl, RipplesOptions } from './types';
9
+ import { Ripples } from './ripplesClass';
10
+ /**
11
+ *
12
+ * ## 使用绘制 ripples 上一层
13
+ *
14
+ *
15
+ * @param canvas `usrRef` 包裹的 `HTMLCanvasElement`,用于绘制图像
16
+ * @param option 初始化的
17
+ * @version 0.0.3
18
+ * @see https://earthnut.dev/custom-hooks/use-ripples
19
+ * @see JQuery https://github.com/sirxemic/jquery.ripples
20
+ * @example
21
+ *
22
+ * 下面是在 <BackgroundRipple> 中使用
23
+ *
24
+ * ```ts
25
+ * import { useRipples } from 'earthnut';
26
+ *
27
+ * export function BackgroundRipple(props: BackgroundRipplesProps) {
28
+ *
29
+ * // canvas 元素
30
+ * const canvas = useRef<HTMLCanvasElement>(null);
31
+ *
32
+ * // 使用 ripples
33
+ * const ripplesRef = useRipples(canvas, props);
34
+ *
35
+ * return (<>
36
+ * <canvas ref={canvas}></canvas>
37
+ * {props.children}
38
+ * </>);
39
+ * }
40
+ *
41
+ * ```
42
+ *
43
+ */
44
+ export declare function useRipples(canvas: RefObject<HTMLCanvasElement | null>, option?: RipplesOptions): RefObject<Ripples | null>;
45
+ export type { Ripples, BackgroundRipplesProps, RipplesOptions, RippleImgUrl };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/init/index.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 初始化 webGL
10
+ */
11
+ export declare function initGL(this: Ripples): void;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/init/initEvent.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 初始化事件
10
+ */
11
+ export declare function setupPointerEvents(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/init/initShaders.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ *
10
+ * 初始化着色器
11
+ *
12
+ */
13
+ export declare function initShaders(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/init/initTexture.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ *
10
+ * 初始化纹理
11
+ *
12
+ */
13
+ export declare function initTexture(this: Ripples): void;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/computeTextureBoundaries.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /** 计算纹理边界及背景图 */
9
+ export declare function computeTextureBoundaries(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/draw.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ *
10
+ * 绘制
11
+ *
12
+ */
13
+ export declare function draw(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/drawQuad.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ *
10
+ * 绘制 GL 数据流
11
+ *
12
+ */
13
+ export declare function drawQuad(this: Ripples): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/dropAtPointer.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ *
10
+ * 触发的点
11
+ *
12
+ */
13
+ export declare function dropAtPointer(this: Ripples, pointer: MouseEvent | Touch, radius: number, strength: number): void;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/index.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 开启绘制
10
+ *
11
+ */
12
+ export declare function render(this: Ripples): void;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/swapBufferIndices.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * swap 缓冲区索引
10
+ */
11
+ export declare function swapBufferIndices(this: Ripples): void;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/render/update.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ /**
9
+ * 更新
10
+ */
11
+ export declare function update(this: Ripples): void;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/rippersData/defaultData.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { RipplesDefaultData } from '../types';
8
+ /**
9
+ * 默认值
10
+ */
11
+ export declare const defaultData: RipplesDefaultData;
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/rippersData/fadeData.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { Ripples } from '../ripplesClass';
8
+ export type DrawImage = {
9
+ /** 资源 */
10
+ resource: HTMLCanvasElement | HTMLImageElement;
11
+ /** 类型 */
12
+ kind: 'image' | 'linear-gradient' | 'background-color' | 'default' | 'mix';
13
+ /** 标识 */
14
+ tag: string;
15
+ /** 当前的宽 */
16
+ width: number;
17
+ /** 当前的高 */
18
+ height: number;
19
+ };
20
+ /** 背景渐变的数据 */
21
+ export declare class FadeData {
22
+ #private;
23
+ /** 背景页面的数据 */
24
+ backgroundInfo: {
25
+ width: number;
26
+ height: number;
27
+ };
28
+ /** 缺省背景图时的 id */
29
+ transparentId: NodeJS.Timeout;
30
+ /** 最后使用
31
+ *
32
+ * 如果没有 toBeList 为空值,则当前渲染的为此纹理)绘制的图像
33
+ */
34
+ lastDrawImage: DrawImage;
35
+ /** 当前绘制的图像
36
+ *
37
+ * 该值仅出现在需要渐变过程中,一旦渐变完成,实际渲染的值就成了最后渲染的值
38
+ */
39
+ toBeList: DrawImage[];
40
+ /** 绘制进度 */
41
+ drawProgress: number;
42
+ /** 是否处于绘制过渡状态 */
43
+ isTransitioning: boolean;
44
+ isDark: boolean;
45
+ /** 执行渐变 */
46
+ run(): void;
47
+ /** 销毁 */
48
+ destroy(): void;
49
+ /** 创建背景渐变的数据 */
50
+ constructor(_Ripples: Ripples);
51
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/rippersData/index.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /****************************************************************************
8
+ * @Author earthnut
9
+ * @Email earthnut.dev@outlook.com
10
+ * @ProjectName website
11
+ * @FileName dataStore.ts
12
+ * @CreateDate 周六 12/07/2024
13
+ * @Description 数据库
14
+ ****************************************************************************/
15
+ /**
16
+ * Ripple 使用的数据,Ripple 继承该类
17
+ */
18
+ export declare class RipplesData {
19
+ /**
20
+ * canvas 元素
21
+ */
22
+ canvas: HTMLCanvasElement;
23
+ /**
24
+ * WebGL 绘图上下文
25
+ */
26
+ gl: WebGLRenderingContext;
27
+ /**
28
+ * 配置
29
+ */
30
+ config: {
31
+ type: number;
32
+ linearSupport: boolean;
33
+ extensions: string[];
34
+ arrayType: Float32ArrayConstructor | null;
35
+ } | null;
36
+ /**
37
+ * 初始化情况
38
+ */
39
+ initState: boolean;
40
+ /**
41
+ * 构造方法
42
+ *
43
+ * @param canvas 传入 canvas 元素来初始化必要的数据
44
+ */
45
+ constructor(canvas: HTMLCanvasElement);
46
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/rippersData/loadConfig.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ /****************************************************************************
8
+ * @Author earthnut
9
+ * @Email earthnut.dev@outlook.com
10
+ * @ProjectName website
11
+ * @FileName loadConfig.ts
12
+ * @CreateDate 周五 12/13/2024
13
+ * @Description 加载 config
14
+ ****************************************************************************/
15
+ import { RipplesData } from './index';
16
+ /**
17
+ * 执行的配置数据
18
+ *
19
+ */
20
+ export declare function loadConfig(this: RipplesData): {
21
+ type: number;
22
+ linearSupport: boolean;
23
+ arrayType: Float32ArrayConstructor | null;
24
+ extensions: string[];
25
+ } | null;
@@ -0,0 +1,80 @@
1
+ /**
2
+ * @license MIT
3
+ * earthnut@customHooks/useRipples/rippersData/renderData.d.ts
4
+ * Copyright (c) 2025 earthnut.dev
5
+ * 请在项目根参看详细许可证明
6
+ */
7
+ import { OriginStyle } from '../buildBackground/type';
8
+ import { Ripples } from '../ripplesClass';
9
+ import { Program, Textures } from '../types';
10
+ /**
11
+ *
12
+ * 原始数据类
13
+ *
14
+ * 记录了除参数数据外的运行数据
15
+ *
16
+ */
17
+ export declare class RipplesRenderData {
18
+ /** 渲染数据流
19
+ *
20
+ * 该值在 init 中进行初始化
21
+ */
22
+ quad: WebGLBuffer;
23
+ /**
24
+ * 上一次雨滴滴落的时间
25
+ *
26
+ * 该时间更新触发时机:
27
+ * - 2.2s 内没有事件触发
28
+ * - 鼠标交互更新
29
+ */
30
+ lastRaindropsFallTime: number;
31
+ /** canvas 父级元素 该值在主 class 中初始化 */
32
+ parentElement: HTMLElement;
33
+ /** 父级元素的属性变化监听者 */
34
+ mutationObserver: null | MutationObserver;
35
+ /** 父级尺寸变化监听者 */
36
+ resizeObserver: null | ResizeObserver;
37
+ /** 渲染程序 */
38
+ renderProgram: Program;
39
+ /** 图像资源的配置 */
40
+ imageSource: string;
41
+ /** 该值于初始化着色器时初始化 */
42
+ dropProgram: Program;
43
+ /** 更新流 */
44
+ updateProgram: Program;
45
+ /** 纹理 */
46
+ textures: Textures;
47
+ /** 背景纹理 */
48
+ backgroundTexture: WebGLTexture;
49
+ /** 纹理数据 */
50
+ textureDelta: Float32Array<ArrayBuffer>;
51
+ /** */
52
+ framebuffers: WebGLFramebuffer[];
53
+ /** */
54
+ bufferWriteIndex: number;
55
+ /** */
56
+ bufferReadIndex: number;
57
+ /** 最原始的样式 */
58
+ originStyle: OriginStyle;
59
+ /** 上一次使用的样式 */
60
+ lastUseStyle: OriginStyle;
61
+ /** 事件 */
62
+ events: {
63
+ mousemove: (e: MouseEvent) => void;
64
+ mousedown: (e: MouseEvent) => void;
65
+ touchmove: (e: TouchEvent) => void;
66
+ touchstart: (e: TouchEvent) => void;
67
+ };
68
+ /** 渲染 id */
69
+ animationFrameId: number;
70
+ /**
71
+ * 构建 Ripple 的渲染数据
72
+ *
73
+ * @param canvas 使用初始化的 Canvas 元素
74
+ * @param callback 执行的回调,这里要对页面背景进行更新
75
+ * @param _Ripples 上一个回调在使用中的 this
76
+ */
77
+ constructor(canvas: HTMLCanvasElement, callback: () => void, _Ripples: Ripples);
78
+ /** 销毁 */
79
+ destroy(): void;
80
+ }