vue-data-ui 2.12.5 → 2.12.7-beta.0

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 (112) hide show
  1. package/README.md +56 -1
  2. package/dist/{Arrow-CD7YT-M0.js → Arrow-CmqjRRUl.js} +1 -1
  3. package/dist/BaseDraggableDialog-BMlyvt7E.js +180 -0
  4. package/dist/{BaseIcon-CgSWwnK7.js → BaseIcon-CZdMutjs.js} +1 -1
  5. package/dist/{ColorPicker-w8R8Tqdv.js → ColorPicker-DvVKgyAl.js} +23 -24
  6. package/dist/{DataTable-CicthvOV.js → DataTable-Cv9CIz-a.js} +11 -11
  7. package/dist/{Legend-0UY0Mmli.js → Legend-DFunFf8i.js} +8 -8
  8. package/dist/NonSvgPenAndPaper-pVuHj6_A.js +467 -0
  9. package/dist/PackageVersion-CLY-udAA.js +10 -0
  10. package/dist/{PenAndPaper-DLsvRwoD.js → PenAndPaper-B9na2mbr.js} +8 -10
  11. package/dist/RecursiveCircles-Dn3TGoL6.js +96 -0
  12. package/dist/RecursiveLabels-NTMB9w5C.js +49 -0
  13. package/dist/RecursiveLinks-ld_gDZH4.js +64 -0
  14. package/dist/{Shape-DICeBEtN.js → Shape-D3w9qas1.js} +2 -2
  15. package/dist/{Slicer-D1nsbsWE.js → Slicer-ncY8krrM.js} +2 -2
  16. package/dist/SparkTooltip-CwThutH2.js +68 -0
  17. package/dist/{Title-xO1jFsSw.js → Title-B5qqUI3M.js} +2 -2
  18. package/dist/Tooltip-C9rxJ-Ru.js +149 -0
  19. package/dist/{usePrinter-CcgJXHIK.js → UserOptions-Ddy6CuLC.js} +172 -231
  20. package/dist/{dom-to-png-CS4NRYd_.js → dom-to-png-DDlooC9r.js} +1 -1
  21. package/dist/{img-CsXjm5I4.js → img-m9g7lR5d.js} +1 -1
  22. package/dist/{index-vjCxtaM0.js → index-BiHmNd1-.js} +153 -118
  23. package/dist/{pdf-DHexTTpK.js → pdf-BqM953uL.js} +1 -1
  24. package/dist/style.css +1 -1
  25. package/dist/types/vue-data-ui.d.cts +96 -2
  26. package/dist/types/vue-data-ui.d.ts +96 -2
  27. package/dist/useChartAccessibility-9icAAmYg.js +12 -0
  28. package/dist/useMouse-AicQS8Vf.js +13 -0
  29. package/dist/{useNestedProp-Du1hnYFA.js → useNestedProp-tRqS0ZAM.js} +1 -1
  30. package/dist/{usePanZoom-CUkkqW81.js → usePanZoom-BQMvRXEQ.js} +16 -17
  31. package/dist/usePrinter-CRCbl1WG.js +53 -0
  32. package/dist/vClickOutside-C6WiFswA.js +13 -0
  33. package/dist/{vue-data-ui-BOrA3Tc9.js → vue-data-ui-D9uTDt73.js} +63 -63
  34. package/dist/vue-data-ui.js +42 -40
  35. package/dist/{vue-ui-3d-bar-Z8yAd4bw.js → vue-ui-3d-bar-rtuSc8FS.js} +397 -402
  36. package/dist/{vue-ui-accordion-CAN430Oy.js → vue-ui-accordion-CmCs2yR2.js} +3 -3
  37. package/dist/{vue-ui-age-pyramid-C6PZU9Ez.js → vue-ui-age-pyramid-BrzMSiyu.js} +215 -218
  38. package/dist/{vue-ui-annotator-CqoDLx3t.js → vue-ui-annotator-CYxmTpf6.js} +2 -2
  39. package/dist/{vue-ui-bullet-DZC3aY3d.js → vue-ui-bullet-D25qNQfb.js} +137 -140
  40. package/dist/{vue-ui-candlestick-B5mq_lgW.js → vue-ui-candlestick-BuerNa-r.js} +265 -271
  41. package/dist/{vue-ui-carousel-table-CBwerU49.js → vue-ui-carousel-table-aN0HLsOO.js} +137 -137
  42. package/dist/{vue-ui-chestnut-COyOAY28.js → vue-ui-chestnut-oUj2ocsZ.js} +397 -400
  43. package/dist/{vue-ui-chord-Cw0F_jHM.js → vue-ui-chord-C4evlXYB.js} +356 -365
  44. package/dist/vue-ui-circle-pack-CWrNiKTY.js +656 -0
  45. package/dist/{vue-ui-cursor-CWXqmlVy.js → vue-ui-cursor-DgpSttlt.js} +2 -2
  46. package/dist/{vue-ui-dashboard-Ba2tF4md.js → vue-ui-dashboard-BN2ha1Eh.js} +62 -62
  47. package/dist/{vue-ui-digits-BV7yyUdY.js → vue-ui-digits-BhjAxXgm.js} +2 -2
  48. package/dist/vue-ui-donut-D3_z61HI.js +1291 -0
  49. package/dist/vue-ui-donut-evolution-oKtmZPx4.js +864 -0
  50. package/dist/{vue-ui-dumbbell-SDCcLJIc.js → vue-ui-dumbbell-C8Lokx-F.js} +265 -270
  51. package/dist/{vue-ui-flow-CrqGSDNK.js → vue-ui-flow-BVRkH0PS.js} +291 -300
  52. package/dist/{vue-ui-funnel-CcDOoxp8.js → vue-ui-funnel-DFxcmAB5.js} +216 -219
  53. package/dist/{vue-ui-galaxy-jlDp0DRJ.js → vue-ui-galaxy-CGE0hlBC.js} +227 -235
  54. package/dist/{vue-ui-gauge-8t8rWb1C.js → vue-ui-gauge-B48eMvOR.js} +240 -243
  55. package/dist/{vue-ui-gizmo-CFwdrMYP.js → vue-ui-gizmo-zTKNpjvv.js} +57 -58
  56. package/dist/{vue-ui-heatmap-BT-mIeZp.js → vue-ui-heatmap-UNfTt8SM.js} +239 -242
  57. package/dist/{vue-ui-history-plot-crLloc7J.js → vue-ui-history-plot-CbCWmvtg.js} +257 -262
  58. package/dist/{vue-ui-kpi-96v4ZIYo.js → vue-ui-kpi-Drf_lrlh.js} +29 -30
  59. package/dist/{vue-ui-mini-loader-rBHBxNIT.js → vue-ui-mini-loader-DU3G6BVs.js} +2 -2
  60. package/dist/vue-ui-molecule-B5MOXYEA.js +580 -0
  61. package/dist/{vue-ui-mood-radar-DrVSXIY4.js → vue-ui-mood-radar-CC_CVLvn.js} +180 -186
  62. package/dist/{vue-ui-nested-donuts-C9Ah9lgv.js → vue-ui-nested-donuts-D_H962kk.js} +366 -374
  63. package/dist/{vue-ui-onion-DwNPyn4X.js → vue-ui-onion-P8k6T724.js} +252 -258
  64. package/dist/{vue-ui-parallel-coordinate-plot-tSuK6xWu.js → vue-ui-parallel-coordinate-plot-B5Los0vX.js} +296 -303
  65. package/dist/{vue-ui-quadrant-C0Kaoo7K.js → vue-ui-quadrant-B3wzCTxK.js} +402 -409
  66. package/dist/{vue-ui-quick-chart-xMh_Ygct.js → vue-ui-quick-chart-oucj6hXk.js} +611 -616
  67. package/dist/{vue-ui-radar-C1jSDQt_.js → vue-ui-radar-Cjqlyu6d.js} +270 -277
  68. package/dist/{vue-ui-rating-6Kb7hsKF.js → vue-ui-rating-gryk_h_6.js} +2 -2
  69. package/dist/vue-ui-relation-circle-ielvWC-1.js +525 -0
  70. package/dist/{vue-ui-ridgeline-BBvPVQjC.js → vue-ui-ridgeline-Dydqo68b.js} +321 -326
  71. package/dist/{vue-ui-rings-B92cXv7f.js → vue-ui-rings-BRBXektJ.js} +262 -269
  72. package/dist/{vue-ui-scatter-Bt1aty87.js → vue-ui-scatter-Df-BM7Ts.js} +372 -379
  73. package/dist/{vue-ui-skeleton-DfOIDTJM.js → vue-ui-skeleton-CbYQYRvD.js} +19 -19
  74. package/dist/{vue-ui-smiley-sVgBnkbx.js → vue-ui-smiley-BfHaQMaW.js} +2 -2
  75. package/dist/{vue-ui-spark-trend-D6uzJ4Qd.js → vue-ui-spark-trend-z3fUChs_.js} +114 -117
  76. package/dist/{vue-ui-sparkbar-D4c2EE7J.js → vue-ui-sparkbar-ChtFIugH.js} +104 -106
  77. package/dist/{vue-ui-sparkgauge-DaQ6iz98.js → vue-ui-sparkgauge-DtpODCww.js} +72 -74
  78. package/dist/{vue-ui-sparkhistogram-D_YnmM2T.js → vue-ui-sparkhistogram-C3XnYiXI.js} +83 -86
  79. package/dist/vue-ui-sparkline-CoL8jiX8.js +459 -0
  80. package/dist/{vue-ui-sparkstackbar-DecnmqgJ.js → vue-ui-sparkstackbar-CYk3mZJH.js} +102 -105
  81. package/dist/{vue-ui-stackbar-D1eNs1j_.js → vue-ui-stackbar-D9LGbuG5.js} +433 -437
  82. package/dist/{vue-ui-strip-plot-iPZ8Hhmr.js → vue-ui-strip-plot-C5r1Ee2R.js} +245 -252
  83. package/dist/{vue-ui-table-BFjE28sw.js → vue-ui-table-DBaT_TfA.js} +3 -3
  84. package/dist/{vue-ui-table-heatmap-DipFDu39.js → vue-ui-table-heatmap-CYW4YfKN.js} +93 -94
  85. package/dist/{vue-ui-table-sparkline-CGAecOZh.js → vue-ui-table-sparkline-Di0MYR4p.js} +212 -212
  86. package/dist/{vue-ui-thermometer-Cx_yr-hs.js → vue-ui-thermometer-BF1btHY2.js} +154 -157
  87. package/dist/{vue-ui-timer-ClVmS8MH.js → vue-ui-timer-D9FfRWN5.js} +180 -181
  88. package/dist/vue-ui-tiremarks-CQ0lk8fJ.js +341 -0
  89. package/dist/vue-ui-treemap-1Lx7YRtc.js +947 -0
  90. package/dist/{vue-ui-vertical-bar-BHYCnFEN.js → vue-ui-vertical-bar-DdVVQ1ED.js} +397 -403
  91. package/dist/{vue-ui-waffle-DEPUbrOt.js → vue-ui-waffle-BhnuPiRD.js} +317 -324
  92. package/dist/vue-ui-wheel-BIjJ0fg8.js +335 -0
  93. package/dist/vue-ui-word-cloud-3-r8HwO_.js +642 -0
  94. package/dist/{vue-ui-world-DStJ5i0i.js → vue-ui-world-CPIGEswq.js} +430 -442
  95. package/dist/{vue-ui-xy-CEop49z6.js → vue-ui-xy-9e_epIN4.js} +845 -846
  96. package/dist/vue-ui-xy-canvas-DcGgQ7s4.js +1206 -0
  97. package/package.json +6 -6
  98. package/dist/BaseDraggableDialog-BjFEob7i.js +0 -186
  99. package/dist/PackageVersion-Cw2caN1c.js +0 -10
  100. package/dist/Tooltip-LKe8L-Mg.js +0 -158
  101. package/dist/useChartAccessibility-BWojgys7.js +0 -13
  102. package/dist/vue-ui-circle-pack-BtpaZLYs.js +0 -659
  103. package/dist/vue-ui-donut-CRdQFQgA.js +0 -1292
  104. package/dist/vue-ui-donut-evolution-De3-5OgR.js +0 -871
  105. package/dist/vue-ui-molecule-DSr_bHGG.js +0 -782
  106. package/dist/vue-ui-relation-circle-fh0Hl9m0.js +0 -528
  107. package/dist/vue-ui-sparkline-C2HuTMDz.js +0 -519
  108. package/dist/vue-ui-tiremarks-4Sa3RCSv.js +0 -344
  109. package/dist/vue-ui-treemap-CD5pPg7v.js +0 -956
  110. package/dist/vue-ui-wheel-qU0bgJsi.js +0 -338
  111. package/dist/vue-ui-word-cloud-z2ZguOdy.js +0 -648
  112. package/dist/vue-ui-xy-canvas-DV0BVdZb.js +0 -1673
@@ -6119,7 +6119,7 @@ declare module "vue-data-ui" {
6119
6119
  verticalAlign?: string;
6120
6120
  };
6121
6121
  tr?: {
6122
- height?: number;
6122
+ height?: number;
6123
6123
  style?: {
6124
6124
  backgroundColor?: string;
6125
6125
  color?: string;
@@ -6967,7 +6967,7 @@ declare module "vue-data-ui" {
6967
6967
  };
6968
6968
  zeroLine?: {
6969
6969
  show?: boolean;
6970
- strokeWidth?:number;
6970
+ strokeWidth?: number;
6971
6971
  strokeDasharray?: number;
6972
6972
  useSerieColor?: boolean;
6973
6973
  stroke?: string;
@@ -7224,6 +7224,100 @@ declare module "vue-data-ui" {
7224
7224
  y: number
7225
7225
  }
7226
7226
 
7227
+ /**
7228
+ * Configuration options for cumulative functions
7229
+ */
7230
+ export type CumulativeConfig = {
7231
+ /**
7232
+ * If `true`, invalid inputs are kept (and echoed) in the output.
7233
+ * Defaults to `true`.
7234
+ */
7235
+ keepInvalid?: boolean;
7236
+ /**
7237
+ * If `true`, invalid inputs are treated as zero when computing the statistic.
7238
+ * Defaults to `false`.
7239
+ */
7240
+ convertInvalidToZero?: boolean;
7241
+ }
7242
+
7243
+ /**
7244
+ * Vue Data UI utility
7245
+ * ---
7246
+ * Compute the cumulative median of a sequence, optionally echoing or zero-filling invalid inputs.
7247
+ * ---
7248
+ * @example
7249
+ * ```js
7250
+ * // Simple usage
7251
+ * const arr = [1, 2, 3, 4, 5];
7252
+ * const medians = getCumulativeMedian({ values: arr });
7253
+ *
7254
+ * // Ignore invalid values entirely
7255
+ * const arrWithInvalid = [1, null, 2, Infinity, undefined];
7256
+ * const mediansNoInvalid = getCumulativeMedian({
7257
+ * values: arrWithInvalid,
7258
+ * config: { keepInvalid: false }
7259
+ * });
7260
+ *
7261
+ * // Convert invalid values to zero
7262
+ * const mediansZeroed = getCumulativeMedian({
7263
+ * values: arrWithInvalid,
7264
+ * config: { convertInvalidToZero: true }
7265
+ * });
7266
+ * ```
7267
+ *
7268
+ * @param {Object} params
7269
+ * @param {Array<number|*>} params.values
7270
+ * The input sequence. Can include numbers or any “invalid” placeholders.
7271
+ * @param {CumulativeConfig} [params.config]
7272
+ * Configuration flags to control handling of invalid inputs.
7273
+ * @returns {Array<number|*>}
7274
+ * An array where each slot is either the cumulative median up to that point,
7275
+ * or the original invalid value if `keepInvalid` is `true`.
7276
+ */
7277
+ export function getCumulativeMedian<T = unknown>(params: {
7278
+ values: Array<number | T>;
7279
+ config?: CumulativeConfig;
7280
+ }): Array<number | T>;
7281
+
7282
+ /**
7283
+ * Vue Data UI utility
7284
+ * ---
7285
+ * Compute the cumulative median of a sequence, optionally echoing or zero-filling invalid inputs.
7286
+ * ---
7287
+ * @example
7288
+ * ```js
7289
+ * // Simple usage
7290
+ * const arr = [1, 2, 3, 4, 5];
7291
+ * const medians = getCumulativeMedian({ values: arr });
7292
+ *
7293
+ * // Ignore invalid values entirely
7294
+ * const arrWithInvalid = [1, null, 2, Infinity, undefined];
7295
+ * const mediansNoInvalid = getCumulativeMedian({
7296
+ * values: arrWithInvalid,
7297
+ * config: { keepInvalid: false }
7298
+ * });
7299
+ *
7300
+ * // Convert invalid values to zero
7301
+ * const mediansZeroed = getCumulativeMedian({
7302
+ * values: arrWithInvalid,
7303
+ * config: { convertInvalidToZero: true }
7304
+ * });
7305
+ * ```
7306
+ *
7307
+ * @param {Object} params
7308
+ * @param {Array<number|*>} params.values
7309
+ * The input sequence. Can include numbers or any “invalid” placeholders.
7310
+ * @param {CumulativeConfig} [params.config]
7311
+ * Configuration flags to control handling of invalid inputs.
7312
+ * @returns {Array<number|*>}
7313
+ * An array where each slot is either the cumulative median up to that point,
7314
+ * or the original invalid value if `keepInvalid` is `true`.
7315
+ */
7316
+ export function getCumulativeAverage<T = unknown>(params: {
7317
+ values: Array<number | T>;
7318
+ config?: CumulativeConfig;
7319
+ }): Array<number | T>;
7320
+
7227
7321
  /**
7228
7322
  * Vue Data UI utility
7229
7323
  * ---
@@ -6119,7 +6119,7 @@ declare module "vue-data-ui" {
6119
6119
  verticalAlign?: string;
6120
6120
  };
6121
6121
  tr?: {
6122
- height?: number;
6122
+ height?: number;
6123
6123
  style?: {
6124
6124
  backgroundColor?: string;
6125
6125
  color?: string;
@@ -6967,7 +6967,7 @@ declare module "vue-data-ui" {
6967
6967
  };
6968
6968
  zeroLine?: {
6969
6969
  show?: boolean;
6970
- strokeWidth?:number;
6970
+ strokeWidth?: number;
6971
6971
  strokeDasharray?: number;
6972
6972
  useSerieColor?: boolean;
6973
6973
  stroke?: string;
@@ -7224,6 +7224,100 @@ declare module "vue-data-ui" {
7224
7224
  y: number
7225
7225
  }
7226
7226
 
7227
+ /**
7228
+ * Configuration options for cumulative functions
7229
+ */
7230
+ export type CumulativeConfig = {
7231
+ /**
7232
+ * If `true`, invalid inputs are kept (and echoed) in the output.
7233
+ * Defaults to `true`.
7234
+ */
7235
+ keepInvalid?: boolean;
7236
+ /**
7237
+ * If `true`, invalid inputs are treated as zero when computing the statistic.
7238
+ * Defaults to `false`.
7239
+ */
7240
+ convertInvalidToZero?: boolean;
7241
+ }
7242
+
7243
+ /**
7244
+ * Vue Data UI utility
7245
+ * ---
7246
+ * Compute the cumulative median of a sequence, optionally echoing or zero-filling invalid inputs.
7247
+ * ---
7248
+ * @example
7249
+ * ```js
7250
+ * // Simple usage
7251
+ * const arr = [1, 2, 3, 4, 5];
7252
+ * const medians = getCumulativeMedian({ values: arr });
7253
+ *
7254
+ * // Ignore invalid values entirely
7255
+ * const arrWithInvalid = [1, null, 2, Infinity, undefined];
7256
+ * const mediansNoInvalid = getCumulativeMedian({
7257
+ * values: arrWithInvalid,
7258
+ * config: { keepInvalid: false }
7259
+ * });
7260
+ *
7261
+ * // Convert invalid values to zero
7262
+ * const mediansZeroed = getCumulativeMedian({
7263
+ * values: arrWithInvalid,
7264
+ * config: { convertInvalidToZero: true }
7265
+ * });
7266
+ * ```
7267
+ *
7268
+ * @param {Object} params
7269
+ * @param {Array<number|*>} params.values
7270
+ * The input sequence. Can include numbers or any “invalid” placeholders.
7271
+ * @param {CumulativeConfig} [params.config]
7272
+ * Configuration flags to control handling of invalid inputs.
7273
+ * @returns {Array<number|*>}
7274
+ * An array where each slot is either the cumulative median up to that point,
7275
+ * or the original invalid value if `keepInvalid` is `true`.
7276
+ */
7277
+ export function getCumulativeMedian<T = unknown>(params: {
7278
+ values: Array<number | T>;
7279
+ config?: CumulativeConfig;
7280
+ }): Array<number | T>;
7281
+
7282
+ /**
7283
+ * Vue Data UI utility
7284
+ * ---
7285
+ * Compute the cumulative median of a sequence, optionally echoing or zero-filling invalid inputs.
7286
+ * ---
7287
+ * @example
7288
+ * ```js
7289
+ * // Simple usage
7290
+ * const arr = [1, 2, 3, 4, 5];
7291
+ * const medians = getCumulativeMedian({ values: arr });
7292
+ *
7293
+ * // Ignore invalid values entirely
7294
+ * const arrWithInvalid = [1, null, 2, Infinity, undefined];
7295
+ * const mediansNoInvalid = getCumulativeMedian({
7296
+ * values: arrWithInvalid,
7297
+ * config: { keepInvalid: false }
7298
+ * });
7299
+ *
7300
+ * // Convert invalid values to zero
7301
+ * const mediansZeroed = getCumulativeMedian({
7302
+ * values: arrWithInvalid,
7303
+ * config: { convertInvalidToZero: true }
7304
+ * });
7305
+ * ```
7306
+ *
7307
+ * @param {Object} params
7308
+ * @param {Array<number|*>} params.values
7309
+ * The input sequence. Can include numbers or any “invalid” placeholders.
7310
+ * @param {CumulativeConfig} [params.config]
7311
+ * Configuration flags to control handling of invalid inputs.
7312
+ * @returns {Array<number|*>}
7313
+ * An array where each slot is either the cumulative median up to that point,
7314
+ * or the original invalid value if `keepInvalid` is `true`.
7315
+ */
7316
+ export function getCumulativeAverage<T = unknown>(params: {
7317
+ values: Array<number | T>;
7318
+ config?: CumulativeConfig;
7319
+ }): Array<number | T>;
7320
+
7227
7321
  /**
7228
7322
  * Vue Data UI utility
7229
7323
  * ---
@@ -0,0 +1,12 @@
1
+ import { ref as u, onMounted as a, nextTick as r } from "vue";
2
+ function o({ config: e }) {
3
+ const t = u(null), l = e?.text || "Chart visualization", i = e?.subtitle?.text || "";
4
+ return a(() => {
5
+ r(() => {
6
+ t.value && (t.value.setAttribute("aria-label", `${l}${i ? `. ${i}` : ""}`), t.value.setAttribute("role", "img"), t.value.setAttribute("aria-live", "polite"));
7
+ });
8
+ }), { svgRef: t };
9
+ }
10
+ export {
11
+ o as u
12
+ };
@@ -0,0 +1,13 @@
1
+ import { onMounted as u, onUnmounted as s, ref as t } from "vue";
2
+ function i(e, n, o) {
3
+ u(() => e.addEventListener(n, o)), s(() => e.removeEventListener(n, o));
4
+ }
5
+ function m() {
6
+ const e = t(0), n = t(0);
7
+ return i(window, "mousemove", (o) => {
8
+ e.value = o.clientX, n.value = o.clientY;
9
+ }), { x: e, y: n };
10
+ }
11
+ export {
12
+ m as u
13
+ };
@@ -1,4 +1,4 @@
1
- import { A as o, z as n } from "./index-vjCxtaM0.js";
1
+ import { A as o, z as n } from "./index-BiHmNd1-.js";
2
2
  function c({ defaultConfig: e, userConfig: r }) {
3
3
  if (!Object.keys(r || {}).length)
4
4
  return e;
@@ -8,13 +8,12 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
8
8
  return Math.sqrt(t * t + n * n);
9
9
  }
10
10
  function d(e) {
11
- var a;
12
11
  const t = f.value;
13
12
  if (!t) return { x: 0, y: 0 };
14
13
  const n = t.createSVGPoint();
15
14
  n.x = e.clientX, n.y = e.clientY;
16
- const u = (a = t.getScreenCTM()) == null ? void 0 : a.inverse();
17
- return u ? n.matrixTransform(u) : { x: 0, y: 0 };
15
+ const a = t.getScreenCTM()?.inverse();
16
+ return a ? n.matrixTransform(a) : { x: 0, y: 0 };
18
17
  }
19
18
  function P(e) {
20
19
  E.value = !0;
@@ -24,8 +23,8 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
24
23
  function S(e) {
25
24
  if (!E.value) return;
26
25
  const t = d(e.touches ? e.touches[0] : e);
27
- let n = t.x - y.value.x, u = t.y - y.value.y;
28
- Math.abs(n) < 0.3 && Math.abs(u) < 0.3 || (v.x = n * 0.8 + v.x * 0.2, v.y = u * 0.8 + v.y * 0.2, y.value = t, F || (F = requestAnimationFrame(C)));
26
+ let n = t.x - y.value.x, a = t.y - y.value.y;
27
+ Math.abs(n) < 0.3 && Math.abs(a) < 0.3 || (v.x = n * 0.8 + v.x * 0.2, v.y = a * 0.8 + v.y * 0.2, y.value = t, F || (F = requestAnimationFrame(C)));
29
28
  }
30
29
  function C() {
31
30
  o.value.x -= v.x, o.value.y -= v.y, F = null;
@@ -38,11 +37,11 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
38
37
  o.value = { ...s }, l.value = 1;
39
38
  return;
40
39
  }
41
- const t = { ...o.value }, n = l.value, u = 300;
42
- let a = null;
40
+ const t = { ...o.value }, n = l.value, a = 300;
41
+ let u = null;
43
42
  function r(i) {
44
- a || (a = i);
45
- const c = Math.min((i - a) / u, 1);
43
+ u || (u = i);
44
+ const c = Math.min((i - u) / a, 1);
46
45
  o.value = {
47
46
  x: t.x + (s.x - t.x) * c,
48
47
  y: t.y + (s.y - t.y) * c,
@@ -64,12 +63,12 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
64
63
  }
65
64
  function H(e, t) {
66
65
  g && cancelAnimationFrame(g);
67
- let n = l.value, u = n * e, a = 0;
66
+ let n = l.value, a = n * e, u = 0;
68
67
  const r = () => {
69
- a += 0.02;
70
- let i = n + (u - n) * I(a);
71
- if (a >= 1) {
72
- l.value = u, g = null;
68
+ u += 0.02;
69
+ let i = n + (a - n) * I(u);
70
+ if (u >= 1) {
71
+ l.value = a, g = null;
73
72
  return;
74
73
  }
75
74
  w(i / n, t), g = requestAnimationFrame(r);
@@ -78,8 +77,8 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
78
77
  }
79
78
  const I = (e) => e < 0.5 ? 2 * e * e : -1 + (4 - 2 * e) * e;
80
79
  function w(e, t) {
81
- const n = l.value * e, u = n / l.value, a = o.value.width / u, r = o.value.height / u, i = (t.x - o.value.x) * (1 - 1 / u), c = (t.y - o.value.y) * (1 - 1 / u);
82
- o.value.x += i, o.value.y += c, o.value.width = a, o.value.height = r, l.value = n;
80
+ const n = l.value * e, a = n / l.value, u = o.value.width / a, r = o.value.height / a, i = (t.x - o.value.x) * (1 - 1 / a), c = (t.y - o.value.y) * (1 - 1 / a);
81
+ o.value.x += i, o.value.y += c, o.value.width = u, o.value.height = r, l.value = n;
83
82
  }
84
83
  function T(e) {
85
84
  e.touches.length === 2 ? (L.value = !0, x.value = M(e.touches), D.value = { ...o.value }) : (e.preventDefault(), P(e));
@@ -89,7 +88,7 @@ function J(f, s = { x: 0, y: 0, width: 100, height: 100 }, q = 1, z) {
89
88
  e.preventDefault();
90
89
  const t = M(e.touches);
91
90
  if (x.value) {
92
- const n = t / x.value, a = f.value.getBoundingClientRect(), r = (e.touches[0].clientX + e.touches[1].clientX) / 2 - a.left, i = (e.touches[0].clientY + e.touches[1].clientY) / 2 - a.top, c = d({ clientX: r + a.left, clientY: i + a.top });
91
+ const n = t / x.value, u = f.value.getBoundingClientRect(), r = (e.touches[0].clientX + e.touches[1].clientX) / 2 - u.left, i = (e.touches[0].clientY + e.touches[1].clientY) / 2 - u.top, c = d({ clientX: r + u.left, clientY: i + u.top });
93
92
  o.value = { ...D.value }, w(n, c);
94
93
  }
95
94
  } else
@@ -0,0 +1,53 @@
1
+ import { ref as o } from "vue";
2
+ function m({
3
+ elementId: u,
4
+ fileName: l,
5
+ canPrint: t = !0,
6
+ options: i
7
+ }) {
8
+ const r = o(!1), a = o(!1), n = o(null);
9
+ async function s() {
10
+ !t || r.value || (r.value = !0, clearTimeout(n.value), n.value = setTimeout(async () => {
11
+ if (t)
12
+ try {
13
+ const { default: e } = await import("./pdf-BqM953uL.js");
14
+ await e({
15
+ domElement: document.getElementById(u),
16
+ fileName: l,
17
+ options: i
18
+ });
19
+ } catch (e) {
20
+ console.error("Error generating PDF:", e);
21
+ } finally {
22
+ r.value = !1;
23
+ }
24
+ }, 100));
25
+ }
26
+ async function c() {
27
+ !t || a.value || (a.value = !0, clearTimeout(n.value), n.value = setTimeout(async () => {
28
+ if (t)
29
+ try {
30
+ const { default: e } = await import("./img-m9g7lR5d.js");
31
+ await e({
32
+ domElement: document.getElementById(u),
33
+ fileName: l,
34
+ format: "png",
35
+ options: i
36
+ });
37
+ } catch (e) {
38
+ console.error("Error generating image:", e);
39
+ } finally {
40
+ a.value = !1;
41
+ }
42
+ }, 100));
43
+ }
44
+ return {
45
+ generatePdf: s,
46
+ generateImage: c,
47
+ isPrinting: r,
48
+ isImaging: a
49
+ };
50
+ }
51
+ export {
52
+ m as u
53
+ };
@@ -0,0 +1,13 @@
1
+ const i = {
2
+ beforeMount(t, c) {
3
+ t.clickOutsideEvent = function(e) {
4
+ t === e.target || t.contains(e.target) || c.value(e);
5
+ }, document.addEventListener("click", t.clickOutsideEvent);
6
+ },
7
+ unmounted(t) {
8
+ document.removeEventListener("click", t.clickOutsideEvent);
9
+ }
10
+ };
11
+ export {
12
+ i as v
13
+ };
@@ -1,5 +1,5 @@
1
1
  import { toRefs as ot, defineAsyncComponent as e, computed as s, ref as o, onMounted as it, watch as $, shallowReactive as at, createElementBlock as nt, createBlock as m, openBlock as c, normalizeStyle as lt, createElementVNode as rt, createTextVNode as ut, createCommentVNode as X, toDisplayString as st, resolveDynamicComponent as ct, mergeProps as gt, toHandlers as pt, createSlots as mt, renderList as dt, withCtx as Vt, renderSlot as Ut, normalizeProps as ft, guardReactiveProps as vt } from "vue";
2
- import Q from "./BaseIcon-CgSWwnK7.js";
2
+ import Q from "./BaseIcon-CZdMutjs.js";
3
3
  const kt = { style: { width: "36px" } }, yt = {
4
4
  __name: "vue-data-ui",
5
5
  props: {
@@ -36,68 +36,68 @@ const kt = { style: { width: "36px" } }, yt = {
36
36
  ],
37
37
  setup(j, { expose: z, emit: K }) {
38
38
  const n = j, { component: St, dataset: q, config: Y } = ot(n), g = {
39
- VueUi3dBar: e(() => import("./vue-ui-3d-bar-Z8yAd4bw.js")),
40
- VueUiAgePyramid: e(() => import("./vue-ui-age-pyramid-C6PZU9Ez.js")),
41
- VueUiAnnotator: e(() => import("./vue-ui-annotator-CqoDLx3t.js")),
42
- VueUiCandlestick: e(() => import("./vue-ui-candlestick-B5mq_lgW.js")),
43
- VueUiChestnut: e(() => import("./vue-ui-chestnut-COyOAY28.js")),
44
- VueUiDashboard: e(() => import("./vue-ui-dashboard-Ba2tF4md.js")),
45
- VueUiDigits: e(() => import("./vue-ui-digits-BV7yyUdY.js")),
46
- VueUiDonut: e(() => import("./vue-ui-donut-CRdQFQgA.js")),
47
- VueUiDonutEvolution: e(() => import("./vue-ui-donut-evolution-De3-5OgR.js")),
48
- VueUiGalaxy: e(() => import("./vue-ui-galaxy-jlDp0DRJ.js")),
49
- VueUiGauge: e(() => import("./vue-ui-gauge-8t8rWb1C.js")),
50
- VueUiHeatmap: e(() => import("./vue-ui-heatmap-BT-mIeZp.js")),
51
- VueUiKpi: e(() => import("./vue-ui-kpi-96v4ZIYo.js")),
52
- VueUiMiniLoader: e(() => import("./vue-ui-mini-loader-rBHBxNIT.js")),
53
- VueUiMolecule: e(() => import("./vue-ui-molecule-DSr_bHGG.js")),
54
- VueUiMoodRadar: e(() => import("./vue-ui-mood-radar-DrVSXIY4.js")),
55
- VueUiNestedDonuts: e(() => import("./vue-ui-nested-donuts-C9Ah9lgv.js")),
56
- VueUiOnion: e(() => import("./vue-ui-onion-DwNPyn4X.js")),
57
- VueUiQuadrant: e(() => import("./vue-ui-quadrant-C0Kaoo7K.js")),
58
- VueUiRadar: e(() => import("./vue-ui-radar-C1jSDQt_.js")),
59
- VueUiRating: e(() => import("./vue-ui-rating-6Kb7hsKF.js")),
60
- VueUiRelationCircle: e(() => import("./vue-ui-relation-circle-fh0Hl9m0.js")),
61
- VueUiRings: e(() => import("./vue-ui-rings-B92cXv7f.js")),
62
- VueUiScatter: e(() => import("./vue-ui-scatter-Bt1aty87.js")),
63
- VueUiSkeleton: e(() => import("./vue-ui-skeleton-DfOIDTJM.js")),
64
- VueUiSmiley: e(() => import("./vue-ui-smiley-sVgBnkbx.js")),
65
- VueUiSparkbar: e(() => import("./vue-ui-sparkbar-D4c2EE7J.js")),
66
- VueUiSparkgauge: e(() => import("./vue-ui-sparkgauge-DaQ6iz98.js")),
67
- VueUiSparkHistogram: e(() => import("./vue-ui-sparkhistogram-D_YnmM2T.js")),
68
- VueUiSparkline: e(() => import("./vue-ui-sparkline-C2HuTMDz.js")),
69
- VueUiSparkStackbar: e(() => import("./vue-ui-sparkstackbar-DecnmqgJ.js")),
70
- VueUiTable: e(() => import("./vue-ui-table-BFjE28sw.js")),
71
- VueUiTableSparkline: e(() => import("./vue-ui-table-sparkline-CGAecOZh.js")),
72
- VueUiThermometer: e(() => import("./vue-ui-thermometer-Cx_yr-hs.js")),
73
- VueUiTiremarks: e(() => import("./vue-ui-tiremarks-4Sa3RCSv.js")),
74
- VueUiTreemap: e(() => import("./vue-ui-treemap-CD5pPg7v.js")),
75
- VueUiVerticalBar: e(() => import("./vue-ui-vertical-bar-BHYCnFEN.js")),
76
- VueUiWaffle: e(() => import("./vue-ui-waffle-DEPUbrOt.js")),
77
- VueUiWheel: e(() => import("./vue-ui-wheel-qU0bgJsi.js")),
78
- VueUiXy: e(() => import("./vue-ui-xy-CEop49z6.js")),
79
- VueUiTableHeatmap: e(() => import("./vue-ui-table-heatmap-DipFDu39.js")),
80
- VueUiAccordion: e(() => import("./vue-ui-accordion-CAN430Oy.js")),
81
- VueUiQuickChart: e(() => import("./vue-ui-quick-chart-xMh_Ygct.js")),
82
- VueUiCursor: e(() => import("./vue-ui-cursor-CWXqmlVy.js")),
83
- VueUiSparkTrend: e(() => import("./vue-ui-spark-trend-D6uzJ4Qd.js")),
84
- VueUiStripPlot: e(() => import("./vue-ui-strip-plot-iPZ8Hhmr.js")),
85
- VueUiDumbbell: e(() => import("./vue-ui-dumbbell-SDCcLJIc.js")),
86
- VueUiWordCloud: e(() => import("./vue-ui-word-cloud-z2ZguOdy.js")),
87
- VueUiXyCanvas: e(() => import("./vue-ui-xy-canvas-DV0BVdZb.js")),
88
- VueUiFlow: e(() => import("./vue-ui-flow-CrqGSDNK.js")),
89
- VueUiParallelCoordinatePlot: e(() => import("./vue-ui-parallel-coordinate-plot-tSuK6xWu.js")),
90
- VueUiTimer: e(() => import("./vue-ui-timer-ClVmS8MH.js")),
91
- VueUiCarouselTable: e(() => import("./vue-ui-carousel-table-CBwerU49.js")),
92
- VueUiGizmo: e(() => import("./vue-ui-gizmo-CFwdrMYP.js")),
93
- VueUiStackbar: e(() => import("./vue-ui-stackbar-D1eNs1j_.js")),
94
- VueUiBullet: e(() => import("./vue-ui-bullet-DZC3aY3d.js")),
95
- VueUiFunnel: e(() => import("./vue-ui-funnel-CcDOoxp8.js")),
96
- VueUiHistoryPlot: e(() => import("./vue-ui-history-plot-crLloc7J.js")),
97
- VueUiCirclePack: e(() => import("./vue-ui-circle-pack-BtpaZLYs.js")),
98
- VueUiWorld: e(() => import("./vue-ui-world-DStJ5i0i.js")),
99
- VueUiRidgeline: e(() => import("./vue-ui-ridgeline-BBvPVQjC.js")),
100
- VueUiChord: e(() => import("./vue-ui-chord-Cw0F_jHM.js"))
39
+ VueUi3dBar: e(() => import("./vue-ui-3d-bar-rtuSc8FS.js")),
40
+ VueUiAgePyramid: e(() => import("./vue-ui-age-pyramid-BrzMSiyu.js")),
41
+ VueUiAnnotator: e(() => import("./vue-ui-annotator-CYxmTpf6.js")),
42
+ VueUiCandlestick: e(() => import("./vue-ui-candlestick-BuerNa-r.js")),
43
+ VueUiChestnut: e(() => import("./vue-ui-chestnut-oUj2ocsZ.js")),
44
+ VueUiDashboard: e(() => import("./vue-ui-dashboard-BN2ha1Eh.js")),
45
+ VueUiDigits: e(() => import("./vue-ui-digits-BhjAxXgm.js")),
46
+ VueUiDonut: e(() => import("./vue-ui-donut-D3_z61HI.js")),
47
+ VueUiDonutEvolution: e(() => import("./vue-ui-donut-evolution-oKtmZPx4.js")),
48
+ VueUiGalaxy: e(() => import("./vue-ui-galaxy-CGE0hlBC.js")),
49
+ VueUiGauge: e(() => import("./vue-ui-gauge-B48eMvOR.js")),
50
+ VueUiHeatmap: e(() => import("./vue-ui-heatmap-UNfTt8SM.js")),
51
+ VueUiKpi: e(() => import("./vue-ui-kpi-Drf_lrlh.js")),
52
+ VueUiMiniLoader: e(() => import("./vue-ui-mini-loader-DU3G6BVs.js")),
53
+ VueUiMolecule: e(() => import("./vue-ui-molecule-B5MOXYEA.js")),
54
+ VueUiMoodRadar: e(() => import("./vue-ui-mood-radar-CC_CVLvn.js")),
55
+ VueUiNestedDonuts: e(() => import("./vue-ui-nested-donuts-D_H962kk.js")),
56
+ VueUiOnion: e(() => import("./vue-ui-onion-P8k6T724.js")),
57
+ VueUiQuadrant: e(() => import("./vue-ui-quadrant-B3wzCTxK.js")),
58
+ VueUiRadar: e(() => import("./vue-ui-radar-Cjqlyu6d.js")),
59
+ VueUiRating: e(() => import("./vue-ui-rating-gryk_h_6.js")),
60
+ VueUiRelationCircle: e(() => import("./vue-ui-relation-circle-ielvWC-1.js")),
61
+ VueUiRings: e(() => import("./vue-ui-rings-BRBXektJ.js")),
62
+ VueUiScatter: e(() => import("./vue-ui-scatter-Df-BM7Ts.js")),
63
+ VueUiSkeleton: e(() => import("./vue-ui-skeleton-CbYQYRvD.js")),
64
+ VueUiSmiley: e(() => import("./vue-ui-smiley-BfHaQMaW.js")),
65
+ VueUiSparkbar: e(() => import("./vue-ui-sparkbar-ChtFIugH.js")),
66
+ VueUiSparkgauge: e(() => import("./vue-ui-sparkgauge-DtpODCww.js")),
67
+ VueUiSparkHistogram: e(() => import("./vue-ui-sparkhistogram-C3XnYiXI.js")),
68
+ VueUiSparkline: e(() => import("./vue-ui-sparkline-CoL8jiX8.js")),
69
+ VueUiSparkStackbar: e(() => import("./vue-ui-sparkstackbar-CYk3mZJH.js")),
70
+ VueUiTable: e(() => import("./vue-ui-table-DBaT_TfA.js")),
71
+ VueUiTableSparkline: e(() => import("./vue-ui-table-sparkline-Di0MYR4p.js")),
72
+ VueUiThermometer: e(() => import("./vue-ui-thermometer-BF1btHY2.js")),
73
+ VueUiTiremarks: e(() => import("./vue-ui-tiremarks-CQ0lk8fJ.js")),
74
+ VueUiTreemap: e(() => import("./vue-ui-treemap-1Lx7YRtc.js")),
75
+ VueUiVerticalBar: e(() => import("./vue-ui-vertical-bar-DdVVQ1ED.js")),
76
+ VueUiWaffle: e(() => import("./vue-ui-waffle-BhnuPiRD.js")),
77
+ VueUiWheel: e(() => import("./vue-ui-wheel-BIjJ0fg8.js")),
78
+ VueUiXy: e(() => import("./vue-ui-xy-9e_epIN4.js")),
79
+ VueUiTableHeatmap: e(() => import("./vue-ui-table-heatmap-CYW4YfKN.js")),
80
+ VueUiAccordion: e(() => import("./vue-ui-accordion-CmCs2yR2.js")),
81
+ VueUiQuickChart: e(() => import("./vue-ui-quick-chart-oucj6hXk.js")),
82
+ VueUiCursor: e(() => import("./vue-ui-cursor-DgpSttlt.js")),
83
+ VueUiSparkTrend: e(() => import("./vue-ui-spark-trend-z3fUChs_.js")),
84
+ VueUiStripPlot: e(() => import("./vue-ui-strip-plot-C5r1Ee2R.js")),
85
+ VueUiDumbbell: e(() => import("./vue-ui-dumbbell-C8Lokx-F.js")),
86
+ VueUiWordCloud: e(() => import("./vue-ui-word-cloud-3-r8HwO_.js")),
87
+ VueUiXyCanvas: e(() => import("./vue-ui-xy-canvas-DcGgQ7s4.js")),
88
+ VueUiFlow: e(() => import("./vue-ui-flow-BVRkH0PS.js")),
89
+ VueUiParallelCoordinatePlot: e(() => import("./vue-ui-parallel-coordinate-plot-B5Los0vX.js")),
90
+ VueUiTimer: e(() => import("./vue-ui-timer-D9FfRWN5.js")),
91
+ VueUiCarouselTable: e(() => import("./vue-ui-carousel-table-aN0HLsOO.js")),
92
+ VueUiGizmo: e(() => import("./vue-ui-gizmo-zTKNpjvv.js")),
93
+ VueUiStackbar: e(() => import("./vue-ui-stackbar-D9LGbuG5.js")),
94
+ VueUiBullet: e(() => import("./vue-ui-bullet-D25qNQfb.js")),
95
+ VueUiFunnel: e(() => import("./vue-ui-funnel-DFxcmAB5.js")),
96
+ VueUiHistoryPlot: e(() => import("./vue-ui-history-plot-CbCWmvtg.js")),
97
+ VueUiCirclePack: e(() => import("./vue-ui-circle-pack-CWrNiKTY.js")),
98
+ VueUiWorld: e(() => import("./vue-ui-world-CPIGEswq.js")),
99
+ VueUiRidgeline: e(() => import("./vue-ui-ridgeline-Dydqo68b.js")),
100
+ VueUiChord: e(() => import("./vue-ui-chord-C4evlXYB.js"))
101
101
  }, J = {
102
102
  VueUi3dBar: ["config", "dataset"],
103
103
  VueUiAgePyramid: ["config", "dataset"],