hamster-charts 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- .h-panel[data-v-474190fc]{width:100%;height:100%;background-size:100% 100%;background-repeat:no-repeat}.h-header[data-v-b83cf769]{background-size:100% 100%;background-repeat:no-repeat;position:relative}.h-main[data-v-1025786b]{width:100%}.h-chart[data-v-ad5727b9]{background-size:100% 100%;background-repeat:no-repeat}.h-chart .chart[data-v-ad5727b9]{width:100%}.h-left[data-v-65e91535],.h-right[data-v-e897c957]{height:100%}.h-top[data-v-54014ba4],.h-bottom[data-v-086bec2a]{width:100%}.h-chart-title[data-v-85d6fea5]{width:100%;background-size:100% 100%;background-repeat:no-repeat}.h-item-chart[data-v-7c5da244]{background-size:100% 100%;background-repeat:no-repeat}[data-v-937cc59c]::-webkit-scrollbar{width:0px}[data-v-937cc59c]::-webkit-scrollbar-track{background:#31313181}[data-v-937cc59c]::-webkit-scrollbar-thumb{background:#444;border-radius:10px}[data-v-937cc59c]::-webkit-scrollbar-thumb:hover{background:#555}.h-list[data-v-937cc59c]{position:relative;overflow:hidden}.list-header[data-v-937cc59c]{display:flex;align-items:center;width:100%}.header-item[data-v-937cc59c]{flex:1;display:flex;justify-content:center;align-items:center;font-weight:700}.scroll-wrapper[data-v-937cc59c]{position:relative;width:100%;will-change:transform}.data-list[data-v-937cc59c]{width:100%}.data-list-item[data-v-937cc59c]{display:flex;transition:all .3s ease;border-bottom:1px solid rgba(255,255,255,.1)}.data-list-item[data-v-937cc59c]:hover{background:#ffffff0d}.data-item-cell[data-v-937cc59c]{flex:1;display:flex;justify-content:center;align-items:center;padding:8px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h-view[data-v-5d1b329e]{background-size:100% 100%;background-repeat:no-repeat}.h-data-label[data-v-f0ce86db]{background-repeat:no-repeat;background-size:100% 100%}.h-button[data-v-0a183c56]{outline:none;background-repeat:no-repeat;background-size:100% 100%;border-radius:2px;border:none}.h-grid[data-v-34e7422b]{border:1px solid red}.h-grid .h-grid-item[data-v-34e7422b]{border:1px solid rebeccapurple}.h-counter[data-v-fba32a26]{display:flex;align-items:center}.counter-digit[data-v-fba32a26]{position:relative;overflow:hidden}.digit-scroll[data-v-fba32a26]{display:flex;flex-direction:column;will-change:transform}.digit-item[data-v-fba32a26]{flex-shrink:0}.h-layout[data-v-957ea318]{height:100%}.h-flex[data-v-c8c463ea]{background-size:100% 100%;background-repeat:no-repeat}
1
+ .h-panel[data-v-474190fc]{width:100%;height:100%;background-size:100% 100%;background-repeat:no-repeat}.h-header[data-v-b83cf769]{background-size:100% 100%;background-repeat:no-repeat;position:relative}.h-main[data-v-1025786b]{width:100%}.h-chart[data-v-ad5727b9]{background-size:100% 100%;background-repeat:no-repeat}.h-chart .chart[data-v-ad5727b9]{width:100%}.h-left[data-v-65e91535],.h-right[data-v-e897c957]{height:100%}.h-top[data-v-54014ba4],.h-bottom[data-v-086bec2a]{width:100%}.h-chart-title[data-v-85d6fea5]{width:100%;background-size:100% 100%;background-repeat:no-repeat}.h-item-chart[data-v-7c5da244]{background-size:100% 100%;background-repeat:no-repeat}[data-v-937cc59c]::-webkit-scrollbar{width:0px}[data-v-937cc59c]::-webkit-scrollbar-track{background:#31313181}[data-v-937cc59c]::-webkit-scrollbar-thumb{background:#444;border-radius:10px}[data-v-937cc59c]::-webkit-scrollbar-thumb:hover{background:#555}.h-list[data-v-937cc59c]{position:relative;overflow:hidden}.list-header[data-v-937cc59c]{display:flex;align-items:center;width:100%}.header-item[data-v-937cc59c]{flex:1;display:flex;justify-content:center;align-items:center;font-weight:700}.scroll-wrapper[data-v-937cc59c]{position:relative;width:100%;will-change:transform}.data-list[data-v-937cc59c]{width:100%}.data-list-item[data-v-937cc59c]{display:flex;transition:all .3s ease;border-bottom:1px solid rgba(255,255,255,.1)}.data-list-item[data-v-937cc59c]:hover{background:#ffffff0d}.data-item-cell[data-v-937cc59c]{flex:1;display:flex;justify-content:center;align-items:center;padding:8px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h-view[data-v-1a57d542]{background-size:100% 100%;background-repeat:no-repeat}.h-data-label[data-v-f0ce86db]{background-repeat:no-repeat;background-size:100% 100%}.h-button[data-v-0a183c56]{outline:none;background-repeat:no-repeat;background-size:100% 100%;border-radius:2px;border:none}.h-grid[data-v-34e7422b]{border:1px solid red}.h-grid .h-grid-item[data-v-34e7422b]{border:1px solid rebeccapurple}.h-counter[data-v-fba32a26]{display:flex;align-items:center}.counter-digit[data-v-fba32a26]{position:relative;overflow:hidden}.digit-scroll[data-v-fba32a26]{display:flex;flex-direction:column;will-change:transform}.digit-item[data-v-fba32a26]{flex-shrink:0}.h-layout[data-v-957ea318]{height:100%}.h-flex[data-v-c8c463ea]{background-size:100% 100%;background-repeat:no-repeat}
@@ -1,6 +1,6 @@
1
- import { computed as h, openBlock as o, createElementBlock as u, normalizeStyle as c, unref as g, renderSlot as b, toDisplayString as I, createCommentVNode as j, ref as v, onMounted as it, onBeforeUnmount as at, watch as G, withDirectives as ut, createElementVNode as z, vShow as dt, Fragment as O, renderList as D } from "vue";
1
+ import { computed as y, openBlock as s, createElementBlock as u, normalizeStyle as p, unref as g, renderSlot as b, toDisplayString as I, createCommentVNode as j, ref as v, onMounted as it, onBeforeUnmount as at, watch as G, withDirectives as ut, createElementVNode as z, vShow as dt, Fragment as O, renderList as D } from "vue";
2
2
  import * as rt from "echarts";
3
- import { useDebounceFn as lt, useResizeObserver as st } from "@vueuse/core";
3
+ import { useDebounceFn as lt, useResizeObserver as ot } from "@vueuse/core";
4
4
  const m = (e, t) => {
5
5
  const i = e.__vccOpts || e;
6
6
  for (const [r, l] of t)
@@ -23,13 +23,13 @@ const m = (e, t) => {
23
23
  }
24
24
  },
25
25
  setup(e) {
26
- let t = e, i = h(() => ({
26
+ let t = e, i = y(() => ({
27
27
  position: t.position,
28
28
  backgroundImage: t.url ? `url(${t.url})` : "none"
29
29
  }));
30
- return (r, l) => (o(), u("div", {
30
+ return (r, l) => (s(), u("div", {
31
31
  class: "h-panel",
32
- style: c(g(i))
32
+ style: p(g(i))
33
33
  }, [
34
34
  b(r.$slots, "default", {}, void 0, !0)
35
35
  ], 4));
@@ -91,11 +91,11 @@ const ft = {
91
91
  }
92
92
  },
93
93
  setup(e) {
94
- let t = e, i = h(() => ({
94
+ let t = e, i = y(() => ({
95
95
  width: t.width,
96
96
  height: t.height,
97
97
  backgroundImage: `url( ${t.url})`
98
- })), r = h(() => ({
98
+ })), r = y(() => ({
99
99
  color: t.color,
100
100
  fontSize: t.fontSize,
101
101
  position: t.textPosition,
@@ -103,13 +103,13 @@ const ft = {
103
103
  left: t.textLeft,
104
104
  transform: t.textTransform
105
105
  }));
106
- return (l, S) => (o(), u("div", {
106
+ return (l, S) => (s(), u("div", {
107
107
  class: "h-header",
108
- style: c(g(i))
108
+ style: p(g(i))
109
109
  }, [
110
- g(t).showText ? (o(), u("span", {
110
+ g(t).showText ? (s(), u("span", {
111
111
  key: 0,
112
- style: c(g(r))
112
+ style: p(g(r))
113
113
  }, I(g(t).text), 5)) : j("", !0),
114
114
  b(l.$slots, "default", {}, void 0, !0)
115
115
  ], 4));
@@ -146,16 +146,16 @@ const yt = {
146
146
  }
147
147
  },
148
148
  setup(e) {
149
- let t = e, i = h(() => ({
149
+ let t = e, i = y(() => ({
150
150
  height: t.height !== "auto" || t.height !== "0" ? `calc(100% - ${t.height})` : t.height,
151
151
  display: t.display,
152
152
  columnGap: t.columnGap,
153
153
  rowGap: t.rowGap,
154
154
  padding: t.padding
155
155
  }));
156
- return (r, l) => (o(), u("div", {
156
+ return (r, l) => (s(), u("div", {
157
157
  class: "h-main",
158
- style: c(g(i))
158
+ style: p(g(i))
159
159
  }, [
160
160
  b(r.$slots, "default", {}, void 0, !0)
161
161
  ], 4));
@@ -210,13 +210,13 @@ const mt = {
210
210
  // 鼠标离开事件
211
211
  ],
212
212
  setup(e, { expose: t, emit: i }) {
213
- const r = i, l = e, S = h(() => ({
213
+ const r = i, l = e, S = y(() => ({
214
214
  backgroundImage: l.url ? `url(${l.url})` : "none",
215
215
  flex: l.flex,
216
216
  height: l.height
217
- })), x = h(() => ({
217
+ })), x = y(() => ({
218
218
  height: l.chartsh !== "auto" && l.chartsh !== "0" ? `calc(100% - ${l.chartsh})` : l.chartsh
219
- })), p = v(null);
219
+ })), c = v(null);
220
220
  let f = null;
221
221
  const k = lt(() => {
222
222
  f && (f.resize(), r("chart-resize", { instance: f }));
@@ -232,17 +232,17 @@ const mt = {
232
232
  f.off(a);
233
233
  }), f.dispose(), f = null);
234
234
  }, $ = () => {
235
- if (A(), !!p.value)
235
+ if (A(), !!c.value)
236
236
  try {
237
- const n = y(l.chartsOption);
238
- f = rt.init(p.value), f.setOption(n, { notMerge: !0 }), C(), r("chart-ready", {
237
+ const n = h(l.chartsOption);
238
+ f = rt.init(c.value), f.setOption(n, { notMerge: !0 }), C(), r("chart-ready", {
239
239
  instance: f,
240
- dom: p.value
240
+ dom: c.value
241
241
  });
242
242
  } catch (n) {
243
243
  console.error("ECharts initialization failed:", n);
244
244
  }
245
- }, y = (n) => {
245
+ }, h = (n) => {
246
246
  if (!n || typeof n != "object")
247
247
  return { series: [] };
248
248
  const a = JSON.parse(JSON.stringify(n));
@@ -278,21 +278,21 @@ const mt = {
278
278
  } : a.yAxis = { type: "value" } : a.yAxis = { type: "value" }, a.legend && (typeof a.legend == "object" && !Array.isArray(a.legend) || Array.isArray(a.legend) && (a.legend = {
279
279
  data: a.legend
280
280
  })), a;
281
- }, s = () => {
281
+ }, o = () => {
282
282
  k();
283
283
  };
284
284
  return it(() => {
285
285
  setTimeout(() => {
286
286
  $();
287
- }, 0), window.addEventListener("resize", s), st(p, (n) => {
287
+ }, 0), window.addEventListener("resize", o), ot(c, (n) => {
288
288
  k();
289
289
  });
290
290
  }), at(() => {
291
- window.removeEventListener("resize", s), A();
291
+ window.removeEventListener("resize", o), A();
292
292
  }), G(() => l.chartsOption, (n, a) => {
293
293
  if (n)
294
294
  try {
295
- const d = y(n);
295
+ const d = h(n);
296
296
  if (!f) {
297
297
  $();
298
298
  return;
@@ -313,16 +313,16 @@ const mt = {
313
313
  resize: () => k(),
314
314
  dispatchAction: (n) => f == null ? void 0 : f.dispatchAction(n),
315
315
  dispose: A
316
- }), (n, a) => (o(), u("div", {
316
+ }), (n, a) => (s(), u("div", {
317
317
  class: "h-chart",
318
- style: c(S.value)
318
+ style: p(S.value)
319
319
  }, [
320
320
  b(n.$slots, "default", {}, void 0, !0),
321
321
  ut(z("div", {
322
322
  class: "chart",
323
323
  ref_key: "charts",
324
- ref: p,
325
- style: c(x.value)
324
+ ref: c,
325
+ style: p(x.value)
326
326
  }, null, 4), [
327
327
  [dt, l.showChart]
328
328
  ])
@@ -358,16 +358,16 @@ const xt = {
358
358
  }
359
359
  },
360
360
  setup(e) {
361
- let t = e, i = h(() => ({
361
+ let t = e, i = y(() => ({
362
362
  width: t.width,
363
363
  display: t.display,
364
364
  flexDirection: t.flexDirection,
365
365
  columnGap: t.columnGap,
366
366
  rowGap: t.rowGap
367
367
  }));
368
- return (r, l) => (o(), u("div", {
368
+ return (r, l) => (s(), u("div", {
369
369
  class: "h-left",
370
- style: c(g(i))
370
+ style: p(g(i))
371
371
  }, [
372
372
  b(r.$slots, "default", {}, void 0, !0)
373
373
  ], 4));
@@ -402,16 +402,16 @@ const vt = {
402
402
  }
403
403
  },
404
404
  setup(e) {
405
- let t = e, i = h(() => ({
405
+ let t = e, i = y(() => ({
406
406
  width: t.width,
407
407
  display: t.display,
408
408
  flexDirection: t.flexDirection,
409
409
  columnGap: t.columnGap,
410
410
  rowGap: t.rowGap
411
411
  }));
412
- return (r, l) => (o(), u("div", {
412
+ return (r, l) => (s(), u("div", {
413
413
  class: "h-right",
414
- style: c(g(i))
414
+ style: p(g(i))
415
415
  }, [
416
416
  b(r.$slots, "default", {}, void 0, !0)
417
417
  ], 4));
@@ -450,7 +450,7 @@ const wt = {
450
450
  }
451
451
  },
452
452
  setup(e) {
453
- let t = e, i = h(() => ({
453
+ let t = e, i = y(() => ({
454
454
  width: t.width,
455
455
  height: t.height,
456
456
  display: t.display,
@@ -458,9 +458,9 @@ const wt = {
458
458
  columnGap: t.columnGap,
459
459
  rowGap: t.rowGap
460
460
  }));
461
- return (r, l) => (o(), u("div", {
461
+ return (r, l) => (s(), u("div", {
462
462
  class: "h-center",
463
- style: c(g(i))
463
+ style: p(g(i))
464
464
  }, [
465
465
  b(r.$slots, "default", {}, void 0, !0)
466
466
  ], 4));
@@ -487,14 +487,14 @@ const At = {
487
487
  }
488
488
  },
489
489
  setup(e) {
490
- let t = e, i = h(() => ({
490
+ let t = e, i = y(() => ({
491
491
  height: t.height,
492
492
  display: t.display,
493
493
  position: t.position
494
494
  }));
495
- return (r, l) => (o(), u("div", {
495
+ return (r, l) => (s(), u("div", {
496
496
  class: "h-top",
497
- style: c(g(i))
497
+ style: p(g(i))
498
498
  }, [
499
499
  b(r.$slots, "default", {}, void 0, !0)
500
500
  ], 4));
@@ -529,16 +529,16 @@ const kt = {
529
529
  }
530
530
  },
531
531
  setup(e) {
532
- let t = e, i = h(() => ({
532
+ let t = e, i = y(() => ({
533
533
  height: t.height,
534
534
  display: t.display,
535
535
  gap: t.gap,
536
536
  rowGap: t.rowGap,
537
537
  columnGap: t.columnGap
538
538
  }));
539
- return (r, l) => (o(), u("div", {
539
+ return (r, l) => (s(), u("div", {
540
540
  class: "h-bottom",
541
- style: c(g(i))
541
+ style: p(g(i))
542
542
  }, [
543
543
  b(r.$slots, "default", {}, void 0, !0)
544
544
  ], 4));
@@ -609,7 +609,7 @@ const zt = { class: "def-text" }, Gt = {
609
609
  }
610
610
  },
611
611
  setup(e) {
612
- let t = e, i = h(() => ({
612
+ let t = e, i = y(() => ({
613
613
  height: t.height,
614
614
  backgroundImage: `url(${t.url})`,
615
615
  fontSize: t.fontSize,
@@ -624,9 +624,9 @@ const zt = { class: "def-text" }, Gt = {
624
624
  justifyContent: t.justifyContent,
625
625
  position: t.position
626
626
  }));
627
- return (r, l) => (o(), u("div", {
627
+ return (r, l) => (s(), u("div", {
628
628
  class: "h-chart-title",
629
- style: c(g(i))
629
+ style: p(g(i))
630
630
  }, [
631
631
  z("span", zt, I(g(t).text), 1),
632
632
  b(r.$slots, "default", {}, void 0, !0)
@@ -665,39 +665,39 @@ const Ot = {
665
665
  "chart-mouseout"
666
666
  ],
667
667
  setup(e, { expose: t, emit: i }) {
668
- const r = i, l = e, S = h(() => ({
668
+ const r = i, l = e, S = y(() => ({
669
669
  backgroundImage: l.url ? `url(${l.url})` : "none",
670
670
  height: l.height
671
671
  })), x = v(null);
672
- let p = null;
672
+ let c = null;
673
673
  const f = lt(() => {
674
- p && (p.resize(), r("chart-resize", { instance: p }));
674
+ c && (c.resize(), r("chart-resize", { instance: c }));
675
675
  }, 100), k = () => {
676
- if (!p) return;
676
+ if (!c) return;
677
677
  ["click", "dblclick", "mouseover", "mouseout"].forEach((n) => {
678
- p.on(n, (a) => {
678
+ c.on(n, (a) => {
679
679
  r(`chart-${n}`, a);
680
680
  });
681
681
  });
682
682
  }, C = () => {
683
- p && (["click", "dblclick", "mouseover", "mouseout"].forEach((n) => {
684
- p.off(n);
685
- }), p.dispose(), p = null);
683
+ c && (["click", "dblclick", "mouseover", "mouseout"].forEach((n) => {
684
+ c.off(n);
685
+ }), c.dispose(), c = null);
686
686
  }, A = () => {
687
687
  if (C(), !!x.value)
688
688
  try {
689
- const s = $(l.chartsOption);
690
- p = rt.init(x.value), p.setOption(s, { notMerge: !0 }), k(), r("chart-ready", {
691
- instance: p,
689
+ const o = $(l.chartsOption);
690
+ c = rt.init(x.value), c.setOption(o, { notMerge: !0 }), k(), r("chart-ready", {
691
+ instance: c,
692
692
  dom: x.value
693
693
  });
694
- } catch (s) {
695
- console.error("ECharts initialization failed:", s);
694
+ } catch (o) {
695
+ console.error("ECharts initialization failed:", o);
696
696
  }
697
- }, $ = (s) => {
698
- if (!s || typeof s != "object")
697
+ }, $ = (o) => {
698
+ if (!o || typeof o != "object")
699
699
  return { series: [] };
700
- const n = JSON.parse(JSON.stringify(s));
700
+ const n = JSON.parse(JSON.stringify(o));
701
701
  return n.series ? Array.isArray(n.series) || (n.series = [n.series]) : n.series = [], n.series = n.series.map((a) => {
702
702
  if (!a || typeof a != "object")
703
703
  return { type: "line" };
@@ -729,42 +729,42 @@ const Ot = {
729
729
  } : n.yAxis = { type: "value" } : n.yAxis = { type: "value" }, n.legend && (typeof n.legend == "object" && !Array.isArray(n.legend) || Array.isArray(n.legend) && (n.legend = {
730
730
  data: n.legend
731
731
  })), n;
732
- }, y = () => {
732
+ }, h = () => {
733
733
  f();
734
734
  };
735
735
  return it(() => {
736
736
  setTimeout(() => {
737
737
  A();
738
- }, 0), window.addEventListener("resize", y), st(x, (s) => {
738
+ }, 0), window.addEventListener("resize", h), ot(x, (o) => {
739
739
  f();
740
740
  });
741
741
  }), at(() => {
742
- window.removeEventListener("resize", y), C();
743
- }), G(() => l.chartsOption, (s) => {
744
- if (s)
742
+ window.removeEventListener("resize", h), C();
743
+ }), G(() => l.chartsOption, (o) => {
744
+ if (o)
745
745
  try {
746
- if (!p) {
746
+ if (!c) {
747
747
  A();
748
748
  return;
749
749
  }
750
- const n = $(s);
751
- p.setOption(n, { notMerge: !0 }), r("chart-update", {
752
- instance: p,
750
+ const n = $(o);
751
+ c.setOption(n, { notMerge: !0 }), r("chart-update", {
752
+ instance: c,
753
753
  option: n
754
754
  });
755
755
  } catch (n) {
756
756
  console.error("更新图表配置时出错:", n);
757
757
  }
758
758
  }, { deep: !0 }), t({
759
- getInstance: () => p,
759
+ getInstance: () => c,
760
760
  resize: () => f(),
761
- dispatchAction: (s) => p == null ? void 0 : p.dispatchAction(s),
761
+ dispatchAction: (o) => c == null ? void 0 : c.dispatchAction(o),
762
762
  dispose: C
763
- }), (s, n) => (o(), u("div", {
763
+ }), (o, n) => (s(), u("div", {
764
764
  class: "h-item-chart",
765
765
  ref_key: "itemCharts",
766
766
  ref: x,
767
- style: c(S.value)
767
+ style: p(S.value)
768
768
  }, null, 4));
769
769
  }
770
770
  }), V = /* @__PURE__ */ m(Dt, [["__scopeId", "data-v-7c5da244"]]);
@@ -837,13 +837,13 @@ const Nt = {
837
837
  }
838
838
  },
839
839
  setup(e, { expose: t }) {
840
- const i = e, r = v(0), l = v(null), S = v(0), x = v([]), p = v(null), f = h(() => ({
840
+ const i = e, r = v(0), l = v(null), S = v(0), x = v([]), c = v(null), f = y(() => ({
841
841
  width: i.width,
842
842
  height: i.height,
843
843
  backgroundColor: i.backgroundColor,
844
844
  position: "relative",
845
845
  overflow: "hidden"
846
- })), k = h(() => ({
846
+ })), k = y(() => ({
847
847
  height: i.headerHeight,
848
848
  display: "flex",
849
849
  alignItems: "center",
@@ -853,7 +853,7 @@ const Nt = {
853
853
  left: 0,
854
854
  zIndex: 10,
855
855
  width: "100%"
856
- })), C = h(() => ({
856
+ })), C = y(() => ({
857
857
  transform: `translateY(-${r.value * S.value}px)`,
858
858
  transition: `transform ${i.scrollSpeed}ms ease-in-out`,
859
859
  marginTop: i.showHeader ? i.headerHeight : "0"
@@ -865,65 +865,65 @@ const Nt = {
865
865
  }
866
866
  });
867
867
  let $ = null;
868
- const y = () => {
868
+ const h = () => {
869
869
  !i.enableScroll || i.data.length === 0 || (clearInterval($), $ = setInterval(() => {
870
870
  r.value = (r.value + 1) % i.data.length;
871
871
  }, i.scrollDuration));
872
- }, s = () => {
872
+ }, o = () => {
873
873
  $ && (clearInterval($), $ = null);
874
874
  }, n = () => {
875
875
  x.value && x.value[0] && (S.value = x.value[0].offsetHeight || 40);
876
876
  };
877
877
  return it(() => {
878
- n(), y(), window.addEventListener("resize", n);
878
+ n(), h(), window.addEventListener("resize", n);
879
879
  }), at(() => {
880
- s(), window.removeEventListener("resize", n);
880
+ o(), window.removeEventListener("resize", n);
881
881
  }), G(() => i.data, (a) => {
882
882
  a.length > 0 ? (r.value = 0, l.value = null, setTimeout(() => {
883
- n(), y();
884
- }, 100)) : s();
883
+ n(), h();
884
+ }, 100)) : o();
885
885
  }, { deep: !0 }), G(() => i.enableScroll, (a) => {
886
- a ? y() : (s(), r.value = 0);
886
+ a ? h() : (o(), r.value = 0);
887
887
  }), t({
888
- startScroll: y,
889
- stopScroll: s,
888
+ startScroll: h,
889
+ stopScroll: o,
890
890
  getCurrentIndex: () => r.value,
891
891
  scrollTo: (a) => {
892
892
  a >= 0 && a < i.data.length && (r.value = a);
893
893
  }
894
- }), (a, d) => (o(), u("div", {
894
+ }), (a, d) => (s(), u("div", {
895
895
  class: "h-list",
896
- style: c(f.value)
896
+ style: p(f.value)
897
897
  }, [
898
- e.showHeader ? (o(), u("div", {
898
+ e.showHeader ? (s(), u("div", {
899
899
  key: 0,
900
900
  class: "list-header",
901
- style: c(k.value)
901
+ style: p(k.value)
902
902
  }, [
903
- (o(!0), u(O, null, D(e.header, (_, w) => (o(), u("p", {
903
+ (s(!0), u(O, null, D(e.header, (_, w) => (s(), u("p", {
904
904
  key: w,
905
905
  class: "header-item"
906
906
  }, I(_), 1))), 128))
907
907
  ], 4)) : j("", !0),
908
- e.enableScroll ? (o(), u("div", {
908
+ e.enableScroll ? (s(), u("div", {
909
909
  key: 1,
910
910
  class: "scroll-wrapper",
911
- style: c(C.value)
911
+ style: p(C.value)
912
912
  }, [
913
913
  z("div", {
914
914
  class: "data-list",
915
915
  ref_key: "listContainer",
916
- ref: p
916
+ ref: c
917
917
  }, [
918
- (o(!0), u(O, null, D(e.data, (_, w) => (o(), u("div", {
918
+ (s(!0), u(O, null, D(e.data, (_, w) => (s(), u("div", {
919
919
  key: w,
920
920
  class: "data-list-item",
921
- style: c(A(w)),
921
+ style: p(A(w)),
922
922
  ref_for: !0,
923
923
  ref_key: "listItems",
924
924
  ref: x
925
925
  }, [
926
- (o(!0), u(O, null, D(_, (nt, N) => (o(), u("p", {
926
+ (s(!0), u(O, null, D(_, (nt, N) => (s(), u("p", {
927
927
  key: N,
928
928
  class: "data-item-cell"
929
929
  }, I(nt), 1))), 128))
@@ -991,10 +991,14 @@ const Wt = {
991
991
  padding: {
992
992
  type: String,
993
993
  default: "0"
994
+ },
995
+ url: {
996
+ type: String,
997
+ default: ""
994
998
  }
995
999
  },
996
1000
  setup(e) {
997
- let t = e, i = h(() => ({
1001
+ let t = e, i = y(() => ({
998
1002
  width: t.width,
999
1003
  height: t.height,
1000
1004
  display: t.display,
@@ -1007,16 +1011,17 @@ const Wt = {
1007
1011
  left: t.left,
1008
1012
  alignItems: t.alignItems,
1009
1013
  justifyContent: t.justifyContent,
1010
- padding: t.padding
1014
+ padding: t.padding,
1015
+ background: `url(${t.url})`
1011
1016
  }));
1012
- return (r, l) => (o(), u("div", {
1017
+ return (r, l) => (s(), u("div", {
1013
1018
  class: "h-view",
1014
- style: c(g(i))
1019
+ style: p(g(i))
1015
1020
  }, [
1016
1021
  b(r.$slots, "default", {}, void 0, !0)
1017
1022
  ], 4));
1018
1023
  }
1019
- }), J = /* @__PURE__ */ m(Bt, [["__scopeId", "data-v-5d1b329e"]]);
1024
+ }), J = /* @__PURE__ */ m(Bt, [["__scopeId", "data-v-1a57d542"]]);
1020
1025
  J.install = (e) => {
1021
1026
  e.component(J.name, J);
1022
1027
  };
@@ -1185,24 +1190,24 @@ const Ft = {
1185
1190
  lineHeight: t.titlelineHeight,
1186
1191
  textAlign: t.titletextAlign
1187
1192
  });
1188
- return (x, p) => (o(), u("div", {
1193
+ return (x, c) => (s(), u("div", {
1189
1194
  class: "h-data-label",
1190
- style: c(g(i))
1195
+ style: p(g(i))
1191
1196
  }, [
1192
- e.show ? (o(), u("span", {
1197
+ e.show ? (s(), u("span", {
1193
1198
  key: 0,
1194
1199
  class: "h-data-label-num",
1195
- style: c(g(r))
1200
+ style: p(g(r))
1196
1201
  }, I(e.num), 5)) : j("", !0),
1197
- e.show ? (o(), u("span", {
1202
+ e.show ? (s(), u("span", {
1198
1203
  key: 1,
1199
1204
  class: "h-data-label-text",
1200
- style: c(g(l))
1205
+ style: p(g(l))
1201
1206
  }, I(e.text), 5)) : j("", !0),
1202
- e.titleShow ? (o(), u("span", {
1207
+ e.titleShow ? (s(), u("span", {
1203
1208
  key: 2,
1204
1209
  class: "h-data-label-title",
1205
- style: c(g(S))
1210
+ style: p(g(S))
1206
1211
  }, I(e.someText), 5)) : j("", !0)
1207
1212
  ], 4));
1208
1213
  }
@@ -1263,9 +1268,9 @@ const Lt = {
1263
1268
  fontWeight: t.fontWeight,
1264
1269
  color: t.color
1265
1270
  });
1266
- return (r, l) => (o(), u("button", {
1271
+ return (r, l) => (s(), u("button", {
1267
1272
  class: "h-button",
1268
- style: c(g(i))
1273
+ style: p(g(i))
1269
1274
  }, I(g(t).text), 5));
1270
1275
  }
1271
1276
  }), U = /* @__PURE__ */ m(Et, [["__scopeId", "data-v-0a183c56"]]);
@@ -1329,14 +1334,14 @@ const Rt = {
1329
1334
  height: t.iheight,
1330
1335
  display: t.idisplay
1331
1336
  });
1332
- return (l, S) => (o(), u("div", {
1337
+ return (l, S) => (s(), u("div", {
1333
1338
  class: "h-grid",
1334
- style: c(g(i))
1339
+ style: p(g(i))
1335
1340
  }, [
1336
- (o(), u(O, null, D(6, (x) => z("div", {
1341
+ (s(), u(O, null, D(6, (x) => z("div", {
1337
1342
  key: x,
1338
1343
  class: "h-grid-item",
1339
- style: c(g(r))
1344
+ style: p(g(r))
1340
1345
  }, S[0] || (S[0] = [
1341
1346
  z("div", { class: "h-grid-item-left" }, [
1342
1347
  z("img", {
@@ -1497,49 +1502,49 @@ const Pt = {
1497
1502
  }
1498
1503
  },
1499
1504
  setup(e, { expose: t }) {
1500
- const i = e, r = v([]), l = v(!1), S = h(() => {
1501
- let y = i.data;
1502
- i.decimalPlaces >= 0 && typeof y == "number" && (y = y.toFixed(i.decimalPlaces));
1503
- let s = String(y);
1505
+ const i = e, r = v([]), l = v(!1), S = y(() => {
1506
+ let h = i.data;
1507
+ i.decimalPlaces >= 0 && typeof h == "number" && (h = h.toFixed(i.decimalPlaces));
1508
+ let o = String(h);
1504
1509
  if (i.showSeparator && typeof i.data == "number") {
1505
- const n = s.split(".");
1506
- n[0] = n[0].replace(/\B(?=(\d{3})+(?!\d))/g, i.separator), s = n.join(".");
1510
+ const n = o.split(".");
1511
+ n[0] = n[0].replace(/\B(?=(\d{3})+(?!\d))/g, i.separator), o = n.join(".");
1507
1512
  }
1508
- return i.prefix && (s = i.prefix + s), i.suffix && (s = s + i.suffix), s.split("");
1509
- }), x = h(() => i.digitWidth ? i.digitWidth : `${(parseInt(i.digitFontSize) || 32) * 1.2}px`), p = h(() => i.digitHeight ? i.digitHeight : `${(parseInt(i.digitFontSize) || 32) * 1.5}px`), f = () => {
1513
+ return i.prefix && (o = i.prefix + o), i.suffix && (o = o + i.suffix), o.split("");
1514
+ }), x = y(() => i.digitWidth ? i.digitWidth : `${(parseInt(i.digitFontSize) || 32) * 1.2}px`), c = y(() => i.digitHeight ? i.digitHeight : `${(parseInt(i.digitFontSize) || 32) * 1.5}px`), f = () => {
1510
1515
  if (!i.enableAnimation) {
1511
1516
  r.value = S.value.map(() => 0);
1512
1517
  return;
1513
1518
  }
1514
1519
  l.value = !0, r.value = S.value.map(() => 0);
1515
- const y = S.value;
1516
- y.forEach((s, n) => {
1517
- if (isNaN(parseInt(s))) {
1518
- r.value[n] = s;
1520
+ const h = S.value;
1521
+ h.forEach((o, n) => {
1522
+ if (isNaN(parseInt(o))) {
1523
+ r.value[n] = o;
1519
1524
  return;
1520
1525
  }
1521
- const a = parseInt(s), d = n * i.digitDelay, _ = i.animationDuration;
1526
+ const a = parseInt(o), d = n * i.digitDelay, _ = i.animationDuration;
1522
1527
  setTimeout(() => {
1523
1528
  let w = 0;
1524
1529
  const nt = _ / (a + 1), N = () => {
1525
- w <= a && (r.value[n] = w, w++, w <= a ? setTimeout(N, nt) : (n === y.length - 1 || y.slice(n + 1).every((ot) => isNaN(parseInt(ot)))) && (l.value = !1));
1530
+ w <= a && (r.value[n] = w, w++, w <= a ? setTimeout(N, nt) : (n === h.length - 1 || h.slice(n + 1).every((st) => isNaN(parseInt(st)))) && (l.value = !1));
1526
1531
  };
1527
1532
  N();
1528
1533
  }, d);
1529
1534
  });
1530
- }, k = (y) => {
1531
- const s = r.value[y];
1532
- if (isNaN(parseInt(s)))
1535
+ }, k = (h) => {
1536
+ const o = r.value[h];
1537
+ if (isNaN(parseInt(o)))
1533
1538
  return {
1534
1539
  transform: "translateY(0)",
1535
1540
  transition: "none"
1536
1541
  };
1537
- const n = parseInt(p.value) || 60;
1542
+ const n = parseInt(c.value) || 60;
1538
1543
  return {
1539
- transform: `translateY(${-parseInt(s) * n}px)`,
1544
+ transform: `translateY(${-parseInt(o) * n}px)`,
1540
1545
  transition: `transform ${i.animationDuration}ms cubic-bezier(0.25, 0.46, 0.45, 0.94)`
1541
1546
  };
1542
- }, C = h(() => ({
1547
+ }, C = y(() => ({
1543
1548
  width: i.width,
1544
1549
  height: i.height,
1545
1550
  backgroundColor: i.backgroundColor,
@@ -1555,16 +1560,16 @@ const Pt = {
1555
1560
  bottom: i.bottom || void 0,
1556
1561
  zIndex: i.zIndex,
1557
1562
  transform: i.transform || void 0
1558
- })), A = h(() => ({
1563
+ })), A = y(() => ({
1559
1564
  width: x.value,
1560
- height: p.value,
1565
+ height: c.value,
1561
1566
  overflow: "hidden",
1562
1567
  position: "relative",
1563
1568
  borderRadius: i.digitBorderRadius,
1564
1569
  backgroundColor: i.digitBackgroundColor
1565
- })), $ = h(() => ({
1570
+ })), $ = y(() => ({
1566
1571
  width: "100%",
1567
- height: p.value,
1572
+ height: c.value,
1568
1573
  color: i.digitColor,
1569
1574
  fontSize: i.digitFontSize,
1570
1575
  fontWeight: i.digitFontWeight,
@@ -1582,27 +1587,27 @@ const Pt = {
1582
1587
  }), t({
1583
1588
  restart: f,
1584
1589
  getCurrentValue: () => r.value.join("")
1585
- }), (y, s) => (o(), u("div", {
1590
+ }), (h, o) => (s(), u("div", {
1586
1591
  class: "h-counter",
1587
- style: c(C.value)
1592
+ style: p(C.value)
1588
1593
  }, [
1589
- (o(!0), u(O, null, D(S.value, (n, a) => (o(), u("div", {
1594
+ (s(!0), u(O, null, D(S.value, (n, a) => (s(), u("div", {
1590
1595
  key: a,
1591
1596
  class: "counter-digit",
1592
- style: c(A.value)
1597
+ style: p(A.value)
1593
1598
  }, [
1594
1599
  z("div", {
1595
1600
  class: "digit-scroll",
1596
- style: c(k(a))
1601
+ style: p(k(a))
1597
1602
  }, [
1598
- (o(), u(O, null, D(10, (d) => z("div", {
1603
+ (s(), u(O, null, D(10, (d) => z("div", {
1599
1604
  key: d - 1,
1600
1605
  class: "digit-item",
1601
- style: c($.value)
1606
+ style: p($.value)
1602
1607
  }, I(d - 1), 5)), 64))
1603
1608
  ], 4)
1604
1609
  ], 4))), 128)),
1605
- b(y.$slots, "default", {}, void 0, !0)
1610
+ b(h.$slots, "default", {}, void 0, !0)
1606
1611
  ], 4));
1607
1612
  }
1608
1613
  }), Q = /* @__PURE__ */ m(Vt, [["__scopeId", "data-v-fba32a26"]]);
@@ -1671,9 +1676,9 @@ const Yt = {
1671
1676
  columnGap: t.columnGap,
1672
1677
  flexWrap: t.flexWrap
1673
1678
  });
1674
- return (r, l) => (o(), u("div", {
1679
+ return (r, l) => (s(), u("div", {
1675
1680
  class: "h-button-group",
1676
- style: c(g(i))
1681
+ style: p(g(i))
1677
1682
  }, [
1678
1683
  b(r.$slots, "default", {}, void 0, !0)
1679
1684
  ], 4));
@@ -1682,11 +1687,11 @@ const Yt = {
1682
1687
  X.install = (e) => {
1683
1688
  e.component(X.name, X);
1684
1689
  };
1685
- const qt = { class: "h-text" }, Ut = {
1690
+ const qt = {
1686
1691
  name: "hText",
1687
1692
  chineseName: "文本",
1688
1693
  description: "用于显示文本内容"
1689
- }, Kt = /* @__PURE__ */ Object.assign(Ut, {
1694
+ }, Ut = /* @__PURE__ */ Object.assign(qt, {
1690
1695
  props: {
1691
1696
  text: {
1692
1697
  type: String,
@@ -1702,18 +1707,24 @@ const qt = { class: "h-text" }, Ut = {
1702
1707
  }
1703
1708
  },
1704
1709
  setup(e) {
1705
- let t = e;
1706
- return (i, r) => (o(), u("span", qt, I(g(t).text), 1));
1710
+ let t = e, i = y(() => ({
1711
+ fontSize: t.fontSize,
1712
+ color: t.color
1713
+ }));
1714
+ return (r, l) => (s(), u("span", {
1715
+ class: "h-text",
1716
+ style: p(g(i))
1717
+ }, I(g(t).text), 5));
1707
1718
  }
1708
- }), Z = /* @__PURE__ */ m(Kt, [["__scopeId", "data-v-bc52bf83"]]);
1719
+ }), Z = /* @__PURE__ */ m(Ut, [["__scopeId", "data-v-7fb2fc92"]]);
1709
1720
  Z.install = (e) => {
1710
1721
  e.component(Z.name, Z);
1711
1722
  };
1712
- const Qt = {
1723
+ const Kt = {
1713
1724
  name: "hLayout",
1714
1725
  chineseName: "布局",
1715
1726
  description: "页面布局容器"
1716
- }, Xt = /* @__PURE__ */ Object.assign(Qt, {
1727
+ }, Qt = /* @__PURE__ */ Object.assign(Kt, {
1717
1728
  props: {
1718
1729
  width: {
1719
1730
  type: String,
@@ -1741,7 +1752,7 @@ const Qt = {
1741
1752
  }
1742
1753
  },
1743
1754
  setup(e) {
1744
- let t = e, i = h(() => ({
1755
+ let t = e, i = y(() => ({
1745
1756
  width: t.width,
1746
1757
  height: t.height,
1747
1758
  display: t.display,
@@ -1749,20 +1760,20 @@ const Qt = {
1749
1760
  columnGap: t.columnGap,
1750
1761
  rowGap: t.rowGap
1751
1762
  }));
1752
- return (r, l) => (o(), u("div", {
1763
+ return (r, l) => (s(), u("div", {
1753
1764
  class: "h-layout",
1754
- style: c(g(i))
1765
+ style: p(g(i))
1755
1766
  }, [
1756
1767
  b(r.$slots, "default", {}, void 0, !0)
1757
1768
  ], 4));
1758
1769
  }
1759
- }), tt = /* @__PURE__ */ m(Xt, [["__scopeId", "data-v-957ea318"]]);
1770
+ }), tt = /* @__PURE__ */ m(Qt, [["__scopeId", "data-v-957ea318"]]);
1760
1771
  tt.install = (e) => {
1761
1772
  e.component(tt.name, tt);
1762
1773
  };
1763
- const Zt = {
1774
+ const Xt = {
1764
1775
  name: "hFlex"
1765
- }, te = /* @__PURE__ */ Object.assign(Zt, {
1776
+ }, Zt = /* @__PURE__ */ Object.assign(Xt, {
1766
1777
  props: {
1767
1778
  width: {
1768
1779
  type: String,
@@ -1798,7 +1809,7 @@ const Zt = {
1798
1809
  }
1799
1810
  },
1800
1811
  setup(e) {
1801
- let t = e, i = h(() => ({
1812
+ let t = e, i = y(() => ({
1802
1813
  display: t.display,
1803
1814
  width: t.width,
1804
1815
  height: t.height,
@@ -1808,24 +1819,24 @@ const Zt = {
1808
1819
  flexDirection: t.flexDirection,
1809
1820
  flexWrap: t.flexWrap
1810
1821
  }));
1811
- return (r, l) => (o(), u("div", {
1822
+ return (r, l) => (s(), u("div", {
1812
1823
  class: "h-flex",
1813
- style: c(g(i))
1824
+ style: p(g(i))
1814
1825
  }, [
1815
1826
  b(r.$slots, "default", {}, void 0, !0)
1816
1827
  ], 4));
1817
1828
  }
1818
- }), et = /* @__PURE__ */ m(te, [["__scopeId", "data-v-c8c463ea"]]);
1829
+ }), et = /* @__PURE__ */ m(Zt, [["__scopeId", "data-v-c8c463ea"]]);
1819
1830
  et.install = (e) => {
1820
1831
  e.component(et.name, et);
1821
1832
  };
1822
- const ee = (e) => {
1833
+ const te = (e) => {
1823
1834
  e.use(T), e.use(W), e.use(tt), e.use(B), e.use(F), e.use(H), e.use(L), e.use(E), e.use(R), e.use(M), e.use(P), e.use(V), e.use(Y), e.use(J), e.use(q), e.use(U), e.use(K), e.use(Q), e.use(X), e.use(Z), e.use(et);
1824
- }, ae = {
1825
- install: ee
1835
+ }, ne = {
1836
+ install: te
1826
1837
  };
1827
1838
  export {
1828
- ae as default,
1839
+ ne as default,
1829
1840
  M as hBottom,
1830
1841
  U as hButton,
1831
1842
  X as hButtonGroup,
@@ -1 +1 @@
1
- (function(f,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("echarts"),require("@vueuse/core")):typeof define=="function"&&define.amd?define(["exports","vue","echarts","@vueuse/core"],t):(f=typeof globalThis<"u"?globalThis:f||self,t(f.HamsterCharts={},f.Vue,f.echarts,f.VueUse))})(this,function(f,t,U,P){"use strict";function K(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const a in n)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(n,a);Object.defineProperty(e,a,l.get?l:{enumerable:!0,get:()=>n[a]})}}return e.default=n,Object.freeze(e)}const J=K(U),g=(n,e)=>{const a=n.__vccOpts||n;for(const[l,o]of e)a[l]=o;return a},$=g(Object.assign({name:"hPanel",chineseName:"面板",description:"页面主体容器"},{props:{url:{type:String,default:""},position:{type:String,default:"relative",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)}},setup(n){let e=n,a=t.computed(()=>({position:e.position,backgroundImage:e.url?`url(${e.url})`:"none"}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-panel",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-474190fc"]]);$.install=n=>{n.component($.name,$)};const w=g(Object.assign({name:"hHeader",chineseName:"标题",description:"页面标题容器"},{props:{url:{type:String,default:""},width:{type:String,default:"100%"},height:{type:String,default:"70px"},text:{type:String,default:"测试标题"},fontSize:{type:String,default:"26px"},color:{type:String,default:"#fff"},showText:{type:Boolean,default:!0},textPosition:{type:String,default:"absolute",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)},textTop:{type:String,default:"50%"},textLeft:{type:String,default:"50%"},textTransform:{type:String,default:"translate(-50%, -50%)"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,backgroundImage:`url( ${e.url})`})),l=t.computed(()=>({color:e.color,fontSize:e.fontSize,position:e.textPosition,top:e.textTop,left:e.textLeft,transform:e.textTransform}));return(o,y)=>(t.openBlock(),t.createElementBlock("div",{class:"h-header",style:t.normalizeStyle(t.unref(a))},[t.unref(e).showText?(t.openBlock(),t.createElementBlock("span",{key:0,style:t.normalizeStyle(t.unref(l))},t.toDisplayString(t.unref(e).text),5)):t.createCommentVNode("",!0),t.renderSlot(o.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-b83cf769"]]);w.install=n=>{n.component(w.name,w)};const B=g(Object.assign({name:"hMain",chineseName:"主内容区",description:"页面主内容工作区"},{props:{height:{type:String,default:"200px"},display:{type:String,default:"flex"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"},padding:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({height:e.height!=="auto"||e.height!=="0"?`calc(100% - ${e.height})`:e.height,display:e.display,columnGap:e.columnGap,rowGap:e.rowGap,padding:e.padding}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-main",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-1025786b"]]);B.install=n=>{n.component(B.name,B)};const z=g(Object.assign({name:"hChart"},{props:{height:{type:String,default:"auto"},showChart:{type:Boolean,default:!0},chartsh:{type:String,default:"auto"},url:{type:String,default:""},flex:{type:Number,default:.3},chartsOption:{type:Object,required:!0}},emits:["chart-ready","chart-update","chart-resize","chart-click","chart-dblclick","chart-mouseover","chart-mouseout"],setup(n,{expose:e,emit:a}){const l=a,o=n,y=t.computed(()=>({backgroundImage:o.url?`url(${o.url})`:"none",flex:o.flex,height:o.height})),h=t.computed(()=>({height:o.chartsh!=="auto"&&o.chartsh!=="0"?`calc(100% - ${o.chartsh})`:o.chartsh})),c=t.ref(null);let p=null;const b=P.useDebounceFn(()=>{p&&(p.resize(),l("chart-resize",{instance:p}))},100),k=()=>{if(!p)return;["click","dblclick","mouseover","mouseout"].forEach(i=>{p.on(i,d=>{l(`chart-${i}`,d)})})},x=()=>{p&&(["click","dblclick","mouseover","mouseout"].forEach(i=>{p.off(i)}),p.dispose(),p=null)},S=()=>{if(x(),!!c.value)try{const r=u(o.chartsOption);p=J.init(c.value),p.setOption(r,{notMerge:!0}),k(),l("chart-ready",{instance:p,dom:c.value})}catch(r){console.error("ECharts initialization failed:",r)}},u=r=>{if(!r||typeof r!="object")return{series:[]};const i=JSON.parse(JSON.stringify(r));return i.series?Array.isArray(i.series)||(i.series=[i.series]):i.series=[],i.series=i.series.map(d=>{if(!d||typeof d!="object")return{type:"line"};const m={type:"line",...d,type:d.type||"line"};return m.type==="pie"&&m.data&&(m.data=m.data.map(_=>typeof _=="object"&&_!==null?{type:"line",..._,type:_.type||"line"}:_)),m}),i.xAxis?Array.isArray(i.xAxis)?i.xAxis=i.xAxis.map(d=>!d||typeof d!="object"?{type:"category"}:{type:"category",...d,type:d.type||"category"}):typeof i.xAxis=="object"?i.xAxis={type:"category",...i.xAxis,type:i.xAxis.type||"category"}:i.xAxis={type:"category"}:i.xAxis={type:"category"},i.yAxis?Array.isArray(i.yAxis)?i.yAxis=i.yAxis.map(d=>!d||typeof d!="object"?{type:"value"}:{type:"value",...d,type:d.type||"value"}):typeof i.yAxis=="object"?i.yAxis={type:"value",...i.yAxis,type:i.yAxis.type||"value"}:i.yAxis={type:"value"}:i.yAxis={type:"value"},i.legend&&(typeof i.legend=="object"&&!Array.isArray(i.legend)||Array.isArray(i.legend)&&(i.legend={data:i.legend})),i},s=()=>{b()};return t.onMounted(()=>{setTimeout(()=>{S()},0),window.addEventListener("resize",s),P.useResizeObserver(c,r=>{b()})}),t.onBeforeUnmount(()=>{window.removeEventListener("resize",s),x()}),t.watch(()=>o.chartsOption,(r,i)=>{if(r)try{const d=u(r);if(!p){S();return}p.setOption(d,{notMerge:!0}),l("chart-update",{instance:p,option:d})}catch(d){console.error("更新图表配置时出错:",d),console.error(" 错误堆栈:",d.stack)}},{deep:!0}),t.watch(()=>o.showChart,r=>{p&&setTimeout(()=>{p.resize()},0)}),e({getInstance:()=>p,resize:()=>b(),dispatchAction:r=>p==null?void 0:p.dispatchAction(r),dispose:x}),(r,i)=>(t.openBlock(),t.createElementBlock("div",{class:"h-chart",style:t.normalizeStyle(y.value)},[t.renderSlot(r.$slots,"default",{},void 0,!0),t.withDirectives(t.createElementVNode("div",{class:"chart",ref_key:"charts",ref:c,style:t.normalizeStyle(h.value)},null,4),[[t.vShow,o.showChart]])],4))}}),[["__scopeId","data-v-ad5727b9"]]);z.install=n=>{n.component(z.name,z)};const A=g(Object.assign({name:"hLeft"},{props:{width:{type:String,default:"25%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-left",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-65e91535"]]);A.install=n=>{n.component(A.name,A)};const I=g(Object.assign({name:"hRight"},{props:{width:{type:String,default:"25%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-right",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-e897c957"]]);I.install=n=>{n.component(I.name,I)};const C=g(Object.assign({name:"hCenter"},{props:{width:{type:String,default:"50%"},height:{type:String,default:"100%"},display:{type:String,default:"block"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-center",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-73b498de"]]);C.install=n=>{n.component(C.name,C)};const j=g(Object.assign({name:"hTop"},{props:{height:{type:String,default:"70%"},display:{type:String,default:"block"},position:{type:String,default:"relative"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,display:e.display,position:e.position}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-top",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-54014ba4"]]);j.install=n=>{n.component(j.name,j)};const E=g(Object.assign({name:"hBottom"},{props:{height:{type:String,default:"30%"},display:{type:String,default:"flex"},gap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"},columnGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,display:e.display,gap:e.gap,rowGap:e.rowGap,columnGap:e.columnGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-bottom",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-086bec2a"]]);E.install=n=>{n.component(E.name,E)};const Q={class:"def-text"},G=g(Object.assign({name:"hChartTitle"},{props:{fontSize:{type:String,default:"16px"},url:{type:String,default:""},height:{type:String,default:"50px"},paddingLeft:{type:String,default:"auto"},paddingRight:{type:String,default:"auto"},paddingTop:{type:String,default:"auto"},paddingBottom:{type:String,default:"auto"},color:{type:String,default:"#fff"},text:{type:String,default:"测试标题"},display:{type:String,default:"block"},textAlign:{type:String,default:"start"},alignItems:{type:String,default:"center"},justifyContent:{type:String,default:"start"},position:{type:String,default:"relative"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,backgroundImage:`url(${e.url})`,fontSize:e.fontSize,paddingLeft:e.paddingLeft,paddingRight:e.paddingRight,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,color:e.color,display:e.display,textAlign:e.textAlign,alignItems:e.alignItems,justifyContent:e.justifyContent,position:e.position}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-chart-title",style:t.normalizeStyle(t.unref(a))},[t.createElementVNode("span",Q,t.toDisplayString(t.unref(e).text),1),t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-85d6fea5"]]);G.install=n=>{n.component(G.name,G)};const O=g(Object.assign({name:"hItemChart",chineseName:"独立图表",description:"独立的 ECharts 图表容器组件,适用于大屏数据可视化展示"},{props:{height:{type:String,default:"200px"},url:{type:String,default:""},chartsOption:{type:Object,required:!0}},emits:["chart-ready","chart-update","chart-resize","chart-click","chart-dblclick","chart-mouseover","chart-mouseout"],setup(n,{expose:e,emit:a}){const l=a,o=n,y=t.computed(()=>({backgroundImage:o.url?`url(${o.url})`:"none",height:o.height})),h=t.ref(null);let c=null;const p=P.useDebounceFn(()=>{c&&(c.resize(),l("chart-resize",{instance:c}))},100),b=()=>{if(!c)return;["click","dblclick","mouseover","mouseout"].forEach(r=>{c.on(r,i=>{l(`chart-${r}`,i)})})},k=()=>{c&&(["click","dblclick","mouseover","mouseout"].forEach(r=>{c.off(r)}),c.dispose(),c=null)},x=()=>{if(k(),!!h.value)try{const s=S(o.chartsOption);c=J.init(h.value),c.setOption(s,{notMerge:!0}),b(),l("chart-ready",{instance:c,dom:h.value})}catch(s){console.error("ECharts initialization failed:",s)}},S=s=>{if(!s||typeof s!="object")return{series:[]};const r=JSON.parse(JSON.stringify(s));return r.series?Array.isArray(r.series)||(r.series=[r.series]):r.series=[],r.series=r.series.map(i=>{if(!i||typeof i!="object")return{type:"line"};const d={type:"line",...i,type:i.type||"line"};return d.type==="pie"&&d.data&&(d.data=d.data.map(m=>typeof m=="object"&&m!==null?{value:m.value||0,name:m.name||""}:m)),d}),r.xAxis?Array.isArray(r.xAxis)?r.xAxis=r.xAxis.map(i=>!i||typeof i!="object"?{type:"category"}:{type:"category",...i,type:i.type||"category"}):typeof r.xAxis=="object"?r.xAxis={type:"category",...r.xAxis,type:r.xAxis.type||"category"}:r.xAxis={type:"category"}:r.xAxis={type:"category"},r.yAxis?Array.isArray(r.yAxis)?r.yAxis=r.yAxis.map(i=>!i||typeof i!="object"?{type:"value"}:{type:"value",...i,type:i.type||"value"}):typeof r.yAxis=="object"?r.yAxis={type:"value",...r.yAxis,type:r.yAxis.type||"value"}:r.yAxis={type:"value"}:r.yAxis={type:"value"},r.legend&&(typeof r.legend=="object"&&!Array.isArray(r.legend)||Array.isArray(r.legend)&&(r.legend={data:r.legend})),r},u=()=>{p()};return t.onMounted(()=>{setTimeout(()=>{x()},0),window.addEventListener("resize",u),P.useResizeObserver(h,s=>{p()})}),t.onBeforeUnmount(()=>{window.removeEventListener("resize",u),k()}),t.watch(()=>o.chartsOption,s=>{if(s)try{if(!c){x();return}const r=S(s);c.setOption(r,{notMerge:!0}),l("chart-update",{instance:c,option:r})}catch(r){console.error("更新图表配置时出错:",r)}},{deep:!0}),e({getInstance:()=>c,resize:()=>p(),dispatchAction:s=>c==null?void 0:c.dispatchAction(s),dispose:k}),(s,r)=>(t.openBlock(),t.createElementBlock("div",{class:"h-item-chart",ref_key:"itemCharts",ref:h,style:t.normalizeStyle(y.value)},null,4))}}),[["__scopeId","data-v-7c5da244"]]);O.install=n=>{n.component(O.name,O)};const D=g(Object.assign({name:"hList",chineseName:"滚动列表",description:"支持自动滚动的数据列表组件,适用于大屏数据展示"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100%"},backgroundColor:{type:String,default:"transparent"},data:{type:Array,default:()=>[]},header:{type:Array,default:()=>[]},showHeader:{type:Boolean,default:!1},enableScroll:{type:Boolean,default:!0},headerHeight:{type:String,default:"40px"},headerBackground:{type:String,default:"rgba(255, 255, 255, 0.1)"},scrollDuration:{type:Number,default:2e3},scrollSpeed:{type:Number,default:500},highlightStyle:{type:Object,default:()=>({background:"rgba(0, 102, 255, 0.3)",color:"#fff",boxShadow:"0 0 10px rgba(0, 102, 255, 0.5)"})}},setup(n,{expose:e}){const a=n,l=t.ref(0),o=t.ref(null),y=t.ref(0),h=t.ref([]),c=t.ref(null),p=t.computed(()=>({width:a.width,height:a.height,backgroundColor:a.backgroundColor,position:"relative",overflow:"hidden"})),b=t.computed(()=>({height:a.headerHeight,display:"flex",alignItems:"center",background:a.headerBackground,position:"absolute",top:0,left:0,zIndex:10,width:"100%"})),k=t.computed(()=>({transform:`translateY(-${l.value*y.value}px)`,transition:`transform ${a.scrollSpeed}ms ease-in-out`,marginTop:a.showHeader?a.headerHeight:"0"})),x=i=>i===o.value?a.highlightStyle:{};t.watch(l,i=>{if(a.data.length>0){const d=i%a.data.length;o.value=d}});let S=null;const u=()=>{!a.enableScroll||a.data.length===0||(clearInterval(S),S=setInterval(()=>{l.value=(l.value+1)%a.data.length},a.scrollDuration))},s=()=>{S&&(clearInterval(S),S=null)},r=()=>{h.value&&h.value[0]&&(y.value=h.value[0].offsetHeight||40)};return t.onMounted(()=>{r(),u(),window.addEventListener("resize",r)}),t.onBeforeUnmount(()=>{s(),window.removeEventListener("resize",r)}),t.watch(()=>a.data,i=>{i.length>0?(l.value=0,o.value=null,setTimeout(()=>{r(),u()},100)):s()},{deep:!0}),t.watch(()=>a.enableScroll,i=>{i?u():(s(),l.value=0)}),e({startScroll:u,stopScroll:s,getCurrentIndex:()=>l.value,scrollTo:i=>{i>=0&&i<a.data.length&&(l.value=i)}}),(i,d)=>(t.openBlock(),t.createElementBlock("div",{class:"h-list",style:t.normalizeStyle(p.value)},[n.showHeader?(t.openBlock(),t.createElementBlock("div",{key:0,class:"list-header",style:t.normalizeStyle(b.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.header,(m,_)=>(t.openBlock(),t.createElementBlock("p",{key:_,class:"header-item"},t.toDisplayString(m),1))),128))],4)):t.createCommentVNode("",!0),n.enableScroll?(t.openBlock(),t.createElementBlock("div",{key:1,class:"scroll-wrapper",style:t.normalizeStyle(k.value)},[t.createElementVNode("div",{class:"data-list",ref_key:"listContainer",ref:c},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.data,(m,_)=>(t.openBlock(),t.createElementBlock("div",{key:_,class:"data-list-item",style:t.normalizeStyle(x(_)),ref_for:!0,ref_key:"listItems",ref:h},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m,(Y,q)=>(t.openBlock(),t.createElementBlock("p",{key:q,class:"data-item-cell"},t.toDisplayString(Y),1))),128))],4))),128))],512)],4)):t.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-937cc59c"]]);D.install=n=>{n.component(D.name,D)};const N=g(Object.assign({name:"hView"},{props:{height:{type:String,default:"200px"},width:{type:String,default:"100%"},display:{type:String,default:"block"},flexDirection:{type:String,default:"column"},rowGap:{type:String,default:"0"},columnGap:{type:String,default:"0"},flex:{type:String,default:"0.2"},position:{type:String,default:"relative"},top:{type:String,default:"auto"},left:{type:String,default:"auto"},alignItems:{type:String,default:"center"},justifyContent:{type:String,default:"start"},padding:{type:String,default:"0"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,rowGap:e.rowGap,columnGap:e.columnGap,flex:e.flex,position:e.position,top:e.top,left:e.left,alignItems:e.alignItems,justifyContent:e.justifyContent,padding:e.padding}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-view",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-5d1b329e"]]);N.install=n=>{n.component(N.name,N)};const T=g(Object.assign({name:"hDataLabel"},{props:{url:{type:String,default:""},num:{type:Number,default:12345},text:{type:String,default:"测试"},someText:{type:String,default:"测试"},show:{type:Boolean,default:!0},width:{type:String,default:"230px"},height:{type:String,default:"54px"},position:{type:String,default:"absolute"},left:{type:String,default:"0"},right:{type:String,default:""},top:{type:String,default:"0"},bottom:{type:String,default:""},zIndex:{type:String,default:"1"},display:{type:String,default:""},border:{type:String,default:"none"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},justifyContent:{type:String,default:"center"},alignItems:{type:String,default:"center"},color:{type:String,default:"#fff"},numFontSize:{type:String,default:"20px"},numFontWeight:{type:String,default:"600"},numColor:{type:String,default:"#fff"},textFontSize:{type:String,default:"10px"},textFontWeight:{type:String,default:""},textColor:{type:String,default:"#fff"},titlelineHeight:{type:String,default:""},titletextAlign:{type:String,default:""},titleFontSize:{type:String,default:"10px"},titleFontWeight:{type:String,default:""},titleColor:{type:String,default:"#fff"},titleShow:{type:Boolean,default:!1}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,position:e.position,left:e.left,right:e.right,top:e.top,bottom:e.bottom,zIndex:e.zIndex,display:e.display,border:e.border,backgroundImage:`url(${e.url})`,flexDirection:e.flexDirection,justifyContent:e.justifyContent,alignItems:e.alignItems,color:e.color}),l=t.ref({fontSize:e.numFontSize,fontWeight:e.numFontWeight,color:e.numColor}),o=t.ref({fontSize:e.textFontSize,fontWeight:e.textFontWeight,color:e.textColor}),y=t.ref({fontSize:e.titleFontSize,fontWeight:e.titleFontWeight,color:e.titleColor,lineHeight:e.titlelineHeight,textAlign:e.titletextAlign});return(h,c)=>(t.openBlock(),t.createElementBlock("div",{class:"h-data-label",style:t.normalizeStyle(t.unref(a))},[n.show?(t.openBlock(),t.createElementBlock("span",{key:0,class:"h-data-label-num",style:t.normalizeStyle(t.unref(l))},t.toDisplayString(n.num),5)):t.createCommentVNode("",!0),n.show?(t.openBlock(),t.createElementBlock("span",{key:1,class:"h-data-label-text",style:t.normalizeStyle(t.unref(o))},t.toDisplayString(n.text),5)):t.createCommentVNode("",!0),n.titleShow?(t.openBlock(),t.createElementBlock("span",{key:2,class:"h-data-label-title",style:t.normalizeStyle(t.unref(y))},t.toDisplayString(n.someText),5)):t.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-f0ce86db"]]);T.install=n=>{n.component(T.name,T)};const F=g(Object.assign({name:"hButton"},{props:{url:{type:String,default:""},padding:{type:String,default:"5px 15px"},margin:{type:String,default:""},width:{type:String,default:""},height:{type:String,default:""},fontSize:{type:String,default:""},fontWeight:{type:Number,default:400},color:{type:String,default:""},text:{type:String,default:"测试按钮"}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,padding:e.padding,margin:e.margin,border:e.border,backgroundImage:`url(${e.url})`,fontSize:e.fontSize,fontWeight:e.fontWeight,color:e.color});return(l,o)=>(t.openBlock(),t.createElementBlock("button",{class:"h-button",style:t.normalizeStyle(t.unref(a))},t.toDisplayString(t.unref(e).text),5))}}),[["__scopeId","data-v-0a183c56"]]);F.install=n=>{n.component(F.name,F)};const L=g(Object.assign({name:"hGrid"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100%"},gridWidth:{type:String,default:"1fr"},gridHeight:{type:String,default:"1fr"},display:{type:String,default:"grid"},gridTemplateColumns:{type:String,default:"3"},gridTemplateRows:{type:String,default:"2"},iwidth:{type:String,default:""},iheight:{type:String,default:""},idisplay:{type:String,default:"flex"}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,display:e.display,gridTemplateColumns:`repeat(${e.gridTemplateColumns}, ${e.gridWidth})`,gridTemplateRows:`repeat(${e.gridTemplateRows}, ${e.gridHeight})`}),l=t.ref({width:e.iwidth,height:e.iheight,display:e.idisplay});return(o,y)=>(t.openBlock(),t.createElementBlock("div",{class:"h-grid",style:t.normalizeStyle(t.unref(a))},[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(6,h=>t.createElementVNode("div",{key:h,class:"h-grid-item",style:t.normalizeStyle(t.unref(l))},y[0]||(y[0]=[t.createElementVNode("div",{class:"h-grid-item-left"},[t.createElementVNode("img",{src:"",alt:""})],-1),t.createElementVNode("div",{class:"h-grid-item-right"},null,-1)]),4)),64)),t.renderSlot(o.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-34e7422b"]]);L.install=n=>{n.component(L.name,L)};const W=g(Object.assign({name:"hCounter",chineseName:"数字计数器",description:"支持老虎机滚动动画的数字计数器组件,每个数字位独立从0滚动到目标值"},{props:{data:{type:[Number,String],default:123456},width:{type:String,default:"auto"},height:{type:String,default:"auto"},backgroundColor:{type:String,default:"transparent"},backgroundImage:{type:String,default:""},display:{type:String,default:"flex"},justifyContent:{type:String,default:"center"},alignItems:{type:String,default:"center"},gap:{type:String,default:"5px"},position:{type:String,default:"relative",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)},left:{type:String,default:""},right:{type:String,default:""},top:{type:String,default:""},bottom:{type:String,default:""},zIndex:{type:Number,default:1},digitWidth:{type:String,default:""},digitHeight:{type:String,default:""},digitBackgroundImage:{type:String,default:""},digitColor:{type:String,default:"#fff"},digitFontSize:{type:String,default:"32px"},digitFontWeight:{type:String,default:"bold"},digitBackgroundColor:{type:String,default:"transparent"},digitBorderRadius:{type:String,default:"4px"},showSeparator:{type:Boolean,default:!1},separator:{type:String,default:","},decimalPlaces:{type:Number,default:-1},prefix:{type:String,default:""},suffix:{type:String,default:""},enableAnimation:{type:Boolean,default:!0},animationDuration:{type:Number,default:2e3},digitDelay:{type:Number,default:100},transform:{type:String,default:"none"}},setup(n,{expose:e}){const a=n,l=t.ref([]),o=t.ref(!1),y=t.computed(()=>{let u=a.data;a.decimalPlaces>=0&&typeof u=="number"&&(u=u.toFixed(a.decimalPlaces));let s=String(u);if(a.showSeparator&&typeof a.data=="number"){const r=s.split(".");r[0]=r[0].replace(/\B(?=(\d{3})+(?!\d))/g,a.separator),s=r.join(".")}return a.prefix&&(s=a.prefix+s),a.suffix&&(s=s+a.suffix),s.split("")}),h=t.computed(()=>a.digitWidth?a.digitWidth:`${(parseInt(a.digitFontSize)||32)*1.2}px`),c=t.computed(()=>a.digitHeight?a.digitHeight:`${(parseInt(a.digitFontSize)||32)*1.5}px`),p=()=>{if(!a.enableAnimation){l.value=y.value.map(()=>0);return}o.value=!0,l.value=y.value.map(()=>0);const u=y.value;u.forEach((s,r)=>{if(isNaN(parseInt(s))){l.value[r]=s;return}const i=parseInt(s),d=r*a.digitDelay,m=a.animationDuration;setTimeout(()=>{let _=0;const Y=m/(i+1),q=()=>{_<=i&&(l.value[r]=_,_++,_<=i?setTimeout(q,Y):(r===u.length-1||u.slice(r+1).every(v=>isNaN(parseInt(v))))&&(o.value=!1))};q()},d)})},b=u=>{const s=l.value[u];if(isNaN(parseInt(s)))return{transform:"translateY(0)",transition:"none"};const r=parseInt(c.value)||60;return{transform:`translateY(${-parseInt(s)*r}px)`,transition:`transform ${a.animationDuration}ms cubic-bezier(0.25, 0.46, 0.45, 0.94)`}},k=t.computed(()=>({width:a.width,height:a.height,backgroundColor:a.backgroundColor,backgroundImage:a.backgroundImage?`url(${a.backgroundImage})`:"none",display:a.display,justifyContent:a.justifyContent,alignItems:a.alignItems,gap:a.gap,position:a.position,left:a.left||void 0,right:a.right||void 0,top:a.top||void 0,bottom:a.bottom||void 0,zIndex:a.zIndex,transform:a.transform||void 0})),x=t.computed(()=>({width:h.value,height:c.value,overflow:"hidden",position:"relative",borderRadius:a.digitBorderRadius,backgroundColor:a.digitBackgroundColor})),S=t.computed(()=>({width:"100%",height:c.value,color:a.digitColor,fontSize:a.digitFontSize,fontWeight:a.digitFontWeight,display:"flex",justifyContent:"center",alignItems:"center",textAlign:"center",flexShrink:0,lineHeight:"1"}));return t.watch(()=>a.data,()=>{p()}),t.onMounted(()=>{p()}),e({restart:p,getCurrentValue:()=>l.value.join("")}),(u,s)=>(t.openBlock(),t.createElementBlock("div",{class:"h-counter",style:t.normalizeStyle(k.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(r,i)=>(t.openBlock(),t.createElementBlock("div",{key:i,class:"counter-digit",style:t.normalizeStyle(x.value)},[t.createElementVNode("div",{class:"digit-scroll",style:t.normalizeStyle(b(i))},[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(10,d=>t.createElementVNode("div",{key:d-1,class:"digit-item",style:t.normalizeStyle(S.value)},t.toDisplayString(d-1),5)),64))],4)],4))),128)),t.renderSlot(u.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-fba32a26"]]);W.install=n=>{n.component(W.name,W)};const H=g(Object.assign({name:"hButtonGroup"},{props:{width:{type:String,default:""},height:{type:String,default:""},rowGap:{type:String,default:"5px"},columnGap:{type:String,default:"5px"},position:{type:String,default:"relative"},left:{type:String,default:""},right:{type:String,default:""},top:{type:String,default:""},bottom:{type:String,default:""},display:{type:String,default:"flex"},flexWrap:{type:String,default:"nowrap"}},setup(n){let e=n,a=t.ref({position:e.position,left:e.left,right:e.right,top:e.top,bottom:e.bottom,display:e.display,gap:e.gap,rowGap:e.rowGap,columnGap:e.columnGap,flexWrap:e.flexWrap});return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-button-group",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-7bf905ff"]]);H.install=n=>{n.component(H.name,H)};const X={class:"h-text"},V=g(Object.assign({name:"hText",chineseName:"文本",description:"用于显示文本内容"},{props:{text:{type:String,default:"测试文字"},fontSize:{type:String,default:"16px"},color:{type:String,default:"#fff"}},setup(n){let e=n;return(a,l)=>(t.openBlock(),t.createElementBlock("span",X,t.toDisplayString(t.unref(e).text),1))}}),[["__scopeId","data-v-bc52bf83"]]);V.install=n=>{n.component(V.name,V)};const R=g(Object.assign({name:"hLayout",chineseName:"布局",description:"页面布局容器"},{props:{width:{type:String,default:"25%"},height:{type:String,default:"100%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-layout",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-957ea318"]]);R.install=n=>{n.component(R.name,R)};const M=g(Object.assign({name:"hFlex"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100px"},url:{type:String,default:""},display:{type:String,default:"flex"},flexDirection:{type:String,default:""},flexWrap:{type:String,default:"wrap"},rowGap:{type:String,default:"0"},columnGap:{type:String,default:"0"}},setup(n){let e=n,a=t.computed(()=>({display:e.display,width:e.width,height:e.height,backgroundImage:e.url?`url(${e.url})`:"none",rowGap:e.rowGap,columnGap:e.columnGap,flexDirection:e.flexDirection,flexWrap:e.flexWrap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-flex",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-c8c463ea"]]);M.install=n=>{n.component(M.name,M)};const Z={install:n=>{n.use($),n.use(w),n.use(R),n.use(B),n.use(z),n.use(A),n.use(I),n.use(C),n.use(j),n.use(E),n.use(G),n.use(O),n.use(D),n.use(N),n.use(T),n.use(F),n.use(L),n.use(W),n.use(H),n.use(V),n.use(M)}};f.default=Z,f.hBottom=E,f.hButton=F,f.hButtonGroup=H,f.hCenter=C,f.hChart=z,f.hChartTitle=G,f.hCounter=W,f.hDataLabel=T,f.hFlex=M,f.hGrid=L,f.hHeader=w,f.hItemChart=O,f.hLayout=R,f.hLeft=A,f.hList=D,f.hMain=B,f.hPanel=$,f.hRight=I,f.hText=V,f.hTop=j,f.hView=N,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(f,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("echarts"),require("@vueuse/core")):typeof define=="function"&&define.amd?define(["exports","vue","echarts","@vueuse/core"],t):(f=typeof globalThis<"u"?globalThis:f||self,t(f.HamsterCharts={},f.Vue,f.echarts,f.VueUse))})(this,function(f,t,U,P){"use strict";function K(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const a in n)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(n,a);Object.defineProperty(e,a,l.get?l:{enumerable:!0,get:()=>n[a]})}}return e.default=n,Object.freeze(e)}const J=K(U),y=(n,e)=>{const a=n.__vccOpts||n;for(const[l,o]of e)a[l]=o;return a},$=y(Object.assign({name:"hPanel",chineseName:"面板",description:"页面主体容器"},{props:{url:{type:String,default:""},position:{type:String,default:"relative",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)}},setup(n){let e=n,a=t.computed(()=>({position:e.position,backgroundImage:e.url?`url(${e.url})`:"none"}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-panel",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-474190fc"]]);$.install=n=>{n.component($.name,$)};const w=y(Object.assign({name:"hHeader",chineseName:"标题",description:"页面标题容器"},{props:{url:{type:String,default:""},width:{type:String,default:"100%"},height:{type:String,default:"70px"},text:{type:String,default:"测试标题"},fontSize:{type:String,default:"26px"},color:{type:String,default:"#fff"},showText:{type:Boolean,default:!0},textPosition:{type:String,default:"absolute",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)},textTop:{type:String,default:"50%"},textLeft:{type:String,default:"50%"},textTransform:{type:String,default:"translate(-50%, -50%)"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,backgroundImage:`url( ${e.url})`})),l=t.computed(()=>({color:e.color,fontSize:e.fontSize,position:e.textPosition,top:e.textTop,left:e.textLeft,transform:e.textTransform}));return(o,g)=>(t.openBlock(),t.createElementBlock("div",{class:"h-header",style:t.normalizeStyle(t.unref(a))},[t.unref(e).showText?(t.openBlock(),t.createElementBlock("span",{key:0,style:t.normalizeStyle(t.unref(l))},t.toDisplayString(t.unref(e).text),5)):t.createCommentVNode("",!0),t.renderSlot(o.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-b83cf769"]]);w.install=n=>{n.component(w.name,w)};const B=y(Object.assign({name:"hMain",chineseName:"主内容区",description:"页面主内容工作区"},{props:{height:{type:String,default:"200px"},display:{type:String,default:"flex"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"},padding:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({height:e.height!=="auto"||e.height!=="0"?`calc(100% - ${e.height})`:e.height,display:e.display,columnGap:e.columnGap,rowGap:e.rowGap,padding:e.padding}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-main",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-1025786b"]]);B.install=n=>{n.component(B.name,B)};const z=y(Object.assign({name:"hChart"},{props:{height:{type:String,default:"auto"},showChart:{type:Boolean,default:!0},chartsh:{type:String,default:"auto"},url:{type:String,default:""},flex:{type:Number,default:.3},chartsOption:{type:Object,required:!0}},emits:["chart-ready","chart-update","chart-resize","chart-click","chart-dblclick","chart-mouseover","chart-mouseout"],setup(n,{expose:e,emit:a}){const l=a,o=n,g=t.computed(()=>({backgroundImage:o.url?`url(${o.url})`:"none",flex:o.flex,height:o.height})),h=t.computed(()=>({height:o.chartsh!=="auto"&&o.chartsh!=="0"?`calc(100% - ${o.chartsh})`:o.chartsh})),c=t.ref(null);let p=null;const b=P.useDebounceFn(()=>{p&&(p.resize(),l("chart-resize",{instance:p}))},100),k=()=>{if(!p)return;["click","dblclick","mouseover","mouseout"].forEach(i=>{p.on(i,d=>{l(`chart-${i}`,d)})})},x=()=>{p&&(["click","dblclick","mouseover","mouseout"].forEach(i=>{p.off(i)}),p.dispose(),p=null)},S=()=>{if(x(),!!c.value)try{const r=u(o.chartsOption);p=J.init(c.value),p.setOption(r,{notMerge:!0}),k(),l("chart-ready",{instance:p,dom:c.value})}catch(r){console.error("ECharts initialization failed:",r)}},u=r=>{if(!r||typeof r!="object")return{series:[]};const i=JSON.parse(JSON.stringify(r));return i.series?Array.isArray(i.series)||(i.series=[i.series]):i.series=[],i.series=i.series.map(d=>{if(!d||typeof d!="object")return{type:"line"};const m={type:"line",...d,type:d.type||"line"};return m.type==="pie"&&m.data&&(m.data=m.data.map(_=>typeof _=="object"&&_!==null?{type:"line",..._,type:_.type||"line"}:_)),m}),i.xAxis?Array.isArray(i.xAxis)?i.xAxis=i.xAxis.map(d=>!d||typeof d!="object"?{type:"category"}:{type:"category",...d,type:d.type||"category"}):typeof i.xAxis=="object"?i.xAxis={type:"category",...i.xAxis,type:i.xAxis.type||"category"}:i.xAxis={type:"category"}:i.xAxis={type:"category"},i.yAxis?Array.isArray(i.yAxis)?i.yAxis=i.yAxis.map(d=>!d||typeof d!="object"?{type:"value"}:{type:"value",...d,type:d.type||"value"}):typeof i.yAxis=="object"?i.yAxis={type:"value",...i.yAxis,type:i.yAxis.type||"value"}:i.yAxis={type:"value"}:i.yAxis={type:"value"},i.legend&&(typeof i.legend=="object"&&!Array.isArray(i.legend)||Array.isArray(i.legend)&&(i.legend={data:i.legend})),i},s=()=>{b()};return t.onMounted(()=>{setTimeout(()=>{S()},0),window.addEventListener("resize",s),P.useResizeObserver(c,r=>{b()})}),t.onBeforeUnmount(()=>{window.removeEventListener("resize",s),x()}),t.watch(()=>o.chartsOption,(r,i)=>{if(r)try{const d=u(r);if(!p){S();return}p.setOption(d,{notMerge:!0}),l("chart-update",{instance:p,option:d})}catch(d){console.error("更新图表配置时出错:",d),console.error(" 错误堆栈:",d.stack)}},{deep:!0}),t.watch(()=>o.showChart,r=>{p&&setTimeout(()=>{p.resize()},0)}),e({getInstance:()=>p,resize:()=>b(),dispatchAction:r=>p==null?void 0:p.dispatchAction(r),dispose:x}),(r,i)=>(t.openBlock(),t.createElementBlock("div",{class:"h-chart",style:t.normalizeStyle(g.value)},[t.renderSlot(r.$slots,"default",{},void 0,!0),t.withDirectives(t.createElementVNode("div",{class:"chart",ref_key:"charts",ref:c,style:t.normalizeStyle(h.value)},null,4),[[t.vShow,o.showChart]])],4))}}),[["__scopeId","data-v-ad5727b9"]]);z.install=n=>{n.component(z.name,z)};const A=y(Object.assign({name:"hLeft"},{props:{width:{type:String,default:"25%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-left",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-65e91535"]]);A.install=n=>{n.component(A.name,A)};const I=y(Object.assign({name:"hRight"},{props:{width:{type:String,default:"25%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-right",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-e897c957"]]);I.install=n=>{n.component(I.name,I)};const C=y(Object.assign({name:"hCenter"},{props:{width:{type:String,default:"50%"},height:{type:String,default:"100%"},display:{type:String,default:"block"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-center",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-73b498de"]]);C.install=n=>{n.component(C.name,C)};const j=y(Object.assign({name:"hTop"},{props:{height:{type:String,default:"70%"},display:{type:String,default:"block"},position:{type:String,default:"relative"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,display:e.display,position:e.position}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-top",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-54014ba4"]]);j.install=n=>{n.component(j.name,j)};const E=y(Object.assign({name:"hBottom"},{props:{height:{type:String,default:"30%"},display:{type:String,default:"flex"},gap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"},columnGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,display:e.display,gap:e.gap,rowGap:e.rowGap,columnGap:e.columnGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-bottom",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-086bec2a"]]);E.install=n=>{n.component(E.name,E)};const Q={class:"def-text"},G=y(Object.assign({name:"hChartTitle"},{props:{fontSize:{type:String,default:"16px"},url:{type:String,default:""},height:{type:String,default:"50px"},paddingLeft:{type:String,default:"auto"},paddingRight:{type:String,default:"auto"},paddingTop:{type:String,default:"auto"},paddingBottom:{type:String,default:"auto"},color:{type:String,default:"#fff"},text:{type:String,default:"测试标题"},display:{type:String,default:"block"},textAlign:{type:String,default:"start"},alignItems:{type:String,default:"center"},justifyContent:{type:String,default:"start"},position:{type:String,default:"relative"}},setup(n){let e=n,a=t.computed(()=>({height:e.height,backgroundImage:`url(${e.url})`,fontSize:e.fontSize,paddingLeft:e.paddingLeft,paddingRight:e.paddingRight,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,color:e.color,display:e.display,textAlign:e.textAlign,alignItems:e.alignItems,justifyContent:e.justifyContent,position:e.position}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-chart-title",style:t.normalizeStyle(t.unref(a))},[t.createElementVNode("span",Q,t.toDisplayString(t.unref(e).text),1),t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-85d6fea5"]]);G.install=n=>{n.component(G.name,G)};const O=y(Object.assign({name:"hItemChart",chineseName:"独立图表",description:"独立的 ECharts 图表容器组件,适用于大屏数据可视化展示"},{props:{height:{type:String,default:"200px"},url:{type:String,default:""},chartsOption:{type:Object,required:!0}},emits:["chart-ready","chart-update","chart-resize","chart-click","chart-dblclick","chart-mouseover","chart-mouseout"],setup(n,{expose:e,emit:a}){const l=a,o=n,g=t.computed(()=>({backgroundImage:o.url?`url(${o.url})`:"none",height:o.height})),h=t.ref(null);let c=null;const p=P.useDebounceFn(()=>{c&&(c.resize(),l("chart-resize",{instance:c}))},100),b=()=>{if(!c)return;["click","dblclick","mouseover","mouseout"].forEach(r=>{c.on(r,i=>{l(`chart-${r}`,i)})})},k=()=>{c&&(["click","dblclick","mouseover","mouseout"].forEach(r=>{c.off(r)}),c.dispose(),c=null)},x=()=>{if(k(),!!h.value)try{const s=S(o.chartsOption);c=J.init(h.value),c.setOption(s,{notMerge:!0}),b(),l("chart-ready",{instance:c,dom:h.value})}catch(s){console.error("ECharts initialization failed:",s)}},S=s=>{if(!s||typeof s!="object")return{series:[]};const r=JSON.parse(JSON.stringify(s));return r.series?Array.isArray(r.series)||(r.series=[r.series]):r.series=[],r.series=r.series.map(i=>{if(!i||typeof i!="object")return{type:"line"};const d={type:"line",...i,type:i.type||"line"};return d.type==="pie"&&d.data&&(d.data=d.data.map(m=>typeof m=="object"&&m!==null?{value:m.value||0,name:m.name||""}:m)),d}),r.xAxis?Array.isArray(r.xAxis)?r.xAxis=r.xAxis.map(i=>!i||typeof i!="object"?{type:"category"}:{type:"category",...i,type:i.type||"category"}):typeof r.xAxis=="object"?r.xAxis={type:"category",...r.xAxis,type:r.xAxis.type||"category"}:r.xAxis={type:"category"}:r.xAxis={type:"category"},r.yAxis?Array.isArray(r.yAxis)?r.yAxis=r.yAxis.map(i=>!i||typeof i!="object"?{type:"value"}:{type:"value",...i,type:i.type||"value"}):typeof r.yAxis=="object"?r.yAxis={type:"value",...r.yAxis,type:r.yAxis.type||"value"}:r.yAxis={type:"value"}:r.yAxis={type:"value"},r.legend&&(typeof r.legend=="object"&&!Array.isArray(r.legend)||Array.isArray(r.legend)&&(r.legend={data:r.legend})),r},u=()=>{p()};return t.onMounted(()=>{setTimeout(()=>{x()},0),window.addEventListener("resize",u),P.useResizeObserver(h,s=>{p()})}),t.onBeforeUnmount(()=>{window.removeEventListener("resize",u),k()}),t.watch(()=>o.chartsOption,s=>{if(s)try{if(!c){x();return}const r=S(s);c.setOption(r,{notMerge:!0}),l("chart-update",{instance:c,option:r})}catch(r){console.error("更新图表配置时出错:",r)}},{deep:!0}),e({getInstance:()=>c,resize:()=>p(),dispatchAction:s=>c==null?void 0:c.dispatchAction(s),dispose:k}),(s,r)=>(t.openBlock(),t.createElementBlock("div",{class:"h-item-chart",ref_key:"itemCharts",ref:h,style:t.normalizeStyle(g.value)},null,4))}}),[["__scopeId","data-v-7c5da244"]]);O.install=n=>{n.component(O.name,O)};const D=y(Object.assign({name:"hList",chineseName:"滚动列表",description:"支持自动滚动的数据列表组件,适用于大屏数据展示"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100%"},backgroundColor:{type:String,default:"transparent"},data:{type:Array,default:()=>[]},header:{type:Array,default:()=>[]},showHeader:{type:Boolean,default:!1},enableScroll:{type:Boolean,default:!0},headerHeight:{type:String,default:"40px"},headerBackground:{type:String,default:"rgba(255, 255, 255, 0.1)"},scrollDuration:{type:Number,default:2e3},scrollSpeed:{type:Number,default:500},highlightStyle:{type:Object,default:()=>({background:"rgba(0, 102, 255, 0.3)",color:"#fff",boxShadow:"0 0 10px rgba(0, 102, 255, 0.5)"})}},setup(n,{expose:e}){const a=n,l=t.ref(0),o=t.ref(null),g=t.ref(0),h=t.ref([]),c=t.ref(null),p=t.computed(()=>({width:a.width,height:a.height,backgroundColor:a.backgroundColor,position:"relative",overflow:"hidden"})),b=t.computed(()=>({height:a.headerHeight,display:"flex",alignItems:"center",background:a.headerBackground,position:"absolute",top:0,left:0,zIndex:10,width:"100%"})),k=t.computed(()=>({transform:`translateY(-${l.value*g.value}px)`,transition:`transform ${a.scrollSpeed}ms ease-in-out`,marginTop:a.showHeader?a.headerHeight:"0"})),x=i=>i===o.value?a.highlightStyle:{};t.watch(l,i=>{if(a.data.length>0){const d=i%a.data.length;o.value=d}});let S=null;const u=()=>{!a.enableScroll||a.data.length===0||(clearInterval(S),S=setInterval(()=>{l.value=(l.value+1)%a.data.length},a.scrollDuration))},s=()=>{S&&(clearInterval(S),S=null)},r=()=>{h.value&&h.value[0]&&(g.value=h.value[0].offsetHeight||40)};return t.onMounted(()=>{r(),u(),window.addEventListener("resize",r)}),t.onBeforeUnmount(()=>{s(),window.removeEventListener("resize",r)}),t.watch(()=>a.data,i=>{i.length>0?(l.value=0,o.value=null,setTimeout(()=>{r(),u()},100)):s()},{deep:!0}),t.watch(()=>a.enableScroll,i=>{i?u():(s(),l.value=0)}),e({startScroll:u,stopScroll:s,getCurrentIndex:()=>l.value,scrollTo:i=>{i>=0&&i<a.data.length&&(l.value=i)}}),(i,d)=>(t.openBlock(),t.createElementBlock("div",{class:"h-list",style:t.normalizeStyle(p.value)},[n.showHeader?(t.openBlock(),t.createElementBlock("div",{key:0,class:"list-header",style:t.normalizeStyle(b.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.header,(m,_)=>(t.openBlock(),t.createElementBlock("p",{key:_,class:"header-item"},t.toDisplayString(m),1))),128))],4)):t.createCommentVNode("",!0),n.enableScroll?(t.openBlock(),t.createElementBlock("div",{key:1,class:"scroll-wrapper",style:t.normalizeStyle(k.value)},[t.createElementVNode("div",{class:"data-list",ref_key:"listContainer",ref:c},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.data,(m,_)=>(t.openBlock(),t.createElementBlock("div",{key:_,class:"data-list-item",style:t.normalizeStyle(x(_)),ref_for:!0,ref_key:"listItems",ref:h},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(m,(Y,q)=>(t.openBlock(),t.createElementBlock("p",{key:q,class:"data-item-cell"},t.toDisplayString(Y),1))),128))],4))),128))],512)],4)):t.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-937cc59c"]]);D.install=n=>{n.component(D.name,D)};const N=y(Object.assign({name:"hView"},{props:{height:{type:String,default:"200px"},width:{type:String,default:"100%"},display:{type:String,default:"block"},flexDirection:{type:String,default:"column"},rowGap:{type:String,default:"0"},columnGap:{type:String,default:"0"},flex:{type:String,default:"0.2"},position:{type:String,default:"relative"},top:{type:String,default:"auto"},left:{type:String,default:"auto"},alignItems:{type:String,default:"center"},justifyContent:{type:String,default:"start"},padding:{type:String,default:"0"},url:{type:String,default:""}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,rowGap:e.rowGap,columnGap:e.columnGap,flex:e.flex,position:e.position,top:e.top,left:e.left,alignItems:e.alignItems,justifyContent:e.justifyContent,padding:e.padding,background:`url(${e.url})`}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-view",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-1a57d542"]]);N.install=n=>{n.component(N.name,N)};const T=y(Object.assign({name:"hDataLabel"},{props:{url:{type:String,default:""},num:{type:Number,default:12345},text:{type:String,default:"测试"},someText:{type:String,default:"测试"},show:{type:Boolean,default:!0},width:{type:String,default:"230px"},height:{type:String,default:"54px"},position:{type:String,default:"absolute"},left:{type:String,default:"0"},right:{type:String,default:""},top:{type:String,default:"0"},bottom:{type:String,default:""},zIndex:{type:String,default:"1"},display:{type:String,default:""},border:{type:String,default:"none"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},justifyContent:{type:String,default:"center"},alignItems:{type:String,default:"center"},color:{type:String,default:"#fff"},numFontSize:{type:String,default:"20px"},numFontWeight:{type:String,default:"600"},numColor:{type:String,default:"#fff"},textFontSize:{type:String,default:"10px"},textFontWeight:{type:String,default:""},textColor:{type:String,default:"#fff"},titlelineHeight:{type:String,default:""},titletextAlign:{type:String,default:""},titleFontSize:{type:String,default:"10px"},titleFontWeight:{type:String,default:""},titleColor:{type:String,default:"#fff"},titleShow:{type:Boolean,default:!1}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,position:e.position,left:e.left,right:e.right,top:e.top,bottom:e.bottom,zIndex:e.zIndex,display:e.display,border:e.border,backgroundImage:`url(${e.url})`,flexDirection:e.flexDirection,justifyContent:e.justifyContent,alignItems:e.alignItems,color:e.color}),l=t.ref({fontSize:e.numFontSize,fontWeight:e.numFontWeight,color:e.numColor}),o=t.ref({fontSize:e.textFontSize,fontWeight:e.textFontWeight,color:e.textColor}),g=t.ref({fontSize:e.titleFontSize,fontWeight:e.titleFontWeight,color:e.titleColor,lineHeight:e.titlelineHeight,textAlign:e.titletextAlign});return(h,c)=>(t.openBlock(),t.createElementBlock("div",{class:"h-data-label",style:t.normalizeStyle(t.unref(a))},[n.show?(t.openBlock(),t.createElementBlock("span",{key:0,class:"h-data-label-num",style:t.normalizeStyle(t.unref(l))},t.toDisplayString(n.num),5)):t.createCommentVNode("",!0),n.show?(t.openBlock(),t.createElementBlock("span",{key:1,class:"h-data-label-text",style:t.normalizeStyle(t.unref(o))},t.toDisplayString(n.text),5)):t.createCommentVNode("",!0),n.titleShow?(t.openBlock(),t.createElementBlock("span",{key:2,class:"h-data-label-title",style:t.normalizeStyle(t.unref(g))},t.toDisplayString(n.someText),5)):t.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-f0ce86db"]]);T.install=n=>{n.component(T.name,T)};const F=y(Object.assign({name:"hButton"},{props:{url:{type:String,default:""},padding:{type:String,default:"5px 15px"},margin:{type:String,default:""},width:{type:String,default:""},height:{type:String,default:""},fontSize:{type:String,default:""},fontWeight:{type:Number,default:400},color:{type:String,default:""},text:{type:String,default:"测试按钮"}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,padding:e.padding,margin:e.margin,border:e.border,backgroundImage:`url(${e.url})`,fontSize:e.fontSize,fontWeight:e.fontWeight,color:e.color});return(l,o)=>(t.openBlock(),t.createElementBlock("button",{class:"h-button",style:t.normalizeStyle(t.unref(a))},t.toDisplayString(t.unref(e).text),5))}}),[["__scopeId","data-v-0a183c56"]]);F.install=n=>{n.component(F.name,F)};const L=y(Object.assign({name:"hGrid"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100%"},gridWidth:{type:String,default:"1fr"},gridHeight:{type:String,default:"1fr"},display:{type:String,default:"grid"},gridTemplateColumns:{type:String,default:"3"},gridTemplateRows:{type:String,default:"2"},iwidth:{type:String,default:""},iheight:{type:String,default:""},idisplay:{type:String,default:"flex"}},setup(n){let e=n,a=t.ref({width:e.width,height:e.height,display:e.display,gridTemplateColumns:`repeat(${e.gridTemplateColumns}, ${e.gridWidth})`,gridTemplateRows:`repeat(${e.gridTemplateRows}, ${e.gridHeight})`}),l=t.ref({width:e.iwidth,height:e.iheight,display:e.idisplay});return(o,g)=>(t.openBlock(),t.createElementBlock("div",{class:"h-grid",style:t.normalizeStyle(t.unref(a))},[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(6,h=>t.createElementVNode("div",{key:h,class:"h-grid-item",style:t.normalizeStyle(t.unref(l))},g[0]||(g[0]=[t.createElementVNode("div",{class:"h-grid-item-left"},[t.createElementVNode("img",{src:"",alt:""})],-1),t.createElementVNode("div",{class:"h-grid-item-right"},null,-1)]),4)),64)),t.renderSlot(o.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-34e7422b"]]);L.install=n=>{n.component(L.name,L)};const W=y(Object.assign({name:"hCounter",chineseName:"数字计数器",description:"支持老虎机滚动动画的数字计数器组件,每个数字位独立从0滚动到目标值"},{props:{data:{type:[Number,String],default:123456},width:{type:String,default:"auto"},height:{type:String,default:"auto"},backgroundColor:{type:String,default:"transparent"},backgroundImage:{type:String,default:""},display:{type:String,default:"flex"},justifyContent:{type:String,default:"center"},alignItems:{type:String,default:"center"},gap:{type:String,default:"5px"},position:{type:String,default:"relative",validator:n=>["static","relative","absolute","fixed","sticky"].includes(n)},left:{type:String,default:""},right:{type:String,default:""},top:{type:String,default:""},bottom:{type:String,default:""},zIndex:{type:Number,default:1},digitWidth:{type:String,default:""},digitHeight:{type:String,default:""},digitBackgroundImage:{type:String,default:""},digitColor:{type:String,default:"#fff"},digitFontSize:{type:String,default:"32px"},digitFontWeight:{type:String,default:"bold"},digitBackgroundColor:{type:String,default:"transparent"},digitBorderRadius:{type:String,default:"4px"},showSeparator:{type:Boolean,default:!1},separator:{type:String,default:","},decimalPlaces:{type:Number,default:-1},prefix:{type:String,default:""},suffix:{type:String,default:""},enableAnimation:{type:Boolean,default:!0},animationDuration:{type:Number,default:2e3},digitDelay:{type:Number,default:100},transform:{type:String,default:"none"}},setup(n,{expose:e}){const a=n,l=t.ref([]),o=t.ref(!1),g=t.computed(()=>{let u=a.data;a.decimalPlaces>=0&&typeof u=="number"&&(u=u.toFixed(a.decimalPlaces));let s=String(u);if(a.showSeparator&&typeof a.data=="number"){const r=s.split(".");r[0]=r[0].replace(/\B(?=(\d{3})+(?!\d))/g,a.separator),s=r.join(".")}return a.prefix&&(s=a.prefix+s),a.suffix&&(s=s+a.suffix),s.split("")}),h=t.computed(()=>a.digitWidth?a.digitWidth:`${(parseInt(a.digitFontSize)||32)*1.2}px`),c=t.computed(()=>a.digitHeight?a.digitHeight:`${(parseInt(a.digitFontSize)||32)*1.5}px`),p=()=>{if(!a.enableAnimation){l.value=g.value.map(()=>0);return}o.value=!0,l.value=g.value.map(()=>0);const u=g.value;u.forEach((s,r)=>{if(isNaN(parseInt(s))){l.value[r]=s;return}const i=parseInt(s),d=r*a.digitDelay,m=a.animationDuration;setTimeout(()=>{let _=0;const Y=m/(i+1),q=()=>{_<=i&&(l.value[r]=_,_++,_<=i?setTimeout(q,Y):(r===u.length-1||u.slice(r+1).every(Z=>isNaN(parseInt(Z))))&&(o.value=!1))};q()},d)})},b=u=>{const s=l.value[u];if(isNaN(parseInt(s)))return{transform:"translateY(0)",transition:"none"};const r=parseInt(c.value)||60;return{transform:`translateY(${-parseInt(s)*r}px)`,transition:`transform ${a.animationDuration}ms cubic-bezier(0.25, 0.46, 0.45, 0.94)`}},k=t.computed(()=>({width:a.width,height:a.height,backgroundColor:a.backgroundColor,backgroundImage:a.backgroundImage?`url(${a.backgroundImage})`:"none",display:a.display,justifyContent:a.justifyContent,alignItems:a.alignItems,gap:a.gap,position:a.position,left:a.left||void 0,right:a.right||void 0,top:a.top||void 0,bottom:a.bottom||void 0,zIndex:a.zIndex,transform:a.transform||void 0})),x=t.computed(()=>({width:h.value,height:c.value,overflow:"hidden",position:"relative",borderRadius:a.digitBorderRadius,backgroundColor:a.digitBackgroundColor})),S=t.computed(()=>({width:"100%",height:c.value,color:a.digitColor,fontSize:a.digitFontSize,fontWeight:a.digitFontWeight,display:"flex",justifyContent:"center",alignItems:"center",textAlign:"center",flexShrink:0,lineHeight:"1"}));return t.watch(()=>a.data,()=>{p()}),t.onMounted(()=>{p()}),e({restart:p,getCurrentValue:()=>l.value.join("")}),(u,s)=>(t.openBlock(),t.createElementBlock("div",{class:"h-counter",style:t.normalizeStyle(k.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(r,i)=>(t.openBlock(),t.createElementBlock("div",{key:i,class:"counter-digit",style:t.normalizeStyle(x.value)},[t.createElementVNode("div",{class:"digit-scroll",style:t.normalizeStyle(b(i))},[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(10,d=>t.createElementVNode("div",{key:d-1,class:"digit-item",style:t.normalizeStyle(S.value)},t.toDisplayString(d-1),5)),64))],4)],4))),128)),t.renderSlot(u.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-fba32a26"]]);W.install=n=>{n.component(W.name,W)};const H=y(Object.assign({name:"hButtonGroup"},{props:{width:{type:String,default:""},height:{type:String,default:""},rowGap:{type:String,default:"5px"},columnGap:{type:String,default:"5px"},position:{type:String,default:"relative"},left:{type:String,default:""},right:{type:String,default:""},top:{type:String,default:""},bottom:{type:String,default:""},display:{type:String,default:"flex"},flexWrap:{type:String,default:"nowrap"}},setup(n){let e=n,a=t.ref({position:e.position,left:e.left,right:e.right,top:e.top,bottom:e.bottom,display:e.display,gap:e.gap,rowGap:e.rowGap,columnGap:e.columnGap,flexWrap:e.flexWrap});return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-button-group",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-7bf905ff"]]);H.install=n=>{n.component(H.name,H)};const V=y(Object.assign({name:"hText",chineseName:"文本",description:"用于显示文本内容"},{props:{text:{type:String,default:"测试文字"},fontSize:{type:String,default:"16px"},color:{type:String,default:"#fff"}},setup(n){let e=n,a=t.computed(()=>({fontSize:e.fontSize,color:e.color}));return(l,o)=>(t.openBlock(),t.createElementBlock("span",{class:"h-text",style:t.normalizeStyle(t.unref(a))},t.toDisplayString(t.unref(e).text),5))}}),[["__scopeId","data-v-7fb2fc92"]]);V.install=n=>{n.component(V.name,V)};const R=y(Object.assign({name:"hLayout",chineseName:"布局",description:"页面布局容器"},{props:{width:{type:String,default:"25%"},height:{type:String,default:"100%"},display:{type:String,default:"flex"},flexDirection:{type:String,default:"column"},columnGap:{type:String,default:"auto"},rowGap:{type:String,default:"auto"}},setup(n){let e=n,a=t.computed(()=>({width:e.width,height:e.height,display:e.display,flexDirection:e.flexDirection,columnGap:e.columnGap,rowGap:e.rowGap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-layout",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-957ea318"]]);R.install=n=>{n.component(R.name,R)};const M=y(Object.assign({name:"hFlex"},{props:{width:{type:String,default:"100%"},height:{type:String,default:"100px"},url:{type:String,default:""},display:{type:String,default:"flex"},flexDirection:{type:String,default:""},flexWrap:{type:String,default:"wrap"},rowGap:{type:String,default:"0"},columnGap:{type:String,default:"0"}},setup(n){let e=n,a=t.computed(()=>({display:e.display,width:e.width,height:e.height,backgroundImage:e.url?`url(${e.url})`:"none",rowGap:e.rowGap,columnGap:e.columnGap,flexDirection:e.flexDirection,flexWrap:e.flexWrap}));return(l,o)=>(t.openBlock(),t.createElementBlock("div",{class:"h-flex",style:t.normalizeStyle(t.unref(a))},[t.renderSlot(l.$slots,"default",{},void 0,!0)],4))}}),[["__scopeId","data-v-c8c463ea"]]);M.install=n=>{n.component(M.name,M)};const X={install:n=>{n.use($),n.use(w),n.use(R),n.use(B),n.use(z),n.use(A),n.use(I),n.use(C),n.use(j),n.use(E),n.use(G),n.use(O),n.use(D),n.use(N),n.use(T),n.use(F),n.use(L),n.use(W),n.use(H),n.use(V),n.use(M)}};f.default=X,f.hBottom=E,f.hButton=F,f.hButtonGroup=H,f.hCenter=C,f.hChart=z,f.hChartTitle=G,f.hCounter=W,f.hDataLabel=T,f.hFlex=M,f.hGrid=L,f.hHeader=w,f.hItemChart=O,f.hLayout=R,f.hLeft=A,f.hList=D,f.hMain=B,f.hPanel=$,f.hRight=I,f.hText=V,f.hTop=j,f.hView=N,Object.defineProperties(f,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "hamster-charts",
3
3
  "private": false,
4
- "version": "0.5.0",
4
+ "version": "0.5.2",
5
5
  "description": "HamsterCharts-更新了-修复了一些东西",
6
6
  "type": "module",
7
7
  "main": "./dist/hamster-charts.umd.cjs",