vue-data-ui 3.19.9 → 3.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +120 -120
- package/dist/A11yDataTable-q2-8fSlJ.js +0 -45
- package/dist/Arrow-Cj6W6Xbi.js +0 -116
- package/dist/BaseDraggableDialog-DUUu2E2Q.js +0 -272
- package/dist/BaseIcon-DM1x8hQF.js +0 -502
- package/dist/BaseLegendToggle-CJTwLGXL.js +0 -56
- package/dist/BaseScanner-C7dmAref.js +0 -27
- package/dist/BaseZoomControls-BkajQ8q9.js +0 -111
- package/dist/ColorPicker-DTQeqKUV.js +0 -255
- package/dist/DataTable-DmE8Oo4i.js +0 -150
- package/dist/Legend-Gg5Q4Clb.js +0 -114
- package/dist/NonSvgPenAndPaper-tvWXeCsd.js +0 -577
- package/dist/PackageVersion-Dl9W5zJD.js +0 -11
- package/dist/PenAndPaper-DNgm6y3l.js +0 -461
- package/dist/RecursiveCircles-DPpLel6f.js +0 -117
- package/dist/RecursiveLabels-DBMJf_to.js +0 -56
- package/dist/RecursiveLinks-D06dBL4a.js +0 -78
- package/dist/Shape-DEGOZ6GG.js +0 -141
- package/dist/Slicer-CPWGgGSp.js +0 -1144
- package/dist/SlicerPreview-BU3ZeHjR.js +0 -1555
- package/dist/SparkTooltip-c2DL7gqD.js +0 -93
- package/dist/Title-__gWq2g6.js +0 -87
- package/dist/Tooltip-CuWEYGr3.js +0 -312
- package/dist/UserOptions-D7zR0tnR.js +0 -1411
- package/dist/_plugin-vue_export-helper-Dq1MygBL.js +0 -8
- package/dist/canvas-lib-DTaADQOK.js +0 -79
- package/dist/components/arrow.js +0 -2
- package/dist/components/vue-ui-3d-bar.js +0 -2
- package/dist/components/vue-ui-accordion.js +0 -2
- package/dist/components/vue-ui-age-pyramid.js +0 -2
- package/dist/components/vue-ui-annotator.js +0 -2
- package/dist/components/vue-ui-bullet.js +0 -2
- package/dist/components/vue-ui-bump.js +0 -2
- package/dist/components/vue-ui-candlestick.js +0 -2
- package/dist/components/vue-ui-carousel-table.js +0 -2
- package/dist/components/vue-ui-chestnut.js +0 -2
- package/dist/components/vue-ui-chord.js +0 -2
- package/dist/components/vue-ui-circle-pack.js +0 -2
- package/dist/components/vue-ui-cursor.js +0 -2
- package/dist/components/vue-ui-dag.js +0 -2
- package/dist/components/vue-ui-dashboard.js +0 -2
- package/dist/components/vue-ui-digits.js +0 -2
- package/dist/components/vue-ui-donut-evolution.js +0 -2
- package/dist/components/vue-ui-donut.js +0 -2
- package/dist/components/vue-ui-dumbbell.js +0 -2
- package/dist/components/vue-ui-flow.js +0 -2
- package/dist/components/vue-ui-funnel.js +0 -2
- package/dist/components/vue-ui-galaxy.js +0 -2
- package/dist/components/vue-ui-gauge.js +0 -2
- package/dist/components/vue-ui-geo.js +0 -2
- package/dist/components/vue-ui-gizmo.js +0 -2
- package/dist/components/vue-ui-heatmap.js +0 -2
- package/dist/components/vue-ui-history-plot.js +0 -2
- package/dist/components/vue-ui-horizontal-bar.js +0 -2
- package/dist/components/vue-ui-icon.js +0 -2
- package/dist/components/vue-ui-kpi.js +0 -2
- package/dist/components/vue-ui-mini-loader.js +0 -2
- package/dist/components/vue-ui-molecule.js +0 -2
- package/dist/components/vue-ui-mood-radar.js +0 -2
- package/dist/components/vue-ui-nested-donuts.js +0 -2
- package/dist/components/vue-ui-onion.js +0 -2
- package/dist/components/vue-ui-parallel-coordinate-plot.js +0 -2
- package/dist/components/vue-ui-pattern-seed.js +0 -2
- package/dist/components/vue-ui-pattern.js +0 -2
- package/dist/components/vue-ui-quadrant.js +0 -2
- package/dist/components/vue-ui-quick-chart.js +0 -2
- package/dist/components/vue-ui-radar.js +0 -2
- package/dist/components/vue-ui-rating.js +0 -2
- package/dist/components/vue-ui-relation-circle.js +0 -2
- package/dist/components/vue-ui-ridgeline.js +0 -2
- package/dist/components/vue-ui-rings.js +0 -2
- package/dist/components/vue-ui-scatter.js +0 -2
- package/dist/components/vue-ui-skeleton.js +0 -2
- package/dist/components/vue-ui-smiley.js +0 -2
- package/dist/components/vue-ui-spark-trend.js +0 -2
- package/dist/components/vue-ui-sparkbar.js +0 -2
- package/dist/components/vue-ui-sparkgauge.js +0 -2
- package/dist/components/vue-ui-sparkhistogram.js +0 -2
- package/dist/components/vue-ui-sparkline.js +0 -2
- package/dist/components/vue-ui-sparkstackbar.js +0 -2
- package/dist/components/vue-ui-stackbar.js +0 -2
- package/dist/components/vue-ui-stackline.js +0 -2
- package/dist/components/vue-ui-strip-plot.js +0 -2
- package/dist/components/vue-ui-table-heatmap.js +0 -2
- package/dist/components/vue-ui-table-sparkline.js +0 -2
- package/dist/components/vue-ui-table.js +0 -2
- package/dist/components/vue-ui-thermometer.js +0 -2
- package/dist/components/vue-ui-timer.js +0 -2
- package/dist/components/vue-ui-tiremarks.js +0 -2
- package/dist/components/vue-ui-treemap.js +0 -2
- package/dist/components/vue-ui-vertical-bar.js +0 -2
- package/dist/components/vue-ui-waffle.js +0 -2
- package/dist/components/vue-ui-wheel.js +0 -2
- package/dist/components/vue-ui-word-cloud.js +0 -2
- package/dist/components/vue-ui-world.js +0 -2
- package/dist/components/vue-ui-xy-canvas.js +0 -2
- package/dist/components/vue-ui-xy.js +0 -2
- package/dist/dom-to-png-9WSt6hXe.js +0 -237
- package/dist/exposedLib-CwWU4zv-.js +0 -19
- package/dist/geoProjections-CQIkC70z.js +0 -146
- package/dist/img-BjOr008R.js +0 -74
- package/dist/labelUtils-Cr97N8E1.js +0 -19
- package/dist/lib-BkiwukKO.js +0 -1879
- package/dist/llms.txt +0 -232
- package/dist/patternUtils-B7BWu5bV.js +0 -258
- package/dist/pdf-DSXSFUnK.js +0 -90
- package/dist/rolldown-runtime-CAFD8bLK.js +0 -11
- package/dist/style.css +0 -2
- package/dist/types/arrow.d.ts +0 -4
- package/dist/types/utils.d.ts +0 -551
- package/dist/types/vue-data-ui.d.ts +0 -15826
- package/dist/types/vue-ui-3d-bar.d.ts +0 -78
- package/dist/types/vue-ui-accordion.d.ts +0 -11
- package/dist/types/vue-ui-age-pyramid.d.ts +0 -95
- package/dist/types/vue-ui-annotator.d.ts +0 -12
- package/dist/types/vue-ui-bullet.d.ts +0 -72
- package/dist/types/vue-ui-bump.d.ts +0 -77
- package/dist/types/vue-ui-candlestick.d.ts +0 -93
- package/dist/types/vue-ui-carousel-table.d.ts +0 -46
- package/dist/types/vue-ui-chestnut.d.ts +0 -79
- package/dist/types/vue-ui-chord.d.ts +0 -91
- package/dist/types/vue-ui-circle-pack.d.ts +0 -111
- package/dist/types/vue-ui-cursor.d.ts +0 -9
- package/dist/types/vue-ui-dag.d.ts +0 -106
- package/dist/types/vue-ui-dashboard.d.ts +0 -53
- package/dist/types/vue-ui-digits.d.ts +0 -12
- package/dist/types/vue-ui-donut-evolution.d.ts +0 -81
- package/dist/types/vue-ui-donut.d.ts +0 -106
- package/dist/types/vue-ui-dumbbell.d.ts +0 -79
- package/dist/types/vue-ui-flow.d.ts +0 -93
- package/dist/types/vue-ui-funnel.d.ts +0 -66
- package/dist/types/vue-ui-galaxy.d.ts +0 -97
- package/dist/types/vue-ui-gauge.d.ts +0 -76
- package/dist/types/vue-ui-geo.d.ts +0 -81
- package/dist/types/vue-ui-gizmo.d.ts +0 -22
- package/dist/types/vue-ui-heatmap.d.ts +0 -86
- package/dist/types/vue-ui-history-plot.d.ts +0 -97
- package/dist/types/vue-ui-horizontal-bar.d.ts +0 -99
- package/dist/types/vue-ui-icon.d.ts +0 -15
- package/dist/types/vue-ui-kpi.d.ts +0 -25
- package/dist/types/vue-ui-mini-loader.d.ts +0 -15
- package/dist/types/vue-ui-molecule.d.ts +0 -97
- package/dist/types/vue-ui-mood-radar.d.ts +0 -79
- package/dist/types/vue-ui-nested-donuts.d.ts +0 -94
- package/dist/types/vue-ui-onion.d.ts +0 -91
- package/dist/types/vue-ui-parallel-coordinate-plot.d.ts +0 -108
- package/dist/types/vue-ui-pattern-seed.d.ts +0 -14
- package/dist/types/vue-ui-pattern.d.ts +0 -15
- package/dist/types/vue-ui-quadrant.d.ts +0 -102
- package/dist/types/vue-ui-quick-chart.d.ts +0 -89
- package/dist/types/vue-ui-radar.d.ts +0 -101
- package/dist/types/vue-ui-rating.d.ts +0 -31
- package/dist/types/vue-ui-relation-circle.d.ts +0 -79
- package/dist/types/vue-ui-ridgeline.d.ts +0 -85
- package/dist/types/vue-ui-rings.d.ts +0 -83
- package/dist/types/vue-ui-scatter.d.ts +0 -82
- package/dist/types/vue-ui-skeleton.d.ts +0 -11
- package/dist/types/vue-ui-smiley.d.ts +0 -12
- package/dist/types/vue-ui-spark-trend.d.ts +0 -19
- package/dist/types/vue-ui-sparkbar.d.ts +0 -36
- package/dist/types/vue-ui-sparkgauge.d.ts +0 -28
- package/dist/types/vue-ui-sparkhistogram.d.ts +0 -33
- package/dist/types/vue-ui-sparkline.d.ts +0 -44
- package/dist/types/vue-ui-sparkstackbar.d.ts +0 -45
- package/dist/types/vue-ui-stackbar.d.ts +0 -97
- package/dist/types/vue-ui-stackline.d.ts +0 -93
- package/dist/types/vue-ui-strip-plot.d.ts +0 -81
- package/dist/types/vue-ui-table-heatmap.d.ts +0 -62
- package/dist/types/vue-ui-table-sparkline.d.ts +0 -40
- package/dist/types/vue-ui-table.d.ts +0 -25
- package/dist/types/vue-ui-thermometer.d.ts +0 -57
- package/dist/types/vue-ui-timer.d.ts +0 -36
- package/dist/types/vue-ui-tiremarks.d.ts +0 -57
- package/dist/types/vue-ui-treemap.d.ts +0 -87
- package/dist/types/vue-ui-vertical-bar.d.ts +0 -22
- package/dist/types/vue-ui-waffle.d.ts +0 -86
- package/dist/types/vue-ui-wheel.d.ts +0 -57
- package/dist/types/vue-ui-word-cloud.d.ts +0 -84
- package/dist/types/vue-ui-world.d.ts +0 -81
- package/dist/types/vue-ui-xy-canvas.d.ts +0 -84
- package/dist/types/vue-ui-xy.d.ts +0 -125
- package/dist/useAutoSizeLabelsInsideViewbox-dp-3Gg97.js +0 -50
- package/dist/useChartAccessibility-Do37qcw2.js +0 -12
- package/dist/useConfig-ByaaSKhz.js +0 -7471
- package/dist/useFitSvgText-C-MEdAfe.js +0 -63
- package/dist/useNestedProp-Ck4hsrpu.js +0 -10
- package/dist/useObjectBindings-BR1sGimd.js +0 -189
- package/dist/usePanZoom-B-4M_gmY.js +0 -157
- package/dist/usePrefersMotion-BywLbIko.js +0 -15
- package/dist/usePrinter-X0yWOynH.js +0 -49
- package/dist/useResponsive-CrAInupd.js +0 -19
- package/dist/useStableElementSize-0I1IpHPl.js +0 -77
- package/dist/useSvgExport-Dtu973wa.js +0 -755
- package/dist/useTableResponsive-DrM1xqII.js +0 -24
- package/dist/useThemeCheck-rFK9Zlb_.js +0 -24
- package/dist/useTimeLabelCollider-Dm55Emzg.js +0 -57
- package/dist/useTimeLabels-C0x7zUXP.js +0 -272
- package/dist/useUserOptionState-CjPJPTg2.js +0 -15
- package/dist/utils.js +0 -28
- package/dist/vClickOutside-CbX_bC9A.js +0 -13
- package/dist/vue-data-ui-nsosW-n5.js +0 -274
- package/dist/vue-data-ui.js +0 -76
- package/dist/vue-ui-3d-bar-CTvvvgBE.js +0 -1757
- package/dist/vue-ui-accordion-BX9WL-QF.js +0 -81
- package/dist/vue-ui-age-pyramid-ckZtLlmH.js +0 -1238
- package/dist/vue-ui-annotator-Be3VpH8Z.js +0 -2899
- package/dist/vue-ui-bullet-3CkhGOSb.js +0 -710
- package/dist/vue-ui-bump-LQuPTOlm.js +0 -1249
- package/dist/vue-ui-candlestick-BeO06tlH.js +0 -1826
- package/dist/vue-ui-carousel-table-nZJ1k6se.js +0 -455
- package/dist/vue-ui-chestnut-BWItE1hg.js +0 -2010
- package/dist/vue-ui-chord-YflKRyWK.js +0 -1391
- package/dist/vue-ui-circle-pack-DyTYvEg3.js +0 -1608
- package/dist/vue-ui-cursor-C5_wkWul.js +0 -283
- package/dist/vue-ui-dag-mH0baWM3.js +0 -2909
- package/dist/vue-ui-dashboard-F7pEuJDh.js +0 -513
- package/dist/vue-ui-digits-BYBtwXy_.js +0 -209
- package/dist/vue-ui-donut-B3L7jeHL.js +0 -2410
- package/dist/vue-ui-donut-evolution-C46h0gLy.js +0 -1510
- package/dist/vue-ui-dumbbell-xekp1obI.js +0 -1527
- package/dist/vue-ui-flow-BYYyk5KL.js +0 -1235
- package/dist/vue-ui-funnel-BfY509t-.js +0 -777
- package/dist/vue-ui-galaxy-D061gTYS.js +0 -1077
- package/dist/vue-ui-gauge-BRxZNBBS.js +0 -920
- package/dist/vue-ui-geo-BwOMFUVr.js +0 -1516
- package/dist/vue-ui-gizmo-CQsP8Nd3.js +0 -225
- package/dist/vue-ui-heatmap-DOsulVoP.js +0 -1568
- package/dist/vue-ui-history-plot-CXW6lF42.js +0 -1559
- package/dist/vue-ui-horizontal-bar-CideXtlg.js +0 -1681
- package/dist/vue-ui-kpi-CE-JFZ1o.js +0 -96
- package/dist/vue-ui-mini-loader-DDJUya9e.js +0 -125
- package/dist/vue-ui-molecule-B1Prm5Lk.js +0 -925
- package/dist/vue-ui-mood-radar-B29gVcTN.js +0 -1148
- package/dist/vue-ui-nested-donuts-Bsx5f9Gv.js +0 -1487
- package/dist/vue-ui-onion-MN-PjNJq.js +0 -1200
- package/dist/vue-ui-parallel-coordinate-plot-C9zU7MP5.js +0 -1421
- package/dist/vue-ui-pattern-Bj-IPFr2.js +0 -154
- package/dist/vue-ui-pattern-seed-abRweCDE.js +0 -61
- package/dist/vue-ui-quadrant-h-QFG9O4.js +0 -1978
- package/dist/vue-ui-quick-chart-PAVz4c9z.js +0 -2469
- package/dist/vue-ui-radar-D2pVd53z.js +0 -1229
- package/dist/vue-ui-rating-D_QR_A3V.js +0 -343
- package/dist/vue-ui-relation-circle-BjB0J53V.js +0 -924
- package/dist/vue-ui-ridgeline-DamvqiyJ.js +0 -1622
- package/dist/vue-ui-rings-DkHS5dwd.js +0 -1246
- package/dist/vue-ui-scatter-dFDowCVQ.js +0 -2413
- package/dist/vue-ui-skeleton-zhkS1cmh.js +0 -2556
- package/dist/vue-ui-smiley-rFdGxZK6.js +0 -356
- package/dist/vue-ui-spark-trend-fQ10-UvM.js +0 -438
- package/dist/vue-ui-sparkbar-D5toou8V.js +0 -393
- package/dist/vue-ui-sparkgauge-DRZcIPYf.js +0 -255
- package/dist/vue-ui-sparkhistogram-YizEqFdN.js +0 -560
- package/dist/vue-ui-sparkline-w2nclIW0.js +0 -1507
- package/dist/vue-ui-sparkstackbar-CTShNXhW.js +0 -662
- package/dist/vue-ui-stackbar-BFLCEsRk.js +0 -2267
- package/dist/vue-ui-stackline-CU6s-hhv.js +0 -2395
- package/dist/vue-ui-strip-plot-ByaDLFSL.js +0 -1340
- package/dist/vue-ui-table-DuA_CfGn.js +0 -1338
- package/dist/vue-ui-table-heatmap-BFKyJTr1.js +0 -344
- package/dist/vue-ui-table-sparkline-Dfei_QrJ.js +0 -707
- package/dist/vue-ui-thermometer-biw3ivMI.js +0 -763
- package/dist/vue-ui-timer-9LNNDl4q.js +0 -439
- package/dist/vue-ui-tiremarks-kF0Baqia.js +0 -552
- package/dist/vue-ui-treemap-BexKMBhz.js +0 -1587
- package/dist/vue-ui-waffle-Dq50j_uw.js +0 -1362
- package/dist/vue-ui-wheel-BETHlWsO.js +0 -885
- package/dist/vue-ui-word-cloud-D1AQtzmT.js +0 -1656
- package/dist/vue-ui-world-CcgbuSp_.js +0 -14264
- package/dist/vue-ui-xy-BQ1YONCq.js +0 -4219
- package/dist/vue-ui-xy-canvas-4ABYnasj.js +0 -1786
- package/dist/vue_ui_3d_bar-CXKqO5Ej.js +0 -185
- package/dist/vue_ui_age_pyramid-BON8QI6X.js +0 -301
- package/dist/vue_ui_bullet-CE5sFT7u.js +0 -186
- package/dist/vue_ui_bump-frnXaXul.js +0 -201
- package/dist/vue_ui_candlestick-sY6UtOop.js +0 -374
- package/dist/vue_ui_chestnut-BiUZFv40.js +0 -305
- package/dist/vue_ui_chord-DpyR_b9A.js +0 -275
- package/dist/vue_ui_circle_pack-FjH0ZQeb.js +0 -172
- package/dist/vue_ui_dag-Ci_MOnvd.js +0 -258
- package/dist/vue_ui_donut-Cx2_BGcQ.js +0 -358
- package/dist/vue_ui_donut_evolution-CAJefrHs.js +0 -717
- package/dist/vue_ui_dumbbell-CClzAZTN.js +0 -304
- package/dist/vue_ui_flow-CCHO1Lo9.js +0 -238
- package/dist/vue_ui_funnel-h8q2mRpC.js +0 -234
- package/dist/vue_ui_galaxy-70vtkEBw.js +0 -265
- package/dist/vue_ui_gauge-C17CgfzN.js +0 -178
- package/dist/vue_ui_geo-C0UbQ0Lc.js +0 -248
- package/dist/vue_ui_heatmap-BqPP3J4M.js +0 -319
- package/dist/vue_ui_history_plot-C5nytDHh.js +0 -413
- package/dist/vue_ui_horizontal_bar-Bqxorkc_.js +0 -341
- package/dist/vue_ui_molecule-Dka4JBOp.js +0 -231
- package/dist/vue_ui_mood_radar-Dg4ijm53.js +0 -281
- package/dist/vue_ui_nested_donuts-BY9cOoHF.js +0 -273
- package/dist/vue_ui_onion-DTV9cup-.js +0 -293
- package/dist/vue_ui_parallel_coordinate_plot-CNWrDh96.js +0 -278
- package/dist/vue_ui_quadrant-3kjYvxpj.js +0 -428
- package/dist/vue_ui_quick_chart--VaYQuM4.js +0 -139
- package/dist/vue_ui_radar-Dxx9GJmj.js +0 -306
- package/dist/vue_ui_relation_circle-Cr0I2SoU.js +0 -98
- package/dist/vue_ui_ridgeline-CAtYca4b.js +0 -767
- package/dist/vue_ui_rings-DXC1VeX5.js +0 -320
- package/dist/vue_ui_scatter-D2S2j0ap.js +0 -479
- package/dist/vue_ui_spark_trend-BHMQ6_1p.js +0 -82
- package/dist/vue_ui_sparkbar-BR6hbuDE.js +0 -64
- package/dist/vue_ui_sparkgauge-xfPRHnMv.js +0 -90
- package/dist/vue_ui_sparkhistogram-CJRENZ1C.js +0 -123
- package/dist/vue_ui_sparkline-wgk7yO7E.js +0 -151
- package/dist/vue_ui_sparkstackbar-C5qZMmAl.js +0 -175
- package/dist/vue_ui_stackbar-BW_C3MXw.js +0 -412
- package/dist/vue_ui_stackline-DXxzibUd.js +0 -460
- package/dist/vue_ui_strip_plot-8ZelqC5b.js +0 -301
- package/dist/vue_ui_table_heatmap-BGUjA0WA.js +0 -80
- package/dist/vue_ui_table_sparkline-i0Q-N_we.js +0 -124
- package/dist/vue_ui_thermometer-CuN7Gpez.js +0 -123
- package/dist/vue_ui_tiremarks-A6UHC0c3.js +0 -122
- package/dist/vue_ui_treemap-BQp06q-g.js +0 -328
- package/dist/vue_ui_vertical_bar-CJSD1FZS.js +0 -247
- package/dist/vue_ui_waffle-C_Ev4l7B.js +0 -292
- package/dist/vue_ui_wheel-DdkTPXJU.js +0 -133
- package/dist/vue_ui_word_cloud-B1PbsYPc.js +0 -254
- package/dist/vue_ui_xy-BYPqfYyx.js +0 -482
- package/dist/vue_ui_xy_canvas-CMHGNrLf.js +0 -408
|
@@ -1,461 +0,0 @@
|
|
|
1
|
-
import { t as e } from "./rolldown-runtime-CAFD8bLK.js";
|
|
2
|
-
import { G as t, H as n, t as r, yt as i } from "./lib-BkiwukKO.js";
|
|
3
|
-
import { t as a } from "./BaseIcon-DM1x8hQF.js";
|
|
4
|
-
import { t as o } from "./ColorPicker-DTQeqKUV.js";
|
|
5
|
-
import { computed as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createVNode as d, guardReactiveProps as f, nextTick as p, normalizeClass as m, normalizeProps as h, normalizeStyle as g, onBeforeUnmount as ee, onMounted as te, openBlock as _, ref as v, renderSlot as y, toDisplayString as ne, unref as re, vModelText as ie, watch as b, withCtx as ae, withDirectives as oe } from "vue";
|
|
6
|
-
//#region src/atoms/PenAndPaper.vue
|
|
7
|
-
var se = /* @__PURE__ */ e({ default: () => x }), ce = ["disabled"], x = {
|
|
8
|
-
__name: "PenAndPaper",
|
|
9
|
-
props: {
|
|
10
|
-
svgRef: {
|
|
11
|
-
type: [
|
|
12
|
-
Object,
|
|
13
|
-
null,
|
|
14
|
-
void 0
|
|
15
|
-
],
|
|
16
|
-
required: !0
|
|
17
|
-
},
|
|
18
|
-
color: {
|
|
19
|
-
type: String,
|
|
20
|
-
default: "#2D353C"
|
|
21
|
-
},
|
|
22
|
-
backgroundColor: {
|
|
23
|
-
type: String,
|
|
24
|
-
default: "#FFFFFF"
|
|
25
|
-
},
|
|
26
|
-
active: {
|
|
27
|
-
type: Boolean,
|
|
28
|
-
default: !1
|
|
29
|
-
},
|
|
30
|
-
scale: {
|
|
31
|
-
type: Number,
|
|
32
|
-
default: 1
|
|
33
|
-
},
|
|
34
|
-
isCursorPointer: {
|
|
35
|
-
type: Boolean,
|
|
36
|
-
default: !1
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
emits: ["close"],
|
|
40
|
-
setup(e, { emit: se }) {
|
|
41
|
-
let x = e, le = se, S = v([]), C = v([]), w = v(x.color), T = v(2), E = v(!1), D = v(""), O = v(null), k = v(null), A = v(null), j = v(null), M = v(`arrow-${n()}`), ue = v(`arrow-def-${n()}`), N = v(!1), P = v(null), F = v({
|
|
42
|
-
x: 0,
|
|
43
|
-
y: 0
|
|
44
|
-
}), I = v([""]), L = v({
|
|
45
|
-
row: 0,
|
|
46
|
-
col: 0
|
|
47
|
-
}), R = v(16), z = v(!1), de = [
|
|
48
|
-
"arrow",
|
|
49
|
-
"text",
|
|
50
|
-
"line",
|
|
51
|
-
"draw"
|
|
52
|
-
], B = v(0), V = s(() => de[B.value]), fe = {
|
|
53
|
-
arrow: "plotArrow",
|
|
54
|
-
text: "text",
|
|
55
|
-
line: "plotLine",
|
|
56
|
-
draw: "annotator"
|
|
57
|
-
}, pe = v("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");
|
|
58
|
-
function me() {
|
|
59
|
-
B.value + 1 >= de.length ? B.value = 0 : B.value += 1;
|
|
60
|
-
}
|
|
61
|
-
function H(e) {
|
|
62
|
-
if (!O.value || V.value !== "text" || N.value) return;
|
|
63
|
-
let { x: t, y: n } = K(e);
|
|
64
|
-
F.value = {
|
|
65
|
-
x: t,
|
|
66
|
-
y: n
|
|
67
|
-
}, I.value = [""], L.value = {
|
|
68
|
-
row: 0,
|
|
69
|
-
col: 0
|
|
70
|
-
}, z.value = !1;
|
|
71
|
-
let r = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
72
|
-
r.setAttribute("x", t), r.setAttribute("y", n), r.setAttribute("fill", w.value), r.setAttribute("font-size", R.value * x.scale), r.setAttribute("font-family", "sans-serif"), r.setAttribute("class", "vue-data-ui-doodle"), r.setAttribute("dominant-baseline", "hanging"), r.setAttribute("pointer-events", "all");
|
|
73
|
-
let i = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
|
|
74
|
-
i.setAttribute("x", t), i.setAttribute("dy", "0"), i.textContent = "", r.appendChild(i), r.style.pointerEvents = "none", r.style.userSelect = "none", O.value.appendChild(r), P.value = r, N.value = !0, window.addEventListener("keydown", he), window.addEventListener("mousedown", ye, !0), ge(), ve();
|
|
75
|
-
}
|
|
76
|
-
function he(e) {
|
|
77
|
-
if (!N.value) return;
|
|
78
|
-
let { row: t, col: n } = L.value, r = I.value.slice(), i = !1;
|
|
79
|
-
if (e.key === "Enter") {
|
|
80
|
-
let a = r[t], o = a.slice(0, n), s = a.slice(n);
|
|
81
|
-
r.splice(t, 1, o, s), t += 1, n = 0, i = !0, e.preventDefault();
|
|
82
|
-
} else if (e.key === "Backspace") {
|
|
83
|
-
if (n > 0) r[t] = r[t].slice(0, n - 1) + r[t].slice(n), --n, i = !0;
|
|
84
|
-
else if (t > 0) {
|
|
85
|
-
let e = r[t - 1].length;
|
|
86
|
-
r[t - 1] += r[t], r.splice(t, 1), --t, n = e, i = !0;
|
|
87
|
-
}
|
|
88
|
-
e.preventDefault();
|
|
89
|
-
} else if (e.key === "Delete") n < r[t].length ? (r[t] = r[t].slice(0, n) + r[t].slice(n + 1), i = !0) : t < r.length - 1 && (r[t] += r[t + 1], r.splice(t + 1, 1), i = !0), e.preventDefault();
|
|
90
|
-
else if (e.key === "ArrowLeft") n > 0 ? --n : t > 0 && (--t, n = r[t].length), i = !0, e.preventDefault();
|
|
91
|
-
else if (e.key === "ArrowRight") n < r[t].length ? n += 1 : t < r.length - 1 && (t += 1, n = 0), i = !0, e.preventDefault();
|
|
92
|
-
else if (e.key === "ArrowUp") t > 0 && (--t, n = Math.min(n, r[t].length), i = !0), e.preventDefault();
|
|
93
|
-
else if (e.key === "ArrowDown") t < r.length - 1 && (t += 1, n = Math.min(n, r[t].length), i = !0), e.preventDefault();
|
|
94
|
-
else if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) r[t] = r[t].slice(0, n) + e.key + r[t].slice(n), n += 1, i = !0, e.preventDefault();
|
|
95
|
-
else if (e.key === "Escape") {
|
|
96
|
-
be(!0);
|
|
97
|
-
return;
|
|
98
|
-
} else e.key === "Tab" && e.preventDefault();
|
|
99
|
-
i && (I.value = r, L.value = {
|
|
100
|
-
row: t,
|
|
101
|
-
col: n
|
|
102
|
-
}, r.some((e) => e.length > 0) && !z.value && P.value && (S.value.push(P.value), C.value = [], z.value = !0), ge(), ve());
|
|
103
|
-
}
|
|
104
|
-
function ge() {
|
|
105
|
-
let e = P.value, { x: t } = F.value;
|
|
106
|
-
for (; e.firstChild;) e.removeChild(e.firstChild);
|
|
107
|
-
I.value.forEach((n, r) => {
|
|
108
|
-
let i = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
|
|
109
|
-
i.setAttribute("x", t), i.setAttribute("dy", r === 0 ? "0" : `${R.value * 1.2 * x.scale}`), i.textContent = n.length ? n : "", e.appendChild(i);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
let U = v(null);
|
|
113
|
-
function W() {
|
|
114
|
-
U.value !== null && (clearInterval(U.value), U.value = null);
|
|
115
|
-
}
|
|
116
|
-
function _e(e) {
|
|
117
|
-
W();
|
|
118
|
-
let t = !0;
|
|
119
|
-
e.style.opacity = "1", U.value = setInterval(() => {
|
|
120
|
-
if (!O.value || !e || !O.value.contains(e)) {
|
|
121
|
-
W();
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
t = !t, e.style.opacity = t ? "1" : "0";
|
|
125
|
-
}, 500);
|
|
126
|
-
}
|
|
127
|
-
function ve() {
|
|
128
|
-
let e = O.value?.querySelector(".vue-data-ui-svg-caret");
|
|
129
|
-
e && O.value && O.value.removeChild(e);
|
|
130
|
-
let t = P.value;
|
|
131
|
-
if (!t || !O.value) return;
|
|
132
|
-
let { x: n, y: r } = F.value, { row: i, col: a } = L.value, o = R.value * x.scale, s = t.childNodes[i];
|
|
133
|
-
if (!s) return;
|
|
134
|
-
let c = s.textContent.slice(0, a);
|
|
135
|
-
c.endsWith(" ") && (c += "\xA0");
|
|
136
|
-
let l = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
137
|
-
l.setAttribute("x", n), l.setAttribute("y", r), l.setAttribute("font-size", o), l.setAttribute("font-family", "sans-serif"), l.textContent = c || "", O.value.appendChild(l);
|
|
138
|
-
let u = l.getBBox();
|
|
139
|
-
O.value.removeChild(l);
|
|
140
|
-
let d = r + i * o * 1.2, f = n + u.width, p = document.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
141
|
-
p.setAttribute("x", f), p.setAttribute("y", d), p.setAttribute("rx", 1), p.setAttribute("width", 2), p.setAttribute("height", o), p.setAttribute("fill", w.value), p.setAttribute("class", "vue-data-ui-svg-caret"), O.value.appendChild(p), _e(p);
|
|
142
|
-
}
|
|
143
|
-
function ye(e) {
|
|
144
|
-
if (P.value && !P.value.contains(e.target)) {
|
|
145
|
-
let e = P.value.children;
|
|
146
|
-
e.length === 1 && (e[0].textContent === "" || e[0].textContent === "") && P.value.remove(), be(!1);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
function be(e = !1) {
|
|
150
|
-
window.removeEventListener("keydown", he), window.removeEventListener("mousedown", ye, !0), W();
|
|
151
|
-
let t = O.value?.querySelector(".vue-data-ui-svg-caret");
|
|
152
|
-
t && O.value && O.value.removeChild(t);
|
|
153
|
-
let n = P.value?.children, r = !1;
|
|
154
|
-
if (n && n.length === 1) {
|
|
155
|
-
let e = n[0].textContent;
|
|
156
|
-
r = !e || e === "";
|
|
157
|
-
}
|
|
158
|
-
(e || r) && P.value && O.value && O.value.contains(P.value) && O.value.removeChild(P.value), N.value = !1, P.value = null, I.value = [""], L.value = {
|
|
159
|
-
row: 0,
|
|
160
|
-
col: 0
|
|
161
|
-
}, z.value = !1;
|
|
162
|
-
}
|
|
163
|
-
let G = s(() => i(x.color, .6));
|
|
164
|
-
function xe() {
|
|
165
|
-
if (!O.value) return;
|
|
166
|
-
let e = O.value.querySelector(".vue-data-ui-mask");
|
|
167
|
-
if (e && O.value.removeChild(e), x.active) {
|
|
168
|
-
let e = document.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
169
|
-
e.setAttribute("class", "vue-data-ui-mask"), e.setAttribute("width", "100%"), e.setAttribute("height", "100%"), e.setAttribute("fill", "transparent"), e.setAttribute("pointer-events", "all"), O.value.insertBefore(e, O.value.firstChild);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
function K(e) {
|
|
173
|
-
let t = x.svgRef;
|
|
174
|
-
if (!t) return {
|
|
175
|
-
x: 0,
|
|
176
|
-
y: 0
|
|
177
|
-
};
|
|
178
|
-
let n = t.createSVGPoint(), r = e.touches?.length || e.changedTouches?.length ? e.touches?.[0] || e.changedTouches?.[0] : null, i = r ? r.clientX : e.clientX, a = r ? r.clientY : e.clientY;
|
|
179
|
-
n.x = i, n.y = a;
|
|
180
|
-
let o = t.getScreenCTM()?.inverse();
|
|
181
|
-
return o ? n.matrixTransform(o) : {
|
|
182
|
-
x: 0,
|
|
183
|
-
y: 0
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
function Se(e) {
|
|
187
|
-
let t = e.trim().split(/\s+/);
|
|
188
|
-
if (t.length < 4) return e;
|
|
189
|
-
let n = t.slice(1).map(Number);
|
|
190
|
-
if (n.length % 2 != 0) return e;
|
|
191
|
-
let r = Ce(n), i = [`M ${r[0]} ${r[1]}`];
|
|
192
|
-
for (let e = 2; e < r.length - 2; e += 2) {
|
|
193
|
-
let t = r[e - 2], n = r[e - 1], a = r[e], o = r[e + 1], s = (t + a) / 2, c = (n + o) / 2;
|
|
194
|
-
i.push(`Q ${t} ${n} ${s} ${c}`);
|
|
195
|
-
}
|
|
196
|
-
let a = r[r.length - 2], o = r[r.length - 1];
|
|
197
|
-
return i.push(`L ${a} ${o}`), i.join(" ");
|
|
198
|
-
}
|
|
199
|
-
function Ce(e, t = 1) {
|
|
200
|
-
let n = [...e];
|
|
201
|
-
for (let r = 2; r < e.length - 2; r += 2) {
|
|
202
|
-
let i = e[r], a = e[r + 1], o = e[r - 2], s = e[r - 1], c = e[r + 2], l = e[r + 3];
|
|
203
|
-
n[r] = i + t * ((o + c) / 2 - i), n[r + 1] = a + t * ((s + l) / 2 - a);
|
|
204
|
-
}
|
|
205
|
-
return n;
|
|
206
|
-
}
|
|
207
|
-
function we(e) {
|
|
208
|
-
let t = e.trim().split(/\s+/), n = "", r = "", i = null, a = null;
|
|
209
|
-
for (let e = 0; e < t.length; e += 1) {
|
|
210
|
-
let o = t[e];
|
|
211
|
-
if (isNaN(o)) {
|
|
212
|
-
if (r = o, r === "M" || r === "L") i = parseFloat(t[++e]), a = parseFloat(t[++e]), n += `${r}${i} ${a}`;
|
|
213
|
-
else if (r === "Q") {
|
|
214
|
-
let r = parseFloat(t[++e]), o = parseFloat(t[++e]), s = parseFloat(t[++e]), c = parseFloat(t[++e]);
|
|
215
|
-
r === i && o === a ? n += `t${s - i} ${c - a}` : n += `q${r - i} ${o - a} ${s - i} ${c - a}`, i = s, a = c;
|
|
216
|
-
}
|
|
217
|
-
} else {
|
|
218
|
-
let s = parseFloat(o), c = parseFloat(t[++e]);
|
|
219
|
-
if (r === "L") {
|
|
220
|
-
let e = s - i, t = c - a;
|
|
221
|
-
e === 0 ? n += `v${t}` : t === 0 ? n += `h${e}` : n += `l${e} ${t}`, i = s, a = c;
|
|
222
|
-
} else if (r === "Q") {
|
|
223
|
-
let r = s, o = c, l = parseFloat(t[++e]), u = parseFloat(t[++e]);
|
|
224
|
-
r === i && o === a ? n += `t${l - i} ${u - a}` : n += `q${r - i} ${o - a} ${l - i} ${u - a}`, i = l, a = u;
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
return n;
|
|
229
|
-
}
|
|
230
|
-
function q(e) {
|
|
231
|
-
if (e.cancelable && e.preventDefault(), V.value !== "draw" || !x.active || !O.value) return;
|
|
232
|
-
E.value = !0;
|
|
233
|
-
let { x: t, y: n } = K(e);
|
|
234
|
-
j.value = {
|
|
235
|
-
x: t,
|
|
236
|
-
y: n
|
|
237
|
-
}, D.value = `M ${t} ${n}`, k.value = document.createElementNS(r, "path"), k.value.setAttribute("stroke", w.value), k.value.setAttribute("stroke-width", T.value * x.scale), k.value.setAttribute("fill", "none"), k.value.setAttribute("stroke-linecap", "round"), k.value.setAttribute("stroke-linejoin", "round"), k.value.setAttribute("class", "vue-data-ui-doodle"), O.value.appendChild(k.value);
|
|
238
|
-
}
|
|
239
|
-
function J(e) {
|
|
240
|
-
if (e.cancelable && e.preventDefault(), !E.value || !O.value || !k.value) return;
|
|
241
|
-
let { x: t, y: n } = K(e);
|
|
242
|
-
D.value += ` ${t} ${n}`, k.value.setAttribute("d", D.value);
|
|
243
|
-
}
|
|
244
|
-
function Te() {
|
|
245
|
-
let e = x.svgRef;
|
|
246
|
-
if (!e) return;
|
|
247
|
-
let t = e.querySelector(`defs#${ue.value}`);
|
|
248
|
-
if (t || (t = document.createElementNS(r, "defs"), t.setAttribute("id", ue.value), e.appendChild(t)), t.querySelector(`#${M.value}`)) return;
|
|
249
|
-
let n = document.createElementNS(r, "marker");
|
|
250
|
-
n.setAttribute("id", M.value), n.setAttribute("markerUnits", "strokeWidth"), n.setAttribute("markerWidth", "6"), n.setAttribute("markerHeight", "6"), n.setAttribute("refX", "4"), n.setAttribute("refY", "3"), n.setAttribute("orient", "auto"), n.setAttribute("viewBox", "0 0 6 6");
|
|
251
|
-
let i = document.createElementNS(r, "path");
|
|
252
|
-
i.setAttribute("d", `M 0 0 L 6 ${6 / 2} L 0 6 z`), i.setAttribute("fill", "context-stroke"), i.setAttribute("stroke", "none"), n.appendChild(i), t.appendChild(n);
|
|
253
|
-
}
|
|
254
|
-
function Y(e) {
|
|
255
|
-
if (e.cancelable && e.preventDefault(), !["line", "arrow"].includes(V.value) || !x.active || !O.value) return;
|
|
256
|
-
V.value === "arrow" && Te(), E.value = !0;
|
|
257
|
-
let { x: t, y: n } = K(e);
|
|
258
|
-
j.value = {
|
|
259
|
-
x: t,
|
|
260
|
-
y: n
|
|
261
|
-
}, A.value = document.createElementNS(r, "line"), A.value.setAttribute("stroke", w.value), A.value.setAttribute("stroke-width", T.value * x.scale), A.value.setAttribute("stroke-linecap", "round"), A.value.setAttribute("class", "vue-data-ui-doodle"), A.value.setAttribute("x1", t), A.value.setAttribute("y1", n), A.value.setAttribute("x2", t), A.value.setAttribute("y2", n), V.value === "arrow" && A.value.setAttribute("marker-end", `url(#${M.value})`), O.value.appendChild(A.value);
|
|
262
|
-
}
|
|
263
|
-
function X(e) {
|
|
264
|
-
if (e.cancelable && e.preventDefault(), !["line", "arrow"].includes(V.value) || !E.value || !O.value || !A.value) return;
|
|
265
|
-
let { x: t, y: n } = K(e);
|
|
266
|
-
A.value.setAttribute("x2", t), A.value.setAttribute("y2", n);
|
|
267
|
-
}
|
|
268
|
-
function Z(e) {
|
|
269
|
-
if (E.value && O.value && A.value) {
|
|
270
|
-
let { x: t, y: n } = K(e);
|
|
271
|
-
A.value.setAttribute("x2", t), A.value.setAttribute("y2", n), S.value.push(A.value), C.value = [], A.value = "";
|
|
272
|
-
}
|
|
273
|
-
E.value = !1;
|
|
274
|
-
}
|
|
275
|
-
function Q(e) {
|
|
276
|
-
if (E.value && O.value && k.value) {
|
|
277
|
-
let { x: t, y: n } = K(e);
|
|
278
|
-
if (j.value && j.value.x === t && j.value.y === n) {
|
|
279
|
-
let e = document.createElementNS("http://www.w3.org/2000/svg", "circle");
|
|
280
|
-
e.setAttribute("cx", t), e.setAttribute("cy", n), e.setAttribute("r", T.value * x.scale / 2), e.setAttribute("fill", w.value), e.setAttribute("class", "vue-data-ui-doodle"), O.value.appendChild(e), S.value.push(e);
|
|
281
|
-
} else {
|
|
282
|
-
let e = k.value;
|
|
283
|
-
e.setAttribute("d", we(Se(D.value))), S.value.push(e);
|
|
284
|
-
}
|
|
285
|
-
C.value = [], k.value = "";
|
|
286
|
-
}
|
|
287
|
-
E.value = !1;
|
|
288
|
-
}
|
|
289
|
-
function Ee() {
|
|
290
|
-
if (S.value.length > 0) {
|
|
291
|
-
let e = S.value.pop();
|
|
292
|
-
C.value.push(e), e === P.value ? be(!0) : O.value && O.value.contains(e) && O.value.removeChild(e);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
function De() {
|
|
296
|
-
if (C.value.length > 0) {
|
|
297
|
-
let e = C.value.pop();
|
|
298
|
-
S.value.push(e), O.value && O.value.appendChild(e);
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
function Oe() {
|
|
302
|
-
O.value && (O.value.innerHTML = ""), S.value = [], C.value = [], z.value = !1, xe();
|
|
303
|
-
}
|
|
304
|
-
b(V, (e) => {
|
|
305
|
-
x.active && ($(), ke(), Ae());
|
|
306
|
-
});
|
|
307
|
-
function ke() {
|
|
308
|
-
!x.svgRef || !x.active || (V.value === "draw" ? (x.svgRef.addEventListener("mousedown", q), x.svgRef.addEventListener("mousemove", J), x.svgRef.addEventListener("mouseup", Q), x.svgRef.addEventListener("mouseleave", Q), x.svgRef.addEventListener("touchstart", q, { passive: !1 }), x.svgRef.addEventListener("touchmove", J, { passive: !1 }), x.svgRef.addEventListener("touchend", Q), x.svgRef.addEventListener("touchcancel", Q)) : ["line", "arrow"].includes(V.value) ? (x.svgRef.addEventListener("mousedown", Y), x.svgRef.addEventListener("mousemove", X), x.svgRef.addEventListener("mouseup", Z), x.svgRef.addEventListener("touchstart", Y, { passive: !1 }), x.svgRef.addEventListener("touchmove", X, { passive: !1 }), x.svgRef.addEventListener("touchend", Z), x.svgRef.addEventListener("touchcancel", Z)) : V.value === "text" && (x.svgRef.addEventListener("mousedown", H), x.svgRef.addEventListener("touchstart", H, { passive: !1 })), O.value && (O.value.style.pointerEvents = "auto"));
|
|
309
|
-
}
|
|
310
|
-
function $() {
|
|
311
|
-
x.svgRef && (x.svgRef.removeEventListener("mousedown", q), x.svgRef.removeEventListener("mousemove", J), x.svgRef.removeEventListener("mouseup", Q), x.svgRef.removeEventListener("mouseleave", Q), x.svgRef.removeEventListener("touchstart", q), x.svgRef.removeEventListener("touchmove", J), x.svgRef.removeEventListener("touchend", Q), x.svgRef.removeEventListener("touchcancel", Q), x.svgRef.removeEventListener("mousedown", Y), x.svgRef.removeEventListener("mousemove", X), x.svgRef.removeEventListener("mouseup", Z), x.svgRef.removeEventListener("touchstart", Y), x.svgRef.removeEventListener("touchmove", X), x.svgRef.removeEventListener("touchend", Z), x.svgRef.removeEventListener("touchcancel", Z), x.svgRef.removeEventListener("mousedown", H), x.svgRef.removeEventListener("touchstart", H), O.value && (O.value.style.pointerEvents = "none"));
|
|
312
|
-
}
|
|
313
|
-
b(() => x.active, (e) => {
|
|
314
|
-
e ? ke() : $();
|
|
315
|
-
}), b(() => x.active, () => {
|
|
316
|
-
p(() => {
|
|
317
|
-
xe();
|
|
318
|
-
});
|
|
319
|
-
}), b(() => x.active, (e) => {
|
|
320
|
-
x.svgRef && (e ? x.svgRef.style.touchAction = "none" : x.svgRef.style.touchAction = "");
|
|
321
|
-
}, { immediate: !0 });
|
|
322
|
-
function Ae() {
|
|
323
|
-
O.value && (V.value === "text" ? O.value.style.cursor = "text" : ["line", "arrow"].includes(V.value) ? O.value.style.cursor = "crosshair" : O.value.style.cursor = pe.value);
|
|
324
|
-
}
|
|
325
|
-
let je = v(null);
|
|
326
|
-
return te(() => {
|
|
327
|
-
p(() => {
|
|
328
|
-
x.svgRef && (O.value = document.createElementNS("http://www.w3.org/2000/svg", "g"), O.value.setAttribute("class", "vue-data-ui-doodles"), x.svgRef.appendChild(O.value), Ae(), $());
|
|
329
|
-
});
|
|
330
|
-
}), b(() => x.active, async (e) => {
|
|
331
|
-
e && (await p(), je.value?.focus());
|
|
332
|
-
}, { flush: "post" }), ee(() => {
|
|
333
|
-
W(), O.value && x.svgRef && (O.value.remove(), $());
|
|
334
|
-
}), (n, r) => e.active ? (_(), l("div", {
|
|
335
|
-
key: 0,
|
|
336
|
-
"data-dom-to-png-ignore": "",
|
|
337
|
-
class: "vue-ui-pen-and-paper-actions",
|
|
338
|
-
style: g({ backgroundColor: e.backgroundColor })
|
|
339
|
-
}, [
|
|
340
|
-
u("button", {
|
|
341
|
-
ref_key: "buttonToggle",
|
|
342
|
-
ref: je,
|
|
343
|
-
class: "vue-ui-pen-and-paper-action",
|
|
344
|
-
onClick: r[0] ||= (e) => le("close"),
|
|
345
|
-
style: g({
|
|
346
|
-
backgroundColor: e.backgroundColor,
|
|
347
|
-
border: `1px solid ${G.value}`,
|
|
348
|
-
cursor: e.isCursorPointer ? "pointer" : "default"
|
|
349
|
-
})
|
|
350
|
-
}, [y(n.$slots, "annotator-action-close", {}, () => [d(a, {
|
|
351
|
-
name: "close",
|
|
352
|
-
stroke: e.color
|
|
353
|
-
}, null, 8, ["stroke"])])], 4),
|
|
354
|
-
u("button", {
|
|
355
|
-
class: "vue-ui-pen-and-paper-action",
|
|
356
|
-
tabindex: "-1",
|
|
357
|
-
style: g(`padding: 0 !important; cursor: ${e.isCursorPointer ? "pointer" : "default"}`)
|
|
358
|
-
}, [d(o, {
|
|
359
|
-
value: w.value,
|
|
360
|
-
"onUpdate:value": r[1] ||= (e) => w.value = e,
|
|
361
|
-
backgroundColor: e.backgroundColor,
|
|
362
|
-
buttonBorderColor: G.value,
|
|
363
|
-
isCursorPointer: e.isCursorPointer
|
|
364
|
-
}, {
|
|
365
|
-
"annotator-action-color": ae(({ color: e }) => [y(n.$slots, "annotator-action-color", h(f({ color: e })))]),
|
|
366
|
-
_: 3
|
|
367
|
-
}, 8, [
|
|
368
|
-
"value",
|
|
369
|
-
"backgroundColor",
|
|
370
|
-
"buttonBorderColor",
|
|
371
|
-
"isCursorPointer"
|
|
372
|
-
])], 4),
|
|
373
|
-
u("button", {
|
|
374
|
-
class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-active": V.value === "text" }]),
|
|
375
|
-
onClick: r[2] ||= (e) => me(),
|
|
376
|
-
style: g({
|
|
377
|
-
backgroundColor: e.backgroundColor,
|
|
378
|
-
border: `1px solid ${G.value}`,
|
|
379
|
-
cursor: e.isCursorPointer ? "pointer" : "default"
|
|
380
|
-
})
|
|
381
|
-
}, [y(n.$slots, "annotator-action-draw", h(f({ mode: V.value })), () => [d(a, {
|
|
382
|
-
name: fe[V.value],
|
|
383
|
-
stroke: e.color
|
|
384
|
-
}, null, 8, ["name", "stroke"])]), u("div", { style: g({
|
|
385
|
-
position: "absolute",
|
|
386
|
-
bottom: "-20px",
|
|
387
|
-
color: G.value,
|
|
388
|
-
width: "100%",
|
|
389
|
-
textAlign: "center",
|
|
390
|
-
fontSize: "12px",
|
|
391
|
-
fontVariantNumeric: "tabular-nums"
|
|
392
|
-
}) }, ne(re(t)({
|
|
393
|
-
v: V.value === "text" ? Math.round(R.value) : Math.round(T.value),
|
|
394
|
-
s: "px",
|
|
395
|
-
r: 1
|
|
396
|
-
})), 5)], 6),
|
|
397
|
-
u("button", {
|
|
398
|
-
class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !S.value.length }]),
|
|
399
|
-
disabled: !S.value.length,
|
|
400
|
-
onClick: Ee,
|
|
401
|
-
style: g({
|
|
402
|
-
backgroundColor: e.backgroundColor,
|
|
403
|
-
border: `1px solid ${G.value}`,
|
|
404
|
-
marginTop: "20px",
|
|
405
|
-
cursor: e.isCursorPointer ? "pointer" : "default"
|
|
406
|
-
})
|
|
407
|
-
}, [y(n.$slots, "annotator-action-undo", h(f({ disabled: !S.value.length })), () => [d(a, {
|
|
408
|
-
name: "refresh",
|
|
409
|
-
stroke: e.color
|
|
410
|
-
}, null, 8, ["stroke"])])], 14, ce),
|
|
411
|
-
u("button", {
|
|
412
|
-
class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !C.value.length }]),
|
|
413
|
-
onClick: De,
|
|
414
|
-
style: g({
|
|
415
|
-
backgroundColor: e.backgroundColor,
|
|
416
|
-
border: `1px solid ${G.value}`,
|
|
417
|
-
cursor: e.isCursorPointer ? "pointer" : "default"
|
|
418
|
-
})
|
|
419
|
-
}, [y(n.$slots, "annotator-action-redo", h(f({ disabled: !C.value.length })), () => [d(a, {
|
|
420
|
-
name: "refresh",
|
|
421
|
-
stroke: e.color,
|
|
422
|
-
style: { transform: "scaleX(-1)" }
|
|
423
|
-
}, null, 8, ["stroke"])])], 6),
|
|
424
|
-
u("button", {
|
|
425
|
-
class: m(["vue-ui-pen-and-paper-action", { "vue-ui-pen-and-paper-action-disabled": !S.value.length }]),
|
|
426
|
-
onClick: Oe,
|
|
427
|
-
style: g({
|
|
428
|
-
backgroundColor: e.backgroundColor,
|
|
429
|
-
border: `1px solid ${G.value}`,
|
|
430
|
-
cursor: e.isCursorPointer ? "pointer" : "default"
|
|
431
|
-
})
|
|
432
|
-
}, [y(n.$slots, "annotator-action-delete", h(f({ disabled: !S.value.length })), () => [d(a, {
|
|
433
|
-
name: "trash",
|
|
434
|
-
stroke: e.color
|
|
435
|
-
}, null, 8, ["stroke"])])], 6),
|
|
436
|
-
V.value === "text" ? oe((_(), l("input", {
|
|
437
|
-
key: 0,
|
|
438
|
-
ref: "range",
|
|
439
|
-
type: "range",
|
|
440
|
-
class: "vertical-range",
|
|
441
|
-
min: 3,
|
|
442
|
-
max: 48,
|
|
443
|
-
step: 1,
|
|
444
|
-
"onUpdate:modelValue": r[3] ||= (e) => R.value = e,
|
|
445
|
-
style: g({ accentColor: e.color })
|
|
446
|
-
}, null, 4)), [[ie, R.value]]) : oe((_(), l("input", {
|
|
447
|
-
key: 1,
|
|
448
|
-
ref: "range",
|
|
449
|
-
type: "range",
|
|
450
|
-
class: "vertical-range",
|
|
451
|
-
min: .5,
|
|
452
|
-
max: 12,
|
|
453
|
-
step: .1,
|
|
454
|
-
"onUpdate:modelValue": r[4] ||= (e) => T.value = e,
|
|
455
|
-
style: g({ accentColor: e.color })
|
|
456
|
-
}, null, 4)), [[ie, T.value]])
|
|
457
|
-
], 4)) : c("", !0);
|
|
458
|
-
}
|
|
459
|
-
};
|
|
460
|
-
//#endregion
|
|
461
|
-
export { x as n, se as t };
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import { Fragment as e, createBlock as t, createCommentVNode as n, createElementBlock as r, createElementVNode as i, mergeProps as a, openBlock as o, ref as s, renderList as c, renderSlot as l, resolveComponent as u, watch as d, withCtx as f, withModifiers as p } from "vue";
|
|
2
|
-
//#region src/atoms/RecursiveCircles.vue
|
|
3
|
-
var m = [
|
|
4
|
-
"cx",
|
|
5
|
-
"cy",
|
|
6
|
-
"r",
|
|
7
|
-
"fill",
|
|
8
|
-
"stroke",
|
|
9
|
-
"stroke-width",
|
|
10
|
-
"onClick",
|
|
11
|
-
"onMouseover"
|
|
12
|
-
], h = [
|
|
13
|
-
"x",
|
|
14
|
-
"y",
|
|
15
|
-
"height",
|
|
16
|
-
"width",
|
|
17
|
-
"onClick",
|
|
18
|
-
"onMouseover"
|
|
19
|
-
], g = {
|
|
20
|
-
__name: "RecursiveCircles",
|
|
21
|
-
props: {
|
|
22
|
-
color: {
|
|
23
|
-
type: String,
|
|
24
|
-
default: "#000000"
|
|
25
|
-
},
|
|
26
|
-
dataset: {
|
|
27
|
-
type: Array,
|
|
28
|
-
default: () => []
|
|
29
|
-
},
|
|
30
|
-
hoveredUid: {
|
|
31
|
-
type: String,
|
|
32
|
-
default: null
|
|
33
|
-
},
|
|
34
|
-
linkColor: {
|
|
35
|
-
type: String,
|
|
36
|
-
default: "#CCCCCC"
|
|
37
|
-
},
|
|
38
|
-
stroke: {
|
|
39
|
-
type: String,
|
|
40
|
-
default: "#FFFFFF"
|
|
41
|
-
},
|
|
42
|
-
strokeHovered: {
|
|
43
|
-
type: String,
|
|
44
|
-
default: "#000000"
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
emits: ["click", "hover"],
|
|
48
|
-
setup(g, { emit: _ }) {
|
|
49
|
-
let v = g, y = _;
|
|
50
|
-
function b(e) {
|
|
51
|
-
y("click", e);
|
|
52
|
-
}
|
|
53
|
-
function x(e) {
|
|
54
|
-
y("hover", e);
|
|
55
|
-
}
|
|
56
|
-
let S = s([]);
|
|
57
|
-
return d(() => v.dataset, (e) => {
|
|
58
|
-
S.value = e || [];
|
|
59
|
-
}, { immediate: !0 }), (s, d) => {
|
|
60
|
-
let _ = u("RecursiveCircles", !0);
|
|
61
|
-
return o(!0), r(e, null, c(g.dataset, (u, v) => (o(), r(e, null, [u.polygonPath && u.polygonPath.coordinates ? (o(), r(e, { key: 0 }, [(o(!0), r(e, null, c(u.polygonPath.coordinates, (t, c) => (o(), r(e, { key: `node_${v}_${c}` }, [l(s.$slots, "node-svg", { nodeSvg: {
|
|
62
|
-
x: t.x,
|
|
63
|
-
y: t.y,
|
|
64
|
-
radius: u.circleRadius,
|
|
65
|
-
color: u.color,
|
|
66
|
-
stroke: g.stroke,
|
|
67
|
-
strokeWidth: u.circleRadius / 12,
|
|
68
|
-
isSelected: g.hoveredUid && g.hoveredUid === u.uid,
|
|
69
|
-
onClick: () => b(u),
|
|
70
|
-
onEnter: () => x(u),
|
|
71
|
-
onLeave: () => x(null)
|
|
72
|
-
} }, () => [i("circle", {
|
|
73
|
-
cx: t.x,
|
|
74
|
-
cy: t.y,
|
|
75
|
-
r: u.circleRadius,
|
|
76
|
-
fill: `url(#gradient_${u.color})`,
|
|
77
|
-
stroke: g.hoveredUid && g.hoveredUid === u.uid ? g.strokeHovered : g.stroke,
|
|
78
|
-
"stroke-width": g.hoveredUid && g.hoveredUid === u.uid ? u.circleRadius / 6 : u.circleRadius / 12,
|
|
79
|
-
style: { cursor: "pointer" },
|
|
80
|
-
onClick: (e) => b(u),
|
|
81
|
-
onMouseover: (e) => x(u),
|
|
82
|
-
onMouseleave: d[0] ||= (e) => x(null)
|
|
83
|
-
}, null, 40, m)]), s.$slots.node ? (o(), r("foreignObject", {
|
|
84
|
-
key: 0,
|
|
85
|
-
x: t.x - u.circleRadius,
|
|
86
|
-
y: t.y - u.circleRadius,
|
|
87
|
-
height: u.circleRadius * 2,
|
|
88
|
-
width: u.circleRadius * 2,
|
|
89
|
-
style: { overflow: "visible" },
|
|
90
|
-
onClick: p((e) => b(u), ["stop"]),
|
|
91
|
-
onMouseover: (e) => x(u),
|
|
92
|
-
onMouseleave: d[1] ||= (e) => x(null)
|
|
93
|
-
}, [l(s.$slots, "node", a({ ref_for: !0 }, { node: u }))], 40, h)) : n("", !0)], 64))), 128)), u.nodes && u.nodes.length > 0 ? (o(), t(_, {
|
|
94
|
-
key: 0,
|
|
95
|
-
dataset: u.nodes,
|
|
96
|
-
color: g.color,
|
|
97
|
-
stroke: g.stroke,
|
|
98
|
-
strokeHovered: g.strokeHovered,
|
|
99
|
-
hoveredUid: g.hoveredUid,
|
|
100
|
-
onClick: b,
|
|
101
|
-
onHover: x
|
|
102
|
-
}, {
|
|
103
|
-
node: f(({ node: e }) => [l(s.$slots, "node", a({ ref_for: !0 }, { node: e }))]),
|
|
104
|
-
"node-svg": f(({ nodeSvg: e }) => [l(s.$slots, "node-svg", a({ ref_for: !0 }, { nodeSvg: e }))]),
|
|
105
|
-
_: 2
|
|
106
|
-
}, 1032, [
|
|
107
|
-
"dataset",
|
|
108
|
-
"color",
|
|
109
|
-
"stroke",
|
|
110
|
-
"strokeHovered",
|
|
111
|
-
"hoveredUid"
|
|
112
|
-
])) : n("", !0)], 64)) : n("", !0)], 64))), 256);
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
//#endregion
|
|
117
|
-
export { g as default };
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { Fragment as e, createBlock as t, createCommentVNode as n, createElementBlock as r, openBlock as i, ref as a, renderList as o, resolveComponent as s, toDisplayString as c, watch as l } from "vue";
|
|
2
|
-
//#region src/atoms/RecursiveLabels.vue
|
|
3
|
-
var u = [
|
|
4
|
-
"x",
|
|
5
|
-
"y",
|
|
6
|
-
"fill",
|
|
7
|
-
"font-size"
|
|
8
|
-
], d = {
|
|
9
|
-
__name: "RecursiveLabels",
|
|
10
|
-
props: {
|
|
11
|
-
color: {
|
|
12
|
-
type: String,
|
|
13
|
-
default: "#000000"
|
|
14
|
-
},
|
|
15
|
-
dataset: {
|
|
16
|
-
type: Array,
|
|
17
|
-
default: () => []
|
|
18
|
-
},
|
|
19
|
-
hoveredUid: {
|
|
20
|
-
type: String,
|
|
21
|
-
default: null
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
emits: ["zoom", "hover"],
|
|
25
|
-
setup(d, { emit: f }) {
|
|
26
|
-
let p = d, m = a([]);
|
|
27
|
-
return l(() => p.dataset, (e) => {
|
|
28
|
-
m.value = e || [];
|
|
29
|
-
}, { immediate: !0 }), (a, l) => {
|
|
30
|
-
let f = s("RecursiveLabels", !0);
|
|
31
|
-
return i(!0), r(e, null, o(m.value, (a, s) => (i(), r(e, { key: `level_${s}` }, [a.polygonPath && a.polygonPath.coordinates ? (i(), r(e, { key: 0 }, [(i(!0), r(e, null, o(a.polygonPath.coordinates, (e, t) => (i(), r("text", {
|
|
32
|
-
key: `node_${s}_${t}`,
|
|
33
|
-
x: e.x,
|
|
34
|
-
y: e.y + a.circleRadius * 2,
|
|
35
|
-
fill: d.color,
|
|
36
|
-
"font-size": a.circleRadius,
|
|
37
|
-
"text-anchor": "middle",
|
|
38
|
-
style: {
|
|
39
|
-
opacity: "0.8",
|
|
40
|
-
"pointer-events": "none"
|
|
41
|
-
}
|
|
42
|
-
}, c(a.name), 9, u))), 128)), a.nodes && a.nodes.length > 0 ? (i(), t(f, {
|
|
43
|
-
key: 0,
|
|
44
|
-
dataset: a.nodes,
|
|
45
|
-
color: d.color,
|
|
46
|
-
hoveredUid: d.hoveredUid
|
|
47
|
-
}, null, 8, [
|
|
48
|
-
"dataset",
|
|
49
|
-
"color",
|
|
50
|
-
"hoveredUid"
|
|
51
|
-
])) : n("", !0)], 64)) : n("", !0)], 64))), 128);
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
//#endregion
|
|
56
|
-
export { d as default };
|