hamster-charts 0.4.9 → 0.5.1

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-2b1c3083]{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-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,4 +1,4 @@
1
- import { computed as h, openBlock as s, 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
3
  import { useDebounceFn as lt, useResizeObserver as ot } from "@vueuse/core";
4
4
  const m = (e, 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
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,
@@ -105,11 +105,11 @@ const ft = {
105
105
  }));
106
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
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,7 +146,7 @@ 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,
@@ -155,7 +155,7 @@ const yt = {
155
155
  }));
156
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));
@@ -284,7 +284,7 @@ const mt = {
284
284
  return it(() => {
285
285
  setTimeout(() => {
286
286
  $();
287
- }, 0), window.addEventListener("resize", o), ot(p, (n) => {
287
+ }, 0), window.addEventListener("resize", o), ot(c, (n) => {
288
288
  k();
289
289
  });
290
290
  }), at(() => {
@@ -292,7 +292,7 @@ const mt = {
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;
@@ -315,14 +315,14 @@ const mt = {
315
315
  dispose: A
316
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,7 +358,7 @@ 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,
@@ -367,7 +367,7 @@ const xt = {
367
367
  }));
368
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,7 +402,7 @@ 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,
@@ -411,7 +411,7 @@ const vt = {
411
411
  }));
412
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,
@@ -460,7 +460,7 @@ const wt = {
460
460
  }));
461
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
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,7 +529,7 @@ 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,
@@ -538,7 +538,7 @@ const kt = {
538
538
  }));
539
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,
@@ -626,7 +626,7 @@ const zt = { class: "def-text" }, Gt = {
626
626
  }));
627
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,30 +665,30 @@ 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
689
  const o = $(l.chartsOption);
690
- p = rt.init(x.value), p.setOption(o, { notMerge: !0 }), k(), r("chart-ready", {
691
- instance: p,
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
694
  } catch (o) {
@@ -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), ot(x, (o) => {
738
+ }, 0), window.addEventListener("resize", h), ot(x, (o) => {
739
739
  f();
740
740
  });
741
741
  }), at(() => {
742
- window.removeEventListener("resize", y), C();
742
+ window.removeEventListener("resize", h), C();
743
743
  }), G(() => l.chartsOption, (o) => {
744
744
  if (o)
745
745
  try {
746
- if (!p) {
746
+ if (!c) {
747
747
  A();
748
748
  return;
749
749
  }
750
750
  const n = $(o);
751
- p.setOption(n, { notMerge: !0 }), r("chart-update", {
752
- instance: p,
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: (o) => p == null ? void 0 : p.dispatchAction(o),
761
+ dispatchAction: (o) => c == null ? void 0 : c.dispatchAction(o),
762
762
  dispose: C
763
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,7 +865,7 @@ 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));
@@ -875,17 +875,17 @@ const Nt = {
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
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();
883
+ n(), h();
884
884
  }, 100)) : o();
885
885
  }, { deep: !0 }), G(() => i.enableScroll, (a) => {
886
- a ? y() : (o(), r.value = 0);
886
+ a ? h() : (o(), r.value = 0);
887
887
  }), t({
888
- startScroll: y,
888
+ startScroll: h,
889
889
  stopScroll: o,
890
890
  getCurrentIndex: () => r.value,
891
891
  scrollTo: (a) => {
@@ -893,12 +893,12 @@ const Nt = {
893
893
  }
894
894
  }), (a, d) => (s(), u("div", {
895
895
  class: "h-list",
896
- style: c(f.value)
896
+ style: p(f.value)
897
897
  }, [
898
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
903
  (s(!0), u(O, null, D(e.header, (_, w) => (s(), u("p", {
904
904
  key: w,
@@ -908,17 +908,17 @@ const Nt = {
908
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
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
@@ -979,10 +979,22 @@ const Wt = {
979
979
  left: {
980
980
  type: String,
981
981
  default: "auto"
982
+ },
983
+ alignItems: {
984
+ type: String,
985
+ default: "center"
986
+ },
987
+ justifyContent: {
988
+ type: String,
989
+ default: "start"
990
+ },
991
+ padding: {
992
+ type: String,
993
+ default: "0"
982
994
  }
983
995
  },
984
996
  setup(e) {
985
- let t = e, i = h(() => ({
997
+ let t = e, i = y(() => ({
986
998
  width: t.width,
987
999
  height: t.height,
988
1000
  display: t.display,
@@ -992,16 +1004,19 @@ const Wt = {
992
1004
  flex: t.flex,
993
1005
  position: t.position,
994
1006
  top: t.top,
995
- left: t.left
1007
+ left: t.left,
1008
+ alignItems: t.alignItems,
1009
+ justifyContent: t.justifyContent,
1010
+ padding: t.padding
996
1011
  }));
997
1012
  return (r, l) => (s(), u("div", {
998
1013
  class: "h-view",
999
- style: c(g(i))
1014
+ style: p(g(i))
1000
1015
  }, [
1001
1016
  b(r.$slots, "default", {}, void 0, !0)
1002
1017
  ], 4));
1003
1018
  }
1004
- }), J = /* @__PURE__ */ m(Bt, [["__scopeId", "data-v-2b1c3083"]]);
1019
+ }), J = /* @__PURE__ */ m(Bt, [["__scopeId", "data-v-5d1b329e"]]);
1005
1020
  J.install = (e) => {
1006
1021
  e.component(J.name, J);
1007
1022
  };
@@ -1170,24 +1185,24 @@ const Ft = {
1170
1185
  lineHeight: t.titlelineHeight,
1171
1186
  textAlign: t.titletextAlign
1172
1187
  });
1173
- return (x, p) => (s(), u("div", {
1188
+ return (x, c) => (s(), u("div", {
1174
1189
  class: "h-data-label",
1175
- style: c(g(i))
1190
+ style: p(g(i))
1176
1191
  }, [
1177
1192
  e.show ? (s(), u("span", {
1178
1193
  key: 0,
1179
1194
  class: "h-data-label-num",
1180
- style: c(g(r))
1195
+ style: p(g(r))
1181
1196
  }, I(e.num), 5)) : j("", !0),
1182
1197
  e.show ? (s(), u("span", {
1183
1198
  key: 1,
1184
1199
  class: "h-data-label-text",
1185
- style: c(g(l))
1200
+ style: p(g(l))
1186
1201
  }, I(e.text), 5)) : j("", !0),
1187
1202
  e.titleShow ? (s(), u("span", {
1188
1203
  key: 2,
1189
1204
  class: "h-data-label-title",
1190
- style: c(g(S))
1205
+ style: p(g(S))
1191
1206
  }, I(e.someText), 5)) : j("", !0)
1192
1207
  ], 4));
1193
1208
  }
@@ -1250,7 +1265,7 @@ const Lt = {
1250
1265
  });
1251
1266
  return (r, l) => (s(), u("button", {
1252
1267
  class: "h-button",
1253
- style: c(g(i))
1268
+ style: p(g(i))
1254
1269
  }, I(g(t).text), 5));
1255
1270
  }
1256
1271
  }), U = /* @__PURE__ */ m(Et, [["__scopeId", "data-v-0a183c56"]]);
@@ -1316,12 +1331,12 @@ const Rt = {
1316
1331
  });
1317
1332
  return (l, S) => (s(), u("div", {
1318
1333
  class: "h-grid",
1319
- style: c(g(i))
1334
+ style: p(g(i))
1320
1335
  }, [
1321
1336
  (s(), u(O, null, D(6, (x) => z("div", {
1322
1337
  key: x,
1323
1338
  class: "h-grid-item",
1324
- style: c(g(r))
1339
+ style: p(g(r))
1325
1340
  }, S[0] || (S[0] = [
1326
1341
  z("div", { class: "h-grid-item-left" }, [
1327
1342
  z("img", {
@@ -1482,23 +1497,23 @@ const Pt = {
1482
1497
  }
1483
1498
  },
1484
1499
  setup(e, { expose: t }) {
1485
- const i = e, r = v([]), l = v(!1), S = h(() => {
1486
- let y = i.data;
1487
- i.decimalPlaces >= 0 && typeof y == "number" && (y = y.toFixed(i.decimalPlaces));
1488
- let o = String(y);
1500
+ const i = e, r = v([]), l = v(!1), S = y(() => {
1501
+ let h = i.data;
1502
+ i.decimalPlaces >= 0 && typeof h == "number" && (h = h.toFixed(i.decimalPlaces));
1503
+ let o = String(h);
1489
1504
  if (i.showSeparator && typeof i.data == "number") {
1490
1505
  const n = o.split(".");
1491
1506
  n[0] = n[0].replace(/\B(?=(\d{3})+(?!\d))/g, i.separator), o = n.join(".");
1492
1507
  }
1493
1508
  return i.prefix && (o = i.prefix + o), i.suffix && (o = o + i.suffix), o.split("");
1494
- }), 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 = () => {
1509
+ }), 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 = () => {
1495
1510
  if (!i.enableAnimation) {
1496
1511
  r.value = S.value.map(() => 0);
1497
1512
  return;
1498
1513
  }
1499
1514
  l.value = !0, r.value = S.value.map(() => 0);
1500
- const y = S.value;
1501
- y.forEach((o, n) => {
1515
+ const h = S.value;
1516
+ h.forEach((o, n) => {
1502
1517
  if (isNaN(parseInt(o))) {
1503
1518
  r.value[n] = o;
1504
1519
  return;
@@ -1507,24 +1522,24 @@ const Pt = {
1507
1522
  setTimeout(() => {
1508
1523
  let w = 0;
1509
1524
  const nt = _ / (a + 1), N = () => {
1510
- w <= a && (r.value[n] = w, w++, w <= a ? setTimeout(N, nt) : (n === y.length - 1 || y.slice(n + 1).every((st) => isNaN(parseInt(st)))) && (l.value = !1));
1525
+ 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));
1511
1526
  };
1512
1527
  N();
1513
1528
  }, d);
1514
1529
  });
1515
- }, k = (y) => {
1516
- const o = r.value[y];
1530
+ }, k = (h) => {
1531
+ const o = r.value[h];
1517
1532
  if (isNaN(parseInt(o)))
1518
1533
  return {
1519
1534
  transform: "translateY(0)",
1520
1535
  transition: "none"
1521
1536
  };
1522
- const n = parseInt(p.value) || 60;
1537
+ const n = parseInt(c.value) || 60;
1523
1538
  return {
1524
1539
  transform: `translateY(${-parseInt(o) * n}px)`,
1525
1540
  transition: `transform ${i.animationDuration}ms cubic-bezier(0.25, 0.46, 0.45, 0.94)`
1526
1541
  };
1527
- }, C = h(() => ({
1542
+ }, C = y(() => ({
1528
1543
  width: i.width,
1529
1544
  height: i.height,
1530
1545
  backgroundColor: i.backgroundColor,
@@ -1540,16 +1555,16 @@ const Pt = {
1540
1555
  bottom: i.bottom || void 0,
1541
1556
  zIndex: i.zIndex,
1542
1557
  transform: i.transform || void 0
1543
- })), A = h(() => ({
1558
+ })), A = y(() => ({
1544
1559
  width: x.value,
1545
- height: p.value,
1560
+ height: c.value,
1546
1561
  overflow: "hidden",
1547
1562
  position: "relative",
1548
1563
  borderRadius: i.digitBorderRadius,
1549
1564
  backgroundColor: i.digitBackgroundColor
1550
- })), $ = h(() => ({
1565
+ })), $ = y(() => ({
1551
1566
  width: "100%",
1552
- height: p.value,
1567
+ height: c.value,
1553
1568
  color: i.digitColor,
1554
1569
  fontSize: i.digitFontSize,
1555
1570
  fontWeight: i.digitFontWeight,
@@ -1567,27 +1582,27 @@ const Pt = {
1567
1582
  }), t({
1568
1583
  restart: f,
1569
1584
  getCurrentValue: () => r.value.join("")
1570
- }), (y, o) => (s(), u("div", {
1585
+ }), (h, o) => (s(), u("div", {
1571
1586
  class: "h-counter",
1572
- style: c(C.value)
1587
+ style: p(C.value)
1573
1588
  }, [
1574
1589
  (s(!0), u(O, null, D(S.value, (n, a) => (s(), u("div", {
1575
1590
  key: a,
1576
1591
  class: "counter-digit",
1577
- style: c(A.value)
1592
+ style: p(A.value)
1578
1593
  }, [
1579
1594
  z("div", {
1580
1595
  class: "digit-scroll",
1581
- style: c(k(a))
1596
+ style: p(k(a))
1582
1597
  }, [
1583
1598
  (s(), u(O, null, D(10, (d) => z("div", {
1584
1599
  key: d - 1,
1585
1600
  class: "digit-item",
1586
- style: c($.value)
1601
+ style: p($.value)
1587
1602
  }, I(d - 1), 5)), 64))
1588
1603
  ], 4)
1589
1604
  ], 4))), 128)),
1590
- b(y.$slots, "default", {}, void 0, !0)
1605
+ b(h.$slots, "default", {}, void 0, !0)
1591
1606
  ], 4));
1592
1607
  }
1593
1608
  }), Q = /* @__PURE__ */ m(Vt, [["__scopeId", "data-v-fba32a26"]]);
@@ -1658,7 +1673,7 @@ const Yt = {
1658
1673
  });
1659
1674
  return (r, l) => (s(), u("div", {
1660
1675
  class: "h-button-group",
1661
- style: c(g(i))
1676
+ style: p(g(i))
1662
1677
  }, [
1663
1678
  b(r.$slots, "default", {}, void 0, !0)
1664
1679
  ], 4));
@@ -1667,11 +1682,11 @@ const Yt = {
1667
1682
  X.install = (e) => {
1668
1683
  e.component(X.name, X);
1669
1684
  };
1670
- const qt = { class: "h-text" }, Ut = {
1685
+ const qt = {
1671
1686
  name: "hText",
1672
1687
  chineseName: "文本",
1673
1688
  description: "用于显示文本内容"
1674
- }, Kt = /* @__PURE__ */ Object.assign(Ut, {
1689
+ }, Ut = /* @__PURE__ */ Object.assign(qt, {
1675
1690
  props: {
1676
1691
  text: {
1677
1692
  type: String,
@@ -1687,18 +1702,24 @@ const qt = { class: "h-text" }, Ut = {
1687
1702
  }
1688
1703
  },
1689
1704
  setup(e) {
1690
- let t = e;
1691
- return (i, r) => (s(), u("span", qt, I(g(t).text), 1));
1705
+ let t = e, i = y(() => ({
1706
+ fontSize: t.fontSize,
1707
+ color: t.color
1708
+ }));
1709
+ return (r, l) => (s(), u("span", {
1710
+ class: "h-text",
1711
+ style: p(g(i))
1712
+ }, I(g(t).text), 5));
1692
1713
  }
1693
- }), Z = /* @__PURE__ */ m(Kt, [["__scopeId", "data-v-bc52bf83"]]);
1714
+ }), Z = /* @__PURE__ */ m(Ut, [["__scopeId", "data-v-7fb2fc92"]]);
1694
1715
  Z.install = (e) => {
1695
1716
  e.component(Z.name, Z);
1696
1717
  };
1697
- const Qt = {
1718
+ const Kt = {
1698
1719
  name: "hLayout",
1699
1720
  chineseName: "布局",
1700
1721
  description: "页面布局容器"
1701
- }, Xt = /* @__PURE__ */ Object.assign(Qt, {
1722
+ }, Qt = /* @__PURE__ */ Object.assign(Kt, {
1702
1723
  props: {
1703
1724
  width: {
1704
1725
  type: String,
@@ -1726,7 +1747,7 @@ const Qt = {
1726
1747
  }
1727
1748
  },
1728
1749
  setup(e) {
1729
- let t = e, i = h(() => ({
1750
+ let t = e, i = y(() => ({
1730
1751
  width: t.width,
1731
1752
  height: t.height,
1732
1753
  display: t.display,
@@ -1736,18 +1757,18 @@ const Qt = {
1736
1757
  }));
1737
1758
  return (r, l) => (s(), u("div", {
1738
1759
  class: "h-layout",
1739
- style: c(g(i))
1760
+ style: p(g(i))
1740
1761
  }, [
1741
1762
  b(r.$slots, "default", {}, void 0, !0)
1742
1763
  ], 4));
1743
1764
  }
1744
- }), tt = /* @__PURE__ */ m(Xt, [["__scopeId", "data-v-957ea318"]]);
1765
+ }), tt = /* @__PURE__ */ m(Qt, [["__scopeId", "data-v-957ea318"]]);
1745
1766
  tt.install = (e) => {
1746
1767
  e.component(tt.name, tt);
1747
1768
  };
1748
- const Zt = {
1769
+ const Xt = {
1749
1770
  name: "hFlex"
1750
- }, te = /* @__PURE__ */ Object.assign(Zt, {
1771
+ }, Zt = /* @__PURE__ */ Object.assign(Xt, {
1751
1772
  props: {
1752
1773
  width: {
1753
1774
  type: String,
@@ -1783,7 +1804,7 @@ const Zt = {
1783
1804
  }
1784
1805
  },
1785
1806
  setup(e) {
1786
- let t = e, i = h(() => ({
1807
+ let t = e, i = y(() => ({
1787
1808
  display: t.display,
1788
1809
  width: t.width,
1789
1810
  height: t.height,
@@ -1795,22 +1816,22 @@ const Zt = {
1795
1816
  }));
1796
1817
  return (r, l) => (s(), u("div", {
1797
1818
  class: "h-flex",
1798
- style: c(g(i))
1819
+ style: p(g(i))
1799
1820
  }, [
1800
1821
  b(r.$slots, "default", {}, void 0, !0)
1801
1822
  ], 4));
1802
1823
  }
1803
- }), et = /* @__PURE__ */ m(te, [["__scopeId", "data-v-c8c463ea"]]);
1824
+ }), et = /* @__PURE__ */ m(Zt, [["__scopeId", "data-v-c8c463ea"]]);
1804
1825
  et.install = (e) => {
1805
1826
  e.component(et.name, et);
1806
1827
  };
1807
- const ee = (e) => {
1828
+ const te = (e) => {
1808
1829
  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);
1809
- }, ae = {
1810
- install: ee
1830
+ }, ne = {
1831
+ install: te
1811
1832
  };
1812
1833
  export {
1813
- ae as default,
1834
+ ne as default,
1814
1835
  M as hBottom,
1815
1836
  U as hButton,
1816
1837
  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),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"}},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}));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-2b1c3083"]]);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(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(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 X={class:"h-text"},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;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=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 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},w=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"]]);w.install=n=>{n.component(w.name,w)};const $=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"]]);$.install=n=>{n.component($.name,$)};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"}},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=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(w),n.use($),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=$,f.hItemChart=O,f.hLayout=R,f.hLeft=A,f.hList=D,f.hMain=B,f.hPanel=w,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.4.9",
4
+ "version": "0.5.1",
5
5
  "description": "HamsterCharts-更新了-修复了一些东西",
6
6
  "type": "module",
7
7
  "main": "./dist/hamster-charts.umd.cjs",