deepsea-components 5.11.6 → 5.12.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.
Files changed (219) hide show
  1. package/dist/components/AutoFit.cjs +116 -0
  2. package/dist/components/AutoFit.js +82 -0
  3. package/dist/components/AutoScroll.cjs +125 -0
  4. package/dist/components/AutoScroll.js +91 -0
  5. package/dist/components/AutoSizeTextarea.cjs +73 -0
  6. package/dist/components/AutoSizeTextarea.js +39 -0
  7. package/dist/components/CircleText.cjs +68 -0
  8. package/dist/components/CircleText.js +34 -0
  9. package/dist/components/CopyButton.cjs +73 -0
  10. package/dist/{cjs/components → components}/CopyButton.d.ts +3 -3
  11. package/dist/components/CopyButton.js +27 -0
  12. package/dist/components/Echart.cjs +74 -0
  13. package/dist/components/Echart.js +34 -0
  14. package/dist/components/Flow.cjs +211 -0
  15. package/dist/components/Flow.js +168 -0
  16. package/dist/components/FormLabel.cjs +77 -0
  17. package/dist/components/FormLabel.js +37 -0
  18. package/dist/components/HlsPlayer.cjs +76 -0
  19. package/dist/components/HlsPlayer.js +32 -0
  20. package/dist/components/InfiniteScroll.cjs +135 -0
  21. package/dist/{cjs/components → components}/InfiniteScroll.d.ts +7 -7
  22. package/dist/components/InfiniteScroll.js +101 -0
  23. package/dist/components/InputFile.cjs +102 -0
  24. package/dist/components/InputFile.js +65 -0
  25. package/dist/components/InputFileButton.cjs +109 -0
  26. package/dist/components/InputFileButton.js +75 -0
  27. package/dist/components/LoopSwiper.cjs +147 -0
  28. package/dist/components/LoopSwiper.js +113 -0
  29. package/dist/components/ReadExcel.cjs +48 -0
  30. package/dist/components/ReadExcel.js +14 -0
  31. package/dist/components/Ring.cjs +53 -0
  32. package/dist/components/Ring.js +19 -0
  33. package/dist/components/Scroll.cjs +143 -0
  34. package/dist/components/Scroll.js +54 -0
  35. package/dist/components/SectionRing.cjs +59 -0
  36. package/dist/components/SectionRing.js +25 -0
  37. package/dist/components/Skeleton.cjs +66 -0
  38. package/dist/components/Skeleton.js +32 -0
  39. package/dist/components/Title.cjs +61 -0
  40. package/dist/components/Title.js +27 -0
  41. package/dist/components/TransitionBox.cjs +79 -0
  42. package/dist/components/TransitionBox.js +45 -0
  43. package/dist/components/TransitionNum.cjs +83 -0
  44. package/dist/components/TransitionNum.js +49 -0
  45. package/dist/components/Trapezium.cjs +67 -0
  46. package/dist/components/Trapezium.js +33 -0
  47. package/dist/components/Unify.cjs +68 -0
  48. package/dist/components/Unify.js +31 -0
  49. package/dist/components/WriteExcel.cjs +50 -0
  50. package/dist/components/WriteExcel.js +16 -0
  51. package/dist/index.cjs +285 -0
  52. package/dist/index.js +26 -0
  53. package/dist/utils/getReactVersion.cjs +40 -0
  54. package/dist/utils/getReactVersion.js +6 -0
  55. package/dist/utils/index.cjs +57 -0
  56. package/dist/utils/index.js +17 -0
  57. package/package.json +26 -17
  58. package/src/components/WriteExcel.tsx +25 -25
  59. package/tsconfig.json +16 -0
  60. package/dist/cjs/components/AutoFit.js +0 -106
  61. package/dist/cjs/components/AutoFit.js.map +0 -7
  62. package/dist/cjs/components/AutoScroll.js +0 -127
  63. package/dist/cjs/components/AutoScroll.js.map +0 -7
  64. package/dist/cjs/components/AutoSizeTextarea.js +0 -70
  65. package/dist/cjs/components/AutoSizeTextarea.js.map +0 -7
  66. package/dist/cjs/components/CircleText.js +0 -77
  67. package/dist/cjs/components/CircleText.js.map +0 -7
  68. package/dist/cjs/components/CopyButton.js +0 -60
  69. package/dist/cjs/components/CopyButton.js.map +0 -7
  70. package/dist/cjs/components/Echart.js +0 -56
  71. package/dist/cjs/components/Echart.js.map +0 -7
  72. package/dist/cjs/components/Flow.js +0 -220
  73. package/dist/cjs/components/Flow.js.map +0 -7
  74. package/dist/cjs/components/FormLabel.js +0 -42
  75. package/dist/cjs/components/FormLabel.js.map +0 -7
  76. package/dist/cjs/components/HlsPlayer.js +0 -65
  77. package/dist/cjs/components/HlsPlayer.js.map +0 -7
  78. package/dist/cjs/components/InfiniteScroll.js +0 -148
  79. package/dist/cjs/components/InfiniteScroll.js.map +0 -7
  80. package/dist/cjs/components/InputFile.js +0 -90
  81. package/dist/cjs/components/InputFile.js.map +0 -7
  82. package/dist/cjs/components/InputFileButton.js +0 -113
  83. package/dist/cjs/components/InputFileButton.js.map +0 -7
  84. package/dist/cjs/components/LoopSwiper.js +0 -137
  85. package/dist/cjs/components/LoopSwiper.js.map +0 -7
  86. package/dist/cjs/components/ReadExcel.js +0 -36
  87. package/dist/cjs/components/ReadExcel.js.map +0 -7
  88. package/dist/cjs/components/Ring.js +0 -49
  89. package/dist/cjs/components/Ring.js.map +0 -7
  90. package/dist/cjs/components/Scroll.js +0 -103
  91. package/dist/cjs/components/Scroll.js.map +0 -7
  92. package/dist/cjs/components/SectionRing.js +0 -54
  93. package/dist/cjs/components/SectionRing.js.map +0 -7
  94. package/dist/cjs/components/Skeleton.js +0 -66
  95. package/dist/cjs/components/Skeleton.js.map +0 -7
  96. package/dist/cjs/components/Title.js +0 -48
  97. package/dist/cjs/components/Title.js.map +0 -7
  98. package/dist/cjs/components/TransitionBox.js +0 -53
  99. package/dist/cjs/components/TransitionBox.js.map +0 -7
  100. package/dist/cjs/components/TransitionNum.js +0 -62
  101. package/dist/cjs/components/TransitionNum.js.map +0 -7
  102. package/dist/cjs/components/Trapezium.js +0 -69
  103. package/dist/cjs/components/Trapezium.js.map +0 -7
  104. package/dist/cjs/components/Unify.js +0 -48
  105. package/dist/cjs/components/Unify.js.map +0 -7
  106. package/dist/cjs/components/WriteExcel.js +0 -45
  107. package/dist/cjs/components/WriteExcel.js.map +0 -7
  108. package/dist/cjs/index.js +0 -74
  109. package/dist/cjs/index.js.map +0 -7
  110. package/dist/cjs/utils/getReactVersion.js +0 -34
  111. package/dist/cjs/utils/getReactVersion.js.map +0 -7
  112. package/dist/cjs/utils/index.js +0 -52
  113. package/dist/cjs/utils/index.js.map +0 -7
  114. package/dist/esm/components/AutoFit.d.ts +0 -25
  115. package/dist/esm/components/AutoFit.js +0 -97
  116. package/dist/esm/components/AutoFit.js.map +0 -1
  117. package/dist/esm/components/AutoScroll.d.ts +0 -38
  118. package/dist/esm/components/AutoScroll.js +0 -102
  119. package/dist/esm/components/AutoScroll.js.map +0 -1
  120. package/dist/esm/components/AutoSizeTextarea.d.ts +0 -5
  121. package/dist/esm/components/AutoSizeTextarea.js +0 -48
  122. package/dist/esm/components/AutoSizeTextarea.js.map +0 -1
  123. package/dist/esm/components/CircleText.d.ts +0 -25
  124. package/dist/esm/components/CircleText.js +0 -49
  125. package/dist/esm/components/CircleText.js.map +0 -1
  126. package/dist/esm/components/CopyButton.d.ts +0 -13
  127. package/dist/esm/components/CopyButton.js +0 -31
  128. package/dist/esm/components/CopyButton.js.map +0 -1
  129. package/dist/esm/components/Echart.d.ts +0 -15
  130. package/dist/esm/components/Echart.js +0 -41
  131. package/dist/esm/components/Echart.js.map +0 -1
  132. package/dist/esm/components/Flow.d.ts +0 -86
  133. package/dist/esm/components/Flow.js +0 -186
  134. package/dist/esm/components/Flow.js.map +0 -1
  135. package/dist/esm/components/FormLabel.d.ts +0 -22
  136. package/dist/esm/components/FormLabel.js +0 -52
  137. package/dist/esm/components/FormLabel.js.map +0 -1
  138. package/dist/esm/components/HlsPlayer.d.ts +0 -5
  139. package/dist/esm/components/HlsPlayer.js +0 -36
  140. package/dist/esm/components/HlsPlayer.js.map +0 -1
  141. package/dist/esm/components/InfiniteScroll.d.ts +0 -54
  142. package/dist/esm/components/InfiniteScroll.js +0 -102
  143. package/dist/esm/components/InfiniteScroll.js.map +0 -1
  144. package/dist/esm/components/InputFile.d.ts +0 -26
  145. package/dist/esm/components/InputFile.js +0 -78
  146. package/dist/esm/components/InputFile.js.map +0 -1
  147. package/dist/esm/components/InputFileButton.d.ts +0 -11
  148. package/dist/esm/components/InputFileButton.js +0 -95
  149. package/dist/esm/components/InputFileButton.js.map +0 -1
  150. package/dist/esm/components/LoopSwiper.d.ts +0 -9
  151. package/dist/esm/components/LoopSwiper.js +0 -122
  152. package/dist/esm/components/LoopSwiper.js.map +0 -1
  153. package/dist/esm/components/ReadExcel.d.ts +0 -8
  154. package/dist/esm/components/ReadExcel.js +0 -19
  155. package/dist/esm/components/ReadExcel.js.map +0 -1
  156. package/dist/esm/components/Ring.d.ts +0 -7
  157. package/dist/esm/components/Ring.js +0 -26
  158. package/dist/esm/components/Ring.js.map +0 -1
  159. package/dist/esm/components/Scroll.d.ts +0 -24
  160. package/dist/esm/components/Scroll.js +0 -67
  161. package/dist/esm/components/Scroll.js.map +0 -1
  162. package/dist/esm/components/SectionRing.d.ts +0 -8
  163. package/dist/esm/components/SectionRing.js +0 -33
  164. package/dist/esm/components/SectionRing.js.map +0 -1
  165. package/dist/esm/components/Skeleton.d.ts +0 -5
  166. package/dist/esm/components/Skeleton.js +0 -38
  167. package/dist/esm/components/Skeleton.js.map +0 -1
  168. package/dist/esm/components/Title.d.ts +0 -3
  169. package/dist/esm/components/Title.js +0 -26
  170. package/dist/esm/components/Title.js.map +0 -1
  171. package/dist/esm/components/TransitionBox.d.ts +0 -10
  172. package/dist/esm/components/TransitionBox.js +0 -50
  173. package/dist/esm/components/TransitionBox.js.map +0 -1
  174. package/dist/esm/components/TransitionNum.d.ts +0 -16
  175. package/dist/esm/components/TransitionNum.js +0 -65
  176. package/dist/esm/components/TransitionNum.js.map +0 -1
  177. package/dist/esm/components/Trapezium.d.ts +0 -9
  178. package/dist/esm/components/Trapezium.js +0 -43
  179. package/dist/esm/components/Trapezium.js.map +0 -1
  180. package/dist/esm/components/Unify.d.ts +0 -13
  181. package/dist/esm/components/Unify.js +0 -47
  182. package/dist/esm/components/Unify.js.map +0 -1
  183. package/dist/esm/components/WriteExcel.d.ts +0 -8
  184. package/dist/esm/components/WriteExcel.js +0 -23
  185. package/dist/esm/components/WriteExcel.js.map +0 -1
  186. package/dist/esm/index.d.ts +0 -26
  187. package/dist/esm/index.js +0 -27
  188. package/dist/esm/index.js.map +0 -1
  189. package/dist/esm/utils/getReactVersion.d.ts +0 -1
  190. package/dist/esm/utils/getReactVersion.js +0 -6
  191. package/dist/esm/utils/getReactVersion.js.map +0 -1
  192. package/dist/esm/utils/index.d.ts +0 -9
  193. package/dist/esm/utils/index.js +0 -17
  194. package/dist/esm/utils/index.js.map +0 -1
  195. /package/dist/{cjs/components → components}/AutoFit.d.ts +0 -0
  196. /package/dist/{cjs/components → components}/AutoScroll.d.ts +0 -0
  197. /package/dist/{cjs/components → components}/AutoSizeTextarea.d.ts +0 -0
  198. /package/dist/{cjs/components → components}/CircleText.d.ts +0 -0
  199. /package/dist/{cjs/components → components}/Echart.d.ts +0 -0
  200. /package/dist/{cjs/components → components}/Flow.d.ts +0 -0
  201. /package/dist/{cjs/components → components}/FormLabel.d.ts +0 -0
  202. /package/dist/{cjs/components → components}/HlsPlayer.d.ts +0 -0
  203. /package/dist/{cjs/components → components}/InputFile.d.ts +0 -0
  204. /package/dist/{cjs/components → components}/InputFileButton.d.ts +0 -0
  205. /package/dist/{cjs/components → components}/LoopSwiper.d.ts +0 -0
  206. /package/dist/{cjs/components → components}/ReadExcel.d.ts +0 -0
  207. /package/dist/{cjs/components → components}/Ring.d.ts +0 -0
  208. /package/dist/{cjs/components → components}/Scroll.d.ts +0 -0
  209. /package/dist/{cjs/components → components}/SectionRing.d.ts +0 -0
  210. /package/dist/{cjs/components → components}/Skeleton.d.ts +0 -0
  211. /package/dist/{cjs/components → components}/Title.d.ts +0 -0
  212. /package/dist/{cjs/components → components}/TransitionBox.d.ts +0 -0
  213. /package/dist/{cjs/components → components}/TransitionNum.d.ts +0 -0
  214. /package/dist/{cjs/components → components}/Trapezium.d.ts +0 -0
  215. /package/dist/{cjs/components → components}/Unify.d.ts +0 -0
  216. /package/dist/{cjs/components → components}/WriteExcel.d.ts +0 -0
  217. /package/dist/{cjs/index.d.ts → index.d.ts} +0 -0
  218. /package/dist/{cjs/utils → utils}/getReactVersion.d.ts +0 -0
  219. /package/dist/{cjs/utils → utils}/index.d.ts +0 -0
@@ -1,106 +0,0 @@
1
- "use client";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/AutoFit.tsx
21
- var AutoFit_exports = {};
22
- __export(AutoFit_exports, {
23
- AutoFit: () => AutoFit
24
- });
25
- module.exports = __toCommonJS(AutoFit_exports);
26
- var import_react = require("react");
27
- var import_css = require("@emotion/css");
28
- var import_deepsea_tools = require("deepsea-tools");
29
- var import_utils = require("../utils");
30
- var AutoFit = (0, import_react.forwardRef)((props, ref) => {
31
- const { width: designWidth = 1920, height: designHeight = 1080, direction, className, style, ...rest } = props;
32
- const ele = (0, import_react.useRef)(null);
33
- const [show, setShow] = (0, import_react.useState)(false);
34
- const [transform, setTransform] = (0, import_react.useState)(void 0);
35
- const [width, setWidth] = (0, import_react.useState)(void 0);
36
- const [height, setHeight] = (0, import_react.useState)(void 0);
37
- (0, import_react.useImperativeHandle)(ref, () => ele.current, [ele.current]);
38
- (0, import_react.useLayoutEffect)(() => {
39
- const element = ele.current;
40
- const parent = element?.parentElement;
41
- if (!element || !parent)
42
- return;
43
- function listener(entries) {
44
- const entry = entries[0];
45
- const { contentRect } = entry;
46
- if (direction === "horizontal") {
47
- const scale = contentRect.width / designWidth;
48
- setTransform(`scale(${scale})`);
49
- setWidth((0, import_utils.px)(designWidth));
50
- setHeight((0, import_utils.px)(contentRect.height / scale));
51
- } else if (direction === "vertical") {
52
- const scale = contentRect.height / designHeight;
53
- setTransform(`scale(${scale})`);
54
- setWidth((0, import_utils.px)(contentRect.width / scale));
55
- setHeight((0, import_utils.px)(designHeight));
56
- } else {
57
- const scale = Math.min(contentRect.width / designWidth, contentRect.height / designHeight);
58
- setTransform(
59
- `translateX(${(contentRect.width - designWidth * scale) / 2}px) translateY(${(contentRect.height - designHeight * scale) / 2}px) scale(${scale})`
60
- );
61
- setWidth((0, import_utils.px)(designWidth));
62
- setHeight((0, import_utils.px)(designHeight));
63
- }
64
- setShow(true);
65
- }
66
- const observer = new ResizeObserver(listener);
67
- observer.observe(parent);
68
- return () => observer.disconnect();
69
- }, [ele.current?.parentElement, designWidth, designHeight, direction]);
70
- if (process.env.NODE_ENV === "development") {
71
- (0, import_react.useEffect)(() => {
72
- const parent = ele.current?.parentElement;
73
- if (!parent)
74
- return;
75
- const style2 = getComputedStyle(parent);
76
- if (style2.position === "static") {
77
- console.warn("AutoFit 组件的父元素的 position 属性不应该是 static");
78
- }
79
- }, [ele.current?.parentElement]);
80
- }
81
- if (!show)
82
- return /* @__PURE__ */ React.createElement("div", { ref: ele, style: { display: "none" } });
83
- return /* @__PURE__ */ React.createElement(
84
- "div",
85
- {
86
- ref: ele,
87
- className: (0, import_deepsea_tools.clsx)(
88
- import_css.css`
89
- position: absolute;
90
- transform: var(--transform);
91
- transform-origin: top left;
92
- width: var(--width);
93
- height: var(--height);
94
- `,
95
- className
96
- ),
97
- style: (0, import_utils.transformCSSVariable)({ transform, width, height }, style),
98
- ...rest
99
- }
100
- );
101
- });
102
- // Annotate the CommonJS export names for ESM import in node:
103
- 0 && (module.exports = {
104
- AutoFit
105
- });
106
- //# sourceMappingURL=AutoFit.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/AutoFit.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport { HTMLAttributes, forwardRef, useEffect, useImperativeHandle, useLayoutEffect, useRef, useState } from \"react\"\nimport { css } from \"@emotion/css\"\nimport { clsx } from \"deepsea-tools\"\n\nimport { px, transformCSSVariable } from \"@/utils\"\n\nexport interface AutoFitProps extends HTMLAttributes<HTMLDivElement> {\n /** 设计稿宽度,默认 1920 */\n width?: number\n /** 设计稿高度,默认 1080 */\n height?: number\n /**\n * 在哪些方向进行缩放,默认缩放所有方向\n * 1. 水平方向是指,宽度按照设计稿进行占满,高度反向缩放\n * 2. 垂直方向是指,高度按照设计稿进行占满,宽度反向缩放\n * 3. 默认是水平和垂直方向都进行缩放,类似于 background-size: contain 的效果\n */\n direction?: \"horizontal\" | \"vertical\" | \"both\"\n}\n\n/**\n * 自适应缩放组件\n *\n * 注意:\n * 1. 父元素必须设置非 static 定位方式\n * 2. 父元素只能有且仅有一个子元素,那就是 AutoFit\n * 3. 不要设置 AutoFit 的 position、left、top、transform、width、height 属性\n * 4. 在第一次完成缩放前,无论 props 是什么,返回的都是 <div style={{ display: \"none\" }} />\n * 5. 元素的属性、事件、资源并不是立即加载的,会有一帧的延迟,在第一次完成缩放后才会显示\n */\nexport const AutoFit = forwardRef<HTMLDivElement, AutoFitProps>((props, ref) => {\n const { width: designWidth = 1920, height: designHeight = 1080, direction, className, style, ...rest } = props\n const ele = useRef<HTMLDivElement>(null)\n const [show, setShow] = useState(false)\n const [transform, setTransform] = useState<string | undefined>(undefined)\n const [width, setWidth] = useState<string | undefined>(undefined)\n const [height, setHeight] = useState<string | undefined>(undefined)\n\n useImperativeHandle(ref, () => ele.current!, [ele.current])\n useLayoutEffect(() => {\n const element = ele.current\n const parent = element?.parentElement\n if (!element || !parent) return\n function listener(entries: ResizeObserverEntry[]) {\n const entry = entries[0]\n const { contentRect } = entry\n if (direction === \"horizontal\") {\n const scale = contentRect.width / designWidth\n setTransform(`scale(${scale})`)\n setWidth(px(designWidth))\n setHeight(px(contentRect.height / scale))\n } else if (direction === \"vertical\") {\n const scale = contentRect.height / designHeight\n setTransform(`scale(${scale})`)\n setWidth(px(contentRect.width / scale))\n setHeight(px(designHeight))\n } else {\n const scale = Math.min(contentRect.width / designWidth, contentRect.height / designHeight)\n setTransform(\n `translateX(${(contentRect.width - designWidth * scale) / 2}px) translateY(${(contentRect.height - designHeight * scale) / 2}px) scale(${scale})`,\n )\n setWidth(px(designWidth))\n setHeight(px(designHeight))\n }\n setShow(true)\n }\n const observer = new ResizeObserver(listener)\n observer.observe(parent)\n return () => observer.disconnect()\n }, [ele.current?.parentElement, designWidth, designHeight, direction])\n\n if (process.env.NODE_ENV === \"development\") {\n useEffect(() => {\n const parent = ele.current?.parentElement\n if (!parent) return\n const style = getComputedStyle(parent)\n if (style.position === \"static\") {\n console.warn(\"AutoFit 组件的父元素的 position 属性不应该是 static\")\n }\n }, [ele.current?.parentElement])\n }\n\n if (!show) return <div ref={ele} style={{ display: \"none\" }} />\n\n return (\n <div\n ref={ele}\n className={clsx(\n css`\n position: absolute;\n transform: var(--transform);\n transform-origin: top left;\n width: var(--width);\n height: var(--height);\n `,\n className,\n )}\n style={transformCSSVariable({ transform, width, height }, style)}\n {...rest}\n />\n )\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA8G;AAC9G,iBAAoB;AACpB,2BAAqB;AAErB,mBAAyC;AA0BlC,IAAM,cAAU,yBAAyC,CAAC,OAAO,QAAQ;AAC5E,QAAM,EAAE,OAAO,cAAc,MAAM,QAAQ,eAAe,MAAM,WAAW,WAAW,OAAO,GAAG,KAAK,IAAI;AACzG,QAAM,UAAM,qBAAuB,IAAI;AACvC,QAAM,CAAC,MAAM,OAAO,QAAI,uBAAS,KAAK;AACtC,QAAM,CAAC,WAAW,YAAY,QAAI,uBAA6B,MAAS;AACxE,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAA6B,MAAS;AAChE,QAAM,CAAC,QAAQ,SAAS,QAAI,uBAA6B,MAAS;AAElE,wCAAoB,KAAK,MAAM,IAAI,SAAU,CAAC,IAAI,OAAO,CAAC;AAC1D,oCAAgB,MAAM;AAClB,UAAM,UAAU,IAAI;AACpB,UAAM,SAAS,SAAS;AACxB,QAAI,CAAC,WAAW,CAAC;AAAQ;AACzB,aAAS,SAAS,SAAgC;AAC9C,YAAM,QAAQ,QAAQ,CAAC;AACvB,YAAM,EAAE,YAAY,IAAI;AACxB,UAAI,cAAc,cAAc;AAC5B,cAAM,QAAQ,YAAY,QAAQ;AAClC,qBAAa,SAAS,QAAQ;AAC9B,qBAAS,iBAAG,WAAW,CAAC;AACxB,sBAAU,iBAAG,YAAY,SAAS,KAAK,CAAC;AAAA,MAC5C,WAAW,cAAc,YAAY;AACjC,cAAM,QAAQ,YAAY,SAAS;AACnC,qBAAa,SAAS,QAAQ;AAC9B,qBAAS,iBAAG,YAAY,QAAQ,KAAK,CAAC;AACtC,sBAAU,iBAAG,YAAY,CAAC;AAAA,MAC9B,OAAO;AACH,cAAM,QAAQ,KAAK,IAAI,YAAY,QAAQ,aAAa,YAAY,SAAS,YAAY;AACzF;AAAA,UACI,eAAe,YAAY,QAAQ,cAAc,SAAS,oBAAoB,YAAY,SAAS,eAAe,SAAS,cAAc;AAAA,QAC7I;AACA,qBAAS,iBAAG,WAAW,CAAC;AACxB,sBAAU,iBAAG,YAAY,CAAC;AAAA,MAC9B;AACA,cAAQ,IAAI;AAAA,IAChB;AACA,UAAM,WAAW,IAAI,eAAe,QAAQ;AAC5C,aAAS,QAAQ,MAAM;AACvB,WAAO,MAAM,SAAS,WAAW;AAAA,EACrC,GAAG,CAAC,IAAI,SAAS,eAAe,aAAa,cAAc,SAAS,CAAC;AAErE,MAAI,QAAQ,IAAI,aAAa,eAAe;AACxC,gCAAU,MAAM;AACZ,YAAM,SAAS,IAAI,SAAS;AAC5B,UAAI,CAAC;AAAQ;AACb,YAAMA,SAAQ,iBAAiB,MAAM;AACrC,UAAIA,OAAM,aAAa,UAAU;AAC7B,gBAAQ,KAAK,wCAAwC;AAAA,MACzD;AAAA,IACJ,GAAG,CAAC,IAAI,SAAS,aAAa,CAAC;AAAA,EACnC;AAEA,MAAI,CAAC;AAAM,WAAO,oCAAC,SAAI,KAAK,KAAK,OAAO,EAAE,SAAS,OAAO,GAAG;AAE7D,SACI;AAAA,IAAC;AAAA;AAAA,MACG,KAAK;AAAA,MACL,eAAW;AAAA,QACP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOA;AAAA,MACJ;AAAA,MACA,WAAO,mCAAqB,EAAE,WAAW,OAAO,OAAO,GAAG,KAAK;AAAA,MAC9D,GAAG;AAAA;AAAA,EACR;AAER,CAAC;",
6
- "names": ["style"]
7
- }
@@ -1,127 +0,0 @@
1
- "use client";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/AutoScroll.tsx
21
- var AutoScroll_exports = {};
22
- __export(AutoScroll_exports, {
23
- AutoScroll: () => AutoScroll
24
- });
25
- module.exports = __toCommonJS(AutoScroll_exports);
26
- var import_react = require("react");
27
- var import_css = require("@emotion/css");
28
- var import_deepsea_tools = require("deepsea-tools");
29
- var import_soda_hooks = require("soda-hooks");
30
- var import_utils = require("../utils");
31
- var import_Scroll = require("./Scroll");
32
- var AutoScroll = (0, import_react.forwardRef)((props, ref) => {
33
- const {
34
- count,
35
- itemHeight,
36
- animation = 1e3,
37
- duration = 3e3,
38
- onMouseEnter,
39
- onMouseLeave,
40
- gap = 0,
41
- containerClassName,
42
- containerStyle,
43
- children,
44
- playOnMouseEnter,
45
- scrollbar,
46
- paused,
47
- ...rest
48
- } = props;
49
- const bar = (0, import_react.useRef)(null);
50
- const timeout = (0, import_react.useRef)(void 0);
51
- const ele = (0, import_react.useRef)(null);
52
- const size = (0, import_soda_hooks.useSize)(ele);
53
- const pausedRef = (0, import_react.useRef)(false);
54
- const pausedProps = (0, import_react.useRef)(paused);
55
- pausedProps.current = paused;
56
- (0, import_react.useImperativeHandle)(ref, () => ele.current, []);
57
- (0, import_react.useImperativeHandle)(scrollbar, () => bar.current, []);
58
- (0, import_react.useEffect)(() => {
59
- if (playOnMouseEnter)
60
- pausedRef.current = false;
61
- }, [playOnMouseEnter]);
62
- (0, import_react.useEffect)(() => {
63
- if (!size || count === 0)
64
- return;
65
- const { height } = size;
66
- const range = (0, import_deepsea_tools.getArray)(count, (index) => (itemHeight + gap) * (index + 1) - (index === count - 1 ? gap : 0));
67
- const scrollHeight = range[range.length - 1];
68
- if (height >= scrollHeight)
69
- return;
70
- function scroll(target) {
71
- clearTimeout(timeout.current);
72
- timeout.current = setTimeout(() => {
73
- if (pausedRef.current || pausedProps.current)
74
- return scroll(target);
75
- bar.current?.scrollTo(0, target, animation);
76
- }, duration);
77
- }
78
- scroll(range[0]);
79
- function listener(status) {
80
- const { y } = status.offset;
81
- const scrollToBottom = Math.abs(y + height - scrollHeight) / itemHeight <= 0.05;
82
- const target = scrollToBottom ? 0 : range.find((item) => item > y);
83
- scroll(target);
84
- }
85
- bar.current?.addListener(listener);
86
- return () => {
87
- clearTimeout(timeout.current);
88
- bar.current?.removeListener(listener);
89
- bar.current?.scrollTo(0, 0);
90
- };
91
- }, [size, count, itemHeight, gap, duration, animation]);
92
- function onContainerMouseEnter(e) {
93
- if (playOnMouseEnter)
94
- return;
95
- pausedRef.current = true;
96
- onMouseEnter?.(e);
97
- }
98
- function onContainerMouseLeave(e) {
99
- if (playOnMouseEnter)
100
- return;
101
- pausedRef.current = false;
102
- onMouseLeave?.(e);
103
- }
104
- return /* @__PURE__ */ React.createElement(import_Scroll.Scroll, { ref: ele, scrollbar: bar, onMouseEnter: onContainerMouseEnter, onMouseLeave: onContainerMouseLeave, ...rest }, /* @__PURE__ */ React.createElement(
105
- "div",
106
- {
107
- className: (0, import_deepsea_tools.clsx)(
108
- import_css.css`
109
- display: flex;
110
- flex-direction: column;
111
- gap: var(--gap, 0);
112
- & > * {
113
- flex: none;
114
- }
115
- `,
116
- containerClassName
117
- ),
118
- style: (0, import_utils.transformCSSVariable)({ gap: (0, import_utils.px)(gap) }, containerStyle)
119
- },
120
- children
121
- ));
122
- });
123
- // Annotate the CommonJS export names for ESM import in node:
124
- 0 && (module.exports = {
125
- AutoScroll
126
- });
127
- //# sourceMappingURL=AutoScroll.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/AutoScroll.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport { CSSProperties, MouseEvent as ReactMouseEvent, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\nimport { css } from \"@emotion/css\"\nimport { clsx, getArray } from \"deepsea-tools\"\nimport Scrollbar from \"smooth-scrollbar\"\nimport { ScrollStatus } from \"smooth-scrollbar/interfaces/scrollbar\"\nimport { useSize } from \"soda-hooks\"\n\nimport { px, transformCSSVariable } from \"@/utils\"\n\nimport { Scroll, ScrollProps } from \"./Scroll\"\n\nexport interface AutoScrollProps extends ScrollProps {\n /** 轮播元素的个数 */\n count: number\n\n /** 轮播元素的高度 */\n itemHeight: number\n\n /**\n * 轮播动画的时间,单位毫秒\n * @default 1000\n */\n animation?: number\n\n /**\n * 每个元素的停留时间,单位毫秒\n * @default 3000\n */\n duration?: number\n\n /**\n * 元素之间的间距\n * @default 0\n */\n gap?: number\n\n /** 容器类名 */\n containerClassName?: string\n\n /** 容器样式 */\n containerStyle?: CSSProperties\n\n /**\n * 在鼠标移入时是否继续播放\n * @default false\n */\n playOnMouseEnter?: boolean\n\n /**\n * 是否暂停\n * @default false\n */\n paused?: boolean\n}\n\nexport const AutoScroll = forwardRef<HTMLDivElement, AutoScrollProps>((props, ref) => {\n const {\n count,\n itemHeight,\n animation = 1000,\n duration = 3000,\n onMouseEnter,\n onMouseLeave,\n gap = 0,\n containerClassName,\n containerStyle,\n children,\n playOnMouseEnter,\n scrollbar,\n paused,\n ...rest\n } = props\n const bar = useRef<Scrollbar | null>(null)\n const timeout = useRef<NodeJS.Timeout | undefined>(undefined)\n const ele = useRef<HTMLDivElement>(null)\n const size = useSize(ele)\n const pausedRef = useRef(false)\n const pausedProps = useRef(paused)\n pausedProps.current = paused\n\n useImperativeHandle(ref, () => ele.current!, [])\n useImperativeHandle(scrollbar, () => bar.current!, [])\n\n useEffect(() => {\n if (playOnMouseEnter) pausedRef.current = false\n }, [playOnMouseEnter])\n\n useEffect(() => {\n if (!size || count === 0) return\n const { height } = size\n const range = getArray(count, index => (itemHeight + gap) * (index + 1) - (index === count - 1 ? gap : 0))\n const scrollHeight = range[range.length - 1]\n if (height >= scrollHeight) return\n function scroll(target: number) {\n clearTimeout(timeout.current)\n timeout.current = setTimeout(() => {\n if (pausedRef.current || pausedProps.current) return scroll(target)\n bar.current?.scrollTo(0, target, animation)\n }, duration)\n }\n scroll(range[0])\n function listener(status: ScrollStatus) {\n const { y } = status.offset\n const scrollToBottom = Math.abs(y + height - scrollHeight) / itemHeight <= 0.05\n const target = scrollToBottom ? 0 : range.find(item => item > y)!\n scroll(target)\n }\n bar.current?.addListener(listener)\n return () => {\n clearTimeout(timeout.current)\n bar.current?.removeListener(listener)\n bar.current?.scrollTo(0, 0)\n }\n }, [size, count, itemHeight, gap, duration, animation])\n\n function onContainerMouseEnter(e: ReactMouseEvent<HTMLDivElement, MouseEvent>) {\n if (playOnMouseEnter) return\n pausedRef.current = true\n onMouseEnter?.(e)\n }\n\n function onContainerMouseLeave(e: ReactMouseEvent<HTMLDivElement, MouseEvent>) {\n if (playOnMouseEnter) return\n pausedRef.current = false\n onMouseLeave?.(e)\n }\n\n return (\n <Scroll ref={ele} scrollbar={bar} onMouseEnter={onContainerMouseEnter} onMouseLeave={onContainerMouseLeave} {...rest}>\n <div\n className={clsx(\n css`\n display: flex;\n flex-direction: column;\n gap: var(--gap, 0);\n & > * {\n flex: none;\n }\n `,\n containerClassName,\n )}\n style={transformCSSVariable({ gap: px(gap) }, containerStyle)}\n >\n {children}\n </div>\n </Scroll>\n )\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAiH;AACjH,iBAAoB;AACpB,2BAA+B;AAG/B,wBAAwB;AAExB,mBAAyC;AAEzC,oBAAoC;AA8C7B,IAAM,iBAAa,yBAA4C,CAAC,OAAO,QAAQ;AAClF,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACP,IAAI;AACJ,QAAM,UAAM,qBAAyB,IAAI;AACzC,QAAM,cAAU,qBAAmC,MAAS;AAC5D,QAAM,UAAM,qBAAuB,IAAI;AACvC,QAAM,WAAO,2BAAQ,GAAG;AACxB,QAAM,gBAAY,qBAAO,KAAK;AAC9B,QAAM,kBAAc,qBAAO,MAAM;AACjC,cAAY,UAAU;AAEtB,wCAAoB,KAAK,MAAM,IAAI,SAAU,CAAC,CAAC;AAC/C,wCAAoB,WAAW,MAAM,IAAI,SAAU,CAAC,CAAC;AAErD,8BAAU,MAAM;AACZ,QAAI;AAAkB,gBAAU,UAAU;AAAA,EAC9C,GAAG,CAAC,gBAAgB,CAAC;AAErB,8BAAU,MAAM;AACZ,QAAI,CAAC,QAAQ,UAAU;AAAG;AAC1B,UAAM,EAAE,OAAO,IAAI;AACnB,UAAM,YAAQ,+BAAS,OAAO,YAAU,aAAa,QAAQ,QAAQ,MAAM,UAAU,QAAQ,IAAI,MAAM,EAAE;AACzG,UAAM,eAAe,MAAM,MAAM,SAAS,CAAC;AAC3C,QAAI,UAAU;AAAc;AAC5B,aAAS,OAAO,QAAgB;AAC5B,mBAAa,QAAQ,OAAO;AAC5B,cAAQ,UAAU,WAAW,MAAM;AAC/B,YAAI,UAAU,WAAW,YAAY;AAAS,iBAAO,OAAO,MAAM;AAClE,YAAI,SAAS,SAAS,GAAG,QAAQ,SAAS;AAAA,MAC9C,GAAG,QAAQ;AAAA,IACf;AACA,WAAO,MAAM,CAAC,CAAC;AACf,aAAS,SAAS,QAAsB;AACpC,YAAM,EAAE,EAAE,IAAI,OAAO;AACrB,YAAM,iBAAiB,KAAK,IAAI,IAAI,SAAS,YAAY,IAAI,cAAc;AAC3E,YAAM,SAAS,iBAAiB,IAAI,MAAM,KAAK,UAAQ,OAAO,CAAC;AAC/D,aAAO,MAAM;AAAA,IACjB;AACA,QAAI,SAAS,YAAY,QAAQ;AACjC,WAAO,MAAM;AACT,mBAAa,QAAQ,OAAO;AAC5B,UAAI,SAAS,eAAe,QAAQ;AACpC,UAAI,SAAS,SAAS,GAAG,CAAC;AAAA,IAC9B;AAAA,EACJ,GAAG,CAAC,MAAM,OAAO,YAAY,KAAK,UAAU,SAAS,CAAC;AAEtD,WAAS,sBAAsB,GAAgD;AAC3E,QAAI;AAAkB;AACtB,cAAU,UAAU;AACpB,mBAAe,CAAC;AAAA,EACpB;AAEA,WAAS,sBAAsB,GAAgD;AAC3E,QAAI;AAAkB;AACtB,cAAU,UAAU;AACpB,mBAAe,CAAC;AAAA,EACpB;AAEA,SACI,oCAAC,wBAAO,KAAK,KAAK,WAAW,KAAK,cAAc,uBAAuB,cAAc,uBAAwB,GAAG,QAC5G;AAAA,IAAC;AAAA;AAAA,MACG,eAAW;AAAA,QACP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAQA;AAAA,MACJ;AAAA,MACA,WAAO,mCAAqB,EAAE,SAAK,iBAAG,GAAG,EAAE,GAAG,cAAc;AAAA;AAAA,IAE3D;AAAA,EACL,CACJ;AAER,CAAC;",
6
- "names": []
7
- }
@@ -1,70 +0,0 @@
1
- "use client";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/AutoSizeTextarea.tsx
21
- var AutoSizeTextarea_exports = {};
22
- __export(AutoSizeTextarea_exports, {
23
- AutoSizeTextArea: () => AutoSizeTextArea
24
- });
25
- module.exports = __toCommonJS(AutoSizeTextarea_exports);
26
- var import_react = require("react");
27
- var import_css = require("@emotion/css");
28
- var import_deepsea_tools = require("deepsea-tools");
29
- var import_utils = require("../utils");
30
- var AutoSizeTextArea = (0, import_react.forwardRef)((props, ref) => {
31
- const { className, style, ...rest } = props;
32
- const [height, setHeight] = (0, import_react.useState)(void 0);
33
- const ele = (0, import_react.useRef)(null);
34
- (0, import_react.useImperativeHandle)(ref, () => ele.current, []);
35
- (0, import_react.useLayoutEffect)(() => {
36
- const textarea = ele.current;
37
- function resizeTextarea() {
38
- setHeight("auto");
39
- setHeight((0, import_utils.px)(textarea.scrollHeight + textarea.offsetHeight - textarea.clientHeight));
40
- }
41
- resizeTextarea();
42
- textarea.addEventListener("input", resizeTextarea);
43
- textarea.addEventListener("change", resizeTextarea);
44
- return () => {
45
- textarea.removeEventListener("input", resizeTextarea);
46
- textarea.removeEventListener("change", resizeTextarea);
47
- };
48
- }, []);
49
- return /* @__PURE__ */ React.createElement(
50
- "textarea",
51
- {
52
- ref: ele,
53
- className: (0, import_deepsea_tools.clsx)(
54
- import_css.css`
55
- height: var(--height);
56
- resize: none;
57
- overflow-y: hidden;
58
- `,
59
- className
60
- ),
61
- style: (0, import_utils.transformCSSVariable)({ height }, style),
62
- ...rest
63
- }
64
- );
65
- });
66
- // Annotate the CommonJS export names for ESM import in node:
67
- 0 && (module.exports = {
68
- AutoSizeTextArea
69
- });
70
- //# sourceMappingURL=AutoSizeTextarea.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/AutoSizeTextarea.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport { TextareaHTMLAttributes, forwardRef, useImperativeHandle, useLayoutEffect, useRef, useState } from \"react\"\nimport { css } from \"@emotion/css\"\nimport { clsx } from \"deepsea-tools\"\n\nimport { px, transformCSSVariable } from \"@/utils\"\n\n/**\n * 自适应高度的文本域\n */\nexport const AutoSizeTextArea = forwardRef<HTMLTextAreaElement, TextareaHTMLAttributes<HTMLTextAreaElement>>((props, ref) => {\n const { className, style, ...rest } = props\n const [height, setHeight] = useState<string | undefined>(undefined)\n const ele = useRef<HTMLTextAreaElement>(null)\n\n useImperativeHandle(ref, () => ele.current!, [])\n\n useLayoutEffect(() => {\n const textarea = ele.current!\n function resizeTextarea() {\n setHeight(\"auto\")\n setHeight(px(textarea.scrollHeight + textarea.offsetHeight - textarea.clientHeight))\n }\n resizeTextarea()\n textarea.addEventListener(\"input\", resizeTextarea)\n textarea.addEventListener(\"change\", resizeTextarea)\n\n return () => {\n textarea.removeEventListener(\"input\", resizeTextarea)\n textarea.removeEventListener(\"change\", resizeTextarea)\n }\n }, [])\n\n return (\n <textarea\n ref={ele}\n className={clsx(\n css`\n height: var(--height);\n resize: none;\n overflow-y: hidden;\n `,\n className,\n )}\n style={transformCSSVariable({ height }, style)}\n {...rest}\n />\n )\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA2G;AAC3G,iBAAoB;AACpB,2BAAqB;AAErB,mBAAyC;AAKlC,IAAM,uBAAmB,yBAA6E,CAAC,OAAO,QAAQ;AACzH,QAAM,EAAE,WAAW,OAAO,GAAG,KAAK,IAAI;AACtC,QAAM,CAAC,QAAQ,SAAS,QAAI,uBAA6B,MAAS;AAClE,QAAM,UAAM,qBAA4B,IAAI;AAE5C,wCAAoB,KAAK,MAAM,IAAI,SAAU,CAAC,CAAC;AAE/C,oCAAgB,MAAM;AAClB,UAAM,WAAW,IAAI;AACrB,aAAS,iBAAiB;AACtB,gBAAU,MAAM;AAChB,oBAAU,iBAAG,SAAS,eAAe,SAAS,eAAe,SAAS,YAAY,CAAC;AAAA,IACvF;AACA,mBAAe;AACf,aAAS,iBAAiB,SAAS,cAAc;AACjD,aAAS,iBAAiB,UAAU,cAAc;AAElD,WAAO,MAAM;AACT,eAAS,oBAAoB,SAAS,cAAc;AACpD,eAAS,oBAAoB,UAAU,cAAc;AAAA,IACzD;AAAA,EACJ,GAAG,CAAC,CAAC;AAEL,SACI;AAAA,IAAC;AAAA;AAAA,MACG,KAAK;AAAA,MACL,eAAW;AAAA,QACP;AAAA;AAAA;AAAA;AAAA;AAAA,QAKA;AAAA,MACJ;AAAA,MACA,WAAO,mCAAqB,EAAE,OAAO,GAAG,KAAK;AAAA,MAC5C,GAAG;AAAA;AAAA,EACR;AAER,CAAC;",
6
- "names": []
7
- }
@@ -1,77 +0,0 @@
1
- "use client";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/CircleText.tsx
21
- var CircleText_exports = {};
22
- __export(CircleText_exports, {
23
- CircleText: () => CircleText
24
- });
25
- module.exports = __toCommonJS(CircleText_exports);
26
- var import_react = require("react");
27
- var CircleText = (props) => {
28
- const {
29
- width,
30
- height,
31
- radius,
32
- startAngel = 0,
33
- gapAngel = 0,
34
- align = "center",
35
- style,
36
- direction = "outer",
37
- reverse = false,
38
- separator,
39
- children,
40
- ...rest
41
- } = props;
42
- const unitAngle = Math.atan(width / 2 / radius) * 2;
43
- const totalAngle = (unitAngle + gapAngel) * children.length - gapAngel;
44
- const offsetAngle = align === "left" ? 0 : align === "right" ? totalAngle : totalAngle / 2;
45
- function getTransform(idx) {
46
- const angle = startAngel - idx * (unitAngle + gapAngel) + offsetAngle - unitAngle / 2;
47
- const x = (radius + height / 2) * Math.cos(angle) - width / 2;
48
- const y = (radius + height / 2) * Math.sin(angle) * -1 - height / 2;
49
- const z = Math.PI / 2 - angle + (direction === "inner" ? Math.PI : 0);
50
- return `translateX(${x}px) translateY(${y}px) rotateZ(${z / Math.PI * 180}deg)`;
51
- }
52
- const words = typeof separator === "function" ? separator(children) : children.split(separator ?? "");
53
- if (reverse)
54
- words.reverse();
55
- return /* @__PURE__ */ React.createElement(import_react.Fragment, null, words.map((w, idx) => /* @__PURE__ */ React.createElement(
56
- "span",
57
- {
58
- key: idx,
59
- style: {
60
- position: "absolute",
61
- ...style,
62
- transform: getTransform(idx),
63
- textAlign: "center",
64
- width,
65
- lineHeight: `${height}px`,
66
- height
67
- },
68
- ...rest
69
- },
70
- w
71
- )));
72
- };
73
- // Annotate the CommonJS export names for ESM import in node:
74
- 0 && (module.exports = {
75
- CircleText
76
- });
77
- //# sourceMappingURL=CircleText.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/CircleText.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport { FC, Fragment, HTMLAttributes } from \"react\"\n\nexport interface CircleTextProps extends Omit<HTMLAttributes<HTMLSpanElement>, \"children\"> {\n /** 每一个方块的宽度 */\n width: number\n /** 每一个方块的高度 */\n height: number\n /** 圆弧的半径,不包含方块的高度 */\n radius: number\n /** 开始旋转的弧度,逆时针增加,0 为 x 轴方向 */\n startAngel?: number\n /** 每一个方块之间间隔的弧度 */\n gapAngel?: number\n /** 文字对齐的方式,默认居中 */\n align?: \"left\" | \"center\" | \"right\"\n /** 文字朝向圆心还是外侧,默认外侧 */\n direction?: \"inner\" | \"outer\"\n /** 是否反转文字顺序 */\n reverse?: boolean\n /** 分割文字的方法 */\n separator?: string | RegExp | ((text: string) => string[])\n /** 显示的文字 */\n children: string\n}\n\n/** 环形文字 */\nexport const CircleText: FC<CircleTextProps> = props => {\n const {\n width,\n height,\n radius,\n startAngel = 0,\n gapAngel = 0,\n align = \"center\",\n style,\n direction = \"outer\",\n reverse = false,\n separator,\n children,\n ...rest\n } = props\n const unitAngle = Math.atan(width / 2 / radius) * 2\n const totalAngle = (unitAngle + gapAngel) * children.length - gapAngel\n const offsetAngle = align === \"left\" ? 0 : align === \"right\" ? totalAngle : totalAngle / 2\n\n function getTransform(idx: number) {\n const angle = startAngel - idx * (unitAngle + gapAngel) + offsetAngle - unitAngle / 2\n const x = (radius + height / 2) * Math.cos(angle) - width / 2\n const y = (radius + height / 2) * Math.sin(angle) * -1 - height / 2\n const z = Math.PI / 2 - angle + (direction === \"inner\" ? Math.PI : 0)\n return `translateX(${x}px) translateY(${y}px) rotateZ(${(z / Math.PI) * 180}deg)`\n }\n\n const words = typeof separator === \"function\" ? separator(children) : children.split(separator ?? \"\")\n\n if (reverse) words.reverse()\n\n return (\n <Fragment>\n {words.map((w, idx) => (\n <span\n key={idx}\n style={{\n position: \"absolute\",\n ...style,\n transform: getTransform(idx),\n textAlign: \"center\",\n width,\n lineHeight: `${height}px`,\n height: height,\n }}\n {...rest}\n >\n {w}\n </span>\n ))}\n </Fragment>\n )\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA6C;AA0BtC,IAAM,aAAkC,WAAS;AACpD,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb,WAAW;AAAA,IACX,QAAQ;AAAA,IACR;AAAA,IACA,YAAY;AAAA,IACZ,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACP,IAAI;AACJ,QAAM,YAAY,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI;AAClD,QAAM,cAAc,YAAY,YAAY,SAAS,SAAS;AAC9D,QAAM,cAAc,UAAU,SAAS,IAAI,UAAU,UAAU,aAAa,aAAa;AAEzF,WAAS,aAAa,KAAa;AAC/B,UAAM,QAAQ,aAAa,OAAO,YAAY,YAAY,cAAc,YAAY;AACpF,UAAM,KAAK,SAAS,SAAS,KAAK,KAAK,IAAI,KAAK,IAAI,QAAQ;AAC5D,UAAM,KAAK,SAAS,SAAS,KAAK,KAAK,IAAI,KAAK,IAAI,KAAK,SAAS;AAClE,UAAM,IAAI,KAAK,KAAK,IAAI,SAAS,cAAc,UAAU,KAAK,KAAK;AACnE,WAAO,cAAc,mBAAmB,gBAAiB,IAAI,KAAK,KAAM;AAAA,EAC5E;AAEA,QAAM,QAAQ,OAAO,cAAc,aAAa,UAAU,QAAQ,IAAI,SAAS,MAAM,aAAa,EAAE;AAEpG,MAAI;AAAS,UAAM,QAAQ;AAE3B,SACI,oCAAC,6BACI,MAAM,IAAI,CAAC,GAAG,QACX;AAAA,IAAC;AAAA;AAAA,MACG,KAAK;AAAA,MACL,OAAO;AAAA,QACH,UAAU;AAAA,QACV,GAAG;AAAA,QACH,WAAW,aAAa,GAAG;AAAA,QAC3B,WAAW;AAAA,QACX;AAAA,QACA,YAAY,GAAG;AAAA,QACf;AAAA,MACJ;AAAA,MACC,GAAG;AAAA;AAAA,IAEH;AAAA,EACL,CACH,CACL;AAER;",
6
- "names": []
7
- }
@@ -1,60 +0,0 @@
1
- "use client";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/components/CopyButton.tsx
31
- var CopyButton_exports = {};
32
- __export(CopyButton_exports, {
33
- CopyButton: () => CopyButton,
34
- Event: () => import_clipboard2.Event
35
- });
36
- module.exports = __toCommonJS(CopyButton_exports);
37
- var import_react = require("react");
38
- var import_clipboard = __toESM(require("clipboard"));
39
- var import_soda_hooks = require("soda-hooks");
40
- var import_clipboard2 = require("clipboard");
41
- var CopyButton = (0, import_react.forwardRef)((props, ref) => {
42
- const { text, onCopySuccess: _onCoptSuccess, onCopyError: _onCopyError, ...rest } = props;
43
- const ele = (0, import_react.useRef)(null);
44
- const onCopySuccess = (0, import_soda_hooks.useLatest)(_onCoptSuccess);
45
- const onCopyError = (0, import_soda_hooks.useLatest)(_onCopyError);
46
- (0, import_react.useImperativeHandle)(ref, () => ele.current, [ele.current]);
47
- (0, import_react.useEffect)(() => {
48
- const clipboard = new import_clipboard.default(ele.current);
49
- clipboard.on("success", (event) => onCopySuccess.current?.(event));
50
- clipboard.on("error", (event) => onCopyError.current?.(event));
51
- return () => clipboard.destroy();
52
- }, []);
53
- return /* @__PURE__ */ React.createElement("button", { ref: ele, ...rest, "data-clipboard-text": text });
54
- });
55
- // Annotate the CommonJS export names for ESM import in node:
56
- 0 && (module.exports = {
57
- CopyButton,
58
- Event
59
- });
60
- //# sourceMappingURL=CopyButton.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/CopyButton.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport { ComponentPropsWithoutRef, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\nimport ClipboardJS, { Event } from \"clipboard\"\nimport { useLatest } from \"soda-hooks\"\n\nexport { Event } from \"clipboard\"\n\nexport type CopyButtonProps = ComponentPropsWithoutRef<\"button\"> & {\n text?: string\n onCopySuccess?: (e: Event) => void\n onCopyError?: (e: Event) => void\n}\n\nexport const CopyButton = forwardRef<HTMLButtonElement, CopyButtonProps>((props, ref) => {\n const { text, onCopySuccess: _onCoptSuccess, onCopyError: _onCopyError, ...rest } = props\n const ele = useRef<HTMLButtonElement>(null)\n const onCopySuccess = useLatest(_onCoptSuccess)\n const onCopyError = useLatest(_onCopyError)\n\n useImperativeHandle(ref, () => ele.current!, [ele.current])\n\n useEffect(() => {\n const clipboard = new ClipboardJS(ele.current!)\n clipboard.on(\"success\", event => onCopySuccess.current?.(event))\n clipboard.on(\"error\", event => onCopyError.current?.(event))\n return () => clipboard.destroy()\n }, [])\n\n return <button ref={ele} {...rest} data-clipboard-text={text} />\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA6F;AAC7F,uBAAmC;AACnC,wBAA0B;AAE1B,IAAAA,oBAAsB;AAQf,IAAM,iBAAa,yBAA+C,CAAC,OAAO,QAAQ;AACrF,QAAM,EAAE,MAAM,eAAe,gBAAgB,aAAa,cAAc,GAAG,KAAK,IAAI;AACpF,QAAM,UAAM,qBAA0B,IAAI;AAC1C,QAAM,oBAAgB,6BAAU,cAAc;AAC9C,QAAM,kBAAc,6BAAU,YAAY;AAE1C,wCAAoB,KAAK,MAAM,IAAI,SAAU,CAAC,IAAI,OAAO,CAAC;AAE1D,8BAAU,MAAM;AACZ,UAAM,YAAY,IAAI,iBAAAC,QAAY,IAAI,OAAQ;AAC9C,cAAU,GAAG,WAAW,WAAS,cAAc,UAAU,KAAK,CAAC;AAC/D,cAAU,GAAG,SAAS,WAAS,YAAY,UAAU,KAAK,CAAC;AAC3D,WAAO,MAAM,UAAU,QAAQ;AAAA,EACnC,GAAG,CAAC,CAAC;AAEL,SAAO,oCAAC,YAAO,KAAK,KAAM,GAAG,MAAM,uBAAqB,MAAM;AAClE,CAAC;",
6
- "names": ["import_clipboard", "ClipboardJS"]
7
- }
@@ -1,56 +0,0 @@
1
- "use client";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/components/Echart.tsx
21
- var Echart_exports = {};
22
- __export(Echart_exports, {
23
- Bar: () => Bar,
24
- Line: () => Line,
25
- Pie: () => Pie
26
- });
27
- module.exports = __toCommonJS(Echart_exports);
28
- var import_react = require("react");
29
- var import_echarts = require("echarts");
30
- var Echart = (0, import_react.forwardRef)((props, ref) => {
31
- const { width, height, option, chart, ...rest } = props;
32
- const container = (0, import_react.useRef)(null);
33
- const chartRef = (0, import_react.useRef)(null);
34
- (0, import_react.useLayoutEffect)(() => {
35
- const ele = container.current;
36
- chartRef.current = (0, import_echarts.init)(ele, option, { width, height });
37
- return () => chartRef.current?.dispose();
38
- }, []);
39
- (0, import_react.useImperativeHandle)(ref, () => container.current, []);
40
- (0, import_react.useImperativeHandle)(chart, () => chartRef.current, []);
41
- (0, import_react.useEffect)(() => {
42
- chartRef.current?.setOption(option);
43
- chartRef.current?.resize({ width, height });
44
- });
45
- return /* @__PURE__ */ React.createElement("div", { ref: container, ...rest });
46
- });
47
- var Pie = Echart;
48
- var Bar = Echart;
49
- var Line = Echart;
50
- // Annotate the CommonJS export names for ESM import in node:
51
- 0 && (module.exports = {
52
- Bar,
53
- Line,
54
- Pie
55
- });
56
- //# sourceMappingURL=Echart.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/Echart.tsx"],
4
- "sourcesContent": ["\"use client\"\n\nimport {\n ComponentPropsWithoutRef,\n ForwardRefExoticComponent,\n ForwardedRef,\n RefAttributes,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n} from \"react\"\nimport {\n BarSeriesOption,\n ComposeOption,\n DatasetComponentOption,\n ECharts,\n GridComponentOption,\n LineSeriesOption,\n PieSeriesOption,\n TitleComponentOption,\n TooltipComponentOption,\n init,\n} from \"echarts\"\n\nexport type PieOption = ComposeOption<PieSeriesOption | TitleComponentOption | DatasetComponentOption | GridComponentOption | TooltipComponentOption>\n\nexport type BarOption = ComposeOption<BarSeriesOption | TitleComponentOption | DatasetComponentOption | GridComponentOption | TooltipComponentOption>\n\nexport type LineOption = ComposeOption<LineSeriesOption | TitleComponentOption | DatasetComponentOption | GridComponentOption | TooltipComponentOption>\n\nexport interface EchartProps<T extends any = any> extends Omit<ComponentPropsWithoutRef<\"div\">, \"children\"> {\n width: number\n height: number\n option: T\n chart?: ForwardedRef<ECharts>\n}\n\nexport type EchartComponent<T extends PieOption | BarOption | LineOption> = ForwardRefExoticComponent<\n Omit<EchartProps<T>, \"ref\"> & RefAttributes<HTMLDivElement>\n>\n\nconst Echart = forwardRef<HTMLDivElement, EchartProps>((props, ref) => {\n const { width, height, option, chart, ...rest } = props\n const container = useRef<HTMLDivElement>(null)\n const chartRef = useRef<ECharts | null>(null)\n\n useLayoutEffect(() => {\n const ele = container.current!\n chartRef.current = init(ele, option, { width, height })\n return () => chartRef.current?.dispose()\n }, [])\n\n useImperativeHandle(ref, () => container.current!, [])\n\n useImperativeHandle(chart, () => chartRef.current!, [])\n\n useEffect(() => {\n chartRef.current?.setOption(option)\n chartRef.current?.resize({ width, height })\n })\n\n return <div ref={container} {...rest} />\n})\n\nexport const Pie = Echart as EchartComponent<PieOption>\nexport const Bar = Echart as EchartComponent<BarOption>\nexport const Line = Echart as EchartComponent<LineOption>\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAUO;AACP,qBAWO;AAmBP,IAAM,aAAS,yBAAwC,CAAC,OAAO,QAAQ;AACnE,QAAM,EAAE,OAAO,QAAQ,QAAQ,OAAO,GAAG,KAAK,IAAI;AAClD,QAAM,gBAAY,qBAAuB,IAAI;AAC7C,QAAM,eAAW,qBAAuB,IAAI;AAE5C,oCAAgB,MAAM;AAClB,UAAM,MAAM,UAAU;AACtB,aAAS,cAAU,qBAAK,KAAK,QAAQ,EAAE,OAAO,OAAO,CAAC;AACtD,WAAO,MAAM,SAAS,SAAS,QAAQ;AAAA,EAC3C,GAAG,CAAC,CAAC;AAEL,wCAAoB,KAAK,MAAM,UAAU,SAAU,CAAC,CAAC;AAErD,wCAAoB,OAAO,MAAM,SAAS,SAAU,CAAC,CAAC;AAEtD,8BAAU,MAAM;AACZ,aAAS,SAAS,UAAU,MAAM;AAClC,aAAS,SAAS,OAAO,EAAE,OAAO,OAAO,CAAC;AAAA,EAC9C,CAAC;AAED,SAAO,oCAAC,SAAI,KAAK,WAAY,GAAG,MAAM;AAC1C,CAAC;AAEM,IAAM,MAAM;AACZ,IAAM,MAAM;AACZ,IAAM,OAAO;",
6
- "names": []
7
- }