tttb 0.1.29

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 (264) hide show
  1. package/README.md +42 -0
  2. package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
  3. package/dist/components/Button/index.js +6 -0
  4. package/dist/components/Button/index.vue.js +7 -0
  5. package/dist/components/Button/index.vue2.js +54 -0
  6. package/dist/components/Button/types.js +8 -0
  7. package/dist/components/Checkbox/index.js +6 -0
  8. package/dist/components/Checkbox/index.vue.js +7 -0
  9. package/dist/components/Checkbox/index.vue2.js +35 -0
  10. package/dist/components/Checkbox/types.js +7 -0
  11. package/dist/components/Collapse/index.js +6 -0
  12. package/dist/components/Collapse/index.vue.js +7 -0
  13. package/dist/components/Collapse/index.vue2.js +42 -0
  14. package/dist/components/Collapse/types.js +7 -0
  15. package/dist/components/CollapseItem/index.js +6 -0
  16. package/dist/components/CollapseItem/index.vue.js +7 -0
  17. package/dist/components/CollapseItem/index.vue2.js +80 -0
  18. package/dist/components/Dialog/DialogItem.vue.js +7 -0
  19. package/dist/components/Dialog/DialogItem.vue2.js +69 -0
  20. package/dist/components/Dialog/DialogPrompt.vue.js +7 -0
  21. package/dist/components/Dialog/DialogPrompt.vue2.js +63 -0
  22. package/dist/components/Dialog/index.js +6 -0
  23. package/dist/components/Dialog/index.vue.js +7 -0
  24. package/dist/components/Dialog/index.vue2.js +91 -0
  25. package/dist/components/Icon/index.js +6 -0
  26. package/dist/components/Icon/index.vue.js +45 -0
  27. package/dist/components/Icon/index.vue2.js +4 -0
  28. package/dist/components/Loading/index.js +6 -0
  29. package/dist/components/Loading/index.vue.js +7 -0
  30. package/dist/components/Loading/index.vue2.js +37 -0
  31. package/dist/components/Loading/types.js +7 -0
  32. package/dist/components/Message/index.js +6 -0
  33. package/dist/components/Message/index.vue.js +7 -0
  34. package/dist/components/Message/index.vue2.js +91 -0
  35. package/dist/components/Modal/index.js +6 -0
  36. package/dist/components/Modal/index.vue.js +7 -0
  37. package/dist/components/Modal/index.vue2.js +39 -0
  38. package/dist/components/Modal/types.js +7 -0
  39. package/dist/components/Nav/index.js +6 -0
  40. package/dist/components/Nav/index.vue.js +7 -0
  41. package/dist/components/Nav/index.vue2.js +95 -0
  42. package/dist/components/Pagination/index.js +6 -0
  43. package/dist/components/Pagination/index.vue.js +7 -0
  44. package/dist/components/Pagination/index.vue2.js +149 -0
  45. package/dist/components/Pagination/types.js +8 -0
  46. package/dist/components/Popconfirm/index.js +7 -0
  47. package/dist/components/Popconfirm/index.vue.js +92 -0
  48. package/dist/components/Popconfirm/index.vue3.js +5 -0
  49. package/dist/components/Popconfirm/types.js +14 -0
  50. package/dist/components/Popover/index.js +7 -0
  51. package/dist/components/Popover/index.vue.js +32 -0
  52. package/dist/components/Popover/index.vue3.js +5 -0
  53. package/dist/components/Progress/index.js +6 -0
  54. package/dist/components/Progress/index.vue.js +7 -0
  55. package/dist/components/Progress/index.vue2.js +38 -0
  56. package/dist/components/Progress/types.js +7 -0
  57. package/dist/components/RouterNav/index.js +6 -0
  58. package/dist/components/RouterNav/index.vue.js +33 -0
  59. package/dist/components/RouterNav/index.vue2.js +4 -0
  60. package/dist/components/Switch/index.js +6 -0
  61. package/dist/components/Switch/index.vue.js +7 -0
  62. package/dist/components/Switch/index.vue2.js +76 -0
  63. package/dist/components/Switch/types.js +6 -0
  64. package/dist/components/Table/index.js +6 -0
  65. package/dist/components/Table/index.vue.js +7 -0
  66. package/dist/components/Table/index.vue2.js +57 -0
  67. package/dist/components/Timer/index.js +6 -0
  68. package/dist/components/Timer/index.vue.js +31 -0
  69. package/dist/components/Timer/index.vue2.js +4 -0
  70. package/dist/components/Tooltip/TooltipContent.vue.js +33 -0
  71. package/dist/components/Tooltip/TooltipContent.vue2.js +4 -0
  72. package/dist/components/Tooltip/TooltipItem.vue.js +58 -0
  73. package/dist/components/Tooltip/TooltipItem.vue2.js +4 -0
  74. package/dist/components/Tooltip/TooltipLayer.vue.js +49 -0
  75. package/dist/components/Tooltip/TooltipLayer.vue2.js +4 -0
  76. package/dist/components/Tooltip/index.js +6 -0
  77. package/dist/components/Tooltip/index.vue.js +74 -0
  78. package/dist/components/Tooltip/index.vue2.js +4 -0
  79. package/dist/components/Tooltip/manager.js +105 -0
  80. package/dist/components/Tooltip/types.js +38 -0
  81. package/dist/components/Tooltip/useTooltip.js +43 -0
  82. package/dist/components/Warn/index.js +6 -0
  83. package/dist/components/Warn/index.vue.js +7 -0
  84. package/dist/components/Warn/index.vue2.js +21 -0
  85. package/dist/components/Warn/types.js +6 -0
  86. package/dist/components/Watermark/index.js +6 -0
  87. package/dist/components/Watermark/index.vue.js +7 -0
  88. package/dist/components/Watermark/index.vue2.js +54 -0
  89. package/dist/components/Watermark/types.js +10 -0
  90. package/dist/components/Watermark/useWatermarkBg.js +11 -0
  91. package/dist/components/helpers.js +25 -0
  92. package/dist/components.js +44 -0
  93. package/dist/directives/vBackTop.js +111 -0
  94. package/dist/directives/vDelayIn.js +41 -0
  95. package/dist/directives/vHoldPointer.js +112 -0
  96. package/dist/directives/vLazy.js +61 -0
  97. package/dist/directives/vLoading.js +49 -0
  98. package/dist/directives/vRipple.js +81 -0
  99. package/dist/directives/vSlideIn.js +39 -0
  100. package/dist/directives/vTextJump.js +50 -0
  101. package/dist/directives/vTooltip.js +55 -0
  102. package/dist/directives.js +20 -0
  103. package/dist/hooks/useAudio.js +112 -0
  104. package/dist/hooks/useElementScroll.js +30 -0
  105. package/dist/hooks/useGSAP.js +40 -0
  106. package/dist/hooks/useRefreshRate.js +26 -0
  107. package/dist/hooks/useWindowBackTop.js +86 -0
  108. package/dist/hooks.js +13 -0
  109. package/dist/icons/brands.js +592 -0
  110. package/dist/icons/regular.js +278 -0
  111. package/dist/icons/solid.js +2005 -0
  112. package/dist/index.js +135 -0
  113. package/dist/node_modules/.pnpm/@floating-ui_core@1.7.5/node_modules/@floating-ui/core/dist/floating-ui.core.js +448 -0
  114. package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.6/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +401 -0
  115. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.11/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +136 -0
  116. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.11/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +128 -0
  117. package/dist/node_modules/.pnpm/@floating-ui_vue@1.1.11_vue@3.5.34_typescript@5.9.3_/node_modules/@floating-ui/vue/dist/floating-ui.vue.js +131 -0
  118. package/dist/node_modules/.pnpm/@fortawesome_fontawesome-svg-core@7.2.0/node_modules/@fortawesome/fontawesome-svg-core/index.js +3102 -0
  119. package/dist/node_modules/.pnpm/@fortawesome_free-brands-svg-icons@7.2.0/node_modules/@fortawesome/free-brands-svg-icons/index.js +3380 -0
  120. package/dist/node_modules/.pnpm/@fortawesome_free-regular-svg-icons@7.2.0/node_modules/@fortawesome/free-regular-svg-icons/index.js +1228 -0
  121. package/dist/node_modules/.pnpm/@fortawesome_free-solid-svg-icons@7.2.0/node_modules/@fortawesome/free-solid-svg-icons/index.js +9694 -0
  122. package/dist/node_modules/.pnpm/@fortawesome_vue-fontawesom_b85c0ed4b0a431cb59a463de76a3e522/node_modules/@fortawesome/vue-fontawesome/index.es.js +528 -0
  123. package/dist/node_modules/.pnpm/gsap@3.15.0/node_modules/gsap/CSSPlugin.js +424 -0
  124. package/dist/node_modules/.pnpm/gsap@3.15.0/node_modules/gsap/gsap-core.js +1652 -0
  125. package/dist/node_modules/.pnpm/gsap@3.15.0/node_modules/gsap/index.js +13 -0
  126. package/dist/tttb.css +1 -0
  127. package/dist/types/bundle.d.ts +10 -0
  128. package/dist/types/components/Button/index.d.ts +22 -0
  129. package/dist/types/components/Button/types.d.ts +12 -0
  130. package/dist/types/components/Checkbox/index.d.ts +29 -0
  131. package/dist/types/components/Checkbox/types.d.ts +8 -0
  132. package/dist/types/components/Collapse/index.d.ts +28 -0
  133. package/dist/types/components/Collapse/types.d.ts +16 -0
  134. package/dist/types/components/CollapseItem/index.d.ts +27 -0
  135. package/dist/types/components/CollapseItem/types.d.ts +6 -0
  136. package/dist/types/components/Dialog/DialogItem.d.ts +38 -0
  137. package/dist/types/components/Dialog/DialogPrompt.d.ts +16 -0
  138. package/dist/types/components/Dialog/index.d.ts +10 -0
  139. package/dist/types/components/Dialog/types.d.ts +58 -0
  140. package/dist/types/components/Icon/index.d.ts +3 -0
  141. package/dist/types/components/Icon/types.d.ts +2 -0
  142. package/dist/types/components/Loading/index.d.ts +6 -0
  143. package/dist/types/components/Loading/types.d.ts +8 -0
  144. package/dist/types/components/Message/index.d.ts +9 -0
  145. package/dist/types/components/Message/types.d.ts +13 -0
  146. package/dist/types/components/Modal/index.d.ts +21 -0
  147. package/dist/types/components/Modal/types.d.ts +11 -0
  148. package/dist/types/components/Nav/index.d.ts +7 -0
  149. package/dist/types/components/Nav/types.d.ts +15 -0
  150. package/dist/types/components/Pagination/index.d.ts +18 -0
  151. package/dist/types/components/Pagination/types.d.ts +16 -0
  152. package/dist/types/components/Popconfirm/index.d.ts +262 -0
  153. package/dist/types/components/Popconfirm/types.d.ts +27 -0
  154. package/dist/types/components/Popover/index.d.ts +150 -0
  155. package/dist/types/components/Progress/index.d.ts +21 -0
  156. package/dist/types/components/Progress/types.d.ts +9 -0
  157. package/dist/types/components/RouterNav/index.d.ts +2 -0
  158. package/dist/types/components/Switch/index.d.ts +13 -0
  159. package/dist/types/components/Switch/types.d.ts +6 -0
  160. package/dist/types/components/Table/index.d.ts +35 -0
  161. package/dist/types/components/Table/types.d.ts +4 -0
  162. package/dist/types/components/Timer/index.d.ts +6 -0
  163. package/dist/types/components/Tooltip/TooltipContent.d.ts +17 -0
  164. package/dist/types/components/Tooltip/TooltipItem.d.ts +45 -0
  165. package/dist/types/components/Tooltip/TooltipLayer.d.ts +2 -0
  166. package/dist/types/components/Tooltip/index.d.ts +42 -0
  167. package/dist/types/components/Tooltip/manager.d.ts +18 -0
  168. package/dist/types/components/Tooltip/types.d.ts +54 -0
  169. package/dist/types/components/Tooltip/useTooltip.d.ts +8 -0
  170. package/dist/types/components/Warn/index.d.ts +20 -0
  171. package/dist/types/components/Warn/types.d.ts +6 -0
  172. package/dist/types/components/Watermark/index.d.ts +28 -0
  173. package/dist/types/components/Watermark/types.d.ts +14 -0
  174. package/dist/types/components/Watermark/useWatermarkBg.d.ts +6 -0
  175. package/dist/types/components/helpers.d.ts +14 -0
  176. package/dist/types/components/index.d.ts +21 -0
  177. package/dist/types/directives/index.d.ts +9 -0
  178. package/dist/types/directives/vBackTop.d.ts +3 -0
  179. package/dist/types/directives/vDelayIn.d.ts +3 -0
  180. package/dist/types/directives/vHoldPointer.d.ts +3 -0
  181. package/dist/types/directives/vLazy.d.ts +3 -0
  182. package/dist/types/directives/vLoading.d.ts +3 -0
  183. package/dist/types/directives/vRipple.d.ts +3 -0
  184. package/dist/types/directives/vSlideIn.d.ts +3 -0
  185. package/dist/types/directives/vTextJump.d.ts +3 -0
  186. package/dist/types/directives/vTooltip.d.ts +7 -0
  187. package/dist/types/hooks/index.d.ts +5 -0
  188. package/dist/types/hooks/useAudio.d.ts +38 -0
  189. package/dist/types/hooks/useElementScroll.d.ts +32 -0
  190. package/dist/types/hooks/useGSAP.d.ts +34 -0
  191. package/dist/types/hooks/useRefreshRate.d.ts +5 -0
  192. package/dist/types/hooks/useWindowBackTop.d.ts +14 -0
  193. package/dist/types/icons/brands.d.ts +589 -0
  194. package/dist/types/icons/regular.d.ts +275 -0
  195. package/dist/types/icons/solid.d.ts +2002 -0
  196. package/dist/types/router/index.d.ts +2 -0
  197. package/dist/types/utils/chance.d.ts +7 -0
  198. package/dist/types/utils/copyToClipboard.d.ts +6 -0
  199. package/dist/types/utils/debounce.d.ts +16 -0
  200. package/dist/types/utils/deepClone.d.ts +6 -0
  201. package/dist/types/utils/deepEqual.d.ts +5 -0
  202. package/dist/types/utils/dialog.d.ts +12 -0
  203. package/dist/types/utils/getId.d.ts +6 -0
  204. package/dist/types/utils/getRandomColor.d.ts +4 -0
  205. package/dist/types/utils/getRandomInt.d.ts +6 -0
  206. package/dist/types/utils/getRandomStr.d.ts +6 -0
  207. package/dist/types/utils/index.d.ts +23 -0
  208. package/dist/types/utils/injectStyles.d.ts +9 -0
  209. package/dist/types/utils/isElementOverflow.d.ts +20 -0
  210. package/dist/types/utils/isEmpty.d.ts +6 -0
  211. package/dist/types/utils/isMobile.d.ts +6 -0
  212. package/dist/types/utils/isObject.d.ts +4 -0
  213. package/dist/types/utils/isPromise.d.ts +6 -0
  214. package/dist/types/utils/localStorage.d.ts +24 -0
  215. package/dist/types/utils/msg.d.ts +20 -0
  216. package/dist/types/utils/omit.d.ts +6 -0
  217. package/dist/types/utils/pick.d.ts +6 -0
  218. package/dist/types/utils/sessionStorage.d.ts +24 -0
  219. package/dist/types/utils/shuffleArray.d.ts +6 -0
  220. package/dist/types/utils/throttle.d.ts +9 -0
  221. package/dist/types/views/TestButton.d.ts +2 -0
  222. package/dist/types/views/TestCheckbox.d.ts +2 -0
  223. package/dist/types/views/TestCollapse.d.ts +2 -0
  224. package/dist/types/views/TestDialog.d.ts +2 -0
  225. package/dist/types/views/TestHome.d.ts +2 -0
  226. package/dist/types/views/TestIcon.d.ts +2 -0
  227. package/dist/types/views/TestMessage.d.ts +2 -0
  228. package/dist/types/views/TestModal.d.ts +2 -0
  229. package/dist/types/views/TestNav.d.ts +2 -0
  230. package/dist/types/views/TestPager.d.ts +2 -0
  231. package/dist/types/views/TestPopconfirm.d.ts +4 -0
  232. package/dist/types/views/TestProgress.d.ts +2 -0
  233. package/dist/types/views/TestSwitch.d.ts +2 -0
  234. package/dist/types/views/TestTable.d.ts +2 -0
  235. package/dist/types/views/TestTimer.d.ts +19 -0
  236. package/dist/types/views/TestTooltip.d.ts +2 -0
  237. package/dist/types/views/TestVLoading.d.ts +2 -0
  238. package/dist/types/views/TestWarn.d.ts +2 -0
  239. package/dist/types/views/TestWatermark.d.ts +2 -0
  240. package/dist/utils/chance.js +7 -0
  241. package/dist/utils/copyToClipboard.js +19 -0
  242. package/dist/utils/debounce.js +14 -0
  243. package/dist/utils/deepClone.js +17 -0
  244. package/dist/utils/deepEqual.js +40 -0
  245. package/dist/utils/dialog.js +47 -0
  246. package/dist/utils/getId.js +10 -0
  247. package/dist/utils/getRandomColor.js +4 -0
  248. package/dist/utils/getRandomInt.js +4 -0
  249. package/dist/utils/getRandomStr.js +5 -0
  250. package/dist/utils/injectStyles.js +24 -0
  251. package/dist/utils/isElementOverflow.js +22 -0
  252. package/dist/utils/isEmpty.js +4 -0
  253. package/dist/utils/isMobile.js +7 -0
  254. package/dist/utils/isObject.js +4 -0
  255. package/dist/utils/isPromise.js +7 -0
  256. package/dist/utils/localStorage.js +50 -0
  257. package/dist/utils/msg.js +24 -0
  258. package/dist/utils/omit.js +9 -0
  259. package/dist/utils/pick.js +9 -0
  260. package/dist/utils/sessionStorage.js +47 -0
  261. package/dist/utils/shuffleArray.js +10 -0
  262. package/dist/utils/throttle.js +11 -0
  263. package/dist/utils.js +50 -0
  264. package/package.json +102 -0
@@ -0,0 +1,105 @@
1
+ import { reactive as E, createVNode as k, render as C } from "vue";
2
+ import x from "./TooltipLayer.vue.js";
3
+ import { defaultStateProps as v, BASIC_Z_INDEX as g } from "./types.js";
4
+ let d = g, a = null;
5
+ const r = E({
6
+ items: /* @__PURE__ */ new Map(),
7
+ singleton: I()
8
+ });
9
+ function I() {
10
+ return {
11
+ isVisible: !1,
12
+ triggerEl: null,
13
+ floatingEl: null,
14
+ content: "",
15
+ zIndex: g,
16
+ props: { ...v },
17
+ scheduler: A(),
18
+ parentId: null
19
+ };
20
+ }
21
+ function A() {
22
+ let e = null;
23
+ return {
24
+ run(i, s) {
25
+ e && clearTimeout(e), e = setTimeout(i, s);
26
+ },
27
+ cancel() {
28
+ e && (clearTimeout(e), e = null);
29
+ }
30
+ };
31
+ }
32
+ const f = (e, i) => e ? r.singleton : r.items.get(i), p = (e, i) => i ? !!(e.triggerEl?.contains(i) || e.floatingEl?.contains(i)) : !1, h = () => {
33
+ r.singleton.isVisible || [...r.items.values()].some((i) => i.isVisible) || (d = g);
34
+ for (const [i, s] of r.items)
35
+ (!s.isVisible || !s.triggerEl || !s.triggerEl.isConnected) && (s.scheduler.cancel(), r.items.delete(i));
36
+ }, b = (e) => {
37
+ const i = e.target, s = r.singleton;
38
+ s.isVisible && s.props.trigger === "click" && !p(s, i) && V.hide(!0, null, 0);
39
+ for (const [t, n] of r.items)
40
+ n.isVisible && n.props.trigger === "click" && !p(n, i) && V.hide(!1, t, 0);
41
+ }, L = () => {
42
+ if (a) return;
43
+ const e = document.createElement("div");
44
+ e.id = "floating-container", a = k(x), C(a, e), document.body.appendChild(e);
45
+ };
46
+ let c = !1;
47
+ const m = () => {
48
+ const e = r.singleton.isVisible || [...r.items.values()].some((i) => i.isVisible);
49
+ e && !c ? (document.addEventListener("click", b, !0), c = !0) : !e && c && (document.removeEventListener("click", b, !0), c = !1);
50
+ }, V = {
51
+ updateFloatingEl(e, i, s) {
52
+ const t = f(e, i);
53
+ t && s && (t.floatingEl = s);
54
+ },
55
+ show(e, i, s) {
56
+ if (!s.content) return;
57
+ L();
58
+ let t = f(e, i);
59
+ if (!e && !t && i && (t = E(I()), r.items.set(i, t)), !t) return;
60
+ const n = () => {
61
+ if (t) {
62
+ if (!e) {
63
+ for (const [o, u] of r.items)
64
+ if (o !== i && u.isVisible && u.floatingEl?.contains(s.triggerEl)) {
65
+ t.parentId = o, u.scheduler.cancel();
66
+ break;
67
+ }
68
+ }
69
+ d++, Object.assign(t, {
70
+ triggerEl: s.triggerEl,
71
+ content: s.content,
72
+ props: { ...v, ...s.props },
73
+ zIndex: d,
74
+ isVisible: !0
75
+ });
76
+ }
77
+ }, l = s.props.openDelay;
78
+ !t.isVisible && l > 0 ? t.scheduler.run(n, l) : (t.scheduler.cancel(), n()), m();
79
+ },
80
+ hide(e, i, s) {
81
+ const t = f(e, i);
82
+ t && t.scheduler.run(() => {
83
+ if (!((t.triggerEl?.matches(":hover") || t.floatingEl?.matches(":hover")) && t.props.trigger === "hover") && !(!e && [...r.items.values()].some((o) => o.parentId === i && o.isVisible))) {
84
+ if (t.isVisible = !1, e) {
85
+ h(), m();
86
+ return;
87
+ }
88
+ if (t.parentId) {
89
+ const l = r.items.get(t.parentId);
90
+ l?.isVisible && l.props.trigger === "hover" && this.hide(!1, t.parentId, s);
91
+ }
92
+ }
93
+ }, s);
94
+ },
95
+ // 非单例模式下,由内部组件动画结束后调用
96
+ remove(e) {
97
+ if (!e) return;
98
+ const i = r.items.get(e);
99
+ i && (i.scheduler.cancel(), !i.isVisible && (r.items.delete(e), h(), m()));
100
+ }
101
+ };
102
+ export {
103
+ r as state,
104
+ V as tooltipActions
105
+ };
@@ -0,0 +1,38 @@
1
+ const e = 1e3, l = {
2
+ content: "",
3
+ placement: "top",
4
+ trigger: "hover",
5
+ manual: !1,
6
+ offset: 8,
7
+ transition: "scale",
8
+ showArrow: !0,
9
+ singleton: !1,
10
+ openDelay: 0,
11
+ closeDelay: 100,
12
+ light: !1,
13
+ class: "",
14
+ style: () => ({}),
15
+ virtualRef: null,
16
+ overflow: !1
17
+ }, t = {
18
+ content: "",
19
+ placement: "top",
20
+ trigger: "hover",
21
+ manual: !1,
22
+ offset: 8,
23
+ transition: "scale",
24
+ showArrow: !0,
25
+ singleton: !1,
26
+ openDelay: 0,
27
+ closeDelay: 100,
28
+ light: !1,
29
+ class: "",
30
+ style: {},
31
+ virtualRef: null,
32
+ overflow: !1
33
+ };
34
+ export {
35
+ e as BASIC_Z_INDEX,
36
+ l as defaultProps,
37
+ t as defaultStateProps
38
+ };
@@ -0,0 +1,43 @@
1
+ import { arrow as D, useFloating as H } from "../../node_modules/.pnpm/@floating-ui_vue@1.1.11_vue@3.5.34_typescript@5.9.3_/node_modules/@floating-ui/vue/dist/floating-ui.vue.js";
2
+ import { computed as o, toValue as t, ref as a, watch as z } from "vue";
3
+ import { offset as C, flip as E, shift as F, hide as T, autoUpdate as U } from "../../node_modules/.pnpm/@floating-ui_dom@1.7.6/node_modules/@floating-ui/dom/dist/floating-ui.dom.js";
4
+ const j = (l, r, m, x, h, v) => {
5
+ const w = o(() => {
6
+ const e = t(l);
7
+ return [
8
+ C(e.offset),
9
+ E(),
10
+ F({ padding: 5 }),
11
+ D({ element: t(x), padding: 10 }),
12
+ T()
13
+ ];
14
+ }), { x: y, y: M, placement: $, middlewareData: g } = H(r, m, {
15
+ // 确保 placement 是响应式的
16
+ placement: o(() => t(l).placement || "top"),
17
+ strategy: "fixed",
18
+ whileElementsMounted: U,
19
+ middleware: w
20
+ }), A = o(() => $.value.split("-")[0]), s = a(0), i = a(0), d = a(0), u = a(0);
21
+ return z([y, M, g], ([e, c, p]) => {
22
+ if (p.hide?.referenceHidden) {
23
+ v.onHide?.();
24
+ return;
25
+ }
26
+ const f = t(r);
27
+ if (f && f.isConnected) {
28
+ e !== null && (s.value = e), c !== null && (i.value = c);
29
+ const n = p.arrow;
30
+ n && (d.value = n.x ?? 0, u.value = n.y ?? 0);
31
+ }
32
+ }), { style: o(() => ({
33
+ "--x": `${Math.round(s.value)}px`,
34
+ "--y": `${Math.round(i.value)}px`,
35
+ "--z-idx": t(h),
36
+ "--arrow-x": `${Math.round(d.value)}px`,
37
+ "--arrow-y": `${Math.round(u.value)}px`,
38
+ ...t(l).style
39
+ })), side: A };
40
+ };
41
+ export {
42
+ j as useTooltip
43
+ };
@@ -0,0 +1,6 @@
1
+ import r from "./index.vue.js";
2
+ import { withInstall as t } from "../helpers.js";
3
+ const m = t(r);
4
+ export {
5
+ m as default
6
+ };
@@ -0,0 +1,7 @@
1
+ import o from "./index.vue2.js";
2
+ /* empty css */
3
+ import a from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const m = /* @__PURE__ */ a(o, [["__scopeId", "data-v-29bbaa0f"]]);
5
+ export {
6
+ m as default
7
+ };
@@ -0,0 +1,21 @@
1
+ import { defineComponent as t, openBlock as n, createElementBlock as a, createVNode as l, unref as e, createElementVNode as m, toDisplayString as c, renderSlot as i, mergeDefaults as s } from "vue";
2
+ import { defaultProps as p } from "./types.js";
3
+ import f from "../Icon/index.js";
4
+ import { faCircleExclamation as d } from "../../node_modules/.pnpm/@fortawesome_free-solid-svg-icons@7.2.0/node_modules/@fortawesome/free-solid-svg-icons/index.js";
5
+ const u = { class: "warn-container" }, k = /* @__PURE__ */ t({
6
+ name: "Warn",
7
+ __name: "index",
8
+ props: /* @__PURE__ */ s({
9
+ msg: {}
10
+ }, p),
11
+ setup(o) {
12
+ return (r, _) => (n(), a("div", u, [
13
+ l(e(f), { icon: e(d) }, null, 8, ["icon"]),
14
+ m("p", null, c(o.msg), 1),
15
+ i(r.$slots, "default", {}, void 0, !0)
16
+ ]));
17
+ }
18
+ });
19
+ export {
20
+ k as default
21
+ };
@@ -0,0 +1,6 @@
1
+ const o = {
2
+ msg: "暂无数据"
3
+ };
4
+ export {
5
+ o as defaultProps
6
+ };
@@ -0,0 +1,6 @@
1
+ import t from "./index.vue.js";
2
+ import { withInstall as r } from "../helpers.js";
3
+ const m = r(t);
4
+ export {
5
+ m as default
6
+ };
@@ -0,0 +1,7 @@
1
+ import o from "./index.vue2.js";
2
+ /* empty css */
3
+ import r from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const e = /* @__PURE__ */ r(o, [["__scopeId", "data-v-2e039bab"]]);
5
+ export {
6
+ e as default
7
+ };
@@ -0,0 +1,54 @@
1
+ import { defineComponent as c, ref as d, onMounted as f, onUnmounted as p, openBlock as m, createElementBlock as v, renderSlot as b, mergeDefaults as k } from "vue";
2
+ import { defaultProps as g } from "./types.js";
3
+ import y from "./useWatermarkBg.js";
4
+ const $ = /* @__PURE__ */ c({
5
+ name: "Watermark",
6
+ __name: "index",
7
+ props: /* @__PURE__ */ k({
8
+ text: {},
9
+ fontSize: {},
10
+ gap: {},
11
+ rotate: {},
12
+ color: {}
13
+ }, g),
14
+ setup(a) {
15
+ const o = d(null), l = a;
16
+ let e = null;
17
+ const u = y(l), n = () => {
18
+ if (!o.value) return;
19
+ e && e.remove();
20
+ const { base64: r, size: t } = u.value;
21
+ e = document.createElement("div"), e.style.position = "absolute", e.style.backgroundImage = `url(${r})`, e.style.backgroundRepeat = "repeat", e.style.backgroundSize = `${t}px ${t}px`, e.style.pointerEvents = "none", e.style.zIndex = "9999", e.style.inset = "0", o.value.appendChild(e);
22
+ }, s = new MutationObserver((r) => {
23
+ for (const t of r) {
24
+ for (const i of t.removedNodes)
25
+ if (i === e) {
26
+ n();
27
+ return;
28
+ }
29
+ if (t.target === e) {
30
+ n();
31
+ return;
32
+ }
33
+ }
34
+ });
35
+ return f(() => {
36
+ n(), s.observe(o.value, {
37
+ attributes: !0,
38
+ childList: !0,
39
+ subtree: !0
40
+ });
41
+ }), p(() => {
42
+ s.disconnect();
43
+ }), (r, t) => (m(), v("div", {
44
+ class: "watermark-container",
45
+ ref_key: "parentRef",
46
+ ref: o
47
+ }, [
48
+ b(r.$slots, "default", {}, void 0, !0)
49
+ ], 512));
50
+ }
51
+ });
52
+ export {
53
+ $ as default
54
+ };
@@ -0,0 +1,10 @@
1
+ const t = {
2
+ text: "Watermark",
3
+ fontSize: 20,
4
+ gap: 100,
5
+ rotate: -45,
6
+ color: "rgba(0, 0, 0, .1)"
7
+ };
8
+ export {
9
+ t as defaultProps
10
+ };
@@ -0,0 +1,11 @@
1
+ import { computed as s } from "vue";
2
+ const d = (e) => s(() => {
3
+ const n = document.createElement("canvas"), a = window.devicePixelRatio || 1, o = e.fontSize * a + "px serif", t = n.getContext("2d"), { width: c } = t.measureText(e.text), i = Math.max(100, c) + e.gap * a;
4
+ return n.width = i, n.height = i, t.translate(n.width / 2, n.height / 2), t.rotate(Math.PI / 180 * -e.rotate), t.fillStyle = e.color, t.font = o, t.textAlign = "center", t.textBaseline = "middle", t.fillText(e.text, 0, 0), {
5
+ base64: n.toDataURL(),
6
+ size: i / a
7
+ };
8
+ });
9
+ export {
10
+ d as default
11
+ };
@@ -0,0 +1,25 @@
1
+ import { defineComponent as o, h as i } from "vue";
2
+ const a = (n) => {
3
+ if (!n) return n;
4
+ const t = n;
5
+ return t.install = (r) => {
6
+ const e = t.name || t.__name;
7
+ e && r.component(e, t);
8
+ }, n;
9
+ }, s = {
10
+ content: {
11
+ type: [String, Object, Array],
12
+ required: !0
13
+ }
14
+ }, d = o({
15
+ name: "RenderContent",
16
+ props: s,
17
+ render() {
18
+ const { content: n } = this;
19
+ return typeof n == "string" ? i("div", { innerHTML: n }) : n;
20
+ }
21
+ });
22
+ export {
23
+ d as RenderContent,
24
+ a as withInstall
25
+ };
@@ -0,0 +1,44 @@
1
+ import { default as e } from "./components/Button/index.js";
2
+ import { default as t } from "./components/Checkbox/index.js";
3
+ import { default as l } from "./components/Collapse/index.js";
4
+ import { default as p } from "./components/CollapseItem/index.js";
5
+ import { default as d } from "./components/Dialog/index.js";
6
+ import { default as x } from "./components/Icon/index.js";
7
+ import { default as n } from "./components/Loading/index.js";
8
+ import { default as c } from "./components/Message/index.js";
9
+ import { default as v } from "./components/Modal/index.js";
10
+ import { default as T } from "./components/Nav/index.js";
11
+ import { default as h } from "./components/Pagination/index.js";
12
+ import { default as I } from "./components/Popconfirm/index.js";
13
+ import { default as N } from "./components/Popover/index.js";
14
+ import { default as w } from "./components/Progress/index.js";
15
+ import { default as D } from "./components/RouterNav/index.js";
16
+ import { default as R } from "./components/Switch/index.js";
17
+ import { default as j } from "./components/Table/index.js";
18
+ import { default as y } from "./components/Timer/index.js";
19
+ import { default as A } from "./components/Tooltip/index.js";
20
+ import { default as F } from "./components/Warn/index.js";
21
+ import { default as H } from "./components/Watermark/index.js";
22
+ export {
23
+ e as Button,
24
+ t as Checkbox,
25
+ l as Collapse,
26
+ p as CollapseItem,
27
+ d as Dialog,
28
+ x as Icon,
29
+ n as Loading,
30
+ c as Message,
31
+ v as Modal,
32
+ T as Nav,
33
+ h as Pagination,
34
+ I as Popconfirm,
35
+ N as Popover,
36
+ w as Progress,
37
+ D as RouterNav,
38
+ R as Switch,
39
+ j as Table,
40
+ y as Timer,
41
+ A as Tooltip,
42
+ F as Warn,
43
+ H as Watermark
44
+ };
@@ -0,0 +1,111 @@
1
+ import { render as b, h as u } from "vue";
2
+ import { debounce as y } from "../utils/debounce.js";
3
+ import "../utils/dialog.js";
4
+ import { injectStyles as w } from "../utils/injectStyles.js";
5
+ import "../utils/localStorage.js";
6
+ import "../utils/msg.js";
7
+ import "../utils/sessionStorage.js";
8
+ import { DEFAULT_OPTIONS as f } from "../hooks/useWindowBackTop.js";
9
+ import g from "../components/Icon/index.js";
10
+ import { faAngleUp as k } from "../node_modules/.pnpm/@fortawesome_free-solid-svg-icons@7.2.0/node_modules/@fortawesome/free-solid-svg-icons/index.js";
11
+ import c from "../node_modules/.pnpm/gsap@3.15.0/node_modules/gsap/index.js";
12
+ const x = `
13
+ .v-back-top-wrapper {
14
+ position: sticky;
15
+ left: 0;
16
+ bottom: 0;
17
+ width: 100%;
18
+ height: 0;
19
+ pointer-events: none;
20
+ }
21
+ .v-back-top-inner {
22
+ --size: var(--vbt-size, 36px);
23
+ position: absolute;
24
+ width: var(--size);
25
+ height: var(--size);
26
+ color: var(--color-white, #fff);
27
+ font-size: calc(var(--size) * 0.5);
28
+ border-radius: 50%;
29
+ display: none;
30
+ align-items: center;
31
+ justify-content: center;
32
+ cursor: pointer;
33
+ pointer-events: auto;
34
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
35
+ will-change: transform, opacity;
36
+ }
37
+ .v-back-top-inner:hover {
38
+ filter: brightness(1.1);
39
+ }
40
+ `;
41
+ w(x, "v-back-top-styles");
42
+ const h = (e) => {
43
+ const { wrapper: o, inner: t, options: i } = e;
44
+ o.style.zIndex = `${i.zIndex}`, t.style.setProperty("--vbt-size", `${i.size}px`), t.style.right = `${i.right}px`, t.style.bottom = `${i.bottom}px`, t.className = `v-back-top-inner bg-${i.type}`;
45
+ }, l = /* @__PURE__ */ new WeakMap(), j = {
46
+ name: "back-top",
47
+ mounted(e, o) {
48
+ const t = { ...f, ...o.value };
49
+ let i = "";
50
+ getComputedStyle(e).position === "static" && (i = e.style.position, e.style.position = "relative");
51
+ const a = document.createElement("div");
52
+ a.className = "v-back-top-wrapper";
53
+ const r = document.createElement("div");
54
+ r.title = "Back to top", b(u(g, { icon: k }), r), r.addEventListener("click", (n) => {
55
+ n.stopPropagation(), e.scrollTo({ top: 0, behavior: "smooth" });
56
+ }), a.appendChild(r), e.appendChild(a);
57
+ const s = {
58
+ wrapper: a,
59
+ inner: r,
60
+ options: t,
61
+ visible: !1,
62
+ handler: () => {
63
+ },
64
+ observer: new ResizeObserver(() => {
65
+ }),
66
+ originalPosition: i
67
+ };
68
+ h(s);
69
+ const p = y(() => {
70
+ const n = e.scrollTop > t.scrollThreshold;
71
+ if (s.visible === n) return;
72
+ s.visible = n, c.killTweensOf(r);
73
+ const m = {
74
+ y: 0,
75
+ opacity: 1,
76
+ scale: 1,
77
+ duration: 0.4,
78
+ ease: "back.out(1.7)",
79
+ overwrite: !0,
80
+ onStart: () => {
81
+ r.style.display = "flex";
82
+ }
83
+ }, v = {
84
+ y: t.animationOffset,
85
+ opacity: 0,
86
+ scale: 0.6,
87
+ duration: 0.3,
88
+ ease: "power2.in",
89
+ overwrite: !0,
90
+ onComplete: () => {
91
+ r.style.display = "none";
92
+ }
93
+ };
94
+ n ? c.fromTo(r, v, m) : c.fromTo(r, m, v);
95
+ }, 100);
96
+ e.addEventListener("scroll", p, { passive: !0 });
97
+ const d = new ResizeObserver(p);
98
+ d.observe(e), s.handler = p, s.observer = d, l.set(e, s), p();
99
+ },
100
+ updated(e, o) {
101
+ const t = l.get(e);
102
+ t && (t.options = { ...f, ...o.value }, h(t), t.handler());
103
+ },
104
+ unmounted(e) {
105
+ const o = l.get(e);
106
+ o && (e.removeEventListener("scroll", o.handler), o.observer.disconnect(), c.killTweensOf(o.inner), b(null, o.inner), o.wrapper.remove(), l.delete(e));
107
+ }
108
+ };
109
+ export {
110
+ j as default
111
+ };
@@ -0,0 +1,41 @@
1
+ const r = {
2
+ up: [
3
+ { transform: "translateY(100px)", opacity: 0 },
4
+ { transform: "translateY(0)", opacity: 1 }
5
+ ],
6
+ down: [
7
+ { transform: "translateY(-100px)", opacity: 0 },
8
+ { transform: "translateY(0)", opacity: 1 }
9
+ ],
10
+ left: [
11
+ { transform: "translateX(100px)", opacity: 0 },
12
+ { transform: "translateX(0)", opacity: 1 }
13
+ ],
14
+ right: [
15
+ { transform: "translateX(-100px)", opacity: 0 },
16
+ { transform: "translateX(0)", opacity: 1 }
17
+ ],
18
+ scale: [
19
+ { transform: "scale(0)", opacity: 0 },
20
+ { transform: "scale(1)", opacity: 1 }
21
+ ],
22
+ opacity: [{ opacity: 0 }, { opacity: 1 }],
23
+ fade: [
24
+ { transform: "translateY(-5px) scale(1.2)", opacity: 0 },
25
+ { transform: "translateY(0) scale(1)", opacity: 1 }
26
+ ]
27
+ }, s = {
28
+ name: "delay-in",
29
+ mounted(o, t) {
30
+ const n = t.arg || "fade", a = o.animate(r[n], {
31
+ duration: 500,
32
+ easing: "ease-in-out",
33
+ delay: t.value || 0,
34
+ fill: "both"
35
+ });
36
+ a.onfinish = a.cancel, a.play();
37
+ }
38
+ };
39
+ export {
40
+ s as default
41
+ };
@@ -0,0 +1,112 @@
1
+ import "../utils/dialog.js";
2
+ import { injectStyles as f } from "../utils/injectStyles.js";
3
+ import "../utils/localStorage.js";
4
+ import "../utils/msg.js";
5
+ import "../utils/sessionStorage.js";
6
+ import n from "../node_modules/.pnpm/gsap@3.15.0/node_modules/gsap/index.js";
7
+ const y = `
8
+ .v-hold-pointer {
9
+ position: fixed;
10
+ top: 0;
11
+ left: 0;
12
+ width: 70px;
13
+ height: 70px;
14
+ margin-top: -35px;
15
+ margin-left: -35px;
16
+ pointer-events: none;
17
+ z-index: 9999;
18
+ will-change: transform;
19
+ opacity: 0;
20
+ transform: scale(0);
21
+ }
22
+ .v-hold-pointer svg {
23
+ position: absolute;
24
+ inset: 0;
25
+ }
26
+ .v-hold-pointer .path1 {
27
+ fill: none;
28
+ stroke: rgba(255, 255, 255, 0.5);
29
+ stroke-width: 1px;
30
+ }
31
+ .v-hold-pointer .path2 {
32
+ fill: none;
33
+ stroke: #efefef;
34
+ stroke-dasharray: 1;
35
+ stroke-dashoffset: 1;
36
+ transition: stroke-dashoffset 1.5s cubic-bezier(0.19, 1, 0.22, 1);
37
+ }
38
+ `;
39
+ f(y, "v-hold-pointer-styles");
40
+ const m = /* @__PURE__ */ new WeakMap(), P = () => {
41
+ const o = (h, e) => {
42
+ const t = document.createElementNS("http://www.w3.org/2000/svg", h);
43
+ return Object.entries(e).forEach(([r, i]) => t.setAttribute(r, i)), t;
44
+ }, s = document.createElement("div");
45
+ s.className = "v-hold-pointer";
46
+ const c = o("svg", { class: "pointer-dot", viewBox: "0 0 70 70" }), a = o("circle", { cx: "35", cy: "35", r: "1.6", fill: "white" });
47
+ c.appendChild(a);
48
+ const d = o("svg", { class: "pointer-circle", viewBox: "0 0 70 70" }), l = "m35,2.5c17.955803,0 32.5,14.544199 32.5,32.5c0,17.955803 -14.544197,32.5 -32.5,32.5c-17.955803,0 -32.5,-14.544197 -32.5,-32.5c0,-17.955801 14.544197,-32.5 32.5,-32.5z", u = o("path", { class: "path1", d: l }), p = o("path", { class: "path2", d: l, pathLength: "1" });
49
+ return d.append(u, p), s.append(c, d), { container: s, dot: c, circle: d, circlePath: p };
50
+ }, S = {
51
+ name: "hold-pointer",
52
+ mounted(o) {
53
+ const { container: s, dot: c, circle: a, circlePath: d } = P();
54
+ o.appendChild(s);
55
+ const l = n.quickSetter(s, "x", "px"), u = n.quickSetter(s, "y", "px"), p = n.quickSetter(a, "x", "px"), h = n.quickSetter(a, "y", "px"), e = {
56
+ container: s,
57
+ dot: c,
58
+ circle: a,
59
+ mouse: { x: 0, y: 0 },
60
+ dotPos: { x: 0, y: 0 },
61
+ circlePos: { x: 0, y: 0 },
62
+ isInside: !1,
63
+ // 鼠标是否在元素内
64
+ updateTicker: () => {
65
+ const t = (r, i, x) => {
66
+ const v = i - r;
67
+ return Math.abs(v) < 0.1 ? i : r + v * x;
68
+ };
69
+ e.dotPos.x = t(e.dotPos.x, e.mouse.x, 0.28), e.dotPos.y = t(e.dotPos.y, e.mouse.y, 0.28), e.circlePos.x = t(e.circlePos.x, e.mouse.x, 0.12), e.circlePos.y = t(e.circlePos.y, e.mouse.y, 0.12), l(e.dotPos.x), u(e.dotPos.y), p(e.circlePos.x - e.dotPos.x), h(e.circlePos.y - e.dotPos.y);
70
+ },
71
+ handlers: {
72
+ move: (t) => {
73
+ const r = t instanceof TouchEvent ? t.touches[0].clientX : t.clientX, i = t instanceof TouchEvent ? t.touches[0].clientY : t.clientY;
74
+ e.mouse.x = r, e.mouse.y = i, e.isInside || e.handlers.enter(r, i);
75
+ },
76
+ enter: (t, r) => {
77
+ e.isInside = !0, t !== void 0 && r !== void 0 && e.dotPos.x === 0 && (e.dotPos.x = e.circlePos.x = t, e.dotPos.y = e.circlePos.y = r), n.to(s, { opacity: 1, scale: 1, duration: 0.4, ease: "back.out(1.5)" });
78
+ },
79
+ leave: () => {
80
+ e.isInside = !1, n.to(s, { opacity: 0, scale: 0.4, duration: 0.4, ease: "power2.inOut" }), e.handlers.release();
81
+ },
82
+ press: (t) => {
83
+ if (!e.isInside) {
84
+ if (t) {
85
+ const r = t instanceof TouchEvent ? t.touches[0].clientX : t.clientX, i = t instanceof TouchEvent ? t.touches[0].clientY : t.clientY;
86
+ e.mouse.x = r, e.mouse.y = i;
87
+ }
88
+ e.handlers.enter(e.mouse.x, e.mouse.y);
89
+ }
90
+ n.to(c, { scale: 1.8, duration: 0.4, ease: "power3.out" }), n.to(a, { scale: 0.82, duration: 0.6, ease: "back.out(3)" }), n.to(d, { strokeDashoffset: 0 });
91
+ },
92
+ release: () => {
93
+ n.to(c, { scale: 1, duration: 0.6, ease: "elastic.out(1, 0.5)" }), n.to(a, { scale: 1, duration: 0.6, ease: "elastic.out(1, 0.5)" }), n.to(d, { strokeDashoffset: 1 });
94
+ }
95
+ }
96
+ };
97
+ o.addEventListener("mousemove", e.handlers.move), o.addEventListener("mouseenter", e.handlers.move), o.addEventListener("mouseleave", e.handlers.leave), o.addEventListener("mousedown", e.handlers.press), window.addEventListener("mouseup", e.handlers.release), o.addEventListener(
98
+ "touchstart",
99
+ (t) => {
100
+ e.handlers.press(t), e.handlers.move(t);
101
+ },
102
+ { passive: !0 }
103
+ ), o.addEventListener("touchmove", e.handlers.move, { passive: !0 }), o.addEventListener("touchend", e.handlers.leave, { passive: !0 }), n.ticker.add(e.updateTicker), m.set(o, e);
104
+ },
105
+ unmounted(o) {
106
+ const s = m.get(o);
107
+ s && (n.ticker.remove(s.updateTicker), s.container.remove(), window.removeEventListener("mouseup", s.handlers.release), m.delete(o));
108
+ }
109
+ };
110
+ export {
111
+ S as default
112
+ };