vue-data-ui 3.5.2 → 3.7.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 (199) hide show
  1. package/README.md +36 -27
  2. package/dist/{Arrow-BGVin3AS.js → Arrow-CWYIBV-7.js} +1 -1
  3. package/dist/{BaseDraggableDialog-ymf2sfB8.js → BaseDraggableDialog-CRF94NJQ.js} +2 -2
  4. package/dist/{BaseIcon-BmMbm4d0.js → BaseIcon-CofSxalQ.js} +6 -5
  5. package/dist/{ColorPicker-ChuwChMo.js → ColorPicker-e1-OSGlQ.js} +10 -10
  6. package/dist/{DataTable-BT7VF2ua.js → DataTable-CHaOCmsE.js} +2 -2
  7. package/dist/{Legend-G6GMcdAc.js → Legend-Web3GjlR.js} +10 -10
  8. package/dist/{NonSvgPenAndPaper-DVgKKLIf.js → NonSvgPenAndPaper-CjYFLlns.js} +3 -3
  9. package/dist/{PackageVersion-Y7t79Jtq.js → PackageVersion-Bq_mtsqr.js} +1 -1
  10. package/dist/{PenAndPaper-SZQIAgkg.js → PenAndPaper-HCZQTkqi.js} +20 -20
  11. package/dist/{Shape-CNXKB8O0.js → Shape-DE6X_t31.js} +3 -3
  12. package/dist/{Slicer-D2wm0coO.js → Slicer-BFBBG6xv.js} +23 -23
  13. package/dist/{SlicerPreview-ij72TAs6.js → SlicerPreview-D76aSViW.js} +2 -2
  14. package/dist/{SparkTooltip-BEewz-_Q.js → SparkTooltip-B2rpVWE1.js} +6 -6
  15. package/dist/{Title-BzH_LEA3.js → Title-DfFUb9hd.js} +1 -1
  16. package/dist/{Tooltip-oWCO1HKy.js → Tooltip-WD0Ros6G.js} +1 -1
  17. package/dist/{UserOptions-CGnQt6Fd.js → UserOptions-B3I-s3Lw.js} +2 -2
  18. package/dist/components/arrow.js +1 -1
  19. package/dist/components/vue-ui-3d-bar.js +3 -3
  20. package/dist/components/vue-ui-accordion.js +1 -1
  21. package/dist/components/vue-ui-age-pyramid.js +3 -3
  22. package/dist/components/vue-ui-annotator.js +1 -1
  23. package/dist/components/vue-ui-bullet.js +3 -3
  24. package/dist/components/vue-ui-candlestick.js +3 -3
  25. package/dist/components/vue-ui-carousel-table.js +1 -1
  26. package/dist/components/vue-ui-chestnut.js +3 -3
  27. package/dist/components/vue-ui-chord.js +3 -3
  28. package/dist/components/vue-ui-circle-pack.js +3 -3
  29. package/dist/components/vue-ui-cursor.js +1 -1
  30. package/dist/components/vue-ui-dashboard.js +1 -1
  31. package/dist/components/vue-ui-digits.js +1 -1
  32. package/dist/components/vue-ui-donut-evolution.js +2 -2
  33. package/dist/components/vue-ui-donut.js +3 -3
  34. package/dist/components/vue-ui-dumbbell.js +3 -3
  35. package/dist/components/vue-ui-flow.js +3 -3
  36. package/dist/components/vue-ui-funnel.js +2 -2
  37. package/dist/components/vue-ui-galaxy.js +1 -1
  38. package/dist/components/vue-ui-gauge.js +1 -1
  39. package/dist/components/vue-ui-gizmo.js +1 -1
  40. package/dist/components/vue-ui-heatmap.js +1 -1
  41. package/dist/components/vue-ui-history-plot.js +3 -3
  42. package/dist/components/vue-ui-horizontal-bar.js +3 -3
  43. package/dist/components/vue-ui-icon.js +1 -1
  44. package/dist/components/vue-ui-kpi.js +1 -1
  45. package/dist/components/vue-ui-mini-loader.js +1 -1
  46. package/dist/components/vue-ui-molecule.js +3 -3
  47. package/dist/components/vue-ui-mood-radar.js +3 -3
  48. package/dist/components/vue-ui-nested-donuts.js +2 -2
  49. package/dist/components/vue-ui-onion.js +3 -3
  50. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  51. package/dist/components/vue-ui-quadrant.js +3 -3
  52. package/dist/components/vue-ui-quick-chart.js +3 -3
  53. package/dist/components/vue-ui-radar.js +3 -3
  54. package/dist/components/vue-ui-rating.js +1 -1
  55. package/dist/components/vue-ui-relation-circle.js +3 -3
  56. package/dist/components/vue-ui-ridgeline.js +3 -3
  57. package/dist/components/vue-ui-rings.js +3 -3
  58. package/dist/components/vue-ui-scatter.js +3 -3
  59. package/dist/components/vue-ui-skeleton.js +1 -1
  60. package/dist/components/vue-ui-smiley.js +1 -1
  61. package/dist/components/vue-ui-spark-trend.js +1 -1
  62. package/dist/components/vue-ui-sparkbar.js +2 -2
  63. package/dist/components/vue-ui-sparkgauge.js +3 -3
  64. package/dist/components/vue-ui-sparkhistogram.js +3 -3
  65. package/dist/components/vue-ui-sparkline.js +3 -3
  66. package/dist/components/vue-ui-sparkstackbar.js +2 -2
  67. package/dist/components/vue-ui-stackbar.js +3 -3
  68. package/dist/components/vue-ui-stackline.js +5 -0
  69. package/dist/components/vue-ui-strip-plot.js +3 -3
  70. package/dist/components/vue-ui-table-heatmap.js +1 -1
  71. package/dist/components/vue-ui-table-sparkline.js +2 -2
  72. package/dist/components/vue-ui-table.js +1 -1
  73. package/dist/components/vue-ui-thermometer.js +3 -3
  74. package/dist/components/vue-ui-timer.js +1 -1
  75. package/dist/components/vue-ui-tiremarks.js +2 -2
  76. package/dist/components/vue-ui-treemap.js +3 -3
  77. package/dist/components/vue-ui-vertical-bar.js +1 -1
  78. package/dist/components/vue-ui-waffle.js +2 -2
  79. package/dist/components/vue-ui-wheel.js +1 -1
  80. package/dist/components/vue-ui-word-cloud.js +3 -3
  81. package/dist/components/vue-ui-world.js +1 -1
  82. package/dist/components/vue-ui-xy-canvas.js +3 -3
  83. package/dist/components/vue-ui-xy.js +3 -3
  84. package/dist/{dom-to-png--BNgrTZV.js → dom-to-png-CH2DfsJe.js} +1 -1
  85. package/dist/{img-BecE5qXd.js → img-DUzJeMlr.js} +1 -1
  86. package/dist/{lib-C_mNZmhD.js → lib-C5BH09_g.js} +111 -110
  87. package/dist/{pdf-DuG5j3Wv.js → pdf-BSWQncok.js} +1 -1
  88. package/dist/style.css +1 -1
  89. package/dist/types/vue-data-ui.d.ts +303 -9
  90. package/dist/types/vue-ui-stackline.d.ts +18 -0
  91. package/dist/{useAutoSizeLabelsInsideViewbox-BhzfwQ_k.js → useAutoSizeLabelsInsideViewbox-DOALwU4q.js} +7 -7
  92. package/dist/{useNestedProp-CReNavA0.js → useNestedProp-CWo6bftQ.js} +535 -329
  93. package/dist/{usePrinter-DTzqpYKF.js → usePrinter-DCJzEiS8.js} +2 -2
  94. package/dist/useThemeCheck-DGJ31Vi5.js +32 -0
  95. package/dist/{useTimeLabels-BGFjWgrv.js → useTimeLabels-C5qMhpbe.js} +50 -49
  96. package/dist/{vue-data-ui-BRaq4hRp.js → vue-data-ui-ByLTJx5V.js} +79 -77
  97. package/dist/vue-data-ui.js +226 -204
  98. package/dist/{vue-ui-3d-bar-BB4ii8Nt.js → vue-ui-3d-bar-Dkds4k5N.js} +546 -517
  99. package/dist/{vue-ui-accordion-BmFTVF1a.js → vue-ui-accordion-DSdZUn2C.js} +3 -3
  100. package/dist/vue-ui-age-pyramid-C-fwZRYE.js +960 -0
  101. package/dist/{vue-ui-annotator-CcpaXBNK.js → vue-ui-annotator-DRaH8hXn.js} +7 -7
  102. package/dist/vue-ui-bullet-BKVJRjGh.js +657 -0
  103. package/dist/{vue-ui-candlestick-CMP7UL6z.js → vue-ui-candlestick-BKFWHU4O.js} +596 -561
  104. package/dist/{vue-ui-carousel-table-CzOcKsDj.js → vue-ui-carousel-table-VmPH6y2g.js} +48 -48
  105. package/dist/{vue-ui-chestnut-S787oASt.js → vue-ui-chestnut-DpMHe-OI.js} +534 -505
  106. package/dist/vue-ui-chord-Djdr0PY_.js +1182 -0
  107. package/dist/vue-ui-circle-pack-CyUqNJQt.js +832 -0
  108. package/dist/{vue-ui-cursor-C3yD_TUr.js → vue-ui-cursor-BMe8ZiV6.js} +2 -2
  109. package/dist/{vue-ui-dashboard-BfEcVRxQ.js → vue-ui-dashboard-eBXj-KCw.js} +140 -140
  110. package/dist/{vue-ui-digits-pRh179Gg.js → vue-ui-digits-D382I0-w.js} +2 -2
  111. package/dist/{vue-ui-donut-B_tEm4dT.js → vue-ui-donut-BLb0kj_P.js} +634 -602
  112. package/dist/vue-ui-donut-evolution-BqrldXpI.js +1243 -0
  113. package/dist/vue-ui-dumbbell-BuZT5a-d.js +1258 -0
  114. package/dist/vue-ui-flow-LLp6ntEP.js +1026 -0
  115. package/dist/vue-ui-funnel-pILUR-OG.js +743 -0
  116. package/dist/vue-ui-galaxy-X6yiw8kx.js +837 -0
  117. package/dist/vue-ui-gauge-DBh-vFb9.js +864 -0
  118. package/dist/{vue-ui-gizmo-BQzQlUJ8.js → vue-ui-gizmo-DtyEukIP.js} +3 -3
  119. package/dist/{vue-ui-heatmap-C9MhHWpp.js → vue-ui-heatmap-mkD6QkXo.js} +501 -466
  120. package/dist/vue-ui-history-plot-CyTaBaxA.js +1239 -0
  121. package/dist/{vue-ui-kpi-jcrPjW4C.js → vue-ui-kpi-CKMZDc3n.js} +3 -3
  122. package/dist/{vue-ui-mini-loader-DTM98mRN.js → vue-ui-mini-loader-BN72OfS0.js} +2 -2
  123. package/dist/vue-ui-molecule-UzQ3o5HW.js +782 -0
  124. package/dist/vue-ui-mood-radar-C2zkRLGy.js +930 -0
  125. package/dist/vue-ui-nested-donuts-B5OpvmJ9.js +1454 -0
  126. package/dist/vue-ui-onion-DbhIOGtF.js +944 -0
  127. package/dist/vue-ui-parallel-coordinate-plot-Dv_T4mWW.js +1080 -0
  128. package/dist/{vue-ui-quadrant-CeM23s0z.js → vue-ui-quadrant-CG6_CWsQ.js} +510 -481
  129. package/dist/{vue-ui-quick-chart-C0RMQzjC.js → vue-ui-quick-chart-DOeRhk7r.js} +795 -758
  130. package/dist/vue-ui-radar-DdHa9Hsh.js +1013 -0
  131. package/dist/{vue-ui-rating-tj97undO.js → vue-ui-rating-DtzmtJwF.js} +26 -26
  132. package/dist/vue-ui-relation-circle-B5lL4l9w.js +670 -0
  133. package/dist/vue-ui-ridgeline-3pk4Mlft.js +1302 -0
  134. package/dist/vue-ui-rings-DhyrjrZi.js +884 -0
  135. package/dist/vue-ui-scatter-DKCD70mi.js +1619 -0
  136. package/dist/{vue-ui-skeleton-87TORm6s.js → vue-ui-skeleton-CzzdmraB.js} +3 -3
  137. package/dist/{vue-ui-smiley-B74geHT3.js → vue-ui-smiley-OYyM-ukP.js} +2 -2
  138. package/dist/vue-ui-spark-trend-BMTcxeCT.js +364 -0
  139. package/dist/vue-ui-sparkbar-DVk1JiPL.js +381 -0
  140. package/dist/vue-ui-sparkgauge-Cq9Nw_xu.js +260 -0
  141. package/dist/vue-ui-sparkhistogram-PFHlCE_k.js +411 -0
  142. package/dist/vue-ui-sparkline-BHHwO_cV.js +549 -0
  143. package/dist/vue-ui-sparkstackbar-BosVkkiC.js +470 -0
  144. package/dist/vue-ui-stackbar-Djk5CPUy.js +1867 -0
  145. package/dist/vue-ui-stackline-mU4CSol9.js +1963 -0
  146. package/dist/{vue-ui-strip-plot-C1N2n39d.js → vue-ui-strip-plot-CZQSL0GK.js} +343 -314
  147. package/dist/{vue-ui-table-CcuoPHgI.js → vue-ui-table-DMM090pe.js} +5 -5
  148. package/dist/vue-ui-table-heatmap-vQEFrjCX.js +307 -0
  149. package/dist/{vue-ui-table-sparkline-BAxmZRff.js → vue-ui-table-sparkline-CQJc0mJY.js} +292 -263
  150. package/dist/vue-ui-thermometer-D1uxoVeZ.js +613 -0
  151. package/dist/{vue-ui-timer-BVsUQJz_.js → vue-ui-timer-jTnS3ES5.js} +25 -25
  152. package/dist/vue-ui-tiremarks-Bv-oIFVV.js +477 -0
  153. package/dist/vue-ui-treemap-B9MVtunp.js +1359 -0
  154. package/dist/{vue-ui-vertical-bar-B3gfBqD_.js → vue-ui-vertical-bar-BSbDj5qZ.js} +520 -485
  155. package/dist/{vue-ui-waffle-Bhlqo4xM.js → vue-ui-waffle-DIALVfvc.js} +376 -347
  156. package/dist/vue-ui-wheel-aUhrFpGk.js +690 -0
  157. package/dist/vue-ui-word-cloud-DZmMWsUu.js +904 -0
  158. package/dist/{vue-ui-world-C8KVyDim.js → vue-ui-world-CVLlgp2f.js} +57 -57
  159. package/dist/vue-ui-xy-Cy7mOurZ.js +3455 -0
  160. package/dist/vue-ui-xy-canvas-Cr13t9M5.js +1599 -0
  161. package/dist/vue_ui_vertical_bar-CELc39b8.js +18 -0
  162. package/package.json +5 -5
  163. package/dist/themes-AUNCOb2G.js +0 -53
  164. package/dist/vue-ui-age-pyramid-8bUepd28.js +0 -933
  165. package/dist/vue-ui-bullet-BvT4scFv.js +0 -630
  166. package/dist/vue-ui-chord-Dl9Y4mcz.js +0 -1153
  167. package/dist/vue-ui-circle-pack-CU09BzOV.js +0 -803
  168. package/dist/vue-ui-donut-evolution-DiGhMwMO.js +0 -1208
  169. package/dist/vue-ui-dumbbell-BlF3CLbN.js +0 -1231
  170. package/dist/vue-ui-flow-BQi5L8mJ.js +0 -991
  171. package/dist/vue-ui-funnel-CM_6Sare.js +0 -716
  172. package/dist/vue-ui-galaxy-BnZA62Li.js +0 -808
  173. package/dist/vue-ui-gauge-DAk72bez.js +0 -835
  174. package/dist/vue-ui-history-plot-BYQh3E8U.js +0 -1204
  175. package/dist/vue-ui-molecule-Bd1OXvl3.js +0 -753
  176. package/dist/vue-ui-mood-radar-DuoiTsYn.js +0 -903
  177. package/dist/vue-ui-nested-donuts-BTswQFjz.js +0 -1419
  178. package/dist/vue-ui-onion-D-1U2Qgl.js +0 -915
  179. package/dist/vue-ui-parallel-coordinate-plot-D-7VFHas.js +0 -1051
  180. package/dist/vue-ui-radar-BSfxyur3.js +0 -984
  181. package/dist/vue-ui-relation-circle-C7uV2mIj.js +0 -641
  182. package/dist/vue-ui-ridgeline-CYMfTlwI.js +0 -1273
  183. package/dist/vue-ui-rings-C96aj57d.js +0 -855
  184. package/dist/vue-ui-scatter-CtvOXUnx.js +0 -1590
  185. package/dist/vue-ui-spark-trend-6_Ibziyv.js +0 -337
  186. package/dist/vue-ui-sparkbar-BDCocMLI.js +0 -352
  187. package/dist/vue-ui-sparkgauge-CQ4Zk9-f.js +0 -233
  188. package/dist/vue-ui-sparkhistogram-BlTV9wfn.js +0 -384
  189. package/dist/vue-ui-sparkline-DWESyiqL.js +0 -514
  190. package/dist/vue-ui-sparkstackbar-DK_7X8mL.js +0 -441
  191. package/dist/vue-ui-stackbar-BWuw8ff4.js +0 -1827
  192. package/dist/vue-ui-table-heatmap-C9EMEM3Z.js +0 -282
  193. package/dist/vue-ui-thermometer-CDrM-WFq.js +0 -584
  194. package/dist/vue-ui-tiremarks-BQH2pNkG.js +0 -450
  195. package/dist/vue-ui-treemap-6WLoCHsH.js +0 -1330
  196. package/dist/vue-ui-wheel-CqHw1WuW.js +0 -663
  197. package/dist/vue-ui-word-cloud-CKuWZGLv.js +0 -875
  198. package/dist/vue-ui-xy-Cz2qIEfi.js +0 -3424
  199. package/dist/vue-ui-xy-canvas-y4h7gEFp.js +0 -1564
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
  # vue-data-ui
9
9
 
10
10
  [![npm](https://img.shields.io/npm/v/vue-data-ui)](https://github.com/graphieros/vue-data-ui)
11
- [![Static Badge](https://img.shields.io/badge/components-63-blue)](https://github.com/graphieros/vue-data-ui)
11
+ [![Static Badge](https://img.shields.io/badge/components-64-blue)](https://github.com/graphieros/vue-data-ui)
12
12
  [![GitHub issues](https://img.shields.io/github/issues/graphieros/vue-data-ui)](https://github.com/graphieros/vue-data-ui/issues)
13
13
  [![License](https://img.shields.io/badge/license-MIT-green)](https://github.com/graphieros/vue-data-ui?tab=MIT-1-ov-file#readme)
14
14
  [![MadeWithVueJs.com shield](https://madewithvuejs.com/storage/repo-shields/4526-shield.svg)](https://madewithvuejs.com/p/vue-data-ui/shield-link)
@@ -49,6 +49,7 @@ Available components
49
49
  - [VueUiRings](https://vue-data-ui.graphieros.com/docs#vue-ui-rings)
50
50
  - [VueUiScatter](https://vue-data-ui.graphieros.com/docs#vue-ui-scatter)
51
51
  - [VueUiStackbar](https://vue-data-ui.graphieros.com/docs#vue-ui-stackbar)
52
+ - [VueUiStackline](https://vue-data-ui.graphieros.com/docs#vue-ui-stackline)
52
53
  - [VueUiStripPlot](https://vue-data-ui.graphieros.com/docs#vue-ui-strip-plot)
53
54
  - [VueUiThermometer](https://vue-data-ui.graphieros.com/docs#vue-ui-thermometer)
54
55
  - [VueUiTiremarks](https://vue-data-ui.graphieros.com/docs#vue-ui-tiremarks)
@@ -127,7 +128,7 @@ app.component("VueUiRadar", VueUiRadar);
127
128
  app.mount("#app");
128
129
  ```
129
130
 
130
- Or you can import just what you need in your files:
131
+ Or you can import just what you need into your files:
131
132
 
132
133
  ```js
133
134
  <script setup>import {(VueUiRadar, VueUiXy)} from "vue-data-ui";</script>
@@ -207,7 +208,7 @@ customFormat: ({ seriesIndex, datapoint, series, config }) => {
207
208
  Data labels can be customized using the `formatter` config attribute (since v2.3.29 on all chart components):
208
209
 
209
210
  ```
210
- // the formatter attribute is generally placed under label or dataLabel config attribute objects
211
+ // the formatter attribute is generally placed under the label or dataLabel config attribute objects
211
212
 
212
213
  const config = ref({
213
214
  formatter: ({ value, config }) => {
@@ -268,8 +269,8 @@ It is recommended to set the show legend config attribute to false, to hide the
268
269
 
269
270
  ## Tooltip #tooltip-before & #tooltip-after slots
270
271
 
271
- Customize tooltip contents with #tooltip-before and #tooltip-after slots.
272
- It is that easy to include an image, another chart or any other content into your tooltips. It's an alternative to the config option tooltip.customFormat, in case richer tooltip content is needed.
272
+ Customize tooltip contents with #tooltip-before and #tooltip-after slots, to include an image, another chart or any other rich content into your tooltips.
273
+ It's an alternative to the config option `tooltip.customFormat`, in case richer tooltip content is needed.
273
274
 
274
275
  Both slots expose the following object:
275
276
 
@@ -301,6 +302,7 @@ The following charts bear these slots:
301
302
  - VueUiScatter
302
303
  - VueUiSparkStackbar
303
304
  - VueUiStackbar
305
+ - VueUiStackline
304
306
  - VueUiTreemap
305
307
  - VueUiHorizontalBar
306
308
  - VueUiWordCloud
@@ -331,13 +333,13 @@ The following charts bear these slots:
331
333
  </template>
332
334
  <template #tooltip-after={ datapoint, seriesIndex, dataset, config }">
333
335
  <div>
334
- This content shows last
336
+ This content shows the last
335
337
  </div>
336
338
  </template>
337
339
  </VueUiDonut>
338
340
  ```
339
341
 
340
- The #tooltip-before & #tooltip-after slots also works when using the VueDataUi universal component, if the component it wraps supports them.
342
+ The #tooltip-before & #tooltip-after slots also work when using the VueDataUi universal component, if the component it wraps supports them.
341
343
 
342
344
  ## Add a watermark using the #watermark slot
343
345
 
@@ -470,6 +472,7 @@ From the dataset you pass into the props, this component will produce the most a
470
472
  | `VueUiRings` | `VueUiRingsDatasetItem[]` | `VueUiRingsConfig` | `@selectLegend`, `hideSeries`, `showSeries`, `getData`, `generatePdf`, `generateCsv`, `generateImage`, `toggleTable`, `toggleTooltip` , `getImage` | `#svg`, `#legend`, `#tooltip-before`, `#tooltip-after`, `#watermark`, `#chart-background`, `#pattern` | ✅ | ✅ |
471
473
  | `VueUiScatter` | `VueUiScatterDatasetItem[]` | `VueUiScatterConfig` | `hideSeries`, `showSeries`, `getData`, `generatePdf`, `generateCsv`, `generateImage`, `toggleTable`, `toggleTooltip` , `getImage` | `#svg`, `#legend`, `#tooltip-before`, `#tooltip-after`, `#watermark`, `#chart-background` | ✅ | ✅ |
472
474
  | `VueUiStackbar` | `VueUiStackbarDatasetItem[]` | `VueUiStackbarConfig` | `@selectLegend`, `@selectDatapoint`, `@selectTimeLabel`, `getData`, `generatePdf`, `generateCsv`, `generateImage`, `toggleTable`, `toggleLabels`, `toggleTooltip` , `getImage` | `#svg`, `#legend`, `#time-label`, `#tooltip-before`, `#tooltip-after`, `#reset-action`, `#watermark`, `#chart-background`, `#pattern` | ✅ | ✅ |
475
+ | `VueUiStackline` | `VueUiStacklineDatasetItem[]` | `VueUiStacklineConfig` | `@selectLegend`, `@selectDatapoint`, `@selectTimeLabel`, `getData`, `generatePdf`, `generateCsv`, `generateImage`, `toggleTable`, `toggleLabels`, `toggleTooltip` , `getImage` | `#svg`, `#legend`, `#time-label`, `#tooltip-before`, `#tooltip-after`, `#reset-action`, `#watermark`, `#chart-background`, `#pattern` | ✅ | ✅ |
473
476
  | `VueUiStripPlot` | `VueUiStripPlotDataset[]` | `VueUiStripPlotConfig` | `@selectDatapoint`, `getData`, `generatePdf`, `generateCsv`, `generateImage`, `toggleTable`, `toggleLabels`, `toggleTooltip` , `getImage` | `#svg`, `#legend`, `#tooltip-before`, `#tooltip-after`, `#watermark`, `#chart-background` | ✅ | ✅ |
474
477
  | `VueUiThermometer` | `VueUiThermometerDataset` | `VueUiThermometerConfig` | `generatePdf`, `generateImage` , `getImage` | `#svg`, `#watermark`, `#chart-background` | ❌ | ✅ |
475
478
  | `VueUiTiremarks` | `VueUiTiremarksDataset` | `VueUiTiremarksConfig` | `generatePdf`, `generateImage` , `getImage` | `#svg`, `#legend`, `#watermark`, `#chart-background` | ❌ | ✅ |
@@ -536,8 +539,8 @@ All names of available icons are available in the vue-data-ui.d.ts file under th
536
539
 
537
540
  # User options
538
541
 
539
- User options menu is accessible in the burger menu located on the top right of charts, and visible by default.
540
- To hide user options menu, set config.userOptions.show to false:
542
+ User options menu is accessible in the burger menu located on the top right of the charts, and visible by default.
543
+ To hide the user options menu, set config.userOptions.show to false:
541
544
 
542
545
  ```js
543
546
  const config = ref({
@@ -548,7 +551,7 @@ const config = ref({
548
551
  })
549
552
  ```
550
553
 
551
- User options menu can be set to appear only when hovering the component:
554
+ The user options menu can be set to appear only when hovering over the component:
552
555
 
553
556
  ```js
554
557
  const config = ref({
@@ -560,7 +563,7 @@ const config = ref({
560
563
  });
561
564
  ```
562
565
 
563
- Predefined actions in user options menu depend on the type of chart. Some charts have more or less actions available. Action buttons contain an predefined icons by default.
566
+ Predefined actions in the user options menu depend on the type of chart. Some charts have more or fewer actions available. Action buttons contain predefined icons by default.
564
567
 
565
568
  To hide a given action, set the userOption.buttons, for example:
566
569
 
@@ -593,7 +596,7 @@ What happens when the button is clicked is taken care of by the component, excep
593
596
  </VueUiDonut>
594
597
  ```
595
598
 
596
- You can pass a callback trhough the config, for each button, to override the default behavior:
599
+ You can pass a callback through the config, for each button, to override the default behavior:
597
600
 
598
601
  ```ts
599
602
  const config = {
@@ -608,7 +611,7 @@ const config = {
608
611
  csv: (csvStr: string) => {
609
612
  console.log(csvStr);
610
613
  },
611
- // the other atributes also have the same names as the buttons
614
+ // the other attributes also have the same names as the buttons
612
615
  },
613
616
  },
614
617
  };
@@ -654,6 +657,7 @@ User options actions available per chart:
654
657
  | VueUiSparkgauge | (no user options menu) |
655
658
  | VueUiSparkline | (no user options menu) |
656
659
  | VueUiStackbar | optionTooltip, optionPdf, optionImg, optionCsv, optionTable, optionLabels, optionFullscreen, optionAnnotator |
660
+ | VueUiStackline | optionTooltip, optionPdf, optionImg, optionCsv, optionTable, optionLabels, optionFullscreen, optionAnnotator |
657
661
  | VueUiStripPlot | optionTooltip, optionPdf, optionImg, optionCsv, optionTable, optionLabels, optionFullscreen, optionAnnotator |
658
662
  | VueUiTableHeatmap | optionPdf, optionImg, optionCsv, optionFullscreen |
659
663
  | VueUiTableSparkline | optionPdf, optionImg, optionCsv, optionFullscreen |
@@ -730,6 +734,7 @@ It is possible to provide a custom palette in the config prop through config.cus
730
734
  - VueUiSparkStackbar
731
735
  - VueUiSparkbar
732
736
  - VueUiStackbar
737
+ - VueUiStackline
733
738
  - VueUiStripPlot
734
739
  - VueUiTableSparkline
735
740
  - VueUiThermometer
@@ -747,7 +752,7 @@ Accepted color formats: HEX, RGB, HSL, named colors.
747
752
  # Responsive charts
748
753
 
749
754
  By default, all charts will scale to the width of their container.
750
- However the folowing charts can be made fully responsive, making them better to use in resizable containers:
755
+ However the following charts can be made fully responsive, making them better to use in resizable containers:
751
756
 
752
757
  | Component | Responsive feature implemented |
753
758
  | --------------------------- | ------------------------------ |
@@ -787,6 +792,7 @@ However the folowing charts can be made fully responsive, making them better to
787
792
  | VueUiSparkgauge | - |
788
793
  | VueUiSparkline | ✅ |
789
794
  | VueUiStackbar | ✅ |
795
+ | VueUiStackline | ✅ |
790
796
  | VueUiStripPlot | ✅ |
791
797
  | VueUiTableHeatmap | - |
792
798
  | VueUiTableSparkline | - |
@@ -818,14 +824,14 @@ const config = ref({
818
824
  Very large datasets (> 5k or > 10k datapoints) will cause the browsers rendering engines to slow down, caused by too many SVG DOM elements to render.
819
825
  The following charts use the LTTB algorithm (Largest-Triangle-Three-Bucket) beyond a certain threshold to downsample the rendered dataset while preserving its shape. These components are the most susceptible to be used with very large datasets:
820
826
 
821
- | Component | Default Threshold | Remark |
822
- | --------------- | ----------------- | --------------------------------------------------------- |
823
- | VueUiXy | 1095 | |
824
- | VueUiXyCanvas | 10000 | Since this chart uses canvas, threhsold can be set higher |
825
- | VueUiQuadrant | 1095 | |
826
- | VueUiScatter | 1095 | |
827
- | VueUiSparkline | 1095 | |
828
- | VueUiSparkTrend | 1095 | |
827
+ | Component | Default Threshold | Remark |
828
+ | --------------- | ----------------- | ------------------------------------------------------------- |
829
+ | VueUiXy | 1095 | |
830
+ | VueUiXyCanvas | 10000 | Since this chart uses canvas, the threshold can be set higher |
831
+ | VueUiQuadrant | 1095 | |
832
+ | VueUiScatter | 1095 | |
833
+ | VueUiSparkline | 1095 | |
834
+ | VueUiSparkTrend | 1095 | |
829
835
 
830
836
  The downsample threshold for each component can be set in the config prop passed to components:
831
837
 
@@ -878,7 +884,7 @@ A pattern element must be used inside this slot. It will be injected inside a de
878
884
  ```html
879
885
  <VueUiDonut :config="config" :dataset="dataset">
880
886
  <template #pattern="{ seriesIndex, patternId }">
881
- <!-- Apply a patattern on the first datapoint only -->
887
+ <!-- Apply a pattern on the first datapoint only -->
882
888
  <pattern
883
889
  v-if="seriesIndex === 0"
884
890
  :id="patternId"
@@ -901,12 +907,13 @@ The #pattern slot is available on the following components:
901
907
  - VueUiRidgeline
902
908
  - VueUiRings
903
909
  - VueUiStackbar
910
+ - VueUiStackline
904
911
  - VueUiHorizontalBar
905
912
  - VueUiWaffle
906
913
  - VueUiWorld
907
914
  - VueUiXy
908
915
 
909
- A set of 12 readymade patterns are available through the VueUiPattern component:
916
+ A set of 12 readymade patterns is available through the VueUiPattern component:
910
917
 
911
918
  ```js
912
919
  import { VueUiPattern } from "vue-data-ui";
@@ -949,7 +956,7 @@ List of available patterns:
949
956
 
950
957
  # Utility functions
951
958
 
952
- A set of uility functions is available:
959
+ A set of utility functions is available:
953
960
 
954
961
  ```js
955
962
  import {
@@ -1104,7 +1111,7 @@ const merged = mergeConfigs({
1104
1111
 
1105
1112
  ## Multiline data labels
1106
1113
 
1107
- Some components will display labels on mutliple lines when the provided text contains a line break. (example: "I contain\na line break").
1114
+ Some components will display labels on multiple lines when the provided text contains a line break. (example: "I contain\na line break").
1108
1115
  Below is a table of the places where such line breaks can be used:
1109
1116
 
1110
1117
  | Component | Label displayed | Where to use line breaks |
@@ -1117,11 +1124,12 @@ Below is a table of the places where such line breaks can be used:
1117
1124
  | VueUiQuickChart | Time labels (x axis) | config.xyPeriods |
1118
1125
  | VueUiRidgeline | Time labels (x axis) | config.style.chart.xAxis.labels.values |
1119
1126
  | VueUiStackbar | Time labels (x axis) | config.style.chart.grid.x.timeLabels.values |
1127
+ | VueUiStackline | Time labels (x axis) | config.style.chart.grid.x.timeLabels.values |
1120
1128
  | VueUiStripPlot | x axis labels | dataset names |
1121
1129
 
1122
1130
  ## PDF generation
1123
1131
 
1124
- This package requires jspdf as a peer dependency. Please install it in your project if you intend on using the PDF printing feature.
1132
+ This package requires jspdf as a peer dependency. Please install it in your project if you intend to use the PDF printing feature.
1125
1133
 
1126
1134
  ## `useObjectBindings`
1127
1135
 
@@ -1237,6 +1245,7 @@ function hideSeriesByName(name) {
1237
1245
  - VueUiScatter
1238
1246
  - VueUiSparkStackbar
1239
1247
  - VueUiStackbar
1248
+ - VueUiStackline
1240
1249
  - VueUiTreemap
1241
1250
  - VueUiWaffle
1242
1251
  - VueUiXy
@@ -1,5 +1,5 @@
1
1
  import { computed as u, createElementBlock as d, openBlock as m, createElementVNode as t, unref as o } from "vue";
2
- import { c as n } from "./lib-C_mNZmhD.js";
2
+ import { c as n } from "./lib-C5BH09_g.js";
3
3
  const s = { class: "vue-ui-element-arrow" }, f = ["id", "viewBox", "refX", "refY", "markerWidth", "markerHeight"], c = ["d", "fill"], h = ["id", "viewBox", "refX", "refY", "markerWidth", "markerHeight"], y = ["d", "fill"], v = ["x1", "y1", "x2", "y2", "stroke", "stroke-width", "stroke-linecap", "stroke-dasharray", "marker-end", "marker-start"], z = {
4
4
  __name: "Arrow",
5
5
  props: {
@@ -1,6 +1,6 @@
1
1
  import { ref as L, reactive as P, computed as N, onMounted as R, onUnmounted as F, createBlock as I, openBlock as z, Teleport as V, createElementBlock as B, createCommentVNode as j, withModifiers as s, normalizeStyle as D, createElementVNode as o, unref as K, renderSlot as S, createVNode as U, normalizeClass as q, nextTick as A } from "vue";
2
- import G from "./BaseIcon-BmMbm4d0.js";
3
- import { X as J } from "./lib-C_mNZmhD.js";
2
+ import G from "./BaseIcon-CofSxalQ.js";
3
+ import { X as J } from "./lib-C5BH09_g.js";
4
4
  import { _ as Q } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const Z = ["xmlns"], _ = { class: "modal-title" }, ee = { class: "draggable-dialog-actions" }, te = {
6
6
  __name: "BaseDraggableDialog",
@@ -1,5 +1,5 @@
1
1
  import { computed as e, createElementBlock as s, openBlock as i, normalizeClass as k, unref as L } from "vue";
2
- import { X as l } from "./lib-C_mNZmhD.js";
2
+ import { X as l } from "./lib-C5BH09_g.js";
3
3
  import { _ as d } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const M = ["xmlns", "viewBox", "height", "width", "innerHTML"], h = {
5
5
  __name: "BaseIcon",
@@ -24,8 +24,8 @@ const M = ["xmlns", "viewBox", "height", "width", "innerHTML"], h = {
24
24
  },
25
25
  setup(o) {
26
26
  const t = o, r = e(() => t.name === "numbers" ? "0 0 20 21" : "0 0 20 20"), n = e(() => ({
27
- annotator: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" d="M 3 17 L 4 12 C 5 12 7 13 8 15 L 3 17 M 4 12 L 11 2 C 12 2 14 3 15 5 L 8 15 M 12 1 C 13 1 15 2 16 4" />`,
28
- annotatorDisabled: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" d="M 3 17 L 4 12 C 5 12 7 13 8 15 L 3 17 M 4 12 L 11 2 C 12 2 14 3 15 5 L 8 15 M 12 1 C 13 1 15 2 16 4 M 2 2 L 18 17" />`,
27
+ annotator: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 2 18 L 3 14 L 2 18 L 6 17 C 4 16 4 16 3 14 M 14 3 L 17 6 L 18 5 C 18 5 19 4 18 3 L 17 2 C 17 2 16 1 15 2 L 14 3 M 5 14 L 6 15 C 6 15 7 16 8 15 L 15 8 C 16 7 15 6 15 6 L 14 5 C 14 5 13 4 12 5 L 5 12 C 4 13 5 14 5 14" />`,
28
+ annotatorDisabled: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 2 18 L 3 14 L 2 18 L 6 17 C 4 16 4 16 3 14 M 14 3 L 17 6 L 18 5 C 18 5 19 4 18 3 L 17 2 C 17 2 16 1 15 2 L 14 3 M 5 14 L 6 15 C 6 15 7 16 8 15 L 15 8 C 16 7 15 6 15 6 L 14 5 C 14 5 13 4 12 5 L 5 12 C 4 13 5 14 5 14 M 2 2 L 18 18" />`,
29
29
  chart3dBar: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" d="M10 1 6 3 6 17 10 19 14 17 14 3 10 1M6 3 10 5 14 3M10 5 10 19" stroke-linecap="round" stroke-linejoin="round"/><path fill="${t.stroke}" stroke="none" style="opacity:0.3" d="M 6 10 L 10 12 L 14 10 L 14 17 L 10 19 L 6 17 L 6 10"/>`,
30
30
  chartAgePyramid: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" d="M 2 15 L 2 17 L 9 17 L 9 15 L 2 15 M 11 15 L 11 17 L 18 17 L 18 15 L 11 15 M 9 13 L 3 13 L 3 11 L 9 11 L 9 13 M 11 11 L 11 13 L 17 13 L 17 11 L 11 11 M 9 9 L 4 9 L 4 7 L 9 7 L 9 9 M 11 7 L 11 9 L 16 9 L 16 7 L 11 7 M 9 5 L 6 5 L 6 3 L 9 3 L 9 5 M 11 3 L 11 5 L 14 5 L 14 3 L 11 3" />`,
31
31
  chartBar: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" d="M2 12 2 18C2 19 2 19 3 19L5 19C6 19 6 19 6 18L6 12C6 11 6 11 5 11L3 11C2 11 2 11 2 12M8 7 8 18C8 19 8 19 9 19L11 19C12 19 12 19 12 18L12 7C12 6 12 6 11 6L9 6C8 6 8 6 8 7M14 2 14 18C14 19 14 19 15 19L17 19C18 19 18 19 18 18L18 2C18 1 18 1 17 1L15 1C14 1 14 1 14 2"/>`,
@@ -195,7 +195,8 @@ const M = ["xmlns", "viewBox", "height", "width", "innerHTML"], h = {
195
195
  bringToBack: `<path fill="${t.stroke}" d="M 7 13 L 7 10 L 8 10 C 10 10 10 9 10 8 L 10 7 L 13 7 L 13 10 L 12 10 C 11 10 10 10 10 12 L 10 13 L 7 13"/><path fill="none" stroke="${t.stroke}" stroke-linecap="round" stroke-linejoin="round" d="M 11 9 M 9 8 L 9 3 C 9 3 9 2 8 2 L 3 2 C 2 2 2 3 2 3 L 2 8 C 2 9 3 9 3 9 L 8 9 C 9 9 9 8 9 8 M 11 12 L 11 17 C 11 18 12 18 12 18 L 17 18 C 17 18 18 18 18 17 L 18 12 C 18 12 18 11 17 11 L 12 11 C 11 11 11 12 11 12"/>`,
196
196
  printer: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 6 13 L 6 17 C 6 18 7 18 7 18 L 13 18 C 13 18 14 18 14 17 L 14 13 C 14 13 14 12 13 12 L 7 12 C 6 12 6 13 6 13 M 5 15 L 3 15 C 3 15 2 15 2 14 L 2 9 C 2 8 3 8 3 8 L 17 8 C 18 8 18 9 18 9 L 18 14 C 18 15 17 15 17 15 L 15 15 M 6 7 L 6 4 C 6 3 7 3 7 3 L 13 3 C 14 3 14 4 14 4 L 14 7"/>`,
197
197
  save: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 3 2 L 3 2 L 14 2 L 18 6 L 18 17 C 18 18 17 18 17 18 L 3 18 C 3 18 2 18 2 17 L 2 3 C 2 3 2 2 3 2 M 5 2 L 5 4 C 5 5 6 5 6 5 L 12 5 C 12 5 13 5 13 4 L 13 2 M 10 9 A 1 1 0 0 0 10 13 A 1 1 0 0 0 10 9"/>`,
198
- svg: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 4 1 C 2 1 1 2 1 4 L 1 16 C 1 18 2 19 4 19 L 16 19 C 18 19 19 18 19 16 L 19 6 C 15 6 14 5 14 1 Z M 8.458 9.052 L 10 16 L 11.519 9.03 M 16 11 C 16 8 12.995 8.81 13 11 L 13 14 C 13 17 15.99 16.299 16 14 L 16 13 L 15 13 M 6.982 10.286 C 6.564 8.238 3.921 8.788 4 11 C 4.757 13.259 6.806 11.607 7 14 C 7 17 3.854 16.299 4 14"/>`
198
+ svg: `<path fill="none" stroke="${t.stroke}" stroke-width="${t.strokeWidth}" stroke-linecap="round" stroke-linejoin="round" d="M 4 1 C 2 1 1 2 1 4 L 1 16 C 1 18 2 19 4 19 L 16 19 C 18 19 19 18 19 16 L 19 6 C 15 6 14 5 14 1 Z M 8.458 9.052 L 10 16 L 11.519 9.03 M 16 11 C 16 8 12.995 8.81 13 11 L 13 14 C 13 17 15.99 16.299 16 14 L 16 13 L 15 13 M 6.982 10.286 C 6.564 8.238 3.921 8.788 4 11 C 4.757 13.259 6.806 11.607 7 14 C 7 17 3.854 16.299 4 14"/>`,
199
+ chartStackline: `<path d="M 2 16 L 2 18 L 18 18 L 18 10 L 14 14 L 11 12 L 8 15 L 5 13 Z" stroke="none" fill="${t.stroke}" style="opacity:0.9"/><path d="M 2 16 L 5 13 L 8 15 L 11 12 L 14 14 L 18 10 L 18 6 L 14 8 L 11 6 L 8 9 L 5 8 L 2 9 Z" stroke="none" fill="${t.stroke}"" style="opacity:0.6"/><path d="M 2 9 L 2 2 L 18 2 L 18 6 L 14 8 L 11 6 L 8 9 L 5 8 Z" stroke="none" fill="${t.stroke}" style="opacity:0.3"/><path d="M 1 1 L 1 19 L 19 19" stroke="${t.stroke}" stroke-linecap="round" stroke-linejoin="round" fill="none"/>`
199
200
  }));
200
201
  return (a, C) => (i(), s("svg", {
201
202
  xmlns: L(l),
@@ -207,7 +208,7 @@ const M = ["xmlns", "viewBox", "height", "width", "innerHTML"], h = {
207
208
  style: { background: "transparent" }
208
209
  }, null, 10, M));
209
210
  }
210
- }, u = /* @__PURE__ */ d(h, [["__scopeId", "data-v-51ef3006"]]);
211
+ }, u = /* @__PURE__ */ d(h, [["__scopeId", "data-v-1d5bfa8b"]]);
211
212
  export {
212
213
  u as default
213
214
  };
@@ -1,6 +1,6 @@
1
- import { ref as u, computed as T, watchEffect as U, onMounted as J, onBeforeUnmount as W, watch as Y, withDirectives as j, createElementBlock as d, openBlock as s, withKeys as q, createElementVNode as i, createCommentVNode as R, createBlock as A, normalizeStyle as a, renderSlot as G, normalizeProps as H, guardReactiveProps as Q, createVNode as C, withModifiers as n, Fragment as M, renderList as N, Teleport as X, unref as Z, nextTick as _ } from "vue";
2
- import g from "./BaseIcon-BmMbm4d0.js";
3
- import { J as ee } from "./lib-C_mNZmhD.js";
1
+ import { ref as u, computed as T, watchEffect as U, onMounted as W, onBeforeUnmount as Y, watch as j, withDirectives as q, createElementBlock as d, openBlock as s, withKeys as A, createElementVNode as i, createCommentVNode as R, createBlock as G, normalizeStyle as a, renderSlot as H, normalizeProps as J, guardReactiveProps as Q, createVNode as C, withModifiers as n, Fragment as M, renderList as N, Teleport as X, unref as Z, nextTick as _ } from "vue";
2
+ import g from "./BaseIcon-CofSxalQ.js";
3
+ import { w as ee } from "./lib-C5BH09_g.js";
4
4
  import { v as oe } from "./vClickOutside-C6WiFswA.js";
5
5
  import { _ as te } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
6
  const ne = ["onClick"], le = { style: { position: "absolute", top: "50%", left: "50%", transform: "translate(-50%,-46%)" } }, re = ["value"], ie = ["onClick"], ue = { style: { position: "absolute", top: "50%", left: "50%", transform: "translate(-50%,-46%)" } }, se = ["value"], ae = {
@@ -79,11 +79,11 @@ const ne = ["onClick"], le = { style: { position: "absolute", top: "50%", left:
79
79
  function P() {
80
80
  document.visibilityState === "visible" && k();
81
81
  }
82
- J(() => {
82
+ W(() => {
83
83
  window.addEventListener("scroll", f, { passive: !0 }), window.addEventListener("resize", f, { passive: !0 }), window.addEventListener("focus", h), document.addEventListener("visibilitychange", P);
84
- }), W(() => {
84
+ }), Y(() => {
85
85
  window.removeEventListener("scroll", f), window.removeEventListener("resize", f), window.removeEventListener("focus", h), document.removeEventListener("visibilitychange", P);
86
- }), Y(
86
+ }), j(
87
87
  () => v.value,
88
88
  (o) => {
89
89
  c.value && (c.value.value = o);
@@ -100,10 +100,10 @@ const ne = ["onClick"], le = { style: { position: "absolute", top: "50%", left:
100
100
  "#FF1493",
101
101
  "#00CED1"
102
102
  ]);
103
- return (o, e) => j((s(), d("div", {
103
+ return (o, e) => q((s(), d("div", {
104
104
  ref_key: "wrapperRef",
105
105
  ref: O,
106
- onKeydown: q(x, ["esc"]),
106
+ onKeydown: A(x, ["esc"]),
107
107
  style: { height: "100%", width: "100%", position: "relative" }
108
108
  }, [
109
109
  i("button", {
@@ -114,7 +114,7 @@ const ne = ["onClick"], le = { style: { position: "absolute", top: "50%", left:
114
114
  style: a(V.value),
115
115
  type: "button"
116
116
  }, [
117
- G(o.$slots, "annotator-action-color", H(Q({ color: p.value })), () => [
117
+ H(o.$slots, "annotator-action-color", J(Q({ color: p.value })), () => [
118
118
  C(g, {
119
119
  name: "palette",
120
120
  stroke: p.value,
@@ -174,7 +174,7 @@ const ne = ["onClick"], le = { style: { position: "absolute", top: "50%", left:
174
174
  }, null, 40, re)
175
175
  ], 36)
176
176
  ], 36)) : R("", !0),
177
- r.value && t.teleported ? (s(), A(X, {
177
+ r.value && t.teleported ? (s(), G(X, {
178
178
  key: 1,
179
179
  to: "body"
180
180
  }, [
@@ -1,6 +1,6 @@
1
1
  import { useCssVars as A, unref as e, computed as D, ref as k, onMounted as E, createElementBlock as o, openBlock as l, normalizeClass as C, normalizeStyle as r, createCommentVNode as m, createElementVNode as a, withKeys as R, createVNode as B, toDisplayString as I, Fragment as g, renderList as v, renderSlot as N } from "vue";
2
- import { _ as K } from "./Shape-CNXKB8O0.js";
3
- import O from "./BaseIcon-BmMbm4d0.js";
2
+ import { _ as K } from "./Shape-DE6X_t31.js";
3
+ import O from "./BaseIcon-CofSxalQ.js";
4
4
  import { _ as T } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const j = { class: "vue-ui-data-table" }, F = { style: { display: "flex", "align-items": "center", "justify-content": "flex-end", "padding-right": "3px", gap: "3px" } }, L = { style: { width: "12px", height: "12px" } }, M = {
6
6
  key: 0,
@@ -1,8 +1,8 @@
1
- import { createElementBlock as n, openBlock as a, normalizeStyle as d, renderSlot as r, Fragment as f, renderList as m, normalizeClass as g, createCommentVNode as p, createVNode as h, mergeProps as k, unref as v } from "vue";
2
- import { an as y } from "./lib-C_mNZmhD.js";
3
- import { _ as x } from "./Shape-CNXKB8O0.js";
4
- import { _ as S } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
- const b = ["id"], $ = ["onClick", "viewBox"], B = {
1
+ import { createElementBlock as n, openBlock as a, normalizeStyle as d, renderSlot as r, Fragment as u, renderList as m, normalizeClass as g, createCommentVNode as p, createVNode as h, mergeProps as k, unref as v } from "vue";
2
+ import { D as y } from "./lib-C5BH09_g.js";
3
+ import { _ as x } from "./Shape-DE6X_t31.js";
4
+ import { _ as b } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
+ const S = ["id"], $ = ["onClick", "viewBox"], B = {
6
6
  __name: "Legend",
7
7
  props: {
8
8
  legendSet: {
@@ -29,7 +29,7 @@ const b = ["id"], $ = ["onClick", "viewBox"], B = {
29
29
  emits: ["clickMarker"],
30
30
  setup(t, { emit: c }) {
31
31
  const s = c;
32
- function u(o, l) {
32
+ function f(o, l) {
33
33
  s("clickMarker", { legend: o, i: l });
34
34
  }
35
35
  return (o, l) => (a(), n("div", {
@@ -45,13 +45,13 @@ const b = ["id"], $ = ["onClick", "viewBox"], B = {
45
45
  })
46
46
  }, [
47
47
  r(o.$slots, "legendTitle", { titleSet: t.legendSet }, void 0, !0),
48
- (a(!0), n(f, null, m(t.legendSet, (e, i) => (a(), n("div", {
48
+ (a(!0), n(u, null, m(t.legendSet, (e, i) => (a(), n("div", {
49
49
  key: `legend_${i}`,
50
50
  class: g({ "vue-data-ui-legend-item": !0, active: t.clickable })
51
51
  }, [
52
52
  e.shape ? (a(), n("svg", {
53
53
  key: 0,
54
- onClick: (C) => u(e, i),
54
+ onClick: (C) => f(e, i),
55
55
  height: "1em",
56
56
  width: "1em",
57
57
  viewBox: e.shape && e.shape === "star" ? "-10 -10 80 80" : "0 0 60 60",
@@ -77,9 +77,9 @@ const b = ["id"], $ = ["onClick", "viewBox"], B = {
77
77
  index: i
78
78
  }, void 0, !0)
79
79
  ], 2))), 128))
80
- ], 12, b));
80
+ ], 12, S));
81
81
  }
82
- }, L = /* @__PURE__ */ S(B, [["__scopeId", "data-v-04f1c373"]]);
82
+ }, L = /* @__PURE__ */ b(B, [["__scopeId", "data-v-5f2d7b2f"]]);
83
83
  export {
84
84
  L as default
85
85
  };
@@ -1,7 +1,7 @@
1
1
  import { ref as i, computed as we, onMounted as ke, nextTick as be, onBeforeUnmount as Ce, watch as oe, createElementBlock as x, openBlock as y, Fragment as q, createCommentVNode as Y, normalizeStyle as b, normalizeClass as D, createElementVNode as C, withDirectives as ae, createVNode as M, toDisplayString as re, unref as se, vModelText as ue, withModifiers as ie, renderList as ce } from "vue";
2
- import { S as $e, d as Se, X as Ae } from "./lib-C_mNZmhD.js";
3
- import R from "./BaseIcon-BmMbm4d0.js";
4
- import { C as Ee } from "./ColorPicker-ChuwChMo.js";
2
+ import { n as $e, d as Se, X as Ae } from "./lib-C5BH09_g.js";
3
+ import R from "./BaseIcon-CofSxalQ.js";
4
+ import { C as Ee } from "./ColorPicker-e1-OSGlQ.js";
5
5
  import { _ as Be } from "./_plugin-vue_export-helper-CHgC5LLL.js";
6
6
  const Te = {
7
7
  class: /* @__PURE__ */ D({
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock as e, openBlock as t, toDisplayString as o, unref as r } from "vue";
2
- const n = "3.5.2", a = { "aria-hidden": "true" }, p = {
2
+ const n = "3.7.0", a = { "aria-hidden": "true" }, p = {
3
3
  __name: "PackageVersion",
4
4
  setup(s) {
5
5
  return (c, i) => (t(), e("desc", a, "Composed with Vue Data UI " + o(r(n)), 1));
@@ -1,8 +1,8 @@
1
- import { ref as c, computed as he, watch as z, nextTick as se, onMounted as Ae, onBeforeUnmount as we, createElementBlock as W, createCommentVNode as O, openBlock as j, normalizeStyle as x, createElementVNode as S, withDirectives as re, renderSlot as B, createVNode as R, withCtx as be, normalizeProps as T, guardReactiveProps as M, normalizeClass as Y, toDisplayString as xe, unref as ye, vModelText as ue } from "vue";
2
- import F from "./BaseIcon-BmMbm4d0.js";
3
- import { C as Ce } from "./ColorPicker-ChuwChMo.js";
4
- import { S as ke, d as Se } from "./lib-C_mNZmhD.js";
5
- const Ee = {
1
+ import { ref as c, computed as he, watch as z, nextTick as se, onMounted as Ae, onBeforeUnmount as we, createElementBlock as W, createCommentVNode as O, openBlock as j, normalizeStyle as x, createElementVNode as E, withDirectives as re, renderSlot as B, createVNode as R, withCtx as be, normalizeProps as T, guardReactiveProps as M, normalizeClass as Y, toDisplayString as xe, unref as ye, vModelText as ue } from "vue";
2
+ import F from "./BaseIcon-CofSxalQ.js";
3
+ import { C as Ce } from "./ColorPicker-e1-OSGlQ.js";
4
+ import { n as ke, d as Ee } from "./lib-C5BH09_g.js";
5
+ const Se = {
6
6
  class: "vue-ui-pen-and-paper-action",
7
7
  style: { padding: "0 !important" }
8
8
  }, $e = ["disabled"], De = {
@@ -31,13 +31,13 @@ const Ee = {
31
31
  },
32
32
  emits: ["close"],
33
33
  setup(d, { emit: ie }) {
34
- const s = d, ve = ie, b = c([]), y = c([]), E = c(s.color), N = c(2), Q = c(!1), V = c(""), o = c(null), A = c(null), I = c(null), p = c("draw"), K = c(!1), f = c(null), q = c({ x: 0, y: 0 }), D = c([""]), P = c({ row: 0, col: 0 }), $ = c(16), J = c("url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAABg2lDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TpSIVh2YQcchQnSyIijhKFYtgobQVWnUwufQLmjQkKS6OgmvBwY/FqoOLs64OroIg+AHi6OSk6CIl/i8ptIjx4Lgf7+497t4BQrPKNKtnAtB020wn4lIuvyqFXhGGiAhCiMnMMpKZxSx8x9c9Any9i/Es/3N/jgG1YDEgIBHPMcO0iTeIZzZtg/M+scjKskp8Tjxu0gWJH7muePzGueSywDNFM5ueJxaJpVIXK13MyqZGPE0cVTWd8oWcxyrnLc5atc7a9+QvDBf0lQzXaY4ggSUkkYIEBXVUUIWNGK06KRbStB/38Q+7/hS5FHJVwMixgBo0yK4f/A9+d2sVpya9pHAc6H1xnI9RILQLtBqO833sOK0TIPgMXOkdf60JzH6S3uho0SNgcBu4uO5oyh5wuQMMPRmyKbtSkKZQLALvZ/RNeSByC/Sveb2193H6AGSpq+Ub4OAQGCtR9rrPu/u6e/v3TLu/H5C7crM1WjgWAAAABmJLR0QAqwB5AHWF+8OUAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5gwUExIUagzGcQAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAABfSURBVBjTldAxDoNQDIPhL0+q1L33P1AvAhN7xfK6WAgoLfSfrNiykpQtE+7RLzx2vgF9D3o8lWDmn1QVVMP0LZQGmNtqp1/cmou0XHdG/+sYeGZwFBqPCub8rkcvvAGvsi1VYarR8wAAAABJRU5ErkJggg==') 5 5, auto");
34
+ const s = d, ve = ie, b = c([]), y = c([]), S = c(s.color), N = c(2), Q = c(!1), V = c(""), o = c(null), A = c(null), I = c(null), p = c("draw"), K = c(!1), f = c(null), q = c({ x: 0, y: 0 }), D = c([""]), P = c({ row: 0, col: 0 }), $ = c(16), J = c("url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAABg2lDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TpSIVh2YQcchQnSyIijhKFYtgobQVWnUwufQLmjQkKS6OgmvBwY/FqoOLs64OroIg+AHi6OSk6CIl/i8ptIjx4Lgf7+497t4BQrPKNKtnAtB020wn4lIuvyqFXhGGiAhCiMnMMpKZxSx8x9c9Any9i/Es/3N/jgG1YDEgIBHPMcO0iTeIZzZtg/M+scjKskp8Tjxu0gWJH7muePzGueSywDNFM5ueJxaJpVIXK13MyqZGPE0cVTWd8oWcxyrnLc5atc7a9+QvDBf0lQzXaY4ggSUkkYIEBXVUUIWNGK06KRbStB/38Q+7/hS5FHJVwMixgBo0yK4f/A9+d2sVpya9pHAc6H1xnI9RILQLtBqO833sOK0TIPgMXOkdf60JzH6S3uho0SNgcBu4uO5oyh5wuQMMPRmyKbtSkKZQLALvZ/RNeSByC/Sveb2193H6AGSpq+Ub4OAQGCtR9rrPu/u6e/v3TLu/H5C7crM1WjgWAAAABmJLR0QAqwB5AHWF+8OUAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5gwUExIUagzGcQAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAABfSURBVBjTldAxDoNQDIPhL0+q1L33P1AvAhN7xfK6WAgoLfSfrNiykpQtE+7RLzx2vgF9D3o8lWDmn1QVVMP0LZQGmNtqp1/cmou0XHdG/+sYeGZwFBqPCub8rkcvvAGvsi1VYarR8wAAAABJRU5ErkJggg==') 5 5, auto");
35
35
  function Z(n) {
36
36
  if (!o.value || p.value !== "text" || K.value) return;
37
37
  const { x: e, y: l } = U(n);
38
38
  q.value = { x: e, y: l }, D.value = [""], P.value = { row: 0, col: 0 };
39
39
  const t = document.createElementNS("http://www.w3.org/2000/svg", "text");
40
- t.setAttribute("x", e), t.setAttribute("y", l), t.setAttribute("fill", E.value), t.setAttribute("font-size", $.value * s.scale), t.setAttribute("font-family", "sans-serif"), t.setAttribute("class", "vue-data-ui-doodle"), t.setAttribute("dominant-baseline", "hanging"), t.setAttribute("pointer-events", "all");
40
+ t.setAttribute("x", e), t.setAttribute("y", l), t.setAttribute("fill", S.value), t.setAttribute("font-size", $.value * s.scale), t.setAttribute("font-family", "sans-serif"), t.setAttribute("class", "vue-data-ui-doodle"), t.setAttribute("dominant-baseline", "hanging"), t.setAttribute("pointer-events", "all");
41
41
  const a = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
42
42
  a.setAttribute("x", e), a.setAttribute("dy", "0"), a.textContent = "", t.appendChild(a), t.style.pointerEvents = "none", t.style.userSelect = "none", o.value.appendChild(t), f.value = t, K.value = !0, window.addEventListener("keydown", _), window.addEventListener("mousedown", ne, !0), ee(), te();
43
43
  }
@@ -96,7 +96,7 @@ const Ee = {
96
96
  o.value.removeChild(i);
97
97
  let h = t + a * u * 1.2, k = l + m.width;
98
98
  const w = document.createElementNS("http://www.w3.org/2000/svg", "rect");
99
- w.setAttribute("x", k), w.setAttribute("y", h), w.setAttribute("width", 2), w.setAttribute("height", u), w.setAttribute("fill", E.value), w.setAttribute("class", "vue-data-ui-svg-caret"), o.value.appendChild(w);
99
+ w.setAttribute("x", k), w.setAttribute("y", h), w.setAttribute("width", 2), w.setAttribute("height", u), w.setAttribute("fill", S.value), w.setAttribute("class", "vue-data-ui-svg-caret"), o.value.appendChild(w);
100
100
  }
101
101
  function ne(n) {
102
102
  if (f.value && !f.value.contains(n.target)) {
@@ -185,7 +185,7 @@ const Ee = {
185
185
  if (p.value !== "draw" || !s.active || !o.value) return;
186
186
  Q.value = !0;
187
187
  const { x: e, y: l } = U(n);
188
- I.value = { x: e, y: l }, V.value = `M ${e} ${l}`, A.value = document.createElementNS("http://www.w3.org/2000/svg", "path"), A.value.setAttribute("stroke", E.value), A.value.setAttribute("stroke-width", N.value * s.scale), A.value.setAttribute("fill", "none"), A.value.setAttribute("stroke-linecap", "round"), A.value.setAttribute("stroke-linejoin", "round"), A.value.setAttribute("class", "vue-data-ui-doodle"), o.value.appendChild(A.value);
188
+ I.value = { x: e, y: l }, V.value = `M ${e} ${l}`, A.value = document.createElementNS("http://www.w3.org/2000/svg", "path"), A.value.setAttribute("stroke", S.value), A.value.setAttribute("stroke-width", N.value * s.scale), A.value.setAttribute("fill", "none"), A.value.setAttribute("stroke-linecap", "round"), A.value.setAttribute("stroke-linejoin", "round"), A.value.setAttribute("class", "vue-data-ui-doodle"), o.value.appendChild(A.value);
189
189
  }
190
190
  function H(n) {
191
191
  if (!Q.value || !o.value || !A.value) return;
@@ -197,7 +197,7 @@ const Ee = {
197
197
  const { x: e, y: l } = U(n);
198
198
  if (I.value && I.value.x === e && I.value.y === l) {
199
199
  const t = document.createElementNS("http://www.w3.org/2000/svg", "circle");
200
- t.setAttribute("cx", e), t.setAttribute("cy", l), t.setAttribute("r", N.value * s.scale / 2), t.setAttribute("fill", E.value), t.setAttribute("class", "vue-data-ui-doodle"), o.value.appendChild(t), b.value.push(t);
200
+ t.setAttribute("cx", e), t.setAttribute("cy", l), t.setAttribute("r", N.value * s.scale / 2), t.setAttribute("fill", S.value), t.setAttribute("class", "vue-data-ui-doodle"), o.value.appendChild(t), b.value.push(t);
201
201
  } else {
202
202
  const t = A.value;
203
203
  t.setAttribute("d", fe(ce(V.value))), b.value.push(t);
@@ -248,7 +248,7 @@ const Ee = {
248
248
  class: "vue-ui-pen-and-paper-actions",
249
249
  style: x({ backgroundColor: d.backgroundColor })
250
250
  }, [
251
- S("button", {
251
+ E("button", {
252
252
  class: "vue-ui-pen-and-paper-action",
253
253
  onClick: e[0] || (e[0] = (l) => ve("close")),
254
254
  style: x({
@@ -263,10 +263,10 @@ const Ee = {
263
263
  }, null, 8, ["stroke"])
264
264
  ])
265
265
  ], 4),
266
- S("button", Ee, [
266
+ E("button", Se, [
267
267
  R(Ce, {
268
- value: E.value,
269
- "onUpdate:value": e[1] || (e[1] = (l) => E.value = l),
268
+ value: S.value,
269
+ "onUpdate:value": e[1] || (e[1] = (l) => S.value = l),
270
270
  backgroundColor: d.backgroundColor,
271
271
  buttonBorderColor: C.value
272
272
  }, {
@@ -276,7 +276,7 @@ const Ee = {
276
276
  _: 3
277
277
  }, 8, ["value", "backgroundColor", "buttonBorderColor"])
278
278
  ]),
279
- S("button", {
279
+ E("button", {
280
280
  class: Y(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-active": p.value === "text" }]),
281
281
  onClick: e[2] || (e[2] = (l) => p.value = p.value === "text" ? "draw" : "text"),
282
282
  style: x({
@@ -290,7 +290,7 @@ const Ee = {
290
290
  stroke: d.color
291
291
  }, null, 8, ["name", "stroke"])
292
292
  ]),
293
- S("div", {
293
+ E("div", {
294
294
  style: x({
295
295
  position: "absolute",
296
296
  bottom: "-20px",
@@ -300,13 +300,13 @@ const Ee = {
300
300
  fontSize: "12px",
301
301
  fontVariantNumeric: "tabular-nums"
302
302
  })
303
- }, xe(ye(Se)({
303
+ }, xe(ye(Ee)({
304
304
  v: p.value === "draw" ? N.value : $.value,
305
305
  s: "px",
306
306
  r: 1
307
307
  })), 5)
308
308
  ], 6),
309
- S("button", {
309
+ E("button", {
310
310
  class: Y(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !b.value.length }]),
311
311
  disabled: !b.value.length,
312
312
  onClick: ge,
@@ -323,7 +323,7 @@ const Ee = {
323
323
  }, null, 8, ["stroke"])
324
324
  ])
325
325
  ], 14, $e),
326
- S("button", {
326
+ E("button", {
327
327
  class: Y(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !y.value.length }]),
328
328
  onClick: pe,
329
329
  style: x({
@@ -339,7 +339,7 @@ const Ee = {
339
339
  }, null, 8, ["stroke"])
340
340
  ])
341
341
  ], 6),
342
- S("button", {
342
+ E("button", {
343
343
  class: Y(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !b.value.length }]),
344
344
  onClick: me,
345
345
  style: x({
@@ -1,6 +1,6 @@
1
1
  import { computed as u, createElementBlock as r, openBlock as l, createCommentVNode as a, normalizeStyle as d } from "vue";
2
- import { j as f, k as p } from "./lib-C_mNZmhD.js";
3
- const g = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], S = ["d", "fill", "stroke", "stroke-width"], x = ["points", "fill", "stroke", "stroke-width"], w = {
2
+ import { b as f, e as p } from "./lib-C5BH09_g.js";
3
+ const g = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], S = ["d", "fill", "stroke", "stroke-width"], x = ["points", "fill", "stroke", "stroke-width"], b = {
4
4
  __name: "Shape",
5
5
  props: {
6
6
  color: String,
@@ -112,5 +112,5 @@ const g = ["cx", "cy", "r", "fill", "stroke", "stroke-width"], S = ["d", "fill",
112
112
  }
113
113
  };
114
114
  export {
115
- w as _
115
+ b as _
116
116
  };