vue-data-ui 3.1.1 → 3.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/{Arrow-xQM7mBzd.js → Arrow-DBaAWGvq.js} +1 -1
  2. package/dist/{BaseDraggableDialog-B2BQC0-h.js → BaseDraggableDialog-BmN9jTP8.js} +2 -2
  3. package/dist/{BaseIcon-DLesaZpW.js → BaseIcon-BcOSijbz.js} +5 -3
  4. package/dist/{ColorPicker-BKvJvFtX.js → ColorPicker-D1yNPt76.js} +2 -2
  5. package/dist/{DataTable-BAf4Obr9.js → DataTable-Cm8Tt9PQ.js} +2 -2
  6. package/dist/Legend-5qvgVkrY.js +85 -0
  7. package/dist/{NonSvgPenAndPaper-Cq4fHmA0.js → NonSvgPenAndPaper-D3QGd7vP.js} +3 -3
  8. package/dist/{PackageVersion-Cv_ypT0N.js → PackageVersion-0XlRFsI_.js} +1 -1
  9. package/dist/{PenAndPaper-B6OvfyHH.js → PenAndPaper-CyH7Ip2i.js} +3 -3
  10. package/dist/{Shape-Cjca5zta.js → Shape-DiplSMFy.js} +1 -1
  11. package/dist/{Slicer-6w3K8gAc.js → Slicer-DG99wPTy.js} +11 -9
  12. package/dist/{SparkTooltip-BV4Z-NMp.js → SparkTooltip-VveQSwlw.js} +1 -1
  13. package/dist/Title-CqYBs02Y.js +88 -0
  14. package/dist/{Tooltip-BTGOEC7w.js → Tooltip-CP0tVHAf.js} +1 -1
  15. package/dist/{UserOptions-CsDlFB0L.js → UserOptions-ZmwlARCV.js} +125 -108
  16. package/dist/{dom-to-png-BOu5-Ohz.js → dom-to-png-DGA4a3xT.js} +1 -1
  17. package/dist/{img-gBDz7xQQ.js → img-DSrvx9J6.js} +1 -1
  18. package/dist/{index-BKQqb9lF.js → index-CaxArMHL.js} +97 -74
  19. package/dist/pdf-BG8PiGFH.js +79 -0
  20. package/dist/style.css +1 -1
  21. package/dist/types/vue-data-ui.d.cts +28 -3
  22. package/dist/types/vue-data-ui.d.ts +28 -3
  23. package/dist/{useAutoSizeLabelsInsideViewbox-IO2dh0Uq.js → useAutoSizeLabelsInsideViewbox-DmtFf4bt.js} +1 -1
  24. package/dist/{useNestedProp-aBOhgs4U.js → useNestedProp-tWT02_6S.js} +1 -1
  25. package/dist/{usePrinter-BzuXiubT.js → usePrinter-BYtPmEo8.js} +13 -12
  26. package/dist/{vue-data-ui-B6eM6hF3.js → vue-data-ui-DVb8r5z7.js} +64 -64
  27. package/dist/vue-data-ui.js +1 -1
  28. package/dist/{vue-ui-3d-bar-DBeWmnvH.js → vue-ui-3d-bar-BLKyWpz7.js} +371 -366
  29. package/dist/{vue-ui-accordion-B5QeV3BK.js → vue-ui-accordion-DUlNpLir.js} +3 -3
  30. package/dist/{vue-ui-age-pyramid-rZFdUsgz.js → vue-ui-age-pyramid-LLqbXP1m.js} +200 -195
  31. package/dist/{vue-ui-annotator-CCCuslrT.js → vue-ui-annotator-CcYIlcKF.js} +2 -2
  32. package/dist/{vue-ui-bullet-DhJf9mvK.js → vue-ui-bullet-BKmts_u4.js} +7 -7
  33. package/dist/{vue-ui-candlestick-CGVtDKqZ.js → vue-ui-candlestick-C9l_NpXu.js} +225 -220
  34. package/dist/{vue-ui-carousel-table-DLAR3WY8.js → vue-ui-carousel-table-H7xS6aBC.js} +4 -4
  35. package/dist/{vue-ui-chestnut-BXnSxoXB.js → vue-ui-chestnut-CAW0IOdY.js} +344 -340
  36. package/dist/{vue-ui-chord-DH_MwAKX.js → vue-ui-chord-CK5YhCqM.js} +272 -266
  37. package/dist/{vue-ui-circle-pack-Cx_E1R63.js → vue-ui-circle-pack-NLyZgTGF.js} +6 -6
  38. package/dist/{vue-ui-cursor-CEvH1qDS.js → vue-ui-cursor-CyGUrKWU.js} +2 -2
  39. package/dist/vue-ui-dashboard-Cf5pvEzD.js +412 -0
  40. package/dist/{vue-ui-digits-PTozKs3l.js → vue-ui-digits-BZWwwp7c.js} +2 -2
  41. package/dist/{vue-ui-donut-evolution-DD7o-CxF.js → vue-ui-donut-evolution-CaEYMVZj.js} +310 -304
  42. package/dist/{vue-ui-donut-CsEtKJJD.js → vue-ui-donut-g1WHrj6G.js} +348 -343
  43. package/dist/{vue-ui-dumbbell-DfPYl3fu.js → vue-ui-dumbbell-BArS1nXS.js} +293 -287
  44. package/dist/{vue-ui-flow-CSTTZHwg.js → vue-ui-flow-BR0CB5qt.js} +263 -257
  45. package/dist/{vue-ui-funnel-C-NUZqIo.js → vue-ui-funnel-D2OCItvq.js} +206 -200
  46. package/dist/{vue-ui-galaxy-BwsZnU6T.js → vue-ui-galaxy-qgGF1AAf.js} +243 -238
  47. package/dist/{vue-ui-gauge-D9MUneq0.js → vue-ui-gauge-BIXmGyQL.js} +7 -7
  48. package/dist/{vue-ui-gizmo-Dnzs9wSf.js → vue-ui-gizmo-DHEoS051.js} +3 -3
  49. package/dist/{vue-ui-heatmap-CYaQIhy8.js → vue-ui-heatmap-tRzq9BnI.js} +405 -401
  50. package/dist/{vue-ui-history-plot-DMTFzl-_.js → vue-ui-history-plot-DmwHhrDk.js} +305 -299
  51. package/dist/{vue-ui-kpi-CkPotdff.js → vue-ui-kpi-C2b2R5i1.js} +3 -3
  52. package/dist/{vue-ui-mini-loader-CCE-bDOJ.js → vue-ui-mini-loader-Bs1Mi1tD.js} +2 -2
  53. package/dist/{vue-ui-molecule-DaN5lroq.js → vue-ui-molecule-BsUvf2v7.js} +188 -183
  54. package/dist/{vue-ui-mood-radar-tM0mmZh8.js → vue-ui-mood-radar-D3JIpVvX.js} +197 -192
  55. package/dist/{vue-ui-nested-donuts-RB4r6beI.js → vue-ui-nested-donuts-dJEgQXTH.js} +326 -320
  56. package/dist/{vue-ui-onion-CxDozHg3.js → vue-ui-onion-D8dF1DdA.js} +8 -8
  57. package/dist/{vue-ui-parallel-coordinate-plot-CK9nNExU.js → vue-ui-parallel-coordinate-plot-LmFsg7UA.js} +401 -395
  58. package/dist/{vue-ui-quadrant-C7tLJYn7.js → vue-ui-quadrant-C4O8ki4N.js} +339 -334
  59. package/dist/{vue-ui-quick-chart-MUBAkrHb.js → vue-ui-quick-chart-6bEtTQBG.js} +6 -6
  60. package/dist/{vue-ui-radar-Br4K80I9.js → vue-ui-radar-CfjGWGk3.js} +248 -243
  61. package/dist/{vue-ui-rating-NtvT9r_M.js → vue-ui-rating-D3WSs2OD.js} +2 -2
  62. package/dist/{vue-ui-relation-circle-CPQjAy1g.js → vue-ui-relation-circle-DzTfi7Tf.js} +7 -7
  63. package/dist/{vue-ui-ridgeline-C2M_Cjlh.js → vue-ui-ridgeline-NtYOJvDy.js} +267 -263
  64. package/dist/{vue-ui-rings-DEru-cWN.js → vue-ui-rings-CYQ4i71V.js} +229 -224
  65. package/dist/{vue-ui-scatter-CJKkiKle.js → vue-ui-scatter-meJEHdAD.js} +359 -354
  66. package/dist/{vue-ui-skeleton--twnjS2t.js → vue-ui-skeleton-BtILTxx-.js} +3 -3
  67. package/dist/{vue-ui-smiley-CNccdPZ7.js → vue-ui-smiley-B5bELpYD.js} +2 -2
  68. package/dist/{vue-ui-spark-trend-9BFkkC0u.js → vue-ui-spark-trend-lixdWq_N.js} +3 -3
  69. package/dist/{vue-ui-sparkbar-RYAThoA4.js → vue-ui-sparkbar-CaGPav-J.js} +3 -3
  70. package/dist/{vue-ui-sparkgauge-DkPlmgMF.js → vue-ui-sparkgauge-BZBGYDjs.js} +3 -3
  71. package/dist/{vue-ui-sparkhistogram-6EkCyYRF.js → vue-ui-sparkhistogram-Bp6KxpjH.js} +4 -4
  72. package/dist/{vue-ui-sparkline-Bl3nj8zd.js → vue-ui-sparkline-CF-EAZa6.js} +3 -3
  73. package/dist/{vue-ui-sparkstackbar-B88lA7iy.js → vue-ui-sparkstackbar-Cj1LAYC8.js} +3 -3
  74. package/dist/{vue-ui-stackbar-Csj7NhT6.js → vue-ui-stackbar-BrzKhqAK.js} +310 -304
  75. package/dist/{vue-ui-strip-plot-yY9NsUUI.js → vue-ui-strip-plot-BfVVaSFn.js} +246 -240
  76. package/dist/{vue-ui-table-Dg6U31ex.js → vue-ui-table-CBzNgzVP.js} +3 -3
  77. package/dist/{vue-ui-table-heatmap-BWU7CAWP.js → vue-ui-table-heatmap-CKz5bA7N.js} +5 -5
  78. package/dist/{vue-ui-table-sparkline-DV4Y9aRL.js → vue-ui-table-sparkline-O-Z0YH6u.js} +4 -4
  79. package/dist/{vue-ui-thermometer-C3fKamV-.js → vue-ui-thermometer-DpNyTGNH.js} +7 -7
  80. package/dist/{vue-ui-timer-6VAK9XyF.js → vue-ui-timer-uvshaRMI.js} +5 -5
  81. package/dist/{vue-ui-tiremarks-BB-KAkF7.js → vue-ui-tiremarks-A8Akuz-q.js} +6 -6
  82. package/dist/{vue-ui-treemap-GrXkD_3Z.js → vue-ui-treemap-Dvmuo3tM.js} +262 -256
  83. package/dist/{vue-ui-vertical-bar-Mmz6u4aX.js → vue-ui-vertical-bar-eMgRMSKN.js} +310 -306
  84. package/dist/{vue-ui-waffle-DzPVRUOA.js → vue-ui-waffle-Cm8VfnG8.js} +257 -252
  85. package/dist/{vue-ui-wheel-idRCvS5t.js → vue-ui-wheel-Bhsklf_m.js} +6 -6
  86. package/dist/vue-ui-word-cloud-C9HGLsG4.js +817 -0
  87. package/dist/{vue-ui-world-D6s5Eph8.js → vue-ui-world-B_MrjwGJ.js} +257 -252
  88. package/dist/{vue-ui-xy-BKTGSvfU.js → vue-ui-xy-DnYJw2aS.js} +1448 -1438
  89. package/dist/{vue-ui-xy-canvas-BOQyxVRl.js → vue-ui-xy-canvas-C0Snw0Dz.js} +235 -229
  90. package/package.json +1 -1
  91. package/dist/Legend-8_V5egWW.js +0 -72
  92. package/dist/Title-Dz-j6ERs.js +0 -61
  93. package/dist/pdf-Cjsn5GEE.js +0 -61
  94. package/dist/vue-ui-dashboard-CvduVgEy.js +0 -325
  95. package/dist/vue-ui-word-cloud-B2641uNP.js +0 -811
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vue-data-ui",
3
3
  "private": false,
4
- "version": "3.1.1",
4
+ "version": "3.1.3",
5
5
  "type": "module",
6
6
  "description": "A user-empowering data visualization Vue 3 components library for eloquent data storytelling",
7
7
  "keywords": [
@@ -1,72 +0,0 @@
1
- import { createElementBlock as n, openBlock as a, normalizeStyle as c, renderSlot as r, Fragment as u, renderList as m, normalizeClass as g, createCommentVNode as h, createVNode as k, mergeProps as p, unref as y } from "vue";
2
- import { a2 as $ } from "./index-BKQqb9lF.js";
3
- import { _ as v } from "./Shape-Cjca5zta.js";
4
- import { _ as x } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
- const S = ["id"], b = ["onClick", "height", "width", "viewBox"], w = {
6
- __name: "Legend",
7
- props: {
8
- legendSet: {
9
- type: Array,
10
- default() {
11
- return [];
12
- }
13
- },
14
- config: {
15
- type: Object,
16
- default() {
17
- return {};
18
- }
19
- },
20
- id: {
21
- type: String,
22
- default: ""
23
- },
24
- clickable: {
25
- type: Boolean,
26
- default: !0
27
- }
28
- },
29
- emits: ["clickMarker"],
30
- setup(e, { emit: d }) {
31
- const s = d;
32
- function f(i, l) {
33
- s("clickMarker", { legend: i, i: l });
34
- }
35
- return (i, l) => (a(), n("div", {
36
- id: e.id,
37
- class: "vue-data-ui-legend",
38
- style: c(`background:${e.config.backgroundColor};font-size:${e.config.fontSize}px;color:${e.config.color};padding-bottom:${e.config.paddingBottom}px;padding-top:${e.config.paddingTop || 12}px;font-weight:${e.config.fontWeight}`)
39
- }, [
40
- r(i.$slots, "legendTitle", { titleSet: e.legendSet }, void 0, !0),
41
- (a(!0), n(u, null, m(e.legendSet, (t, o) => (a(), n("div", {
42
- key: `legend_${o}`,
43
- class: g({ "vue-data-ui-legend-item": !0, active: e.clickable })
44
- }, [
45
- t.shape ? (a(), n("svg", {
46
- key: 0,
47
- onClick: (z) => f(t, o),
48
- height: e.config.fontSize,
49
- width: e.config.fontSize,
50
- viewBox: t.shape && t.shape === "star" ? "-10 -10 80 80" : "0 0 60 60",
51
- style: c(`overflow: visible;opacity:${t.opacity}`)
52
- }, [
53
- k(v, {
54
- shape: t.shape,
55
- radius: 30,
56
- stroke: "none",
57
- plot: { x: 30, y: t.shape === "triangle" ? 36 : 30 },
58
- fill: t.color
59
- }, null, 8, ["shape", "plot", "fill"]),
60
- r(i.$slots, "legend-pattern", p({ ref_for: !0 }, { legend: t, index: y($)(t.absoluteIndex) ? t.absoluteIndex : o }), void 0, !0)
61
- ], 12, b)) : h("", !0),
62
- r(i.$slots, "item", {
63
- legend: t,
64
- index: o
65
- }, void 0, !0)
66
- ], 2))), 128))
67
- ], 12, S));
68
- }
69
- }, L = /* @__PURE__ */ x(w, [["__scopeId", "data-v-f102edfc"]]);
70
- export {
71
- L as default
72
- };
@@ -1,61 +0,0 @@
1
- import { createElementBlock as l, openBlock as n, Fragment as f, createElementVNode as p, createCommentVNode as o, normalizeStyle as d, unref as e, toDisplayString as g, renderSlot as r } from "vue";
2
- import { u as c } from "./useNestedProp-aBOhgs4U.js";
3
- const x = {
4
- __name: "Title",
5
- props: {
6
- config: {
7
- type: Object,
8
- default() {
9
- return {};
10
- }
11
- },
12
- lineHeight: {
13
- type: [String, Boolean],
14
- default: !1
15
- }
16
- },
17
- setup(i) {
18
- const t = c({
19
- userConfig: i.config,
20
- defaultConfig: {
21
- title: {
22
- cy: "",
23
- text: "",
24
- color: "",
25
- fontSize: 20,
26
- bold: !0,
27
- textAlign: "center",
28
- paddingLeft: 0,
29
- paddingRight: 0
30
- },
31
- subtitle: {
32
- cy: "",
33
- text: "",
34
- color: "",
35
- fontSize: 14,
36
- bold: !1
37
- }
38
- }
39
- });
40
- return (a, h) => (n(), l(f, null, [
41
- p("div", {
42
- class: "atom-title",
43
- style: d(`width: calc(100% - ${e(t).title.paddingLeft + e(t).title.paddingRight}px); text-align:${e(t).title.textAlign};color:${e(t).title.color};font-size:${e(t).title.fontSize}px;font-weight:${e(t).title.bold ? "bold" : ""};padding-left:${e(t).title.paddingLeft}px;padding-right:${e(t).title.paddingRight}px;${i.lineHeight ? `line-height:${i.lineHeight}` : ""}`)
44
- }, g(e(t).title.text), 5),
45
- e(t).subtitle.text ? (n(), l("div", {
46
- key: 0,
47
- class: "atom-subtitle",
48
- style: d(`width: calc(100% - ${e(t).title.paddingLeft + e(t).title.paddingRight}px); text-align:${e(t).title.textAlign};color:${e(t).subtitle.color};font-size:${e(t).subtitle.fontSize}px;font-weight:${e(t).subtitle.bold ? "bold" : ""};padding-left:${e(t).title.paddingLeft}px;padding-right:${e(t).title.paddingRight}px;${i.lineHeight ? `line-height:${i.lineHeight}` : ""}`)
49
- }, g(e(t).subtitle.text), 5)) : o("", !0),
50
- e(t).subtitle.text ? (n(), l("div", {
51
- key: 1,
52
- style: d(`width: calc(100% - ${e(t).title.paddingLeft + e(t).title.paddingRight}px); text-align:${e(t).title.textAlign};color:${e(t).subtitle.color};font-size:${e(t).subtitle.fontSize}px;font-weight:${e(t).subtitle.bold ? "bold" : ""};padding-left:${e(t).title.paddingLeft}px;padding-right:${e(t).title.paddingRight}px;${i.lineHeight ? `line-height:${i.lineHeight}` : ""}`)
53
- }, [
54
- r(a.$slots, "default")
55
- ], 4)) : o("", !0)
56
- ], 64));
57
- }
58
- };
59
- export {
60
- x as default
61
- };
@@ -1,61 +0,0 @@
1
- import { d as r } from "./dom-to-png-BOu5-Ohz.js";
2
- async function x({
3
- domElement: i,
4
- fileName: y,
5
- scale: a = 2,
6
- orientation: P = "auto",
7
- // 'auto' | 'portrait' | 'landscape'
8
- overflowTolerance: F = 0.2
9
- // up to +n% height overflow gets squeezed onto 1 page
10
- }) {
11
- if (!i) return Promise.reject("No domElement provided");
12
- const W = typeof navigator < "u" && /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
13
- let p;
14
- try {
15
- p = (await import("jspdf")).default;
16
- } catch {
17
- return Promise.reject("jspdf is not installed. Run npm install jspdf");
18
- }
19
- const j = { width: 595.28, height: 841.89 }, v = { width: 841.89, height: 595.28 };
20
- if (W)
21
- try {
22
- await r({ container: i, scale: a }), await r({ container: i, scale: a }), await r({ container: i, scale: a }), await r({ container: i, scale: a });
23
- } catch {
24
- }
25
- const c = await r({ container: i, scale: a });
26
- return await new Promise((d, D) => {
27
- const e = new window.Image();
28
- e.onload = function() {
29
- const g = e.naturalWidth, o = e.naturalHeight, A = P === "auto" ? o >= g ? "p" : "l" : P, t = A === "l" ? v : j, s = t.width / g, N = t.height / o, S = o * s;
30
- let H = "single", n;
31
- S <= t.height + 0.5 ? n = s : S <= t.height * (1 + F) ? n = Math.min(s, N) : (H = "multi", n = s);
32
- const f = g * n, l = o * n, T = (t.width - f) / 2, h = new p({
33
- orientation: A,
34
- unit: "pt",
35
- format: "a4"
36
- });
37
- if (H === "single") {
38
- const w = (t.height - l) / 2;
39
- h.addImage(c, "PNG", T, w, f, l, "", "FAST");
40
- } else {
41
- const w = t.height / n;
42
- let u = o, I = 0;
43
- for (; u > 0.5; )
44
- h.addImage(
45
- c,
46
- "PNG",
47
- T,
48
- I,
49
- f,
50
- l,
51
- "",
52
- "FAST"
53
- ), u -= w, I -= t.height, u > 0.5 && h.addPage();
54
- }
55
- h.save(`${y}.pdf`), d();
56
- }, e.onerror = (m) => D("Failed to load image for PDF: " + m), e.src = c;
57
- });
58
- }
59
- export {
60
- x as default
61
- };
@@ -1,325 +0,0 @@
1
- import { useCssVars as ae, computed as V, defineAsyncComponent as o, ref as r, watch as ie, createElementBlock as y, openBlock as g, createCommentVNode as N, createElementVNode as b, normalizeStyle as S, createStaticVNode as ne, Fragment as W, renderList as le, normalizeClass as re, renderSlot as z, createBlock as se, resolveDynamicComponent as de, mergeProps as ce } from "vue";
2
- import he from "./pdf-Cjsn5GEE.js";
3
- import { u as ve } from "./useNestedProp-aBOhgs4U.js";
4
- import { u as pe, c as fe } from "./index-BKQqb9lF.js";
5
- import { _ as me } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
- const ge = {
7
- key: 0,
8
- "data-dom-to-png-ignore": "",
9
- style: { width: "100%", display: "flex", "justify-content": "end" }
10
- }, be = ["disabled"], Ue = ["stroke"], Ve = { key: 1 }, ye = ["id"], we = ["onMousedown", "onTouchstart"], ke = ["onMousedown", "onTouchstart"], Te = ["onMousedown", "onTouchstart"], Me = ["onMousedown", "onTouchstart"], Ce = ["onMousedown", "onTouchstart"], $ = 1, _e = {
11
- __name: "vue-ui-dashboard",
12
- props: {
13
- dataset: Array,
14
- config: Object
15
- },
16
- emits: ["change"],
17
- setup(R, { expose: B, emit: E }) {
18
- ae((e) => ({
19
- "56f02d00": J.value,
20
- "2fbe8dda": Z.value
21
- }));
22
- const L = {
23
- VueDataUi: o(() => import("./vue-data-ui-B6eM6hF3.js")),
24
- VueUi3dBar: o(() => import("./vue-ui-3d-bar-DBeWmnvH.js")),
25
- VueUiAccordion: o(() => import("./vue-ui-accordion-B5QeV3BK.js")),
26
- VueUiAgePyramid: o(() => import("./vue-ui-age-pyramid-rZFdUsgz.js")),
27
- VueUiAnnotator: o(() => import("./vue-ui-annotator-CCCuslrT.js")),
28
- VueUiCandlestick: o(() => import("./vue-ui-candlestick-CGVtDKqZ.js")),
29
- VueUiChestnut: o(() => import("./vue-ui-chestnut-BXnSxoXB.js")),
30
- VueUiDigits: o(() => import("./vue-ui-digits-PTozKs3l.js")),
31
- VueUiDonut: o(() => import("./vue-ui-donut-CsEtKJJD.js")),
32
- VueUiDonutEvolution: o(() => import("./vue-ui-donut-evolution-DD7o-CxF.js")),
33
- VueUiDumbbell: o(() => import("./vue-ui-dumbbell-DfPYl3fu.js")),
34
- VueUiFlow: o(() => import("./vue-ui-flow-CSTTZHwg.js")),
35
- VueUiGalaxy: o(() => import("./vue-ui-galaxy-BwsZnU6T.js")),
36
- VueUiGauge: o(() => import("./vue-ui-gauge-D9MUneq0.js")),
37
- VueUiHeatmap: o(() => import("./vue-ui-heatmap-CYaQIhy8.js")),
38
- VueUiKpi: o(() => import("./vue-ui-kpi-CkPotdff.js")),
39
- VueUiMiniLoader: o(() => import("./vue-ui-mini-loader-CCE-bDOJ.js")),
40
- VueUiMolecule: o(() => import("./vue-ui-molecule-DaN5lroq.js")),
41
- VueUiMoodRadar: o(() => import("./vue-ui-mood-radar-tM0mmZh8.js")),
42
- VueUiNestedDonuts: o(() => import("./vue-ui-nested-donuts-RB4r6beI.js")),
43
- VueUiOnion: o(() => import("./vue-ui-onion-CxDozHg3.js")),
44
- VueUiParallelCoordinatePlot: o(() => import("./vue-ui-parallel-coordinate-plot-CK9nNExU.js")),
45
- VueUiQuadrant: o(() => import("./vue-ui-quadrant-C7tLJYn7.js")),
46
- VueUiQuickChart: o(() => import("./vue-ui-quick-chart-MUBAkrHb.js")),
47
- VueUiRadar: o(() => import("./vue-ui-radar-Br4K80I9.js")),
48
- VueUiRating: o(() => import("./vue-ui-rating-NtvT9r_M.js")),
49
- VueUiRelationCircle: o(() => import("./vue-ui-relation-circle-CPQjAy1g.js")),
50
- VueUiRings: o(() => import("./vue-ui-rings-DEru-cWN.js")),
51
- VueUiScatter: o(() => import("./vue-ui-scatter-CJKkiKle.js")),
52
- VueUiSkeleton: o(() => import("./vue-ui-skeleton--twnjS2t.js")),
53
- VueUiSmiley: o(() => import("./vue-ui-smiley-CNccdPZ7.js")),
54
- VueUiSparkHistogram: o(() => import("./vue-ui-sparkhistogram-6EkCyYRF.js")),
55
- VueUiSparkStackbar: o(() => import("./vue-ui-sparkstackbar-B88lA7iy.js")),
56
- VueUiSparkTrend: o(() => import("./vue-ui-spark-trend-9BFkkC0u.js")),
57
- VueUiSparkbar: o(() => import("./vue-ui-sparkbar-RYAThoA4.js")),
58
- VueUiSparkgauge: o(() => import("./vue-ui-sparkgauge-DkPlmgMF.js")),
59
- VueUiSparkline: o(() => import("./vue-ui-sparkline-Bl3nj8zd.js")),
60
- VueUiStripPlot: o(() => import("./vue-ui-strip-plot-yY9NsUUI.js")),
61
- VueUiTable: o(() => import("./vue-ui-table-Dg6U31ex.js")),
62
- VueUiTableHeatmap: o(() => import("./vue-ui-table-heatmap-BWU7CAWP.js")),
63
- VueUiTableSparkline: o(() => import("./vue-ui-table-sparkline-DV4Y9aRL.js")),
64
- VueUiThermometer: o(() => import("./vue-ui-thermometer-C3fKamV-.js")),
65
- VueUiTimer: o(() => import("./vue-ui-timer-6VAK9XyF.js")),
66
- VueUiTiremarks: o(() => import("./vue-ui-tiremarks-BB-KAkF7.js")),
67
- VueUiTreemap: o(() => import("./vue-ui-treemap-GrXkD_3Z.js")),
68
- VueUiVerticalBar: o(() => import("./vue-ui-vertical-bar-Mmz6u4aX.js")),
69
- VueUiWaffle: o(() => import("./vue-ui-waffle-DzPVRUOA.js")),
70
- VueUiWheel: o(() => import("./vue-ui-wheel-idRCvS5t.js")),
71
- VueUiWordCloud: o(() => import("./vue-ui-word-cloud-B2641uNP.js")),
72
- VueUiXy: o(() => import("./vue-ui-xy-BKTGSvfU.js")),
73
- VueUiXyCanvas: o(() => import("./vue-ui-xy-canvas-BOQyxVRl.js")),
74
- VueUiCarouselTable: o(() => import("./vue-ui-carousel-table-DLAR3WY8.js")),
75
- VueUiGizmo: o(() => import("./vue-ui-gizmo-Dnzs9wSf.js")),
76
- VueUiStackbar: o(() => import("./vue-ui-stackbar-Csj7NhT6.js")),
77
- VueUiBullet: o(() => import("./vue-ui-bullet-DhJf9mvK.js")),
78
- VueUiFunnel: o(() => import("./vue-ui-funnel-C-NUZqIo.js")),
79
- VueUiHistoryPlot: o(() => import("./vue-ui-history-plot-DMTFzl-_.js")),
80
- VueUiCirclePack: o(() => import("./vue-ui-circle-pack-Cx_E1R63.js")),
81
- VueUiWorld: o(() => import("./vue-ui-world-D6s5Eph8.js"))
82
- }, { vue_ui_dashboard: F } = pe(), D = R, s = V(() => ve({
83
- userConfig: D.config,
84
- defaultConfig: F
85
- })), P = r(fe()), h = r(s.value.locked);
86
- function A() {
87
- h.value = !h.value;
88
- }
89
- const l = r(D.dataset.map((e, t) => ({
90
- ...e,
91
- index: t
92
- }))), X = V(
93
- () => l.value.map((e) => ({
94
- ...e,
95
- resolvedComponent: typeof e.component == "string" ? L[e.component] : e.component
96
- }))
97
- ), v = r(null), n = r(null), p = r({ x: 0, y: 0 }), f = r({ x: 0, y: 0 }), d = r(null), c = r(!1), m = r(null), T = r(!1), w = r(!1);
98
- function x(e) {
99
- const t = e.target;
100
- (t.tagName === "INPUT" && t.type === "range" || t.classList.contains("range-handle")) && (w.value = !0);
101
- }
102
- function H(e) {
103
- const t = e.target;
104
- t.tagName === "INPUT" && t.type === "range" && (w.value = !1);
105
- }
106
- function I() {
107
- T.value = !0, he({
108
- domElement: document.getElementById(`vue-ui-dashboard_${P.value}`),
109
- fileName: "vue-ui-dashboard"
110
- }).finally(() => {
111
- T.value = !1;
112
- });
113
- }
114
- function G(e) {
115
- if (!h.value && (c.value = !0, m.value = e, n.value === null)) {
116
- v.value = e, p.value = { x: event.clientX, y: event.clientY };
117
- const t = l.value[e], a = 100 - t.width, u = 100 - t.height;
118
- t.left < 0 && (t.left = 0), t.top < 0 && (t.top = 0), t.left > a && (t.left = a), t.top > u && (t.top = u), t.left < 0 && (t.left = 0), t.top < 0 && (t.top = 0), t.left + t.width > 100 && (t.left = 100 - t.width), t.top + t.height > 100 && (t.top = 100 - t.height);
119
- }
120
- }
121
- function M(e, t) {
122
- c.value = !0, m.value = e, n.value = { index: e, direction: t };
123
- const a = l.value[e];
124
- f.value = { x: event.clientX, y: event.clientY, initialWidth: a.width, initialHeight: a.height };
125
- }
126
- function Y(e, t, a) {
127
- if (n.value.direction.includes("top")) {
128
- const u = e.height - a / d.value.offsetHeight * 100;
129
- u >= $ && (e.top += a / d.value.offsetHeight * 100, e.height = u);
130
- }
131
- if (n.value.direction.includes("bottom")) {
132
- const u = e.height + a / d.value.offsetHeight * 100;
133
- u >= $ && (e.height = u);
134
- }
135
- if (n.value.direction.includes("left")) {
136
- const u = e.width - t / d.value.offsetWidth * 100;
137
- u >= $ && (e.left += t / d.value.offsetWidth * 100, e.width = u);
138
- }
139
- if (n.value.direction.includes("right")) {
140
- const u = e.width + t / d.value.offsetWidth * 100;
141
- u >= $ && (e.width = u);
142
- }
143
- }
144
- function O(e) {
145
- if (!(h.value || w.value)) {
146
- if (c.value = !0, v.value !== null) {
147
- const t = l.value[v.value], a = e.clientX - p.value.x, u = e.clientY - p.value.y, i = t.left + a / d.value.offsetWidth * 100, U = t.top + u / d.value.offsetHeight * 100;
148
- i >= 0 && U >= 0 && i + t.width <= 100 && U + t.height <= 100 && (t.left = i, t.top = U), p.value = { x: e.clientX, y: e.clientY };
149
- }
150
- if (n.value !== null) {
151
- const t = l.value[n.value.index], a = e.clientX - f.value.x, u = e.clientY - f.value.y;
152
- Y(t, a, u), f.value = { x: e.clientX, y: e.clientY };
153
- }
154
- }
155
- }
156
- const j = E;
157
- ie(
158
- l,
159
- (e) => {
160
- e && !c.value && j("change", l.value);
161
- },
162
- { deep: !0 }
163
- );
164
- function Q() {
165
- v.value = null, n.value = null, c.value = !1, m.value = null, l.value.forEach((e) => {
166
- e.left = Math.round(e.left / 100 * 100), e.top = Math.round(e.top / 100 * 100), e.width = Math.round(e.width / 100 * 100), e.height = Math.round(e.height / 100 * 100);
167
- });
168
- }
169
- function K(e) {
170
- h.value || w.value || (c.value = !0, m.value = e, n.value === null && (v.value = e, p.value = { x: event.touches[0].clientX, y: event.touches[0].clientY }));
171
- }
172
- function C(e, t, a) {
173
- if (c.value = !0, m.value = e, n.value === null) {
174
- n.value = { index: e, direction: t };
175
- const u = l.value[e];
176
- f.value = { x: a.touches[0].clientX, y: a.touches[0].clientY, initialWidth: u.width, initialHeight: u.height };
177
- }
178
- }
179
- function _(e) {
180
- if (c.value = !0, e.preventDefault(), n.value !== null) {
181
- const t = l.value[n.value.index], a = e.touches[0].clientX - f.value.x, u = e.touches[0].clientY - f.value.y;
182
- Y(t, a, u), f.value = { x: e.touches[0].clientX, y: e.touches[0].clientY };
183
- }
184
- }
185
- function q(e) {
186
- if (!(h.value || w.value) && (c.value = !0, e.preventDefault(), v.value !== null)) {
187
- const t = l.value[v.value], a = e.touches[0].clientX - p.value.x, u = e.touches[0].clientY - p.value.y, i = t.left + a / d.value.offsetWidth * 100, U = t.top + u / d.value.offsetHeight * 100;
188
- i >= 0 && U >= 0 && i + t.width <= 100 && U + t.height <= 100 && (t.left = i, t.top = U), p.value = { x: e.touches[0].clientX, y: e.touches[0].clientY };
189
- }
190
- }
191
- function k() {
192
- c.value = !1, m.value = null, v.value = null, n.value = null, l.value.forEach((e) => {
193
- e.left = Math.round(e.left / 100 * 100), e.top = Math.round(e.top / 100 * 100), e.width = Math.round(e.width / 100 * 100), e.height = Math.round(e.height / 100 * 100);
194
- });
195
- }
196
- const J = V(() => s.value.style.item.borderColor), Z = V(() => s.value.style.resizeHandles.backgroundColor), ee = V(() => s.value.style.board.aspectRatio), te = V(() => s.value.style.board.backgroundColor), oe = V(() => s.value.style.board.border);
197
- function ue() {
198
- return l.value;
199
- }
200
- return B({
201
- generatePdf: I,
202
- getItemsPositions: ue,
203
- toggleLock: A
204
- }), (e, t) => (g(), y("div", {
205
- onMousedown: x,
206
- onMouseup: H,
207
- onTouchstart: x,
208
- onTouchend: H
209
- }, [
210
- s.value.allowPrint ? (g(), y("div", ge, [
211
- b("button", {
212
- class: "vue-ui-dashboard-button",
213
- onClick: I,
214
- disabled: T.value,
215
- style: S([{ "margin-top": "12px" }, `color:${s.value.style.board.color}`])
216
- }, [
217
- T.value ? (g(), y("svg", {
218
- key: 0,
219
- class: "vue-ui-dashboard-print-icon",
220
- xmlns: "http://www.w3.org/2000/svg",
221
- width: "20",
222
- height: "20",
223
- viewBox: "0 0 24 24",
224
- "stroke-width": "1.5",
225
- stroke: s.value.style.board.color,
226
- fill: "none",
227
- "stroke-linecap": "round",
228
- "stroke-linejoin": "round"
229
- }, [...t[4] || (t[4] = [
230
- ne('<path stroke="none" d="M0 0h24v24H0z" fill="none" data-v-f5946722></path><path d="M18 16v.01" data-v-f5946722></path><path d="M6 16v.01" data-v-f5946722></path><path d="M12 5v.01" data-v-f5946722></path><path d="M12 12v.01" data-v-f5946722></path><path d="M12 1a4 4 0 0 1 2.001 7.464l.001 .072a3.998 3.998 0 0 1 1.987 3.758l.22 .128a3.978 3.978 0 0 1 1.591 -.417l.2 -.005a4 4 0 1 1 -3.994 3.77l-.28 -.16c-.522 .25 -1.108 .39 -1.726 .39c-.619 0 -1.205 -.14 -1.728 -.391l-.279 .16l.007 .231a4 4 0 1 1 -2.212 -3.579l.222 -.129a3.998 3.998 0 0 1 1.988 -3.756l.002 -.071a4 4 0 0 1 -1.995 -3.265l-.005 -.2a4 4 0 0 1 4 -4z" data-v-f5946722></path>', 6)
231
- ])], 8, Ue)) : (g(), y("span", Ve, "PDF"))
232
- ], 12, be)
233
- ])) : N("", !0),
234
- b("div", {
235
- class: "vue-ui-dashboard-container",
236
- ref_key: "dashboardContainer",
237
- ref: d,
238
- id: `vue-ui-dashboard_${P.value}`,
239
- style: S(`border:${oe.value}; background:${te.value}; aspect-ratio:${ee.value}`)
240
- }, [
241
- b("div", {
242
- class: "vue-ui-dashboard-grid-container",
243
- ref: "container",
244
- onMousemove: O,
245
- onMouseup: Q,
246
- onTouchmove: q,
247
- onTouchend: k,
248
- style: S(`background:${s.value.style.board.backgroundColor}`)
249
- }, [
250
- t[5] || (t[5] = b("div", { class: "vue-ui-dashboard-grid" }, null, -1)),
251
- (g(!0), y(W, null, le(X.value, (a, u) => (g(), y("div", {
252
- key: a.id,
253
- class: re({ "vue-ui-dashboard-grid-item": !0, "vue-ui-dashboard-grid-item--locked": h.value }),
254
- style: S({
255
- width: `${a.width}%`,
256
- height: `${a.height}%`,
257
- left: `${a.left}%`,
258
- top: `${a.top}%`,
259
- cursor: "move",
260
- boxShadow: m.value === u ? "0 6px 12px -3px rgba(0,0,0,0.3)" : "",
261
- zIndex: m.value === u ? X.value.length + 1 : a.index,
262
- backgroundColor: s.value.style.item.backgroundColor
263
- }),
264
- onMousedown: (i) => G(u),
265
- onTouchstart: (i) => K(u)
266
- }, [
267
- h.value ? N("", !0) : (g(), y(W, { key: 0 }, [
268
- b("div", {
269
- class: "vue-ui-dashboard-resize-handle vue-ui-dashboard-top-left",
270
- onMousedown: (i) => M(u, "top-left"),
271
- onTouchstart: (i) => C(u, "top-left", i),
272
- onTouchmove: t[0] || (t[0] = (i) => _(i)),
273
- onTouchend: k
274
- }, null, 40, ke),
275
- b("div", {
276
- class: "vue-ui-dashboard-resize-handle vue-ui-dashboard-top-right",
277
- onMousedown: (i) => M(u, "top-right"),
278
- onTouchstart: (i) => C(u, "top-right", i),
279
- onTouchmove: t[1] || (t[1] = (i) => _(i)),
280
- onTouchend: k
281
- }, null, 40, Te),
282
- b("div", {
283
- class: "vue-ui-dashboard-resize-handle vue-ui-dashboard-bottom-left",
284
- onMousedown: (i) => M(u, "bottom-left"),
285
- onTouchstart: (i) => C(u, "bottom-left", i),
286
- onTouchmove: t[2] || (t[2] = (i) => _(i)),
287
- onTouchend: k
288
- }, null, 40, Me),
289
- b("div", {
290
- class: "vue-ui-dashboard-resize-handle vue-ui-dashboard-bottom-right",
291
- onMousedown: (i) => M(u, "bottom-right"),
292
- onTouchstart: (i) => C(u, "bottom-right", i),
293
- onTouchmove: t[3] || (t[3] = (i) => _(i)),
294
- onTouchend: k
295
- }, null, 40, Ce)
296
- ], 64)),
297
- z(e.$slots, "top", {
298
- item: a,
299
- index: u
300
- }, void 0, !0),
301
- a.resolvedComponent ? (g(), se(de(a.resolvedComponent), ce({
302
- key: 1,
303
- ref_for: !0
304
- }, a.props), null, 16)) : z(e.$slots, "content", {
305
- key: 2,
306
- item: a,
307
- index: u,
308
- left: a.left,
309
- top: a.top,
310
- height: a.height,
311
- width: a.width
312
- }, void 0, !0),
313
- z(e.$slots, "bottom", {
314
- item: a,
315
- index: u
316
- }, void 0, !0)
317
- ], 46, we))), 128))
318
- ], 36)
319
- ], 12, ye)
320
- ], 32));
321
- }
322
- }, Xe = /* @__PURE__ */ me(_e, [["__scopeId", "data-v-f5946722"]]);
323
- export {
324
- Xe as default
325
- };