tttb 0.1.24

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 (235) 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 +57 -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/Dialog/DialogItem.vue.js +7 -0
  12. package/dist/components/Dialog/DialogItem.vue2.js +78 -0
  13. package/dist/components/Dialog/DialogPrompt.vue.js +7 -0
  14. package/dist/components/Dialog/DialogPrompt.vue2.js +63 -0
  15. package/dist/components/Dialog/index.js +6 -0
  16. package/dist/components/Dialog/index.vue.js +7 -0
  17. package/dist/components/Dialog/index.vue2.js +81 -0
  18. package/dist/components/Icon/index.js +6 -0
  19. package/dist/components/Icon/index.vue.js +43 -0
  20. package/dist/components/Icon/index.vue2.js +4 -0
  21. package/dist/components/Loading/index.js +6 -0
  22. package/dist/components/Loading/index.vue.js +7 -0
  23. package/dist/components/Loading/index.vue2.js +37 -0
  24. package/dist/components/Loading/types.js +7 -0
  25. package/dist/components/Message/index.js +6 -0
  26. package/dist/components/Message/index.vue.js +7 -0
  27. package/dist/components/Message/index.vue2.js +91 -0
  28. package/dist/components/Modal/index.js +6 -0
  29. package/dist/components/Modal/index.vue.js +7 -0
  30. package/dist/components/Modal/index.vue2.js +39 -0
  31. package/dist/components/Modal/types.js +7 -0
  32. package/dist/components/Nav/index.js +6 -0
  33. package/dist/components/Nav/index.vue.js +7 -0
  34. package/dist/components/Nav/index.vue2.js +95 -0
  35. package/dist/components/Pagination/index.js +6 -0
  36. package/dist/components/Pagination/index.vue.js +7 -0
  37. package/dist/components/Pagination/index.vue2.js +162 -0
  38. package/dist/components/Pagination/types.js +8 -0
  39. package/dist/components/Popconfirm/index.js +7 -0
  40. package/dist/components/Popconfirm/index.vue.js +92 -0
  41. package/dist/components/Popconfirm/index.vue3.js +5 -0
  42. package/dist/components/Popconfirm/types.js +14 -0
  43. package/dist/components/Popover/index.js +7 -0
  44. package/dist/components/Popover/index.vue.js +32 -0
  45. package/dist/components/Popover/index.vue3.js +5 -0
  46. package/dist/components/Progress/index.js +6 -0
  47. package/dist/components/Progress/index.vue.js +7 -0
  48. package/dist/components/Progress/index.vue2.js +38 -0
  49. package/dist/components/Progress/types.js +7 -0
  50. package/dist/components/RouterNav/index.js +6 -0
  51. package/dist/components/RouterNav/index.vue.js +33 -0
  52. package/dist/components/RouterNav/index.vue2.js +4 -0
  53. package/dist/components/Switch/index.js +6 -0
  54. package/dist/components/Switch/index.vue.js +7 -0
  55. package/dist/components/Switch/index.vue2.js +76 -0
  56. package/dist/components/Switch/types.js +6 -0
  57. package/dist/components/Table/index.js +6 -0
  58. package/dist/components/Table/index.vue.js +7 -0
  59. package/dist/components/Table/index.vue2.js +57 -0
  60. package/dist/components/Timer/index.js +6 -0
  61. package/dist/components/Timer/index.vue.js +31 -0
  62. package/dist/components/Timer/index.vue2.js +4 -0
  63. package/dist/components/Tooltip/TooltipContent.vue.js +33 -0
  64. package/dist/components/Tooltip/TooltipContent.vue2.js +4 -0
  65. package/dist/components/Tooltip/TooltipItem.vue.js +58 -0
  66. package/dist/components/Tooltip/TooltipItem.vue2.js +4 -0
  67. package/dist/components/Tooltip/TooltipLayer.vue.js +49 -0
  68. package/dist/components/Tooltip/TooltipLayer.vue2.js +4 -0
  69. package/dist/components/Tooltip/index.js +6 -0
  70. package/dist/components/Tooltip/index.vue.js +74 -0
  71. package/dist/components/Tooltip/index.vue2.js +4 -0
  72. package/dist/components/Tooltip/manager.js +107 -0
  73. package/dist/components/Tooltip/types.js +21 -0
  74. package/dist/components/Tooltip/useTooltip.js +43 -0
  75. package/dist/components/Warn/index.js +6 -0
  76. package/dist/components/Warn/index.vue.js +7 -0
  77. package/dist/components/Warn/index.vue2.js +21 -0
  78. package/dist/components/Warn/types.js +6 -0
  79. package/dist/components/Watermark/index.js +6 -0
  80. package/dist/components/Watermark/index.vue.js +7 -0
  81. package/dist/components/Watermark/index.vue2.js +54 -0
  82. package/dist/components/Watermark/types.js +10 -0
  83. package/dist/components/Watermark/useWatermarkBg.js +11 -0
  84. package/dist/components/helpers.js +25 -0
  85. package/dist/components.js +40 -0
  86. package/dist/directives/vBackTop.js +110 -0
  87. package/dist/directives/vDelayIn.js +41 -0
  88. package/dist/directives/vHoldPointer.js +112 -0
  89. package/dist/directives/vLazy.js +65 -0
  90. package/dist/directives/vLoading.js +50 -0
  91. package/dist/directives/vRipple.js +81 -0
  92. package/dist/directives/vSlideIn.js +39 -0
  93. package/dist/directives/vTextJump.js +50 -0
  94. package/dist/directives/vTooltip.js +55 -0
  95. package/dist/directives.js +20 -0
  96. package/dist/hooks/useAudio.js +112 -0
  97. package/dist/hooks/useElementScroll.js +30 -0
  98. package/dist/hooks/useGSAP.js +40 -0
  99. package/dist/hooks/useRefreshRate.js +26 -0
  100. package/dist/hooks/useWindowBackTop.js +86 -0
  101. package/dist/hooks.js +13 -0
  102. package/dist/icons/brands.js +554 -0
  103. package/dist/icons/regular.js +278 -0
  104. package/dist/icons/solid.js +1989 -0
  105. package/dist/index.js +130 -0
  106. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +448 -0
  107. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +400 -0
  108. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +136 -0
  109. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +130 -0
  110. package/dist/node_modules/@floating-ui/vue/dist/floating-ui.vue.js +131 -0
  111. package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.js +3074 -0
  112. package/dist/node_modules/@fortawesome/free-brands-svg-icons/index.js +3156 -0
  113. package/dist/node_modules/@fortawesome/free-regular-svg-icons/index.js +1228 -0
  114. package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.js +9602 -0
  115. package/dist/node_modules/@fortawesome/vue-fontawesome/index.es.js +487 -0
  116. package/dist/node_modules/gsap/CSSPlugin.js +424 -0
  117. package/dist/node_modules/gsap/gsap-core.js +1645 -0
  118. package/dist/node_modules/gsap/index.js +13 -0
  119. package/dist/tttb.css +1 -0
  120. package/dist/types/bundle.d.ts +10 -0
  121. package/dist/types/components/Button/index.d.ts +22 -0
  122. package/dist/types/components/Button/types.d.ts +12 -0
  123. package/dist/types/components/Checkbox/index.d.ts +29 -0
  124. package/dist/types/components/Checkbox/types.d.ts +8 -0
  125. package/dist/types/components/Dialog/DialogItem.d.ts +38 -0
  126. package/dist/types/components/Dialog/DialogPrompt.d.ts +16 -0
  127. package/dist/types/components/Dialog/index.d.ts +10 -0
  128. package/dist/types/components/Dialog/types.d.ts +35 -0
  129. package/dist/types/components/Icon/index.d.ts +3 -0
  130. package/dist/types/components/Icon/types.d.ts +2 -0
  131. package/dist/types/components/Loading/index.d.ts +6 -0
  132. package/dist/types/components/Loading/types.d.ts +8 -0
  133. package/dist/types/components/Message/index.d.ts +9 -0
  134. package/dist/types/components/Message/types.d.ts +12 -0
  135. package/dist/types/components/Modal/index.d.ts +21 -0
  136. package/dist/types/components/Modal/types.d.ts +11 -0
  137. package/dist/types/components/Nav/index.d.ts +7 -0
  138. package/dist/types/components/Nav/types.d.ts +14 -0
  139. package/dist/types/components/Pagination/index.d.ts +18 -0
  140. package/dist/types/components/Pagination/types.d.ts +16 -0
  141. package/dist/types/components/Popconfirm/index.d.ts +266 -0
  142. package/dist/types/components/Popconfirm/types.d.ts +26 -0
  143. package/dist/types/components/Popover/index.d.ts +150 -0
  144. package/dist/types/components/Progress/index.d.ts +21 -0
  145. package/dist/types/components/Progress/types.d.ts +9 -0
  146. package/dist/types/components/RouterNav/index.d.ts +2 -0
  147. package/dist/types/components/Switch/index.d.ts +13 -0
  148. package/dist/types/components/Switch/types.d.ts +6 -0
  149. package/dist/types/components/Table/index.d.ts +31 -0
  150. package/dist/types/components/Table/types.d.ts +3 -0
  151. package/dist/types/components/Timer/index.d.ts +6 -0
  152. package/dist/types/components/Tooltip/TooltipContent.d.ts +16 -0
  153. package/dist/types/components/Tooltip/TooltipItem.d.ts +45 -0
  154. package/dist/types/components/Tooltip/TooltipLayer.d.ts +2 -0
  155. package/dist/types/components/Tooltip/index.d.ts +42 -0
  156. package/dist/types/components/Tooltip/manager.d.ts +3384 -0
  157. package/dist/types/components/Tooltip/types.d.ts +52 -0
  158. package/dist/types/components/Tooltip/useTooltip.d.ts +8 -0
  159. package/dist/types/components/Warn/index.d.ts +20 -0
  160. package/dist/types/components/Warn/types.d.ts +6 -0
  161. package/dist/types/components/Watermark/index.d.ts +28 -0
  162. package/dist/types/components/Watermark/types.d.ts +14 -0
  163. package/dist/types/components/Watermark/useWatermarkBg.d.ts +6 -0
  164. package/dist/types/components/helpers.d.ts +14 -0
  165. package/dist/types/components/index.d.ts +19 -0
  166. package/dist/types/directives/helper.d.ts +4 -0
  167. package/dist/types/directives/index.d.ts +9 -0
  168. package/dist/types/directives/vBackTop.d.ts +3 -0
  169. package/dist/types/directives/vDelayIn.d.ts +3 -0
  170. package/dist/types/directives/vHoldPointer.d.ts +3 -0
  171. package/dist/types/directives/vLazy.d.ts +3 -0
  172. package/dist/types/directives/vLoading.d.ts +3 -0
  173. package/dist/types/directives/vRipple.d.ts +3 -0
  174. package/dist/types/directives/vSlideIn.d.ts +3 -0
  175. package/dist/types/directives/vTextJump.d.ts +3 -0
  176. package/dist/types/directives/vTooltip.d.ts +8 -0
  177. package/dist/types/hooks/index.d.ts +5 -0
  178. package/dist/types/hooks/useAudio.d.ts +38 -0
  179. package/dist/types/hooks/useElementScroll.d.ts +32 -0
  180. package/dist/types/hooks/useGSAP.d.ts +32 -0
  181. package/dist/types/hooks/useRefreshRate.d.ts +5 -0
  182. package/dist/types/hooks/useWindowBackTop.d.ts +14 -0
  183. package/dist/types/icons/brands.d.ts +551 -0
  184. package/dist/types/icons/regular.d.ts +275 -0
  185. package/dist/types/icons/solid.d.ts +1986 -0
  186. package/dist/types/router/index.d.ts +2 -0
  187. package/dist/types/utils/chance.d.ts +7 -0
  188. package/dist/types/utils/copyToClipboard.d.ts +6 -0
  189. package/dist/types/utils/debounce.d.ts +15 -0
  190. package/dist/types/utils/deepClone.d.ts +6 -0
  191. package/dist/types/utils/deepEqual.d.ts +5 -0
  192. package/dist/types/utils/dialog.d.ts +8 -0
  193. package/dist/types/utils/getId.d.ts +6 -0
  194. package/dist/types/utils/getRandomColor.d.ts +4 -0
  195. package/dist/types/utils/getRandomInt.d.ts +6 -0
  196. package/dist/types/utils/getRandomStr.d.ts +6 -0
  197. package/dist/types/utils/index.d.ts +23 -0
  198. package/dist/types/utils/injectStyles.d.ts +9 -0
  199. package/dist/types/utils/isElementOverflow.d.ts +20 -0
  200. package/dist/types/utils/isEmpty.d.ts +6 -0
  201. package/dist/types/utils/isMobile.d.ts +6 -0
  202. package/dist/types/utils/isObject.d.ts +4 -0
  203. package/dist/types/utils/isPromise.d.ts +6 -0
  204. package/dist/types/utils/localStorage.d.ts +24 -0
  205. package/dist/types/utils/msg.d.ts +8 -0
  206. package/dist/types/utils/omit.d.ts +6 -0
  207. package/dist/types/utils/pick.d.ts +6 -0
  208. package/dist/types/utils/sessionStorage.d.ts +24 -0
  209. package/dist/types/utils/shuffleArray.d.ts +6 -0
  210. package/dist/types/utils/throttle.d.ts +7 -0
  211. package/dist/utils/chance.js +7 -0
  212. package/dist/utils/copyToClipboard.js +21 -0
  213. package/dist/utils/debounce.js +14 -0
  214. package/dist/utils/deepClone.js +17 -0
  215. package/dist/utils/deepEqual.js +40 -0
  216. package/dist/utils/dialog.js +43 -0
  217. package/dist/utils/getId.js +10 -0
  218. package/dist/utils/getRandomColor.js +4 -0
  219. package/dist/utils/getRandomInt.js +4 -0
  220. package/dist/utils/getRandomStr.js +5 -0
  221. package/dist/utils/injectStyles.js +24 -0
  222. package/dist/utils/isElementOverflow.js +22 -0
  223. package/dist/utils/isEmpty.js +4 -0
  224. package/dist/utils/isMobile.js +7 -0
  225. package/dist/utils/isObject.js +4 -0
  226. package/dist/utils/isPromise.js +4 -0
  227. package/dist/utils/localStorage.js +47 -0
  228. package/dist/utils/msg.js +21 -0
  229. package/dist/utils/omit.js +9 -0
  230. package/dist/utils/pick.js +9 -0
  231. package/dist/utils/sessionStorage.js +47 -0
  232. package/dist/utils/shuffleArray.js +10 -0
  233. package/dist/utils/throttle.js +11 -0
  234. package/dist/utils.js +49 -0
  235. package/package.json +95 -0
@@ -0,0 +1,21 @@
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
+ };
18
+ export {
19
+ e as BASIC_Z_INDEX,
20
+ l as defaultProps
21
+ };
@@ -0,0 +1,43 @@
1
+ import { arrow as D, useFloating as H } from "../../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/@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/@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 i, h as o } from "vue";
2
+ const c = (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
+ }, a = i({
10
+ name: "RenderContent",
11
+ props: {
12
+ content: {
13
+ type: [String, Object],
14
+ required: !0
15
+ }
16
+ },
17
+ render() {
18
+ const { content: n } = this;
19
+ return typeof n == "string" ? o("div", { innerHTML: n }) : n;
20
+ }
21
+ });
22
+ export {
23
+ a as RenderContent,
24
+ c as withInstall
25
+ };
@@ -0,0 +1,40 @@
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/Dialog/index.js";
4
+ import { default as m } from "./components/Icon/index.js";
5
+ import { default as d } from "./components/Loading/index.js";
6
+ import { default as x } from "./components/Message/index.js";
7
+ import { default as n } from "./components/Modal/index.js";
8
+ import { default as c } from "./components/Nav/index.js";
9
+ import { default as v } from "./components/Pagination/index.js";
10
+ import { default as b } from "./components/Popconfirm/index.js";
11
+ import { default as k } from "./components/Popover/index.js";
12
+ import { default as N } from "./components/Progress/index.js";
13
+ import { default as w } from "./components/RouterNav/index.js";
14
+ import { default as C } from "./components/Switch/index.js";
15
+ import { default as I } from "./components/Table/index.js";
16
+ import { default as R } from "./components/Timer/index.js";
17
+ import { default as j } from "./components/Tooltip/index.js";
18
+ import { default as y } from "./components/Warn/index.js";
19
+ import { default as A } from "./components/Watermark/index.js";
20
+ export {
21
+ e as Button,
22
+ t as Checkbox,
23
+ l as Dialog,
24
+ m as Icon,
25
+ d as Loading,
26
+ x as Message,
27
+ n as Modal,
28
+ c as Nav,
29
+ v as Pagination,
30
+ b as Popconfirm,
31
+ k as Popover,
32
+ N as Progress,
33
+ w as RouterNav,
34
+ C as Switch,
35
+ I as Table,
36
+ R as Timer,
37
+ j as Tooltip,
38
+ y as Warn,
39
+ A as Watermark
40
+ };
@@ -0,0 +1,110 @@
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/@fortawesome/free-solid-svg-icons/index.js";
11
+ import c from "../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", (s) => {
55
+ s.stopPropagation(), e.scrollTo({ top: 0, behavior: "smooth" });
56
+ }), a.appendChild(r), e.appendChild(a);
57
+ const n = {
58
+ wrapper: a,
59
+ inner: r,
60
+ options: t,
61
+ visible: !1,
62
+ handler: () => {
63
+ },
64
+ observer: null,
65
+ originalPosition: i
66
+ };
67
+ h(n);
68
+ const p = y(() => {
69
+ const s = e.scrollTop > t.scrollThreshold;
70
+ if (n.visible === s) return;
71
+ n.visible = s, c.killTweensOf(r);
72
+ const m = {
73
+ y: 0,
74
+ opacity: 1,
75
+ scale: 1,
76
+ duration: 0.4,
77
+ ease: "back.out(1.7)",
78
+ overwrite: !0,
79
+ onStart: () => {
80
+ r.style.display = "flex";
81
+ }
82
+ }, v = {
83
+ y: t.animationOffset,
84
+ opacity: 0,
85
+ scale: 0.6,
86
+ duration: 0.3,
87
+ ease: "power2.in",
88
+ overwrite: !0,
89
+ onComplete: () => {
90
+ r.style.display = "none";
91
+ }
92
+ };
93
+ s ? c.fromTo(r, v, m) : c.fromTo(r, m, v);
94
+ }, 100);
95
+ e.addEventListener("scroll", p, { passive: !0 });
96
+ const d = new ResizeObserver(p);
97
+ d.observe(e), n.handler = p, n.observer = d, l.set(e, n), p();
98
+ },
99
+ updated(e, o) {
100
+ const t = l.get(e);
101
+ t && (t.options = { ...f, ...o.value }, h(t), t.handler());
102
+ },
103
+ unmounted(e) {
104
+ const o = l.get(e);
105
+ o && (e.removeEventListener("scroll", o.handler), o.observer.disconnect(), c.killTweensOf(o.inner), b(null, o.inner), o.wrapper.remove(), l.delete(e));
106
+ }
107
+ };
108
+ export {
109
+ j as default
110
+ };
@@ -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/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
+ };
@@ -0,0 +1,65 @@
1
+ import { isObject as u } from "../utils/isObject.js";
2
+ import "../utils/dialog.js";
3
+ import "../utils/localStorage.js";
4
+ import "../utils/msg.js";
5
+ import "../utils/sessionStorage.js";
6
+ let c = null;
7
+ const l = /* @__PURE__ */ new WeakMap(), v = () => c || (c = new IntersectionObserver((s) => {
8
+ s.forEach((e) => {
9
+ if (e.isIntersecting) {
10
+ const r = e.target, t = l.get(r);
11
+ if (!t) return;
12
+ const { src: o, callbacks: a } = t;
13
+ a.onEnterViewport?.(r), c?.unobserve(r), l.delete(r), a.onLoadStart?.(r, o), m(r, o, a.onLoadSuccess, a.onLoadError);
14
+ }
15
+ });
16
+ }), c), m = (s, e, r, t) => {
17
+ const o = new Image();
18
+ o.onload = () => {
19
+ s.src = e, r?.(s, e);
20
+ }, o.onerror = (a) => {
21
+ t?.(s, e, a);
22
+ }, o.src = e;
23
+ }, b = {
24
+ name: "lazy",
25
+ // 指令绑定到元素时
26
+ mounted(s, e) {
27
+ if (!(s instanceof HTMLImageElement)) {
28
+ console.warn("v-lazy directive only supports img elements");
29
+ return;
30
+ }
31
+ let r = "", t = {};
32
+ if (typeof e.value == "string")
33
+ r = e.value;
34
+ else if (u(e.value) && e.value.src) {
35
+ r = e.value.src;
36
+ const { src: a, ...n } = e.value;
37
+ t = { ...n };
38
+ } else {
39
+ console.error("v-lazy directive requires a valid image src");
40
+ return;
41
+ }
42
+ l.set(s, { src: r, callbacks: t }), v().observe(s);
43
+ },
44
+ // 指令更新时
45
+ updated(s, e) {
46
+ let r = "", t = {};
47
+ if (typeof e.value == "string")
48
+ r = e.value;
49
+ else if (u(e.value) && e.value.src) {
50
+ r = e.value.src;
51
+ const { src: a, ...n } = e.value;
52
+ t = { ...n };
53
+ } else {
54
+ console.error("v-lazy directive requires a valid image src");
55
+ return;
56
+ }
57
+ l.set(s, { src: r, callbacks: t }), v().observe(s);
58
+ },
59
+ unmounted(s) {
60
+ c?.unobserve(s), l.delete(s);
61
+ }
62
+ };
63
+ export {
64
+ b as default
65
+ };
@@ -0,0 +1,50 @@
1
+ import { render as a, h as d } from "vue";
2
+ import m from "../components/Loading/index.js";
3
+ import { isObject as u } from "../utils/isObject.js";
4
+ import "../utils/dialog.js";
5
+ import { injectStyles as f } from "../utils/injectStyles.js";
6
+ import "../utils/localStorage.js";
7
+ import "../utils/msg.js";
8
+ import "../utils/sessionStorage.js";
9
+ const g = "正在加载...", i = /* @__PURE__ */ new WeakMap(), y = `
10
+ .v-loading-overlay {
11
+ position: absolute;
12
+ inset: 0;
13
+ display: flex;
14
+ justify-content: center;
15
+ align-items: center;
16
+ background: rgba(0, 0, 0, 0.05);
17
+ backdrop-filter: blur(2px);
18
+ z-index: 9999;
19
+ }
20
+ `;
21
+ f(y, "v-loading-styles");
22
+ const v = (t) => u(t) ? t : { content: t }, s = (t, o) => {
23
+ const n = v(o.value), c = n.content === !0 || typeof n.content == "string", l = typeof n.content == "string" ? n.content : g;
24
+ let e = i.get(t);
25
+ if (c) {
26
+ if (!e) {
27
+ const r = document.createElement("div");
28
+ e = { container: r, originalPosition: "" }, i.set(t, e), getComputedStyle(t).position === "static" && (e.originalPosition = t.style.position, t.style.position = "relative"), t.appendChild(r);
29
+ }
30
+ e.container.className = `v-loading-overlay color-${n.type || "primary"}`;
31
+ const p = d(m, { text: l });
32
+ a(p, e.container);
33
+ } else
34
+ e && (a(null, e.container), e.container.remove(), t.style.position = e.originalPosition, i.delete(t));
35
+ }, C = {
36
+ name: "loading",
37
+ mounted(t, o) {
38
+ s(t, o);
39
+ },
40
+ updated(t, o) {
41
+ o.value !== o.oldValue && s(t, o);
42
+ },
43
+ unmounted(t) {
44
+ const o = i.get(t);
45
+ o && (a(null, o.container), i.delete(t));
46
+ }
47
+ };
48
+ export {
49
+ C as default
50
+ };