vue-data-ui 2.10.7 → 2.10.8
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/README.md +2 -2
- package/dist/{Arrow-CB6EKr1I.cjs → Arrow-NnfTvwbg.cjs} +1 -1
- package/dist/{Arrow-CZUwKF2D.js → Arrow-aCcBx0NS.js} +1 -1
- package/dist/{BaseIcon-Bzv6qbPZ.js → BaseIcon-DTt4YbQE.js} +1 -1
- package/dist/{BaseIcon-BkA9Q34x.cjs → BaseIcon-DmfPEj6j.cjs} +1 -1
- package/dist/{ColorPicker-C_UcScy-.js → ColorPicker-DrovFYIL.js} +3 -3
- package/dist/{ColorPicker-CSWIZQFG.cjs → ColorPicker-DsEujcIN.cjs} +1 -1
- package/dist/{DataTable-BhwIv7c6.js → DataTable-CX-Ynkp4.js} +2 -2
- package/dist/{DataTable-BmSWykCq.cjs → DataTable-zSU-0X__.cjs} +1 -1
- package/dist/{Legend-CubpFiQC.js → Legend-BTvPguV6.js} +2 -2
- package/dist/{Legend-CMib9jhR.cjs → Legend-DFQ4iWI3.cjs} +1 -1
- package/dist/{PackageVersion-DmKsiZge.js → PackageVersion-CkUbRQrt.js} +1 -1
- package/dist/{PackageVersion-9kqlnk5q.cjs → PackageVersion-DxR-fKLM.cjs} +1 -1
- package/dist/{PenAndPaper-Dgf1a1MW.js → PenAndPaper-Br3OdauM.js} +3 -3
- package/dist/{PenAndPaper-CfWPwfS1.cjs → PenAndPaper-CG9o3ymS.cjs} +1 -1
- package/dist/{Shape-DVn1gKjR.cjs → Shape-D9l3WJGO.cjs} +1 -1
- package/dist/{Shape-BUW7OeOM.js → Shape-Y1FgLdPz.js} +1 -1
- package/dist/{Slicer-ud5drJRz.cjs → Slicer-B7FJCuCB.cjs} +1 -1
- package/dist/{Slicer-jB5tCct6.js → Slicer-C2GR76As.js} +2 -2
- package/dist/{Title-EjA2nkhd.cjs → Title-CEZO2hzQ.cjs} +1 -1
- package/dist/{Title-BDdzEGgo.js → Title-tlFeM12I.js} +1 -1
- package/dist/{Tooltip-Cdkz2ese.js → Tooltip-BCtHh3BT.js} +1 -1
- package/dist/{Tooltip-Dr2CQpGZ.cjs → Tooltip-BZa-QzER.cjs} +1 -1
- package/dist/documentation/installation.md +1 -1
- package/dist/{dom-to-png-0ag5uZSL.js → dom-to-png-CjxHTZgX.js} +1 -1
- package/dist/{dom-to-png-DfWDULgW.cjs → dom-to-png-fAhFmKHV.cjs} +1 -1
- package/dist/{img-BFXiOvkr.cjs → img-Ds_hWTTu.cjs} +1 -1
- package/dist/{img-DB4eqtiV.js → img-w_iFTYRY.js} +1 -1
- package/dist/{index-Co_0CzhC.js → index-Co5UfCMK.js} +9 -2
- package/dist/index-Dy2-pNb6.cjs +9 -0
- package/dist/{pdf-DUrwlnsH.js → pdf-BfkOvZWw.js} +1 -1
- package/dist/{pdf-D_ScD9oB.cjs → pdf-CCdcXY_7.cjs} +1 -1
- package/dist/style.css +1 -1
- package/dist/types/vue-data-ui.d.cts +5 -0
- package/dist/types/vue-data-ui.d.ts +5 -0
- package/dist/{useNestedProp-DqI_VUcm.js → useNestedProp-C22WP03t.js} +1 -1
- package/dist/{useNestedProp-DjOgO33z.cjs → useNestedProp-DQ8Jt3-Y.cjs} +1 -1
- package/dist/{usePrinter-CynLTaVl.cjs → usePrinter-BQEYwy4a.cjs} +1 -1
- package/dist/{usePrinter-BV6TePSm.js → usePrinter-D_wgo-7k.js} +3 -3
- package/dist/{vue-data-ui-D0yLIHBU.js → vue-data-ui-C18HDIa2.js} +62 -62
- package/dist/{vue-data-ui-BTfYQKf1.cjs → vue-data-ui-zmg06AF1.cjs} +1 -1
- package/dist/vue-data-ui.cjs +1 -1
- package/dist/vue-data-ui.js +1 -1
- package/dist/{vue-ui-3d-bar-cz81vDyE.cjs → vue-ui-3d-bar-C_gJuhTV.cjs} +1 -1
- package/dist/{vue-ui-3d-bar-c10gAuCo.js → vue-ui-3d-bar-SB6p5amV.js} +9 -9
- package/dist/{vue-ui-accordion-DMCnTtx0.js → vue-ui-accordion-CfB_jW1X.js} +3 -3
- package/dist/{vue-ui-accordion-BrbibtJK.cjs → vue-ui-accordion-dVGUWjXH.cjs} +1 -1
- package/dist/{vue-ui-age-pyramid-VrC5Ul6m.cjs → vue-ui-age-pyramid-DZ_ajGY_.cjs} +1 -1
- package/dist/{vue-ui-age-pyramid-qvsOA8yi.js → vue-ui-age-pyramid-G8ggvkGU.js} +10 -10
- package/dist/{vue-ui-annotator-DYHa8k6K.cjs → vue-ui-annotator-BkZat_7T.cjs} +1 -1
- package/dist/{vue-ui-annotator-Difg_FB4.js → vue-ui-annotator-DeoWv4A3.js} +2 -2
- package/dist/{vue-ui-bullet-D9jQThZ5.js → vue-ui-bullet-CvjS0_Pz.js} +8 -8
- package/dist/{vue-ui-bullet-Ck8VFaeu.cjs → vue-ui-bullet-D9jaszdm.cjs} +1 -1
- package/dist/{vue-ui-candlestick-Dsd_ba5D.cjs → vue-ui-candlestick-gnsNiFI3.cjs} +1 -1
- package/dist/{vue-ui-candlestick-CkGKxPxw.js → vue-ui-candlestick-xBYW3oOn.js} +11 -11
- package/dist/{vue-ui-carousel-table-CR-iVMMe.js → vue-ui-carousel-table-BKQIWhzt.js} +4 -4
- package/dist/{vue-ui-carousel-table-46CpWaYv.cjs → vue-ui-carousel-table-DNW8HJNv.cjs} +1 -1
- package/dist/{vue-ui-chestnut-C9hkjAMP.js → vue-ui-chestnut-C5RprHfl.js} +8 -8
- package/dist/{vue-ui-chestnut-DpZW075x.cjs → vue-ui-chestnut-D9UKh8la.cjs} +1 -1
- package/dist/{vue-ui-circle-pack-DCiIAJrq.js → vue-ui-circle-pack-Cx4gGG1K.js} +9 -9
- package/dist/{vue-ui-circle-pack-5_vQ6vaC.cjs → vue-ui-circle-pack-OTXbeD89.cjs} +1 -1
- package/dist/{vue-ui-cursor-DkNjb-zj.cjs → vue-ui-cursor-BuEDX1kV.cjs} +1 -1
- package/dist/{vue-ui-cursor-Cts6qtAH.js → vue-ui-cursor-Cdvi-0lD.js} +2 -2
- package/dist/{vue-ui-dashboard-DHHIcBg0.cjs → vue-ui-dashboard-BAPaHtqr.cjs} +1 -1
- package/dist/{vue-ui-dashboard-Db-_ElsA.js → vue-ui-dashboard-BLHl6FJI.js} +62 -62
- package/dist/{vue-ui-digits--pkv7eKf.js → vue-ui-digits-CCAt8_aJ.js} +2 -2
- package/dist/{vue-ui-digits-BV--b8cv.cjs → vue-ui-digits-YV4qxb86.cjs} +1 -1
- package/dist/{vue-ui-donut-D1OlfgtH.cjs → vue-ui-donut-BvjPFjpd.cjs} +1 -1
- package/dist/{vue-ui-donut-BxbbhGmV.js → vue-ui-donut-CNZIha3Z.js} +12 -12
- package/dist/{vue-ui-donut-evolution-2mbVNu_w.js → vue-ui-donut-evolution-DNhwy9qU.js} +11 -11
- package/dist/{vue-ui-donut-evolution-BetPU8WD.cjs → vue-ui-donut-evolution-Dxx5Psl4.cjs} +1 -1
- package/dist/{vue-ui-dumbbell-Brfkbz4H.js → vue-ui-dumbbell-BmRkAtBK.js} +10 -10
- package/dist/{vue-ui-dumbbell-B4tWeLVq.cjs → vue-ui-dumbbell-MGMSs7vG.cjs} +1 -1
- package/dist/vue-ui-flow-B3t_sNr4.cjs +3 -0
- package/dist/vue-ui-flow-CxhJwDZa.js +767 -0
- package/dist/{vue-ui-funnel-Bga3R3li.js → vue-ui-funnel-CJHKcUDg.js} +9 -9
- package/dist/{vue-ui-funnel-DJIRpxX0.cjs → vue-ui-funnel-twMmn36_.cjs} +1 -1
- package/dist/{vue-ui-galaxy-DjpT9A4L.cjs → vue-ui-galaxy-BjBTNZ6j.cjs} +1 -1
- package/dist/{vue-ui-galaxy-CtUY6byr.js → vue-ui-galaxy-CDonLoXv.js} +11 -11
- package/dist/{vue-ui-gauge-Bob29zui.js → vue-ui-gauge-C7L0uVvx.js} +7 -7
- package/dist/{vue-ui-gauge-ByLQRCM5.cjs → vue-ui-gauge-DXadxMZn.cjs} +1 -1
- package/dist/{vue-ui-gizmo-Dj1TLLb1.js → vue-ui-gizmo-C9JuTLL-.js} +3 -3
- package/dist/{vue-ui-gizmo-DBCKjWN0.cjs → vue-ui-gizmo-u7ypeW6n.cjs} +1 -1
- package/dist/{vue-ui-heatmap-CAUnlp-o.cjs → vue-ui-heatmap-Cjckqsrg.cjs} +1 -1
- package/dist/{vue-ui-heatmap-BYH3bosu.js → vue-ui-heatmap-DaAgigHH.js} +10 -10
- package/dist/{vue-ui-history-plot-C1kOJElL.js → vue-ui-history-plot-KoGpnC64.js} +11 -11
- package/dist/{vue-ui-history-plot-CbTOgmxa.cjs → vue-ui-history-plot-YLMX8PqM.cjs} +1 -1
- package/dist/{vue-ui-kpi-BUoc8QIz.js → vue-ui-kpi-DNUDGlWM.js} +3 -3
- package/dist/{vue-ui-kpi-DTWa9I78.cjs → vue-ui-kpi-GZlFX5zg.cjs} +1 -1
- package/dist/{vue-ui-mini-loader-CSmFWNXS.js → vue-ui-mini-loader-9YvdM0_A.js} +2 -2
- package/dist/{vue-ui-mini-loader-C1awnIuZ.cjs → vue-ui-mini-loader-D1HhmCbC.cjs} +1 -1
- package/dist/{vue-ui-molecule-D9kSZQHB.js → vue-ui-molecule-B71fJREj.js} +11 -11
- package/dist/{vue-ui-molecule-CgSPoJxN.cjs → vue-ui-molecule-DDsKb9re.cjs} +1 -1
- package/dist/{vue-ui-mood-radar-DpQ8EBTg.cjs → vue-ui-mood-radar-BO4yaBxo.cjs} +1 -1
- package/dist/{vue-ui-mood-radar-qd5CCM58.js → vue-ui-mood-radar-DH4RYmdT.js} +11 -11
- package/dist/{vue-ui-nested-donuts-BP9gsX6T.cjs → vue-ui-nested-donuts-BlxuqLPb.cjs} +1 -1
- package/dist/{vue-ui-nested-donuts-OqJPZW8l.js → vue-ui-nested-donuts-bOXvQ01U.js} +11 -11
- package/dist/{vue-ui-onion-DYIgsIYr.cjs → vue-ui-onion-BugH4ThJ.cjs} +1 -1
- package/dist/{vue-ui-onion-rNOeD9u1.js → vue-ui-onion-D7VhEicc.js} +11 -11
- package/dist/{vue-ui-parallel-coordinate-plot-DQd14cew.js → vue-ui-parallel-coordinate-plot-Bc5Yr0Yr.js} +12 -12
- package/dist/{vue-ui-parallel-coordinate-plot-CDwhmDGl.cjs → vue-ui-parallel-coordinate-plot-DjTMM1Zt.cjs} +1 -1
- package/dist/{vue-ui-quadrant-RRM343kT.cjs → vue-ui-quadrant-Dni5Lkhg.cjs} +1 -1
- package/dist/{vue-ui-quadrant-CH856J9A.js → vue-ui-quadrant-PrjG5beo.js} +12 -12
- package/dist/{vue-ui-quick-chart-BLq8C-m8.js → vue-ui-quick-chart-C46V8Ffa.js} +9 -9
- package/dist/{vue-ui-quick-chart-BXYgI65b.cjs → vue-ui-quick-chart-LuGKbIvU.cjs} +1 -1
- package/dist/{vue-ui-radar-BuCYH3tO.js → vue-ui-radar-05pd47HM.js} +12 -12
- package/dist/{vue-ui-radar-38OxxA3O.cjs → vue-ui-radar-j2Vgot8p.cjs} +1 -1
- package/dist/{vue-ui-rating-D6OL6Aml.js → vue-ui-rating-Bl_q3TYs.js} +2 -2
- package/dist/{vue-ui-rating-CiqatGZ_.cjs → vue-ui-rating-ClxiMhPq.cjs} +1 -1
- package/dist/{vue-ui-relation-circle-ByhUL4R6.js → vue-ui-relation-circle-Bu5eYbEg.js} +7 -7
- package/dist/{vue-ui-relation-circle-DDYGMgUl.cjs → vue-ui-relation-circle-BuoQTWw_.cjs} +1 -1
- package/dist/{vue-ui-ridgeline-B5126LSF.js → vue-ui-ridgeline-D4ot7MF8.js} +12 -12
- package/dist/{vue-ui-ridgeline-C550XNkk.cjs → vue-ui-ridgeline-ESRn_Q1y.cjs} +1 -1
- package/dist/{vue-ui-rings-Dxp4dmO2.cjs → vue-ui-rings-D7o_vleu.cjs} +1 -1
- package/dist/{vue-ui-rings-DPXct3je.js → vue-ui-rings-Dyl5VV9I.js} +12 -12
- package/dist/{vue-ui-scatter-BWmY2_ij.cjs → vue-ui-scatter-B31kZz0w.cjs} +1 -1
- package/dist/{vue-ui-scatter-_DhEpcsw.js → vue-ui-scatter-njuULIsD.js} +12 -12
- package/dist/{vue-ui-skeleton-Dzehgcp3.js → vue-ui-skeleton-BSlYUHZA.js} +3 -3
- package/dist/{vue-ui-skeleton-DvJP74jb.cjs → vue-ui-skeleton-Db7PiDqL.cjs} +1 -1
- package/dist/{vue-ui-smiley-BHd1V1Dv.js → vue-ui-smiley-BmNRkSub.js} +2 -2
- package/dist/{vue-ui-smiley-CtDCCsfg.cjs → vue-ui-smiley-CfdbRWq6.cjs} +1 -1
- package/dist/{vue-ui-spark-trend-DDX-fjR-.js → vue-ui-spark-trend-B0Xvu1YP.js} +5 -5
- package/dist/{vue-ui-spark-trend-DDf1hJwg.cjs → vue-ui-spark-trend-CwtYlUEX.cjs} +1 -1
- package/dist/{vue-ui-sparkbar-BT5NEz93.cjs → vue-ui-sparkbar-Xy7idkhv.cjs} +1 -1
- package/dist/{vue-ui-sparkbar-BWeY-FcV.js → vue-ui-sparkbar-e2-8wHQH.js} +4 -4
- package/dist/{vue-ui-sparkgauge-BQMHbq8E.js → vue-ui-sparkgauge-_cMBBl3V.js} +4 -4
- package/dist/{vue-ui-sparkgauge-IYvYlZ57.cjs → vue-ui-sparkgauge-vjcDqzGe.cjs} +1 -1
- package/dist/{vue-ui-sparkhistogram-cjsCsNyf.cjs → vue-ui-sparkhistogram-BpD6XxfA.cjs} +1 -1
- package/dist/{vue-ui-sparkhistogram-C5EdWvQP.js → vue-ui-sparkhistogram-DUyGQgqZ.js} +5 -5
- package/dist/{vue-ui-sparkline-CbKIpwVC.js → vue-ui-sparkline-D1wfG3Yw.js} +4 -4
- package/dist/{vue-ui-sparkline-BwZJpAAf.cjs → vue-ui-sparkline-cPPxz94c.cjs} +1 -1
- package/dist/{vue-ui-sparkstackbar-COxIfFgm.js → vue-ui-sparkstackbar-BCTx016Z.js} +5 -5
- package/dist/{vue-ui-sparkstackbar-BVJU36Jz.cjs → vue-ui-sparkstackbar-iRVpx_xT.cjs} +1 -1
- package/dist/{vue-ui-stackbar-Dr5hRx6G.js → vue-ui-stackbar--QKW68d6.js} +13 -13
- package/dist/{vue-ui-stackbar-CQ56hps8.cjs → vue-ui-stackbar-DCotybpB.cjs} +1 -1
- package/dist/{vue-ui-strip-plot-Mct4OE0A.js → vue-ui-strip-plot-BhLBOV7s.js} +11 -11
- package/dist/{vue-ui-strip-plot-B_nfC_fx.cjs → vue-ui-strip-plot-CdceC4jP.cjs} +1 -1
- package/dist/{vue-ui-table-DE3wOTyH.cjs → vue-ui-table-Cd9UeZXy.cjs} +1 -1
- package/dist/{vue-ui-table-B6LG28n8.js → vue-ui-table-DjDENKmJ.js} +3 -3
- package/dist/{vue-ui-table-heatmap-DDOoKybT.js → vue-ui-table-heatmap-CZdiE-l3.js} +4 -4
- package/dist/{vue-ui-table-heatmap-DuMRCIbx.cjs → vue-ui-table-heatmap-gbdWhEG_.cjs} +1 -1
- package/dist/{vue-ui-table-sparkline-gZWWmkQe.cjs → vue-ui-table-sparkline-BFQ4DQRu.cjs} +1 -1
- package/dist/{vue-ui-table-sparkline-D578FuNQ.js → vue-ui-table-sparkline-zGotm14D.js} +5 -5
- package/dist/{vue-ui-thermometer-BWHsyYj8.cjs → vue-ui-thermometer-CRhrvWm0.cjs} +1 -1
- package/dist/{vue-ui-thermometer-DFbYODrU.js → vue-ui-thermometer-DA3KgSw1.js} +7 -7
- package/dist/{vue-ui-timer-s73pZhYM.cjs → vue-ui-timer-DnXYrfrB.cjs} +1 -1
- package/dist/{vue-ui-timer-Bi6Q0m_J.js → vue-ui-timer-ult9htF3.js} +5 -5
- package/dist/{vue-ui-tiremarks-C68rB2kd.js → vue-ui-tiremarks-CRXtVmEM.js} +7 -7
- package/dist/{vue-ui-tiremarks-BcFJOrF8.cjs → vue-ui-tiremarks-Dht-uT9E.cjs} +1 -1
- package/dist/{vue-ui-treemap-b5rZtLKn.js → vue-ui-treemap-Ck5tHVnE.js} +12 -12
- package/dist/{vue-ui-treemap-B7_kcMng.cjs → vue-ui-treemap-pbhS4FfC.cjs} +1 -1
- package/dist/{vue-ui-vertical-bar-Bw42kw9a.cjs → vue-ui-vertical-bar-BZjsolLB.cjs} +1 -1
- package/dist/{vue-ui-vertical-bar-DyZ-gfQi.js → vue-ui-vertical-bar-egz76l34.js} +12 -12
- package/dist/{vue-ui-waffle-tk3zMyjq.cjs → vue-ui-waffle-C7za7d0u.cjs} +1 -1
- package/dist/{vue-ui-waffle-CG05FL_H.js → vue-ui-waffle-CrMkCjJJ.js} +12 -12
- package/dist/{vue-ui-wheel-RzXEZFfN.cjs → vue-ui-wheel-DIgPyNrB.cjs} +1 -1
- package/dist/{vue-ui-wheel-BTbteaZS.js → vue-ui-wheel-DzMpr4xY.js} +7 -7
- package/dist/{vue-ui-word-cloud-CUZ1Mm3Q.cjs → vue-ui-word-cloud-CNqAz548.cjs} +1 -1
- package/dist/{vue-ui-word-cloud-BKubtYCS.js → vue-ui-word-cloud-TS3az-LK.js} +10 -10
- package/dist/{vue-ui-world-BF0wSEJb.js → vue-ui-world-D3X01xYB.js} +11 -11
- package/dist/{vue-ui-world-BPcoReDh.cjs → vue-ui-world-DMdqTY5G.cjs} +1 -1
- package/dist/{vue-ui-xy-C8ZEeV9g.cjs → vue-ui-xy-CF87Afh2.cjs} +2 -2
- package/dist/{vue-ui-xy-canvas-CJl9RPzv.cjs → vue-ui-xy-canvas-2IL8lPL4.cjs} +1 -1
- package/dist/{vue-ui-xy-canvas-CYaJZj3B.js → vue-ui-xy-canvas-BHeV-3t9.js} +12 -12
- package/dist/{vue-ui-xy-AgcMweTZ.js → vue-ui-xy-tIBPr8r8.js} +16 -16
- package/package.json +1 -1
- package/dist/index-BX4v5fiN.cjs +0 -9
- package/dist/vue-ui-flow-BSptjAOo.cjs +0 -1
- package/dist/vue-ui-flow-BtfK7Ixu.js +0 -655
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),v=require("./index-BX4v5fiN.cjs"),we=require("./Title-EjA2nkhd.cjs"),ae=require("./usePrinter-CynLTaVl.cjs"),$e=require("./DataTable-BmSWykCq.cjs"),Pe=require("./Tooltip-Dr2CQpGZ.cjs"),Ne=require("./vue-ui-skeleton-DvJP74jb.cjs"),Se=require("./vue-ui-accordion-BrbibtJK.cjs"),se=require("./useNestedProp-DjOgO33z.cjs"),Te=require("./PackageVersion-9kqlnk5q.cjs"),Ee=require("./PenAndPaper-CfWPwfS1.cjs"),Fe=require("./useUserOptionState-BgepsfED.cjs"),xe=require("./useChartAccessibility-Cm7nkzTG.cjs"),Ve=require("./usePanZoom-PXRi2Rwx.cjs"),Re=require("./BaseIcon-BkA9Q34x.cjs"),Oe=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Ae=["cx","cy","r","fill","stroke","stroke-width","onClick","onMouseover"],Le=["x","y","height","width","onClick","onMouseover"],Ue={__name:"RecursiveCircles",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null},linkColor:{type:String,default:"#CCCCCC"},stroke:{type:String,default:"#FFFFFF"},strokeHovered:{type:String,default:"#000000"}},emits:["click","hover"],setup(a,{emit:$}){const P=a,k=$;function d(n){k("click",n)}function g(n){k("hover",n)}return e.toRef(P,"dataset").value.forEach(n=>{n.nodes&&n.nodes.length>0&&n.nodes.forEach(f=>{f.ancestor=n})}),(n,f)=>{const R=e.resolveComponent("RecursiveCircles",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,i=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[i.polygonPath&&i.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.polygonPath.coordinates,(y,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("circle",{cx:y.x,cy:y.y,r:i.circleRadius,fill:`url(#gradient_${i.color})`,stroke:a.hoveredUid&&a.hoveredUid===i.uid?a.strokeHovered:a.stroke,"stroke-width":a.hoveredUid&&a.hoveredUid===i.uid?i.circleRadius/6:i.circleRadius/12,style:{cursor:"pointer"},onClick:w=>d(i),onMouseover:w=>g(i),onMouseleave:f[0]||(f[0]=w=>g(null))},null,40,Ae),n.$slots.node?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:y.x-i.circleRadius,y:y.y-i.circleRadius,height:i.circleRadius*2,width:i.circleRadius*2,style:{overflow:"visible"},onClick:e.withModifiers(w=>d(i),["stop"]),onMouseover:w=>g(i),onMouseleave:f[1]||(f[1]=w=>g(null))},[e.renderSlot(n.$slots,"node",e.mergeProps({ref_for:!0},{node:i}))],40,Le)):e.createCommentVNode("",!0)],64))),256)),i.nodes&&i.nodes.length>0?(e.openBlock(),e.createBlock(R,{key:0,dataset:i.nodes,color:a.color,stroke:a.stroke,strokeHovered:a.strokeHovered,hoveredUid:a.hoveredUid,onClick:d,onHover:g},{node:e.withCtx(({node:y})=>[e.renderSlot(n.$slots,"node",e.mergeProps({ref_for:!0},{node:y}))]),_:2},1032,["dataset","color","stroke","strokeHovered","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},De=["x1","y1","x2","y2","stroke","stroke-width"],Ie=["x1","y1","x2","y2","stroke","stroke-width"],ze={__name:"RecursiveLinks",props:{dataset:{type:Array,default:()=>[]},color:{type:String,default:"#DDDDDD"},backgroundColor:{type:String,default:"#FFFFFF"}},setup(a){const $=a;return e.toRef($,"dataset").value.forEach(k=>{k.nodes&&k.nodes.length>0&&k.nodes.forEach(d=>{d.ancestor=k})}),(k,d)=>{const g=e.resolveComponent("RecursiveLinks",!0);return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,s=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.polygonPath&&s.polygonPath.coordinates?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(s.polygonPath.coordinates,(n,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.ancestor&&s.ancestor.polygonPath?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("line",{x1:n.x,y1:n.y,x2:s.ancestor.polygonPath.coordinates[0].x,y2:s.ancestor.polygonPath.coordinates[0].y,stroke:a.backgroundColor,"stroke-width":s.circleRadius/1.5},null,8,De),e.createElementVNode("line",{x1:n.x,y1:n.y,x2:s.ancestor.polygonPath.coordinates[0].x,y2:s.ancestor.polygonPath.coordinates[0].y,stroke:a.color,"stroke-width":s.circleRadius/2},null,8,Ie)],64)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)],64))),256)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,s=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.polygonPath&&s.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.nodes&&s.nodes.length>0?(e.openBlock(),e.createBlock(g,{key:0,dataset:s.nodes,color:a.color,backgroundColor:a.backgroundColor},null,8,["dataset","color","backgroundColor"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256))],64)}}},_e=["x","y","fill","font-size"],He={__name:"RecursiveLabels",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null}},emits:["zoom","hover"],setup(a,{emit:$}){const P=a;return e.toRef(P,"dataset").value.forEach(d=>{d.nodes&&d.nodes.length>0&&d.nodes.forEach(g=>{g.ancestor=d})}),(d,g)=>{const s=e.resolveComponent("RecursiveLabels",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,n=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n.polygonPath&&n.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.polygonPath.coordinates,f=>(e.openBlock(),e.createElementBlock("text",{x:f.x,y:f.y+n.circleRadius*2,fill:a.color,"font-size":n.circleRadius,"text-anchor":"middle",style:{opacity:"0.8","pointer-events":"none"}},e.toDisplayString(n.name),9,_e))),256)),n.nodes&&n.nodes.length>0?(e.openBlock(),e.createBlock(s,{key:0,dataset:n.nodes,color:a.color,hoveredUid:a.hoveredUid},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Me=["id"],qe={key:1,ref:"noTitle",class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},Ge={key:2,style:"width:100%;background:transparent;"},je=["xmlns","viewBox"],We=["width","height"],Xe=["id"],Ze=["stop-color"],Ye=["stop-color"],Je={key:5,class:"vue-data-ui-watermark"},Ke={key:6,"data-dom-to-png-ignore":"",class:"reset-wrapper"},Qe={key:8,ref:"source",dir:"auto"},et=["innerHTML"],tt={__name:"vue-ui-molecule",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectNode"],setup(a,{expose:$,emit:P}){e.useCssVars(o=>({"6c5e8f09":o.slicerColor}));const{vue_ui_molecule:k}=v.useConfig(),d=a,g=P,s=e.computed(()=>!!d.dataset&&d.dataset.length);e.onMounted(()=>{n()});function n(){v.objectIsEmpty(d.dataset)&&v.error({componentName:"VueUiMolecule",type:"dataset"})}const f=e.ref(v.createUid()),R=e.ref(null),i=e.ref(!1),y=e.ref(""),x=e.ref(null),w=e.ref(0),z=e.ref(0),_=e.ref(0),t=e.computed({get:()=>q(),set:o=>o}),{userOptionsVisible:O,setUserOptionsVisibility:H,keepUserOptionState:M}=Fe.useUserOptionState({config:t.value}),{svgRef:A}=xe.useChartAccessibility({config:t.value.style.chart.title});function q(){const o=se.useNestedProp({userConfig:d.config,defaultConfig:k});return o.theme?{...se.useNestedProp({userConfig:v.themes.vue_ui_molecule[o.theme]||d.config,defaultConfig:o}),customPalette:v.themePalettes[o.theme]||v.palette}:o}e.watch(()=>d.config,o=>{t.value=q(),O.value=!t.value.userOptions.showOnChartHover,n(),z.value+=1,_.value+=1,p.value.showTable=t.value.table.show,p.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const{isPrinting:G,isImaging:j,generatePdf:W,generateImage:X}=ae.usePrinter({elementId:`cluster_${f.value}`,fileName:t.value.style.chart.title.text||"vue-ui-molecule",options:t.value.userOptions.print}),ie=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),ue=e.computed(()=>v.convertCustomPalette(t.value.customPalette)),p=e.ref({showTable:t.value.table.show,showDataLabels:!0,showTooltip:t.value.style.chart.tooltip.show});function Z(o,r=0){return Array.isArray(o)&&o.length>0&&o[0].nodes?Z(o[0].nodes,r+1):r}function ce(){const o=Z(d.dataset);let r=100,l=r;for(let c=0;c<o;c+=1)r/=1,l+=r;return{height:l,width:l}}const m=e.ref(ce());e.ref(`0 0 ${m.value.width} ${m.value.height}`);function Y(o,r={x:-m.value.width/2.43,y:m.value.height/2},l=m.value.width/1.1,c=24,u=0,h=0,b="#BBBBBB",D=0){if(!Array.isArray(o)||o.length===0)return o;const Be=v.createPolygonPath({plot:r,radius:l,sides:o.length,rotation:u});return o.forEach((C,le)=>{const re=Be.coordinates[le],ne=C.color?(()=>{let I=v.convertColorToHex(C.color);return I.startsWith("#")?I:`#${I}`})():null;let S;ne?S=ne:D===0?S=b:D===1?(S=ue.value[h]||v.palette[h]||b,h+=1):S=b,C.polygonPath={coordinates:[re]},C.circleRadius=c,C.color=S,C.uid=v.createUid(),Array.isArray(C.nodes)&&C.nodes.length&&(C.nodes=Y(C.nodes,re,l/2.9,c/2.2,u+Math.PI*le/C.nodes.length,h,S,D+1))}),o}function de(o){const r=new Set;function l(u){u.forEach(h=>{if(!h.color)return;let b=h.color;/^#?[0-9A-F]{6}$/i.test(b)||(b=v.convertColorToHex(b)),b.startsWith("#")||(b=`#${b}`),r.add(b),Array.isArray(h.nodes)&&h.nodes.length&&l(h.nodes)})}l(o);const c={};return Array.from(r).forEach(u=>{const h=u.slice(1);c[u]=`gradient_${h}`}),c}const ve=e.computed(()=>de(B.value)),B=e.computed(()=>{const o=v.deepClone(d.dataset);return Y(o)}),L=e.ref(null);function he(o){L.value={datapoint:o,seriesIndex:-1,series:B.value,config:t.value};const r=t.value.style.chart.tooltip.customFormat;if(v.isFunction(r)&&v.functionReturnsString(()=>r({seriesIndex:-1,datapoint:o,series:B.value,config:t.value})))y.value=r({seriesIndex:-1,datapoint:o,series:B.value,config:t.value});else{let l="";l+=`<div style="display:flex;align-items:center;gap:3px"><div style="color:${o.color}">⬤</div><div>${o.name}</div></div>`,o.details&&(l+=`<div style="width:100%;border-top:1px solid ${t.value.style.chart.tooltip.borderColor};margin-top: 2px">${o.details}</div>`),y.value=`<div style="font-family:inherit">${l}</div>`}}const J=e.ref(null),T=e.ref(null);function fe(o){J.value=o,o?(i.value=!0,he(o),T.value=o.uid):(i.value=!1,y.value="",T.value=null)}function me(o){const r=[];function l(c){c.forEach(u=>{const h={name:u.name,details:u.details||"-",ancestor:u.ancestor&&u.ancestor.name||"-",color:u.color||""};r.push(h),u.nodes&&u.nodes.length>0&&l(u.nodes,u.name)})}return l(o),r}const pe=e.computed(()=>me(B.value)),N=e.computed(()=>{const o=[t.value.table.translations.nodeName,t.value.table.translations.details,t.value.table.translations.ancestor],r=pe.value.map((u,h)=>[{color:u.color,name:u.name},u.details,u.ancestor||""]),l={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},c=[t.value.table.translations.nodeName,t.value.table.translations.details,t.value.table.translations.ancestor];return{head:o,body:r,config:l,colNames:c}});function K(){e.nextTick(()=>{const o=N.value.body.map((c,u)=>[[c[0].name],[c[1]],[c[2]]]),r=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[[...N.value.head]]].concat(o),l=v.createCsvContent(r);v.downloadCsv({csvContent:l,title:t.value.style.chart.title.text||"vue-ui-molecule"})})}function ge(){return B.value}const E=e.ref(!1);function ke(o){E.value=o,w.value+=1}function Q(){p.value.showTable=!p.value.showTable}function ee(){p.value.showDataLabels=!p.value.showDataLabels}function te(){p.value.showTooltip=!p.value.showTooltip}const F=e.ref(!1);function U(){F.value=!F.value}const ye=e.computed(()=>!F.value),{viewBox:V,resetZoom:oe,isZoom:be}=Ve.usePanZoom(A,{x:0,y:0,width:m.value.width<=0?10:m.value.width,height:m.value.height<=0?10:m.value.height},t.value.style.chart.zoom.speed,ye);function Ce(o){g("selectNode",o)}return $({getData:ge,generatePdf:W,generateCsv:K,generateImage:X,toggleTable:Q,toggleLabels:ee,toggleTooltip:te,toggleAnnotator:U}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"moleculeChart",ref:x,class:e.normalizeClass(`vue-ui-molecule ${E.value?"vue-data-ui-wrapper-fullscreen":""}`),style:e.normalizeStyle(`font-family:${t.value.style.fontFamily};width:100%; text-align:center;background:${t.value.style.chart.backgroundColor}`),id:`cluster_${f.value}`,onMouseleave:r[2]||(r[2]=l=>{J.value=null,T.value=null,e.unref(H)(!1)}),onMouseenter:r[3]||(r[3]=()=>e.unref(H)(!0))},[t.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(Ee._sfc_main,{key:0,svgRef:e.unref(A),backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:F.value,onClose:U},null,8,["svgRef","backgroundColor","color","active"])):e.createCommentVNode("",!0),ie.value?(e.openBlock(),e.createElementBlock("div",qe,null,512)):e.createCommentVNode("",!0),t.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",Ge,[(e.openBlock(),e.createBlock(we._sfc_main,{key:`title_${z.value}`,config:{title:{cy:"molecule-div-title",...t.value.style.chart.title},subtitle:{cy:"molecule-div-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"]))])):e.createCommentVNode("",!0),t.value.userOptions.show&&s.value&&(e.unref(M)||e.unref(O))?(e.openBlock(),e.createBlock(ae.UserOptions,{ref_key:"details",ref:R,key:`user_options_${w.value}`,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(G),isImaging:e.unref(j),uid:f.value,hasTooltip:t.value.userOptions.buttons.tooltip&&t.value.style.chart.tooltip.show,hasPdf:t.value.userOptions.buttons.pdf,hasXls:t.value.userOptions.buttons.csv,hasImg:t.value.userOptions.buttons.img,hasTable:t.value.userOptions.buttons.table,hasLabel:t.value.userOptions.buttons.labels,hasFullscreen:t.value.userOptions.buttons.fullscreen,isTooltip:p.value.showTooltip,titles:{...t.value.userOptions.buttonTitles},chartElement:x.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:F.value,onToggleFullscreen:ke,onGeneratePdf:e.unref(W),onGenerateCsv:K,onGenerateImage:e.unref(X),onToggleTable:Q,onToggleLabels:ee,onToggleTooltip:te,onToggleAnnotator:U,style:e.normalizeStyle({visibility:e.unref(M)?e.unref(O)?"visible":"hidden":"visible"})},e.createSlots({_:2},[o.$slots.menuIcon?{name:"menuIcon",fn:e.withCtx(({isOpen:l,color:c})=>[e.renderSlot(o.$slots,"menuIcon",e.normalizeProps(e.guardReactiveProps({isOpen:l,color:c})),void 0,!0)]),key:"0"}:void 0,o.$slots.optionTooltip?{name:"optionTooltip",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionTooltip",{},void 0,!0)]),key:"1"}:void 0,o.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionPdf",{},void 0,!0)]),key:"2"}:void 0,o.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionCsv",{},void 0,!0)]),key:"3"}:void 0,o.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionImg",{},void 0,!0)]),key:"4"}:void 0,o.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionTable",{},void 0,!0)]),key:"5"}:void 0,o.$slots.optionLabels?{name:"optionLabels",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionLabels",{},void 0,!0)]),key:"6"}:void 0,o.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:l,isFullscreen:c})=>[e.renderSlot(o.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:l,isFullscreen:c})),void 0,!0)]),key:"7"}:void 0,o.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:l,isAnnotator:c})=>[e.renderSlot(o.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:l,isAnnotator:c})),void 0,!0)]),key:"8"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasTooltip","hasPdf","hasXls","hasImg","hasTable","hasLabel","hasFullscreen","isTooltip","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("svg",{key:4,ref_key:"svgRef",ref:A,xmlns:e.unref(v.XMLNS),viewBox:`${e.unref(V).x} ${e.unref(V).y} ${e.unref(V).width} ${e.unref(V).height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":E.value,"vue-data-ui-fulscreen--off":!E.value}),style:e.normalizeStyle(`overflow: hidden; background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(Te._sfc_main),o.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:m.value.width<=0?10:m.value.width,height:m.value.height<=0?10:m.value.height,style:{pointerEvents:"none"}},[e.renderSlot(o.$slots,"chart-background",{},void 0,!0)],8,We)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(ve.value),l=>(e.openBlock(),e.createElementBlock("radialGradient",{id:`gradient_${l}`,cx:"50%",cy:"30%",r:"50%",fx:"50%",fy:"50%"},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(v.lightenHexColor)(l,.5)},null,8,Ze),e.createElementVNode("stop",{offset:"100%","stop-color":l},null,8,Ye)],8,Xe))),256))]),e.createVNode(ze,{dataset:B.value,color:t.value.style.chart.links.stroke,backgroundColor:t.value.style.chart.backgroundColor},null,8,["dataset","color","backgroundColor"]),e.createVNode(Ue,{dataset:B.value,hoveredUid:T.value,stroke:t.value.style.chart.nodes.stroke,strokeHovered:t.value.style.chart.nodes.strokeHovered,onClick:Ce,onHover:fe},{node:e.withCtx(({node:l})=>[e.renderSlot(o.$slots,"node",e.normalizeProps(e.guardReactiveProps({node:l})),void 0,!0)]),_:3},8,["dataset","hoveredUid","stroke","strokeHovered"]),p.value.showDataLabels?(e.openBlock(),e.createBlock(He,{key:1,dataset:B.value,color:t.value.style.chart.color,hoveredUid:T.value},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"svg",{svg:m.value},void 0,!0)],14,je)):e.createCommentVNode("",!0),o.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Je,[e.renderSlot(o.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(G)||e.unref(j)})),void 0,!0)])):e.createCommentVNode("",!0),e.unref(be)?(e.openBlock(),e.createElementBlock("div",Ke,[e.renderSlot(o.$slots,"reset-action",{reset:e.unref(oe)},()=>[e.createElementVNode("button",{"data-cy-reset":"",tabindex:"0",role:"button",class:"vue-data-ui-refresh-button",style:e.normalizeStyle({background:t.value.style.chart.backgroundColor}),onClick:r[0]||(r[0]=l=>e.unref(oe)(!0))},[e.createVNode(Re.default,{name:"refresh",stroke:t.value.style.chart.color},null,8,["stroke"])],4)],!0)])):e.createCommentVNode("",!0),s.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ne.default,{key:7,config:{type:"molecule",style:{backgroundColor:t.value.style.chart.backgroundColor,molecule:{color:"#CCCCCC"}}}},null,8,["config"])),o.$slots.source?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(o.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),e.createVNode(Pe._sfc_main,{show:p.value.showTooltip&&i.value,backgroundColor:t.value.style.chart.tooltip.backgroundColor,color:t.value.style.chart.tooltip.color,borderRadius:t.value.style.chart.tooltip.borderRadius,borderColor:t.value.style.chart.tooltip.borderColor,borderWidth:t.value.style.chart.tooltip.borderWidth,fontSize:t.value.style.chart.tooltip.fontSize,backgroundOpacity:t.value.style.chart.tooltip.backgroundOpacity,position:t.value.style.chart.tooltip.position,offsetY:t.value.style.chart.tooltip.offsetY,parent:x.value,content:y.value,isFullscreen:E.value,isCustom:t.value.style.chart.tooltip.customFormat&&typeof t.value.style.chart.tooltip.customFormat=="function"},{"tooltip-before":e.withCtx(()=>[e.renderSlot(o.$slots,"tooltip-before",e.normalizeProps(e.guardReactiveProps({...L.value})),void 0,!0)]),"tooltip-after":e.withCtx(()=>[e.renderSlot(o.$slots,"tooltip-after",e.normalizeProps(e.guardReactiveProps({...L.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","borderRadius","borderColor","borderWidth","fontSize","backgroundOpacity","position","offsetY","parent","content","isFullscreen","isCustom"]),s.value?(e.openBlock(),e.createBlock(Se.default,{key:9,hideDetails:"",config:{open:p.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:e.withCtx(()=>[(e.openBlock(),e.createBlock($e.DataTable,{key:`table_${_.value}`,colNames:N.value.colNames,head:N.value.head,body:N.value.body,config:N.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:r[1]||(r[1]=l=>p.value.showTable=!1)},{th:e.withCtx(({th:l})=>[e.createElementVNode("div",{innerHTML:l,style:{display:"flex","align-items":"center"}},null,8,et)]),td:e.withCtx(({td:l})=>[e.createTextVNode(e.toDisplayString(l.name||l),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,Me))}},ot=Oe._export_sfc(tt,[["__scopeId","data-v-90558edd"]]);exports.default=ot;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),v=require("./index-Dy2-pNb6.cjs"),we=require("./Title-CEZO2hzQ.cjs"),ae=require("./usePrinter-BQEYwy4a.cjs"),$e=require("./DataTable-zSU-0X__.cjs"),Pe=require("./Tooltip-BZa-QzER.cjs"),Ne=require("./vue-ui-skeleton-Db7PiDqL.cjs"),Se=require("./vue-ui-accordion-dVGUWjXH.cjs"),se=require("./useNestedProp-DQ8Jt3-Y.cjs"),Te=require("./PackageVersion-DxR-fKLM.cjs"),Ee=require("./PenAndPaper-CG9o3ymS.cjs"),Fe=require("./useUserOptionState-BgepsfED.cjs"),xe=require("./useChartAccessibility-Cm7nkzTG.cjs"),Ve=require("./usePanZoom-PXRi2Rwx.cjs"),Re=require("./BaseIcon-DmfPEj6j.cjs"),Oe=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Ae=["cx","cy","r","fill","stroke","stroke-width","onClick","onMouseover"],Le=["x","y","height","width","onClick","onMouseover"],Ue={__name:"RecursiveCircles",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null},linkColor:{type:String,default:"#CCCCCC"},stroke:{type:String,default:"#FFFFFF"},strokeHovered:{type:String,default:"#000000"}},emits:["click","hover"],setup(a,{emit:$}){const P=a,k=$;function d(n){k("click",n)}function g(n){k("hover",n)}return e.toRef(P,"dataset").value.forEach(n=>{n.nodes&&n.nodes.length>0&&n.nodes.forEach(f=>{f.ancestor=n})}),(n,f)=>{const R=e.resolveComponent("RecursiveCircles",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,i=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[i.polygonPath&&i.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.polygonPath.coordinates,(y,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("circle",{cx:y.x,cy:y.y,r:i.circleRadius,fill:`url(#gradient_${i.color})`,stroke:a.hoveredUid&&a.hoveredUid===i.uid?a.strokeHovered:a.stroke,"stroke-width":a.hoveredUid&&a.hoveredUid===i.uid?i.circleRadius/6:i.circleRadius/12,style:{cursor:"pointer"},onClick:w=>d(i),onMouseover:w=>g(i),onMouseleave:f[0]||(f[0]=w=>g(null))},null,40,Ae),n.$slots.node?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:y.x-i.circleRadius,y:y.y-i.circleRadius,height:i.circleRadius*2,width:i.circleRadius*2,style:{overflow:"visible"},onClick:e.withModifiers(w=>d(i),["stop"]),onMouseover:w=>g(i),onMouseleave:f[1]||(f[1]=w=>g(null))},[e.renderSlot(n.$slots,"node",e.mergeProps({ref_for:!0},{node:i}))],40,Le)):e.createCommentVNode("",!0)],64))),256)),i.nodes&&i.nodes.length>0?(e.openBlock(),e.createBlock(R,{key:0,dataset:i.nodes,color:a.color,stroke:a.stroke,strokeHovered:a.strokeHovered,hoveredUid:a.hoveredUid,onClick:d,onHover:g},{node:e.withCtx(({node:y})=>[e.renderSlot(n.$slots,"node",e.mergeProps({ref_for:!0},{node:y}))]),_:2},1032,["dataset","color","stroke","strokeHovered","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},De=["x1","y1","x2","y2","stroke","stroke-width"],Ie=["x1","y1","x2","y2","stroke","stroke-width"],ze={__name:"RecursiveLinks",props:{dataset:{type:Array,default:()=>[]},color:{type:String,default:"#DDDDDD"},backgroundColor:{type:String,default:"#FFFFFF"}},setup(a){const $=a;return e.toRef($,"dataset").value.forEach(k=>{k.nodes&&k.nodes.length>0&&k.nodes.forEach(d=>{d.ancestor=k})}),(k,d)=>{const g=e.resolveComponent("RecursiveLinks",!0);return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,s=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.polygonPath&&s.polygonPath.coordinates?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(s.polygonPath.coordinates,(n,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.ancestor&&s.ancestor.polygonPath?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("line",{x1:n.x,y1:n.y,x2:s.ancestor.polygonPath.coordinates[0].x,y2:s.ancestor.polygonPath.coordinates[0].y,stroke:a.backgroundColor,"stroke-width":s.circleRadius/1.5},null,8,De),e.createElementVNode("line",{x1:n.x,y1:n.y,x2:s.ancestor.polygonPath.coordinates[0].x,y2:s.ancestor.polygonPath.coordinates[0].y,stroke:a.color,"stroke-width":s.circleRadius/2},null,8,Ie)],64)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)],64))),256)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,s=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[s.polygonPath&&s.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s.nodes&&s.nodes.length>0?(e.openBlock(),e.createBlock(g,{key:0,dataset:s.nodes,color:a.color,backgroundColor:a.backgroundColor},null,8,["dataset","color","backgroundColor"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256))],64)}}},_e=["x","y","fill","font-size"],He={__name:"RecursiveLabels",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null}},emits:["zoom","hover"],setup(a,{emit:$}){const P=a;return e.toRef(P,"dataset").value.forEach(d=>{d.nodes&&d.nodes.length>0&&d.nodes.forEach(g=>{g.ancestor=d})}),(d,g)=>{const s=e.resolveComponent("RecursiveLabels",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataset,n=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n.polygonPath&&n.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.polygonPath.coordinates,f=>(e.openBlock(),e.createElementBlock("text",{x:f.x,y:f.y+n.circleRadius*2,fill:a.color,"font-size":n.circleRadius,"text-anchor":"middle",style:{opacity:"0.8","pointer-events":"none"}},e.toDisplayString(n.name),9,_e))),256)),n.nodes&&n.nodes.length>0?(e.openBlock(),e.createBlock(s,{key:0,dataset:n.nodes,color:a.color,hoveredUid:a.hoveredUid},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Me=["id"],qe={key:1,ref:"noTitle",class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},Ge={key:2,style:"width:100%;background:transparent;"},je=["xmlns","viewBox"],We=["width","height"],Xe=["id"],Ze=["stop-color"],Ye=["stop-color"],Je={key:5,class:"vue-data-ui-watermark"},Ke={key:6,"data-dom-to-png-ignore":"",class:"reset-wrapper"},Qe={key:8,ref:"source",dir:"auto"},et=["innerHTML"],tt={__name:"vue-ui-molecule",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectNode"],setup(a,{expose:$,emit:P}){e.useCssVars(o=>({"6c5e8f09":o.slicerColor}));const{vue_ui_molecule:k}=v.useConfig(),d=a,g=P,s=e.computed(()=>!!d.dataset&&d.dataset.length);e.onMounted(()=>{n()});function n(){v.objectIsEmpty(d.dataset)&&v.error({componentName:"VueUiMolecule",type:"dataset"})}const f=e.ref(v.createUid()),R=e.ref(null),i=e.ref(!1),y=e.ref(""),x=e.ref(null),w=e.ref(0),z=e.ref(0),_=e.ref(0),t=e.computed({get:()=>q(),set:o=>o}),{userOptionsVisible:O,setUserOptionsVisibility:H,keepUserOptionState:M}=Fe.useUserOptionState({config:t.value}),{svgRef:A}=xe.useChartAccessibility({config:t.value.style.chart.title});function q(){const o=se.useNestedProp({userConfig:d.config,defaultConfig:k});return o.theme?{...se.useNestedProp({userConfig:v.themes.vue_ui_molecule[o.theme]||d.config,defaultConfig:o}),customPalette:v.themePalettes[o.theme]||v.palette}:o}e.watch(()=>d.config,o=>{t.value=q(),O.value=!t.value.userOptions.showOnChartHover,n(),z.value+=1,_.value+=1,p.value.showTable=t.value.table.show,p.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const{isPrinting:G,isImaging:j,generatePdf:W,generateImage:X}=ae.usePrinter({elementId:`cluster_${f.value}`,fileName:t.value.style.chart.title.text||"vue-ui-molecule",options:t.value.userOptions.print}),ie=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),ue=e.computed(()=>v.convertCustomPalette(t.value.customPalette)),p=e.ref({showTable:t.value.table.show,showDataLabels:!0,showTooltip:t.value.style.chart.tooltip.show});function Z(o,r=0){return Array.isArray(o)&&o.length>0&&o[0].nodes?Z(o[0].nodes,r+1):r}function ce(){const o=Z(d.dataset);let r=100,l=r;for(let c=0;c<o;c+=1)r/=1,l+=r;return{height:l,width:l}}const m=e.ref(ce());e.ref(`0 0 ${m.value.width} ${m.value.height}`);function Y(o,r={x:-m.value.width/2.43,y:m.value.height/2},l=m.value.width/1.1,c=24,u=0,h=0,b="#BBBBBB",D=0){if(!Array.isArray(o)||o.length===0)return o;const Be=v.createPolygonPath({plot:r,radius:l,sides:o.length,rotation:u});return o.forEach((C,le)=>{const re=Be.coordinates[le],ne=C.color?(()=>{let I=v.convertColorToHex(C.color);return I.startsWith("#")?I:`#${I}`})():null;let S;ne?S=ne:D===0?S=b:D===1?(S=ue.value[h]||v.palette[h]||b,h+=1):S=b,C.polygonPath={coordinates:[re]},C.circleRadius=c,C.color=S,C.uid=v.createUid(),Array.isArray(C.nodes)&&C.nodes.length&&(C.nodes=Y(C.nodes,re,l/2.9,c/2.2,u+Math.PI*le/C.nodes.length,h,S,D+1))}),o}function de(o){const r=new Set;function l(u){u.forEach(h=>{if(!h.color)return;let b=h.color;/^#?[0-9A-F]{6}$/i.test(b)||(b=v.convertColorToHex(b)),b.startsWith("#")||(b=`#${b}`),r.add(b),Array.isArray(h.nodes)&&h.nodes.length&&l(h.nodes)})}l(o);const c={};return Array.from(r).forEach(u=>{const h=u.slice(1);c[u]=`gradient_${h}`}),c}const ve=e.computed(()=>de(B.value)),B=e.computed(()=>{const o=v.deepClone(d.dataset);return Y(o)}),L=e.ref(null);function he(o){L.value={datapoint:o,seriesIndex:-1,series:B.value,config:t.value};const r=t.value.style.chart.tooltip.customFormat;if(v.isFunction(r)&&v.functionReturnsString(()=>r({seriesIndex:-1,datapoint:o,series:B.value,config:t.value})))y.value=r({seriesIndex:-1,datapoint:o,series:B.value,config:t.value});else{let l="";l+=`<div style="display:flex;align-items:center;gap:3px"><div style="color:${o.color}">⬤</div><div>${o.name}</div></div>`,o.details&&(l+=`<div style="width:100%;border-top:1px solid ${t.value.style.chart.tooltip.borderColor};margin-top: 2px">${o.details}</div>`),y.value=`<div style="font-family:inherit">${l}</div>`}}const J=e.ref(null),T=e.ref(null);function fe(o){J.value=o,o?(i.value=!0,he(o),T.value=o.uid):(i.value=!1,y.value="",T.value=null)}function me(o){const r=[];function l(c){c.forEach(u=>{const h={name:u.name,details:u.details||"-",ancestor:u.ancestor&&u.ancestor.name||"-",color:u.color||""};r.push(h),u.nodes&&u.nodes.length>0&&l(u.nodes,u.name)})}return l(o),r}const pe=e.computed(()=>me(B.value)),N=e.computed(()=>{const o=[t.value.table.translations.nodeName,t.value.table.translations.details,t.value.table.translations.ancestor],r=pe.value.map((u,h)=>[{color:u.color,name:u.name},u.details,u.ancestor||""]),l={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},c=[t.value.table.translations.nodeName,t.value.table.translations.details,t.value.table.translations.ancestor];return{head:o,body:r,config:l,colNames:c}});function K(){e.nextTick(()=>{const o=N.value.body.map((c,u)=>[[c[0].name],[c[1]],[c[2]]]),r=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[[...N.value.head]]].concat(o),l=v.createCsvContent(r);v.downloadCsv({csvContent:l,title:t.value.style.chart.title.text||"vue-ui-molecule"})})}function ge(){return B.value}const E=e.ref(!1);function ke(o){E.value=o,w.value+=1}function Q(){p.value.showTable=!p.value.showTable}function ee(){p.value.showDataLabels=!p.value.showDataLabels}function te(){p.value.showTooltip=!p.value.showTooltip}const F=e.ref(!1);function U(){F.value=!F.value}const ye=e.computed(()=>!F.value),{viewBox:V,resetZoom:oe,isZoom:be}=Ve.usePanZoom(A,{x:0,y:0,width:m.value.width<=0?10:m.value.width,height:m.value.height<=0?10:m.value.height},t.value.style.chart.zoom.speed,ye);function Ce(o){g("selectNode",o)}return $({getData:ge,generatePdf:W,generateCsv:K,generateImage:X,toggleTable:Q,toggleLabels:ee,toggleTooltip:te,toggleAnnotator:U}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"moleculeChart",ref:x,class:e.normalizeClass(`vue-ui-molecule ${E.value?"vue-data-ui-wrapper-fullscreen":""}`),style:e.normalizeStyle(`font-family:${t.value.style.fontFamily};width:100%; text-align:center;background:${t.value.style.chart.backgroundColor}`),id:`cluster_${f.value}`,onMouseleave:r[2]||(r[2]=l=>{J.value=null,T.value=null,e.unref(H)(!1)}),onMouseenter:r[3]||(r[3]=()=>e.unref(H)(!0))},[t.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(Ee._sfc_main,{key:0,svgRef:e.unref(A),backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:F.value,onClose:U},null,8,["svgRef","backgroundColor","color","active"])):e.createCommentVNode("",!0),ie.value?(e.openBlock(),e.createElementBlock("div",qe,null,512)):e.createCommentVNode("",!0),t.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",Ge,[(e.openBlock(),e.createBlock(we._sfc_main,{key:`title_${z.value}`,config:{title:{cy:"molecule-div-title",...t.value.style.chart.title},subtitle:{cy:"molecule-div-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"]))])):e.createCommentVNode("",!0),t.value.userOptions.show&&s.value&&(e.unref(M)||e.unref(O))?(e.openBlock(),e.createBlock(ae.UserOptions,{ref_key:"details",ref:R,key:`user_options_${w.value}`,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(G),isImaging:e.unref(j),uid:f.value,hasTooltip:t.value.userOptions.buttons.tooltip&&t.value.style.chart.tooltip.show,hasPdf:t.value.userOptions.buttons.pdf,hasXls:t.value.userOptions.buttons.csv,hasImg:t.value.userOptions.buttons.img,hasTable:t.value.userOptions.buttons.table,hasLabel:t.value.userOptions.buttons.labels,hasFullscreen:t.value.userOptions.buttons.fullscreen,isTooltip:p.value.showTooltip,titles:{...t.value.userOptions.buttonTitles},chartElement:x.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:F.value,onToggleFullscreen:ke,onGeneratePdf:e.unref(W),onGenerateCsv:K,onGenerateImage:e.unref(X),onToggleTable:Q,onToggleLabels:ee,onToggleTooltip:te,onToggleAnnotator:U,style:e.normalizeStyle({visibility:e.unref(M)?e.unref(O)?"visible":"hidden":"visible"})},e.createSlots({_:2},[o.$slots.menuIcon?{name:"menuIcon",fn:e.withCtx(({isOpen:l,color:c})=>[e.renderSlot(o.$slots,"menuIcon",e.normalizeProps(e.guardReactiveProps({isOpen:l,color:c})),void 0,!0)]),key:"0"}:void 0,o.$slots.optionTooltip?{name:"optionTooltip",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionTooltip",{},void 0,!0)]),key:"1"}:void 0,o.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionPdf",{},void 0,!0)]),key:"2"}:void 0,o.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionCsv",{},void 0,!0)]),key:"3"}:void 0,o.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionImg",{},void 0,!0)]),key:"4"}:void 0,o.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionTable",{},void 0,!0)]),key:"5"}:void 0,o.$slots.optionLabels?{name:"optionLabels",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"optionLabels",{},void 0,!0)]),key:"6"}:void 0,o.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:l,isFullscreen:c})=>[e.renderSlot(o.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:l,isFullscreen:c})),void 0,!0)]),key:"7"}:void 0,o.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:l,isAnnotator:c})=>[e.renderSlot(o.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:l,isAnnotator:c})),void 0,!0)]),key:"8"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasTooltip","hasPdf","hasXls","hasImg","hasTable","hasLabel","hasFullscreen","isTooltip","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("svg",{key:4,ref_key:"svgRef",ref:A,xmlns:e.unref(v.XMLNS),viewBox:`${e.unref(V).x} ${e.unref(V).y} ${e.unref(V).width} ${e.unref(V).height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":E.value,"vue-data-ui-fulscreen--off":!E.value}),style:e.normalizeStyle(`overflow: hidden; background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(Te._sfc_main),o.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:m.value.width<=0?10:m.value.width,height:m.value.height<=0?10:m.value.height,style:{pointerEvents:"none"}},[e.renderSlot(o.$slots,"chart-background",{},void 0,!0)],8,We)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(ve.value),l=>(e.openBlock(),e.createElementBlock("radialGradient",{id:`gradient_${l}`,cx:"50%",cy:"30%",r:"50%",fx:"50%",fy:"50%"},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(v.lightenHexColor)(l,.5)},null,8,Ze),e.createElementVNode("stop",{offset:"100%","stop-color":l},null,8,Ye)],8,Xe))),256))]),e.createVNode(ze,{dataset:B.value,color:t.value.style.chart.links.stroke,backgroundColor:t.value.style.chart.backgroundColor},null,8,["dataset","color","backgroundColor"]),e.createVNode(Ue,{dataset:B.value,hoveredUid:T.value,stroke:t.value.style.chart.nodes.stroke,strokeHovered:t.value.style.chart.nodes.strokeHovered,onClick:Ce,onHover:fe},{node:e.withCtx(({node:l})=>[e.renderSlot(o.$slots,"node",e.normalizeProps(e.guardReactiveProps({node:l})),void 0,!0)]),_:3},8,["dataset","hoveredUid","stroke","strokeHovered"]),p.value.showDataLabels?(e.openBlock(),e.createBlock(He,{key:1,dataset:B.value,color:t.value.style.chart.color,hoveredUid:T.value},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"svg",{svg:m.value},void 0,!0)],14,je)):e.createCommentVNode("",!0),o.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Je,[e.renderSlot(o.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(G)||e.unref(j)})),void 0,!0)])):e.createCommentVNode("",!0),e.unref(be)?(e.openBlock(),e.createElementBlock("div",Ke,[e.renderSlot(o.$slots,"reset-action",{reset:e.unref(oe)},()=>[e.createElementVNode("button",{"data-cy-reset":"",tabindex:"0",role:"button",class:"vue-data-ui-refresh-button",style:e.normalizeStyle({background:t.value.style.chart.backgroundColor}),onClick:r[0]||(r[0]=l=>e.unref(oe)(!0))},[e.createVNode(Re.default,{name:"refresh",stroke:t.value.style.chart.color},null,8,["stroke"])],4)],!0)])):e.createCommentVNode("",!0),s.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ne.default,{key:7,config:{type:"molecule",style:{backgroundColor:t.value.style.chart.backgroundColor,molecule:{color:"#CCCCCC"}}}},null,8,["config"])),o.$slots.source?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(o.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),e.createVNode(Pe._sfc_main,{show:p.value.showTooltip&&i.value,backgroundColor:t.value.style.chart.tooltip.backgroundColor,color:t.value.style.chart.tooltip.color,borderRadius:t.value.style.chart.tooltip.borderRadius,borderColor:t.value.style.chart.tooltip.borderColor,borderWidth:t.value.style.chart.tooltip.borderWidth,fontSize:t.value.style.chart.tooltip.fontSize,backgroundOpacity:t.value.style.chart.tooltip.backgroundOpacity,position:t.value.style.chart.tooltip.position,offsetY:t.value.style.chart.tooltip.offsetY,parent:x.value,content:y.value,isFullscreen:E.value,isCustom:t.value.style.chart.tooltip.customFormat&&typeof t.value.style.chart.tooltip.customFormat=="function"},{"tooltip-before":e.withCtx(()=>[e.renderSlot(o.$slots,"tooltip-before",e.normalizeProps(e.guardReactiveProps({...L.value})),void 0,!0)]),"tooltip-after":e.withCtx(()=>[e.renderSlot(o.$slots,"tooltip-after",e.normalizeProps(e.guardReactiveProps({...L.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","borderRadius","borderColor","borderWidth","fontSize","backgroundOpacity","position","offsetY","parent","content","isFullscreen","isCustom"]),s.value?(e.openBlock(),e.createBlock(Se.default,{key:9,hideDetails:"",config:{open:p.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:e.withCtx(()=>[(e.openBlock(),e.createBlock($e.DataTable,{key:`table_${_.value}`,colNames:N.value.colNames,head:N.value.head,body:N.value.body,config:N.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:r[1]||(r[1]=l=>p.value.showTable=!1)},{th:e.withCtx(({th:l})=>[e.createElementVNode("div",{innerHTML:l,style:{display:"flex","align-items":"center"}},null,8,et)]),td:e.withCtx(({td:l})=>[e.createTextVNode(e.toDisplayString(l.name||l),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,Me))}},ot=Oe._export_sfc(tt,[["__scopeId","data-v-90558edd"]]);exports.default=ot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-BX4v5fiN.cjs"),oe=require("./Title-EjA2nkhd.cjs"),q=require("./usePrinter-CynLTaVl.cjs"),le=require("./Legend-CMib9jhR.cjs"),g=require("./BaseIcon-BkA9Q34x.cjs"),ae=require("./DataTable-BmSWykCq.cjs"),re=require("./vue-ui-skeleton-DvJP74jb.cjs"),ne=require("./vue-ui-accordion-BrbibtJK.cjs"),z=require("./useNestedProp-DjOgO33z.cjs"),se=require("./PackageVersion-9kqlnk5q.cjs"),ue=require("./PenAndPaper-CfWPwfS1.cjs"),ie=require("./useUserOptionState-BgepsfED.cjs"),ce=require("./useChartAccessibility-Cm7nkzTG.cjs"),de=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ve=["id"],ye={key:2,style:"width:100%;background:transparent"},me=["xmlns","viewBox"],he=["width","height"],fe=["id"],pe=["stop-color"],ke=["stop-color"],ge=["x1","y1","x2","y2","stroke","stroke-width"],be=["d","stroke","stroke-width"],Ce=["stroke"],Ne=["fill"],we=["stroke"],xe=["fill"],Ve=["stroke"],_e=["fill"],Be=["stroke"],Pe=["fill"],$e=["stroke"],Me=["fill"],Ee=["d","stroke","stroke-width","fill"],Oe=["x1","y1","stroke"],Se=["cx","cy","fill","stroke"],Ae=["fill","stroke"],Te=["y","fill","font-weight"],Le=["y","fill"],Ie={key:5,class:"vue-data-ui-watermark"},Fe=["onClick"],qe={style:{"font-weight":"bold"}},ze={key:8,ref:"source",dir:"auto"},De=["innerHTML"],Re={__name:"vue-ui-mood-radar",props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},setup(D,{expose:R}){const{vue_ui_mood_radar:j}=r.useConfig(),u=D,m=e.computed(()=>!!u.dataset&&Object.keys(u.dataset).length);e.onMounted(()=>{V()});function V(){r.objectIsEmpty(u.dataset)&&r.error({componentName:"VueUiMoodRadar",type:"dataset"})}const h=e.ref(r.createUid()),_=e.ref(null),U=e.ref(null),n=e.ref(null),W=e.ref(null),G=e.ref(0),H=e.ref(0),B=e.ref(0),t=e.computed({get:()=>E(),set:l=>l}),{userOptionsVisible:N,setUserOptionsVisibility:P,keepUserOptionState:$}=ie.useUserOptionState({config:t.value}),{svgRef:M}=ce.useChartAccessibility({config:t.value.style.chart.title});function E(){const l=z.useNestedProp({userConfig:u.config,defaultConfig:j});return l.theme?{...z.useNestedProp({userConfig:r.themes.vue_ui_mood_radar[l.theme]||u.config,defaultConfig:l})}:l}e.watch(()=>u.config,l=>{t.value=E(),N.value=!t.value.userOptions.showOnChartHover,V(),G.value+=1,H.value+=1,B.value+=1,f.value.showTable=t.value.table.show},{deep:!0});const{isPrinting:O,isImaging:S,generatePdf:A,generateImage:T}=q.usePrinter({elementId:h.value,fileName:t.value.style.chart.title.text||"vue-ui-mood-radar",options:t.value.userOptions.print}),X=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),f=e.ref({showTable:t.value.table.show}),i=e.computed(()=>({height:256,width:256})),w=e.computed(()=>r.createPolygonPath({plot:{x:128,y:i.value.height/2},radius:90,sides:5,rotation:11}));function K({centerX:l,centerY:a,apexX:o,apexY:s,proportion:d,key:k,value:te}){return{x:l+(o-l)*d,y:a+(s-a)*d,key:k,value:te}}const Y=e.computed(()=>Math.max(...Object.values(u.dataset).map(l=>isNaN(l)?0:l))),y=e.computed(()=>Object.values(u.dataset).reduce((l,a)=>(isNaN(l)?0:l)+(isNaN(a)?0:a),0)),c=e.computed(()=>Object.keys(u.dataset).map((l,a)=>{const o=typeof u.dataset[l]!="number"||isNaN(u.dataset[l])?0:u.dataset[l];return{index:a,key:l,value:o,proportion:o/y.value,color:t.value.style.chart.layout.smileys.colors[l]}}).sort((l,a)=>a.key-l.key)),L=e.computed(()=>m.value?(["1","2","3","4","5"].forEach(l=>{[null,void 0].includes(u.dataset[l])&&r.error({componentName:"VueUiMoodRadar",type:"datasetAttribute",property:l})}),w.value.coordinates.map((l,a)=>{const o=K({centerX:i.value.width/2,centerY:i.value.height/2,apexX:l.x,apexY:l.y,proportion:c.value[a].value/Y.value,key:c.value[a].key,value:c.value[a].value});return{...l,plots:o,key:c.value[a].key}})):[]),J=e.computed(()=>({cy:"mood-radar-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""}));function Q(l){l===n.value?n.value=null:n.value=l}const v=e.computed(()=>{const l=c.value.map(o=>({name:o.key,color:o.color})),a=c.value.map(o=>isNaN(o.value)?0:o.value);return{head:l,body:a}});function I(){e.nextTick(()=>{const l=v.value.head.map((s,d)=>[[s.name],[v.value.body[d]],[isNaN(v.value.body[d]/y.value)?"-":v.value.body[d]/y.value*100]]),a=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[[""],["val"],["%"]]].concat(l),o=r.createCsvContent(a);r.downloadCsv({csvContent:o,title:t.value.style.chart.title.text||"vue-ui-mood-radar"})})}const b=e.computed(()=>{const l=[' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>',Number(y.value.toFixed(t.value.table.td.roundingValue)).toLocaleString(),"100%"],a=v.value.head.map((d,k)=>[{color:d.color,name:d.name},v.value.body[k].toFixed(t.value.table.td.roundingValue),isNaN(v.value.body[k]/y.value)?"-":(v.value.body[k]/y.value*100).toFixed(t.value.table.td.roundingPercentage)+"%"]),o={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},s=[t.value.table.columnNames.series,t.value.table.columnNames.value,t.value.table.columnNames.percentage];return{head:l,body:a,config:o,colNames:s}});function Z(){return c.value}function F(){f.value.showTable=!f.value.showTable}const p=e.ref(!1);function ee(l){p.value=l}const C=e.ref(!1);function x(){C.value=!C.value}return R({getData:Z,generatePdf:A,generateCsv:I,generateImage:T,toggleTable:F,toggleAnnotator:x}),(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`vue-ui-mood-radar ${p.value?"vue-data-ui-wrapper-fullscreen":""} ${t.value.useCssAnimation?"":"vue-ui-dna"}`),ref_key:"moodRadarChart",ref:_,id:`${h.value}`,style:e.normalizeStyle(`font-family:${t.value.style.fontFamily};width:100%; text-align:center;background:${t.value.style.chart.backgroundColor}`),onMouseenter:a[11]||(a[11]=()=>e.unref(P)(!0)),onMouseleave:a[12]||(a[12]=()=>e.unref(P)(!1))},[t.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(ue._sfc_main,{key:0,svgRef:e.unref(M),backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:C.value,onClose:x},null,8,["svgRef","backgroundColor","color","active"])):e.createCommentVNode("",!0),X.value?(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"noTitle",ref:W,class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},null,512)):e.createCommentVNode("",!0),t.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(oe._sfc_main,{config:{title:{cy:"mood-radar-title",...t.value.style.chart.title},subtitle:{cy:"mood-radar-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"])])):e.createCommentVNode("",!0),t.value.userOptions.show&&m.value&&(e.unref($)||e.unref(N))?(e.openBlock(),e.createBlock(q.UserOptions,{key:3,ref_key:"details",ref:U,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(O),isImaging:e.unref(S),uid:h.value,hasPdf:t.value.userOptions.buttons.pdf,hasXls:t.value.userOptions.buttons.csv,hasImg:t.value.userOptions.buttons.img,hasTable:t.value.userOptions.buttons.table,hasFullscreen:t.value.userOptions.buttons.fullscreen,isFullscreen:p.value,titles:{...t.value.userOptions.buttonTitles},chartElement:_.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:C.value,onToggleFullscreen:ee,onGeneratePdf:e.unref(A),onGenerateCsv:I,onGenerateImage:e.unref(T),onToggleTable:F,onToggleAnnotator:x,style:e.normalizeStyle({visibility:e.unref($)?e.unref(N)?"visible":"hidden":"visible"})},e.createSlots({_:2},[l.$slots.menuIcon?{name:"menuIcon",fn:e.withCtx(({isOpen:o,color:s})=>[e.renderSlot(l.$slots,"menuIcon",e.normalizeProps(e.guardReactiveProps({isOpen:o,color:s})),void 0,!0)]),key:"0"}:void 0,l.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,l.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,l.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,l.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,l.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:o,isFullscreen:s})=>[e.renderSlot(l.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:o,isFullscreen:s})),void 0,!0)]),key:"5"}:void 0,l.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:o,isAnnotator:s})=>[e.renderSlot(l.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:o,isAnnotator:s})),void 0,!0)]),key:"6"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasPdf","hasXls","hasImg","hasTable","hasFullscreen","isFullscreen","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createElementBlock("svg",{key:4,ref_key:"svgRef",ref:M,xmlns:e.unref(r.XMLNS),viewBox:`0 0 ${i.value.width} ${i.value.height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":p.value,"vue-data-ui-fulscreen--off":!p.value}),style:e.normalizeStyle(`overflow:visible;background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(se._sfc_main),l.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:i.value.width,height:i.value.height,style:{pointerEvents:"none"}},[e.renderSlot(l.$slots,"chart-background",{},void 0,!0)],8,he)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[e.createElementVNode("radialGradient",{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%",id:`mood_radar_gradient_${h.value}`},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(r.setOpacity)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.opacity)},null,8,pe),e.createElementVNode("stop",{offset:"100%","stop-color":e.unref(r.setOpacity)(e.unref(r.shiftHue)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.gradient.intensity/100),t.value.style.chart.layout.dataPolygon.opacity)},null,8,ke)],8,fe)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value.coordinates,o=>(e.openBlock(),e.createElementBlock("line",{x1:i.value.width/2,y1:i.value.height/2,x2:o.x,y2:o.y,stroke:t.value.style.chart.layout.grid.stroke,"stroke-width":t.value.style.chart.layout.grid.strokeWidth},null,8,ge))),256)),e.createElementVNode("path",{d:w.value.path,fill:"none",stroke:t.value.style.chart.layout.outerPolygon.stroke,"stroke-width":t.value.style.chart.layout.outerPolygon.strokeWidth,"stroke-linejoin":"round","stroke-linecap":"round"},null,8,be),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[5],"stroke-width":"1","stroke-linecap":"round",d:"M119 25A1 1 0 00137 25 1 1 0 00119 25M123 26C124 33 132 33 133 26L123 26M123 22A1 1 0 00126 22 1 1 0 00123 22M130 22A1 1 0 00133 22 1 1 0 00130 22"},null,8,Ce),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[0]||(a[0]=o=>n.value=5),onMouseleave:a[1]||(a[1]=o=>n.value=null),cx:"128",cy:"25",r:"20",fill:n.value===5?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[5],20):"transparent"},null,40,Ne),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[4],"stroke-width":"1","stroke-linecap":"round",d:"M218 95A1 1 0 00236 95 1 1 0 00218 95M222 97C225 99 229 99 232 97M222 92A1 1 0 00225 92 1 1 0 00222 92M229 92A1 1 0 00232 92 1 1 0 00229 92"},null,8,we),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[2]||(a[2]=o=>n.value=4),onMouseleave:a[3]||(a[3]=o=>n.value=null),cx:"227",cy:"95.5",r:"20",fill:n.value===4?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[4],20):"transparent"},null,40,xe),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[3],"stroke-width":"1","stroke-linecap":"round",d:"M181 213A1 1 0 00199 213 1 1 0 00181 213M185 210A1 1 0 00188 210 1 1 0 00185 210M192 210A1 1 0 00195 210 1 1 0 00192 210M185 215 195 215"},null,8,Ve),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[4]||(a[4]=o=>n.value=3),onMouseleave:a[5]||(a[5]=o=>n.value=null),cx:"190",cy:"213.5",r:"20",fill:n.value===3?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[3],20):"transparent"},null,40,_e),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[2],"stroke-width":"1","stroke-linecap":"round",d:"M56 213A1 1 0 0074 213 1 1 0 0056 213M60 216C63 214 67 214 70 216M60 210A1 1 0 0063 210 1 1 0 0060 210M67 210A1 1 0 0070 210 1 1 0 0067 210"},null,8,Be),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[6]||(a[6]=o=>n.value=2),onMouseleave:a[7]||(a[7]=o=>n.value=null),cx:"65",cy:"213.5",r:"20",fill:n.value===2?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[2],20):"transparent"},null,40,Pe),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[1],"stroke-width":"1","stroke-linecap":"round",d:"M20 96A1 1 0 0038 96 1 1 0 0020 96M24 100C25 95 33 95 34 100L24 100M24 93A1 1 0 0027 93 1 1 0 0024 93M31 93A1 1 0 0034 93 1 1 0 0031 93"},null,8,$e),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[8]||(a[8]=o=>n.value=1),onMouseleave:a[9]||(a[9]=o=>n.value=null),cx:"29",cy:"95.5",r:"20",fill:n.value===1?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[1],20):"transparent"},null,40,Me),e.createElementVNode("path",{d:e.unref(r.makePath)(L.value.map(o=>o.plots)),stroke:t.value.style.chart.layout.dataPolygon.stroke,"stroke-width":t.value.style.chart.layout.dataPolygon.strokeWidth,"stroke-linecap":"round","stroke-linejoin":"round",fill:t.value.style.chart.layout.dataPolygon.gradient.show?`url(#mood_radar_gradient_${h.value})`:e.unref(r.setOpacity)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.opacity)},null,8,Ee),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(L.value.map(o=>o.plots),(o,s)=>(e.openBlock(),e.createElementBlock("g",{class:"vue-ui-mood-radar-trap",style:e.normalizeStyle(`opacity:${n.value==o.key?"1":"0"}`)},[e.createElementVNode("line",{x1:o.x,y1:o.y,x2:128,y2:128,stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,Oe),e.createElementVNode("circle",{cx:o.x,cy:o.y,fill:t.value.style.chart.layout.smileys.colors[o.key],r:"3",stroke:t.value.style.chart.backgroundColor,"stroke-width":.5},null,8,Se),e.createElementVNode("circle",{cx:128,cy:128,fill:t.value.style.chart.layout.smileys.colors[o.key],r:"3",stroke:t.value.style.chart.backgroundColor,"stroke-width":.5},null,8,Ae),e.createElementVNode("text",{x:128,y:["5",5].includes(o.key)?145:120,fill:t.value.style.chart.layout.dataLabel.color,"font-size":"12","text-anchor":"middle","font-weight":t.value.style.chart.layout.dataLabel.bold?"bold":"normal"},e.toDisplayString(e.unref(r.applyDataLabel)(t.value.style.chart.layout.dataLabel.formatter,o.value,e.unref(r.dataLabel)({p:t.value.style.chart.layout.dataLabel.prefix,v:o.value,s:t.value.style.chart.layout.dataLabel.suffix,r:t.value.style.chart.layout.dataLabel.roundingValue}),{datapoint:o,seriesIndex:s})),9,Te),e.createElementVNode("text",{x:128,y:["5",5].includes(o.key)?163:102,fill:t.value.style.chart.layout.dataLabel.color,"font-size":"12","text-anchor":"middle"}," ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.value/y.value*100,s:"%",r:t.value.style.chart.layout.dataLabel.roundingPercentage}))+") ",9,Le)],4))),256)),e.renderSlot(l.$slots,"svg",{svg:i.value},void 0,!0)],14,me)):e.createCommentVNode("",!0),l.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Ie,[e.renderSlot(l.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(O)||e.unref(S)})),void 0,!0)])):e.createCommentVNode("",!0),m.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(re.default,{key:6,config:{type:"radar",style:{backgroundColor:t.value.style.chart.backgroundColor,radar:{grid:{color:"#CCCCCC"},shapes:{color:"#CCCCCC"}}}}},null,8,["config"])),t.value.style.chart.legend.show?(e.openBlock(),e.createBlock(le.Legend,{legendSet:c.value,config:J.value,key:`legend_${B.value}`,style:{display:"flex","row-gap":"6px"}},{item:e.withCtx(({legend:o,index:s})=>[e.createElementVNode("div",{onClick:()=>Q(o.key),style:{display:"flex","flex-direction":"row",gap:"3px","align-items":"center",margin:"3px 0"}},[o.key==1?(e.openBlock(),e.createBlock(g.default,{key:0,strokeWidth:1,name:"moodSad",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==2?(e.openBlock(),e.createBlock(g.default,{key:1,strokeWidth:1,name:"moodFlat",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==3?(e.openBlock(),e.createBlock(g.default,{key:2,strokeWidth:1,name:"moodNeutral",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==4?(e.openBlock(),e.createBlock(g.default,{key:3,strokeWidth:1,name:"smiley",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==5?(e.openBlock(),e.createBlock(g.default,{key:4,strokeWidth:1,name:"moodHappy",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),e.createElementVNode("span",qe,e.toDisplayString(e.unref(r.applyDataLabel)(t.value.style.chart.layout.dataLabel.formatter,o.value,e.unref(r.dataLabel)({p:t.value.style.chart.layout.dataLabel.prefix,v:o.value,s:t.value.style.chart.layout.dataLabel.suffix,r:t.value.style.chart.layout.dataLabel.roundingValue}),{datapoint:o,seriesIndex:s})),1),e.createTextVNode(" ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.proportion*100,s:"%",r:t.value.style.chart.legend.roundingPercentage}))+") ",1)],8,Fe)]),_:1},8,["legendSet","config"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"legend",{legend:c.value},void 0,!0),l.$slots.source?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(l.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createBlock(ne.default,{key:9,hideDetails:"",config:{open:f.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:e.withCtx(()=>[e.createVNode(ae.DataTable,{colNames:b.value.colNames,head:b.value.head,body:b.value.body,config:b.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:a[10]||(a[10]=o=>f.value.showTable=!1)},{th:e.withCtx(({th:o})=>[e.createElementVNode("div",{innerHTML:o,style:{display:"flex","align-items":"center"}},null,8,De)]),td:e.withCtx(({td:o})=>[e.createTextVNode(e.toDisplayString(o.name||o),1)]),_:1},8,["colNames","head","body","config","title"])]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,ve))}},je=de._export_sfc(Re,[["__scopeId","data-v-219c3ecd"]]);exports.default=je;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-Dy2-pNb6.cjs"),oe=require("./Title-CEZO2hzQ.cjs"),q=require("./usePrinter-BQEYwy4a.cjs"),le=require("./Legend-DFQ4iWI3.cjs"),g=require("./BaseIcon-DmfPEj6j.cjs"),ae=require("./DataTable-zSU-0X__.cjs"),re=require("./vue-ui-skeleton-Db7PiDqL.cjs"),ne=require("./vue-ui-accordion-dVGUWjXH.cjs"),z=require("./useNestedProp-DQ8Jt3-Y.cjs"),se=require("./PackageVersion-DxR-fKLM.cjs"),ue=require("./PenAndPaper-CG9o3ymS.cjs"),ie=require("./useUserOptionState-BgepsfED.cjs"),ce=require("./useChartAccessibility-Cm7nkzTG.cjs"),de=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ve=["id"],ye={key:2,style:"width:100%;background:transparent"},me=["xmlns","viewBox"],he=["width","height"],fe=["id"],pe=["stop-color"],ke=["stop-color"],ge=["x1","y1","x2","y2","stroke","stroke-width"],be=["d","stroke","stroke-width"],Ce=["stroke"],Ne=["fill"],we=["stroke"],xe=["fill"],Ve=["stroke"],_e=["fill"],Be=["stroke"],Pe=["fill"],$e=["stroke"],Me=["fill"],Ee=["d","stroke","stroke-width","fill"],Oe=["x1","y1","stroke"],Se=["cx","cy","fill","stroke"],Ae=["fill","stroke"],Te=["y","fill","font-weight"],Le=["y","fill"],Ie={key:5,class:"vue-data-ui-watermark"},Fe=["onClick"],qe={style:{"font-weight":"bold"}},ze={key:8,ref:"source",dir:"auto"},De=["innerHTML"],Re={__name:"vue-ui-mood-radar",props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},setup(D,{expose:R}){const{vue_ui_mood_radar:j}=r.useConfig(),u=D,m=e.computed(()=>!!u.dataset&&Object.keys(u.dataset).length);e.onMounted(()=>{V()});function V(){r.objectIsEmpty(u.dataset)&&r.error({componentName:"VueUiMoodRadar",type:"dataset"})}const h=e.ref(r.createUid()),_=e.ref(null),U=e.ref(null),n=e.ref(null),W=e.ref(null),G=e.ref(0),H=e.ref(0),B=e.ref(0),t=e.computed({get:()=>E(),set:l=>l}),{userOptionsVisible:N,setUserOptionsVisibility:P,keepUserOptionState:$}=ie.useUserOptionState({config:t.value}),{svgRef:M}=ce.useChartAccessibility({config:t.value.style.chart.title});function E(){const l=z.useNestedProp({userConfig:u.config,defaultConfig:j});return l.theme?{...z.useNestedProp({userConfig:r.themes.vue_ui_mood_radar[l.theme]||u.config,defaultConfig:l})}:l}e.watch(()=>u.config,l=>{t.value=E(),N.value=!t.value.userOptions.showOnChartHover,V(),G.value+=1,H.value+=1,B.value+=1,f.value.showTable=t.value.table.show},{deep:!0});const{isPrinting:O,isImaging:S,generatePdf:A,generateImage:T}=q.usePrinter({elementId:h.value,fileName:t.value.style.chart.title.text||"vue-ui-mood-radar",options:t.value.userOptions.print}),X=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),f=e.ref({showTable:t.value.table.show}),i=e.computed(()=>({height:256,width:256})),w=e.computed(()=>r.createPolygonPath({plot:{x:128,y:i.value.height/2},radius:90,sides:5,rotation:11}));function K({centerX:l,centerY:a,apexX:o,apexY:s,proportion:d,key:k,value:te}){return{x:l+(o-l)*d,y:a+(s-a)*d,key:k,value:te}}const Y=e.computed(()=>Math.max(...Object.values(u.dataset).map(l=>isNaN(l)?0:l))),y=e.computed(()=>Object.values(u.dataset).reduce((l,a)=>(isNaN(l)?0:l)+(isNaN(a)?0:a),0)),c=e.computed(()=>Object.keys(u.dataset).map((l,a)=>{const o=typeof u.dataset[l]!="number"||isNaN(u.dataset[l])?0:u.dataset[l];return{index:a,key:l,value:o,proportion:o/y.value,color:t.value.style.chart.layout.smileys.colors[l]}}).sort((l,a)=>a.key-l.key)),L=e.computed(()=>m.value?(["1","2","3","4","5"].forEach(l=>{[null,void 0].includes(u.dataset[l])&&r.error({componentName:"VueUiMoodRadar",type:"datasetAttribute",property:l})}),w.value.coordinates.map((l,a)=>{const o=K({centerX:i.value.width/2,centerY:i.value.height/2,apexX:l.x,apexY:l.y,proportion:c.value[a].value/Y.value,key:c.value[a].key,value:c.value[a].value});return{...l,plots:o,key:c.value[a].key}})):[]),J=e.computed(()=>({cy:"mood-radar-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""}));function Q(l){l===n.value?n.value=null:n.value=l}const v=e.computed(()=>{const l=c.value.map(o=>({name:o.key,color:o.color})),a=c.value.map(o=>isNaN(o.value)?0:o.value);return{head:l,body:a}});function I(){e.nextTick(()=>{const l=v.value.head.map((s,d)=>[[s.name],[v.value.body[d]],[isNaN(v.value.body[d]/y.value)?"-":v.value.body[d]/y.value*100]]),a=[[t.value.style.chart.title.text],[t.value.style.chart.title.subtitle.text],[[""],["val"],["%"]]].concat(l),o=r.createCsvContent(a);r.downloadCsv({csvContent:o,title:t.value.style.chart.title.text||"vue-ui-mood-radar"})})}const b=e.computed(()=>{const l=[' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>',Number(y.value.toFixed(t.value.table.td.roundingValue)).toLocaleString(),"100%"],a=v.value.head.map((d,k)=>[{color:d.color,name:d.name},v.value.body[k].toFixed(t.value.table.td.roundingValue),isNaN(v.value.body[k]/y.value)?"-":(v.value.body[k]/y.value*100).toFixed(t.value.table.td.roundingPercentage)+"%"]),o={th:{backgroundColor:t.value.table.th.backgroundColor,color:t.value.table.th.color,outline:t.value.table.th.outline},td:{backgroundColor:t.value.table.td.backgroundColor,color:t.value.table.td.color,outline:t.value.table.td.outline},breakpoint:t.value.table.responsiveBreakpoint},s=[t.value.table.columnNames.series,t.value.table.columnNames.value,t.value.table.columnNames.percentage];return{head:l,body:a,config:o,colNames:s}});function Z(){return c.value}function F(){f.value.showTable=!f.value.showTable}const p=e.ref(!1);function ee(l){p.value=l}const C=e.ref(!1);function x(){C.value=!C.value}return R({getData:Z,generatePdf:A,generateCsv:I,generateImage:T,toggleTable:F,toggleAnnotator:x}),(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`vue-ui-mood-radar ${p.value?"vue-data-ui-wrapper-fullscreen":""} ${t.value.useCssAnimation?"":"vue-ui-dna"}`),ref_key:"moodRadarChart",ref:_,id:`${h.value}`,style:e.normalizeStyle(`font-family:${t.value.style.fontFamily};width:100%; text-align:center;background:${t.value.style.chart.backgroundColor}`),onMouseenter:a[11]||(a[11]=()=>e.unref(P)(!0)),onMouseleave:a[12]||(a[12]=()=>e.unref(P)(!1))},[t.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(ue._sfc_main,{key:0,svgRef:e.unref(M),backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:C.value,onClose:x},null,8,["svgRef","backgroundColor","color","active"])):e.createCommentVNode("",!0),X.value?(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"noTitle",ref:W,class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},null,512)):e.createCommentVNode("",!0),t.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(oe._sfc_main,{config:{title:{cy:"mood-radar-title",...t.value.style.chart.title},subtitle:{cy:"mood-radar-subtitle",...t.value.style.chart.title.subtitle}}},null,8,["config"])])):e.createCommentVNode("",!0),t.value.userOptions.show&&m.value&&(e.unref($)||e.unref(N))?(e.openBlock(),e.createBlock(q.UserOptions,{key:3,ref_key:"details",ref:U,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(O),isImaging:e.unref(S),uid:h.value,hasPdf:t.value.userOptions.buttons.pdf,hasXls:t.value.userOptions.buttons.csv,hasImg:t.value.userOptions.buttons.img,hasTable:t.value.userOptions.buttons.table,hasFullscreen:t.value.userOptions.buttons.fullscreen,isFullscreen:p.value,titles:{...t.value.userOptions.buttonTitles},chartElement:_.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:C.value,onToggleFullscreen:ee,onGeneratePdf:e.unref(A),onGenerateCsv:I,onGenerateImage:e.unref(T),onToggleTable:F,onToggleAnnotator:x,style:e.normalizeStyle({visibility:e.unref($)?e.unref(N)?"visible":"hidden":"visible"})},e.createSlots({_:2},[l.$slots.menuIcon?{name:"menuIcon",fn:e.withCtx(({isOpen:o,color:s})=>[e.renderSlot(l.$slots,"menuIcon",e.normalizeProps(e.guardReactiveProps({isOpen:o,color:s})),void 0,!0)]),key:"0"}:void 0,l.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,l.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,l.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,l.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,l.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:o,isFullscreen:s})=>[e.renderSlot(l.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:o,isFullscreen:s})),void 0,!0)]),key:"5"}:void 0,l.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:o,isAnnotator:s})=>[e.renderSlot(l.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:o,isAnnotator:s})),void 0,!0)]),key:"6"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasPdf","hasXls","hasImg","hasTable","hasFullscreen","isFullscreen","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createElementBlock("svg",{key:4,ref_key:"svgRef",ref:M,xmlns:e.unref(r.XMLNS),viewBox:`0 0 ${i.value.width} ${i.value.height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":p.value,"vue-data-ui-fulscreen--off":!p.value}),style:e.normalizeStyle(`overflow:visible;background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(se._sfc_main),l.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:i.value.width,height:i.value.height,style:{pointerEvents:"none"}},[e.renderSlot(l.$slots,"chart-background",{},void 0,!0)],8,he)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[e.createElementVNode("radialGradient",{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%",id:`mood_radar_gradient_${h.value}`},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(r.setOpacity)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.opacity)},null,8,pe),e.createElementVNode("stop",{offset:"100%","stop-color":e.unref(r.setOpacity)(e.unref(r.shiftHue)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.gradient.intensity/100),t.value.style.chart.layout.dataPolygon.opacity)},null,8,ke)],8,fe)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(w.value.coordinates,o=>(e.openBlock(),e.createElementBlock("line",{x1:i.value.width/2,y1:i.value.height/2,x2:o.x,y2:o.y,stroke:t.value.style.chart.layout.grid.stroke,"stroke-width":t.value.style.chart.layout.grid.strokeWidth},null,8,ge))),256)),e.createElementVNode("path",{d:w.value.path,fill:"none",stroke:t.value.style.chart.layout.outerPolygon.stroke,"stroke-width":t.value.style.chart.layout.outerPolygon.strokeWidth,"stroke-linejoin":"round","stroke-linecap":"round"},null,8,be),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[5],"stroke-width":"1","stroke-linecap":"round",d:"M119 25A1 1 0 00137 25 1 1 0 00119 25M123 26C124 33 132 33 133 26L123 26M123 22A1 1 0 00126 22 1 1 0 00123 22M130 22A1 1 0 00133 22 1 1 0 00130 22"},null,8,Ce),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[0]||(a[0]=o=>n.value=5),onMouseleave:a[1]||(a[1]=o=>n.value=null),cx:"128",cy:"25",r:"20",fill:n.value===5?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[5],20):"transparent"},null,40,Ne),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[4],"stroke-width":"1","stroke-linecap":"round",d:"M218 95A1 1 0 00236 95 1 1 0 00218 95M222 97C225 99 229 99 232 97M222 92A1 1 0 00225 92 1 1 0 00222 92M229 92A1 1 0 00232 92 1 1 0 00229 92"},null,8,we),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[2]||(a[2]=o=>n.value=4),onMouseleave:a[3]||(a[3]=o=>n.value=null),cx:"227",cy:"95.5",r:"20",fill:n.value===4?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[4],20):"transparent"},null,40,xe),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[3],"stroke-width":"1","stroke-linecap":"round",d:"M181 213A1 1 0 00199 213 1 1 0 00181 213M185 210A1 1 0 00188 210 1 1 0 00185 210M192 210A1 1 0 00195 210 1 1 0 00192 210M185 215 195 215"},null,8,Ve),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[4]||(a[4]=o=>n.value=3),onMouseleave:a[5]||(a[5]=o=>n.value=null),cx:"190",cy:"213.5",r:"20",fill:n.value===3?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[3],20):"transparent"},null,40,_e),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[2],"stroke-width":"1","stroke-linecap":"round",d:"M56 213A1 1 0 0074 213 1 1 0 0056 213M60 216C63 214 67 214 70 216M60 210A1 1 0 0063 210 1 1 0 0060 210M67 210A1 1 0 0070 210 1 1 0 0067 210"},null,8,Be),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[6]||(a[6]=o=>n.value=2),onMouseleave:a[7]||(a[7]=o=>n.value=null),cx:"65",cy:"213.5",r:"20",fill:n.value===2?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[2],20):"transparent"},null,40,Pe),e.createElementVNode("path",{fill:"none",stroke:t.value.style.chart.layout.smileys.colors[1],"stroke-width":"1","stroke-linecap":"round",d:"M20 96A1 1 0 0038 96 1 1 0 0020 96M24 100C25 95 33 95 34 100L24 100M24 93A1 1 0 0027 93 1 1 0 0024 93M31 93A1 1 0 0034 93 1 1 0 0031 93"},null,8,$e),e.createElementVNode("circle",{class:"vue-ui-mood-radar-trap",onMouseenter:a[8]||(a[8]=o=>n.value=1),onMouseleave:a[9]||(a[9]=o=>n.value=null),cx:"29",cy:"95.5",r:"20",fill:n.value===1?e.unref(r.setOpacity)(t.value.style.chart.layout.smileys.colors[1],20):"transparent"},null,40,Me),e.createElementVNode("path",{d:e.unref(r.makePath)(L.value.map(o=>o.plots)),stroke:t.value.style.chart.layout.dataPolygon.stroke,"stroke-width":t.value.style.chart.layout.dataPolygon.strokeWidth,"stroke-linecap":"round","stroke-linejoin":"round",fill:t.value.style.chart.layout.dataPolygon.gradient.show?`url(#mood_radar_gradient_${h.value})`:e.unref(r.setOpacity)(t.value.style.chart.layout.dataPolygon.color,t.value.style.chart.layout.dataPolygon.opacity)},null,8,Ee),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(L.value.map(o=>o.plots),(o,s)=>(e.openBlock(),e.createElementBlock("g",{class:"vue-ui-mood-radar-trap",style:e.normalizeStyle(`opacity:${n.value==o.key?"1":"0"}`)},[e.createElementVNode("line",{x1:o.x,y1:o.y,x2:128,y2:128,stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,Oe),e.createElementVNode("circle",{cx:o.x,cy:o.y,fill:t.value.style.chart.layout.smileys.colors[o.key],r:"3",stroke:t.value.style.chart.backgroundColor,"stroke-width":.5},null,8,Se),e.createElementVNode("circle",{cx:128,cy:128,fill:t.value.style.chart.layout.smileys.colors[o.key],r:"3",stroke:t.value.style.chart.backgroundColor,"stroke-width":.5},null,8,Ae),e.createElementVNode("text",{x:128,y:["5",5].includes(o.key)?145:120,fill:t.value.style.chart.layout.dataLabel.color,"font-size":"12","text-anchor":"middle","font-weight":t.value.style.chart.layout.dataLabel.bold?"bold":"normal"},e.toDisplayString(e.unref(r.applyDataLabel)(t.value.style.chart.layout.dataLabel.formatter,o.value,e.unref(r.dataLabel)({p:t.value.style.chart.layout.dataLabel.prefix,v:o.value,s:t.value.style.chart.layout.dataLabel.suffix,r:t.value.style.chart.layout.dataLabel.roundingValue}),{datapoint:o,seriesIndex:s})),9,Te),e.createElementVNode("text",{x:128,y:["5",5].includes(o.key)?163:102,fill:t.value.style.chart.layout.dataLabel.color,"font-size":"12","text-anchor":"middle"}," ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.value/y.value*100,s:"%",r:t.value.style.chart.layout.dataLabel.roundingPercentage}))+") ",9,Le)],4))),256)),e.renderSlot(l.$slots,"svg",{svg:i.value},void 0,!0)],14,me)):e.createCommentVNode("",!0),l.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Ie,[e.renderSlot(l.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(O)||e.unref(S)})),void 0,!0)])):e.createCommentVNode("",!0),m.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(re.default,{key:6,config:{type:"radar",style:{backgroundColor:t.value.style.chart.backgroundColor,radar:{grid:{color:"#CCCCCC"},shapes:{color:"#CCCCCC"}}}}},null,8,["config"])),t.value.style.chart.legend.show?(e.openBlock(),e.createBlock(le.Legend,{legendSet:c.value,config:J.value,key:`legend_${B.value}`,style:{display:"flex","row-gap":"6px"}},{item:e.withCtx(({legend:o,index:s})=>[e.createElementVNode("div",{onClick:()=>Q(o.key),style:{display:"flex","flex-direction":"row",gap:"3px","align-items":"center",margin:"3px 0"}},[o.key==1?(e.openBlock(),e.createBlock(g.default,{key:0,strokeWidth:1,name:"moodSad",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==2?(e.openBlock(),e.createBlock(g.default,{key:1,strokeWidth:1,name:"moodFlat",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==3?(e.openBlock(),e.createBlock(g.default,{key:2,strokeWidth:1,name:"moodNeutral",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==4?(e.openBlock(),e.createBlock(g.default,{key:3,strokeWidth:1,name:"smiley",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),o.key==5?(e.openBlock(),e.createBlock(g.default,{key:4,strokeWidth:1,name:"moodHappy",stroke:t.value.style.chart.layout.smileys.colors[o.key]},null,8,["stroke"])):e.createCommentVNode("",!0),e.createElementVNode("span",qe,e.toDisplayString(e.unref(r.applyDataLabel)(t.value.style.chart.layout.dataLabel.formatter,o.value,e.unref(r.dataLabel)({p:t.value.style.chart.layout.dataLabel.prefix,v:o.value,s:t.value.style.chart.layout.dataLabel.suffix,r:t.value.style.chart.layout.dataLabel.roundingValue}),{datapoint:o,seriesIndex:s})),1),e.createTextVNode(" ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.proportion*100,s:"%",r:t.value.style.chart.legend.roundingPercentage}))+") ",1)],8,Fe)]),_:1},8,["legendSet","config"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"legend",{legend:c.value},void 0,!0),l.$slots.source?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(l.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createBlock(ne.default,{key:9,hideDetails:"",config:{open:f.value.showTable,maxHeight:1e4,body:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color},head:{backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color}}},{content:e.withCtx(()=>[e.createVNode(ae.DataTable,{colNames:b.value.colNames,head:b.value.head,body:b.value.body,config:b.value.config,title:`${t.value.style.chart.title.text}${t.value.style.chart.title.subtitle.text?` : ${t.value.style.chart.title.subtitle.text}`:""}`,onClose:a[10]||(a[10]=o=>f.value.showTable=!1)},{th:e.withCtx(({th:o})=>[e.createElementVNode("div",{innerHTML:o,style:{display:"flex","align-items":"center"}},null,8,De)]),td:e.withCtx(({td:o})=>[e.createTextVNode(e.toDisplayString(o.name||o),1)]),_:1},8,["colNames","head","body","config","title"])]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,ve))}},je=de._export_sfc(Re,[["__scopeId","data-v-219c3ecd"]]);exports.default=je;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { computed as c, onMounted as we, ref as y, watch as _e, createElementBlock as h, openBlock as r, unref as a, normalizeStyle as L, normalizeClass as ee, createBlock as p, createCommentVNode as u, renderSlot as v, createVNode as U, createSlots as xe, withCtx as f, normalizeProps as I, guardReactiveProps as F, createElementVNode as s, Fragment as te, renderList as oe, toDisplayString as P, createTextVNode as le, nextTick as $e } from "vue";
|
|
2
|
-
import { u as Me, o as Ne, e as ae, c as Pe, a as Ae, P as Oe, X as Te, s as C, w as Le, Q as Ie, i as se, f as S, q as Fe, r as Se } from "./index-
|
|
3
|
-
import { _ as Ve } from "./Title-
|
|
4
|
-
import { u as je, U as Re } from "./usePrinter-
|
|
5
|
-
import { L as Ue } from "./Legend-
|
|
6
|
-
import A from "./BaseIcon-
|
|
7
|
-
import { D as Be } from "./DataTable-
|
|
8
|
-
import De from "./vue-ui-skeleton-
|
|
9
|
-
import We from "./vue-ui-accordion-
|
|
10
|
-
import { u as re } from "./useNestedProp-
|
|
11
|
-
import { _ as ze } from "./PackageVersion-
|
|
12
|
-
import { _ as Ee } from "./PenAndPaper-
|
|
2
|
+
import { u as Me, o as Ne, e as ae, c as Pe, a as Ae, P as Oe, X as Te, s as C, w as Le, Q as Ie, i as se, f as S, q as Fe, r as Se } from "./index-Co5UfCMK.js";
|
|
3
|
+
import { _ as Ve } from "./Title-tlFeM12I.js";
|
|
4
|
+
import { u as je, U as Re } from "./usePrinter-D_wgo-7k.js";
|
|
5
|
+
import { L as Ue } from "./Legend-BTvPguV6.js";
|
|
6
|
+
import A from "./BaseIcon-DTt4YbQE.js";
|
|
7
|
+
import { D as Be } from "./DataTable-CX-Ynkp4.js";
|
|
8
|
+
import De from "./vue-ui-skeleton-BSlYUHZA.js";
|
|
9
|
+
import We from "./vue-ui-accordion-CfB_jW1X.js";
|
|
10
|
+
import { u as re } from "./useNestedProp-C22WP03t.js";
|
|
11
|
+
import { _ as ze } from "./PackageVersion-CkUbRQrt.js";
|
|
12
|
+
import { _ as Ee } from "./PenAndPaper-Br3OdauM.js";
|
|
13
13
|
import { u as Ge } from "./useUserOptionState-BIvW1Kz7.js";
|
|
14
14
|
import { u as He } from "./useChartAccessibility-BWojgys7.js";
|
|
15
15
|
import { _ as Xe } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-BX4v5fiN.cjs"),Se=require("./useResponsive-DQmBAoBf.cjs"),Ke=require("./Title-EjA2nkhd.cjs"),Ve=require("./usePrinter-CynLTaVl.cjs"),Qe=require("./DataTable-BmSWykCq.cjs"),Ze=require("./Tooltip-Dr2CQpGZ.cjs"),je=require("./Legend-CMib9jhR.cjs"),et=require("./vue-ui-skeleton-DvJP74jb.cjs"),tt=require("./vue-ui-accordion-BrbibtJK.cjs"),Ee=require("./useNestedProp-DjOgO33z.cjs"),lt=require("./PackageVersion-9kqlnk5q.cjs"),at=require("./PenAndPaper-CfWPwfS1.cjs"),ot=require("./useUserOptionState-BgepsfED.cjs"),nt=require("./useChartAccessibility-Cm7nkzTG.cjs"),st=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),rt=["id"],ut=["xmlns","viewBox"],it=["width","height"],ct=["id"],dt=["offset","stop-color"],vt=["offset","stop-opacity"],ft=["id"],pt=["id"],ht=["id"],yt=["flood-color"],mt=["d","fill","stroke","stroke-width","filter"],bt={key:1},gt=["d","fill"],kt={key:2},wt=["x","y","font-size","font-weight","fill"],Ct={key:3},Lt=["filter"],$t=["opacity","text-anchor","x","y","fill","font-size","font-weight"],xt=["opacity","text-anchor","x","y","fill","font-size","font-weight"],Bt=["text-anchor","x","y","fill","font-size","font-weight"],_t=["d","fill","onMouseenter","onClick"],Nt={key:5,class:"vue-data-ui-watermark"},St={key:0,class:"vue-ui-nested-donuts-legend-title"},Vt=["onClick"],Et=["innerHTML"],Tt={__name:"vue-ui-nested-donuts",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(Te,{expose:Fe,emit:Oe}){const{vue_ui_nested_donuts:Ae}=r.useConfig(),b=Te,E=e.computed(()=>!!b.dataset&&b.dataset.length),p=e.ref(r.createUid()),M=e.ref(!1),R=e.ref(""),ze=e.ref(null),le=e.ref(0),N=e.ref(null),ae=e.ref(null),q=e.ref(null),oe=e.ref(null),ne=e.ref(null),se=e.ref(0),re=e.ref(0),ue=e.ref(0),x=e.ref(!0),B=e.ref([]),S=e.ref([]),_=e.ref(!1);function Pe(a){_.value=a,le.value+=1}const t=e.computed({get:()=>ve(),set:a=>a}),{userOptionsVisible:U,setUserOptionsVisibility:ie,keepUserOptionState:ce}=ot.useUserOptionState({config:t.value}),{svgRef:de}=nt.useChartAccessibility({config:t.value.style.chart.title});function ve(){const a=Ee.useNestedProp({userConfig:b.config,defaultConfig:Ae});return a.theme?{...Ee.useNestedProp({userConfig:r.themes.vue_ui_nested_donuts[a.theme]||b.config,defaultConfig:a}),customPalette:r.themePalettes[a.theme]||r.palette}:a}e.watch(()=>b.config,a=>{t.value=ve(),U.value=!t.value.userOptions.showOnChartHover,G(),se.value+=1,re.value+=1,ue.value+=1,m.value.dataLabels.show=t.value.style.chart.layout.labels.dataLabels.show,m.value.showTable=t.value.table.show,m.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const fe=e.computed(()=>{const{top:a,right:s,bottom:o,left:n}=t.value.style.chart.padding;return{css:`padding:${a}px ${s}px ${o}px ${n}px`,top:a,right:s,bottom:o,left:n}});function De(a,s=1e3,o=50){return new Promise(n=>{const l=a.length;B.value=Array(l).fill(0),S.value=[];let u=0;a.forEach((c,f)=>{setTimeout(()=>{const L=performance.now();function g(i){const d=Math.min((i-L)/s,1),k=r.easeOutCubic(d),Q=c*k;B.value[f]=Q,B.value=[...B.value];const D=[];let V=0;b.dataset.forEach((I,Z)=>{const Xe=I.series.reduce((ee,te)=>ee+r.sanitizeArray(te.values).reduce((We,Je)=>We+Je,0),0),He=B.value.slice(V,V+I.series.length).reduce((ee,te)=>ee+te,0),j=Xe-He;j>.001&&D.push({name:"__ghost__",arcOf:I.name,arcOfId:`${p.value}_${Z}`,id:`ghost_${p.value}_${Z}`,seriesIndex:-1,datasetIndex:Z,color:"transparent",value:j,fullValue:j,absoluteValues:[],ghost:!0}),V+=I.series.length}),S.value=D,d<1?requestAnimationFrame(g):(u+=1,u===l&&n())}requestAnimationFrame(g)},f*o)})})}e.onMounted(async()=>{var a;if(G(),(a=t.value.startAnimation)!=null&&a.show){const o=b.dataset.flatMap(n=>n.series).map(n=>r.sanitizeArray(n.values).reduce((l,u)=>l+u,0));B.value=o.map(()=>0),x.value=!0,S.value=b.dataset.map((n,l)=>{const u=n.series.reduce((c,f)=>c+r.sanitizeArray(f.values).reduce((L,g)=>L+g,0),0);return{name:"__ghost__",arcOf:n.name,arcOfId:`${p.value}_${l}`,id:`ghost_${p.value}_${l}`,seriesIndex:-1,datasetIndex:l,color:"transparent",value:u,fullValue:u,absoluteValues:[],ghost:!0}}),await e.nextTick(),De(o,t.value.startAnimation.durationMs,t.value.startAnimation.staggerMs).then(()=>{x.value=!1,S.value=[]})}else x.value=!1});const T=e.ref(null);e.onMounted(()=>{G()});function G(){if(r.objectIsEmpty(b.dataset)&&r.error({componentName:"VueUiNestedDonuts",type:"dataset"}),t.value.responsive){const a=Se.throttle(()=>{const{width:s,height:o}=Se.useResponsive({chart:N.value,title:t.value.style.chart.title.text?ae.value:null,legend:t.value.style.chart.legend.show?q.value:null,source:oe.value,noTitle:ne.value,padding:fe.value});requestAnimationFrame(()=>{v.value.width=s,v.value.height=o})});T.value=new ResizeObserver(a),T.value.observe(N.value.parentNode)}}e.onBeforeUnmount(()=>{T.value&&T.value.disconnect()});const{isPrinting:pe,isImaging:he,generatePdf:ye,generateImage:me}=Ve.usePrinter({elementId:`nested_donuts_${p.value}`,fileName:t.value.style.chart.title.text||"vue-ui-nested-donuts",options:t.value.userOptions.print}),Ie=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),Me=e.computed(()=>r.convertCustomPalette(t.value.customPalette)),m=e.ref({dataLabels:{show:t.value.style.chart.layout.labels.dataLabels.show},showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),v=e.ref({height:512,width:512}),be=Oe;function Re({datapoint:a,index:s}){be("selectDatapoint",{datapoint:a,index:s})}function ge({from:a,to:s,duration:o,onUpdate:n,onDone:l,easing:u=r.easeOutCubic}){const c=performance.now();function f(L){const g=Math.min((L-c)/o,1),i=u(g),d=a+(s-a)*i;n(d,g),g<1?requestAnimationFrame(f):(n(s,1),l&&l())}requestAnimationFrame(f)}const y=e.ref([]),w=e.computed(()=>{b.dataset.forEach((s,o)=>{[null,void 0].includes(s.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:o}),[null,void 0].includes(s.series)?r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"series",index:o}):s.series.length===0?r.error({componentName:"VueUiNestedDonuts",type:"datasetAttributeEmpty",property:`series at index ${o}`}):s.series.forEach((n,l)=>{[null,void 0].includes(n.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:l,key:"serie"}),[null,void 0].includes(n.values)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"values",index:l,key:"serie"})})});let a=0;return b.dataset.map((s,o)=>({...s,total:s.series.filter(n=>!y.value.includes(n.id)).map(n=>r.sanitizeArray(n.values).reduce((l,u)=>l+u,0)).reduce((n,l)=>n+l,0),datasetIndex:o,id:`${p.value}_${o}`,series:s.series.map((n,l)=>{const u=r.sanitizeArray(n.values).reduce((c,f)=>c+f,0);return{name:n.name,arcOf:s.name,arcOfId:`${p.value}_${o}`,id:`${p.value}_${o}_${l}`,seriesIndex:l,datasetIndex:o,color:r.convertColorToHex(n.color)||Me.value[l]||r.palette[l%r.palette.length],value:x.value?B.value[a++]??0:u,absoluteValues:n.values||[]}})}))}),C=e.computed(()=>Math.min(v.value.height,v.value.width)*(t.value.style.chart.layout.donut.strokeWidth/512)),ke=e.computed(()=>[...w.value].map((a,s)=>{const o=a.series.filter(n=>!y.value.includes(n.id)).map(n=>n.value).reduce((n,l)=>n+l,0);return{...a,total:o,series:a.series.filter(n=>!y.value.includes(n.id)).map(n=>({...n,proportion:n.value/o}))}}));function qe(a,s,o){let n=0;for(let l=0;l<a.length;l+=1)o.includes(a[l])&&(n+=1);return n<s}const h=e.ref(ke.value);e.watch(()=>ke.value,a=>h.value=a);function Y(a){var g;be("selectLegend",a);const s=b.dataset.flatMap((i,d)=>i.series.map((k,Q)=>({value:r.sanitizeArray(k.values).reduce((D,V)=>D+V,0),id:`${p.value}_${d}_${Q}`,arcOfId:`${p.value}_${d}`}))).find(i=>i.id===a.id);if(!s)return;const o=((g=w.value.flatMap(i=>i.series).find(i=>i.id===a.id))==null?void 0:g.value)??0,n=h.value.flatMap(i=>i.series).find(i=>i.id===a.id);let u=n?n.value:0;const c=w.value.find(i=>i.id===s.arcOfId);if(!c)return;const f=c.series.map(i=>i.id),L=qe(f,f.length-1,y.value);y.value.includes(a.id)?(y.value=y.value.filter(i=>i!==a.id),t.value.serieToggleAnimation.show?ge({from:u,to:o,duration:t.value.serieToggleAnimation.durationMs,onUpdate:i=>{h.value=h.value.map(d=>({...d,series:d.series.map(k=>k.id===a.id?{...k,value:i}:k)}))}}):h.value=h.value.map(i=>({...i,series:i.series.map(d=>d.id===a.id?{...d,value:o}:d)}))):L&&(t.value.serieToggleAnimation.show?ge({from:u,to:0,duration:t.value.serieToggleAnimation.durationMs,onUpdate:i=>{h.value=h.value.map(d=>({...d,series:d.series.map(k=>k.id===a.id?{...k,value:i}:k)}))},onDone:()=>{y.value.push(a.id)}}):(h.value=h.value.map(i=>({...i,series:i.series.map(d=>d.id===a.id?{...d,value:0}:d)})),y.value.push(a.id)))}const X=e.computed(()=>C.value/w.value.length*t.value.style.chart.layout.donut.spacingRatio),we=e.computed(()=>h.value.map((a,s)=>C.value-s*C.value/w.value.length)),F=e.computed(()=>h.value.map((a,s)=>{const o=C.value-s*C.value/h.value.length,n=x.value?S.value.find(u=>u.datasetIndex===s):null,l=[...a.series,...n?[n]:[]].map(u=>({...u,value:u.value<.001?.001:u.value}));return{...a,radius:o,donut:r.makeDonut({series:l},v.value.width/2,v.value.height/2,o,o,1.99999,2,1,360,105.25,X.value)}})),Ce=e.computed(()=>[...w.value].map((a,s)=>{const o=s*C.value/w.value.length;return{sizeRatio:o,donut:r.makeDonut({series:[{value:1}]},v.value.width/2,v.value.height/2,C.value-o,C.value-o,1.99999,2,1,360,105.25,C.value/w.value.length*t.value.style.chart.layout.donut.spacingRatio)[0]}})),Le=e.ref(null),O=e.ref(null),A=e.ref(null),H=e.ref(null);function Ue({datapoint:a,_relativeIndex:s,seriesIndex:o}){Le.value=a.arcOfId,O.value=a.id,A.value=o,H.value={datapoint:a,seriesIndex:o,series:h.value,config:t.value};const n=t.value.style.chart.tooltip.customFormat;if(r.isFunction(n)&&r.functionReturnsString(()=>n({seriesIndex:o,datapoint:a,series:h.value,config:t.value})))R.value=n({seriesIndex:o,datapoint:a,series:h.value,config:t.value});else{let l="";if(t.value.style.chart.tooltip.showAllItemsAtIndex&&y.value.length===0){const u=h.value.map(c=>c.series.find(f=>f.seriesIndex===o));u.forEach((c,f)=>{if(!c)return"";l+=`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-Dy2-pNb6.cjs"),Se=require("./useResponsive-DQmBAoBf.cjs"),Ke=require("./Title-CEZO2hzQ.cjs"),Ve=require("./usePrinter-BQEYwy4a.cjs"),Qe=require("./DataTable-zSU-0X__.cjs"),Ze=require("./Tooltip-BZa-QzER.cjs"),je=require("./Legend-DFQ4iWI3.cjs"),et=require("./vue-ui-skeleton-Db7PiDqL.cjs"),tt=require("./vue-ui-accordion-dVGUWjXH.cjs"),Ee=require("./useNestedProp-DQ8Jt3-Y.cjs"),lt=require("./PackageVersion-DxR-fKLM.cjs"),at=require("./PenAndPaper-CG9o3ymS.cjs"),ot=require("./useUserOptionState-BgepsfED.cjs"),nt=require("./useChartAccessibility-Cm7nkzTG.cjs"),st=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),rt=["id"],ut=["xmlns","viewBox"],it=["width","height"],ct=["id"],dt=["offset","stop-color"],vt=["offset","stop-opacity"],ft=["id"],pt=["id"],ht=["id"],yt=["flood-color"],mt=["d","fill","stroke","stroke-width","filter"],bt={key:1},gt=["d","fill"],kt={key:2},wt=["x","y","font-size","font-weight","fill"],Ct={key:3},Lt=["filter"],$t=["opacity","text-anchor","x","y","fill","font-size","font-weight"],xt=["opacity","text-anchor","x","y","fill","font-size","font-weight"],Bt=["text-anchor","x","y","fill","font-size","font-weight"],_t=["d","fill","onMouseenter","onClick"],Nt={key:5,class:"vue-data-ui-watermark"},St={key:0,class:"vue-ui-nested-donuts-legend-title"},Vt=["onClick"],Et=["innerHTML"],Tt={__name:"vue-ui-nested-donuts",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(Te,{expose:Fe,emit:Oe}){const{vue_ui_nested_donuts:Ae}=r.useConfig(),b=Te,E=e.computed(()=>!!b.dataset&&b.dataset.length),p=e.ref(r.createUid()),M=e.ref(!1),R=e.ref(""),ze=e.ref(null),le=e.ref(0),N=e.ref(null),ae=e.ref(null),q=e.ref(null),oe=e.ref(null),ne=e.ref(null),se=e.ref(0),re=e.ref(0),ue=e.ref(0),x=e.ref(!0),B=e.ref([]),S=e.ref([]),_=e.ref(!1);function Pe(a){_.value=a,le.value+=1}const t=e.computed({get:()=>ve(),set:a=>a}),{userOptionsVisible:U,setUserOptionsVisibility:ie,keepUserOptionState:ce}=ot.useUserOptionState({config:t.value}),{svgRef:de}=nt.useChartAccessibility({config:t.value.style.chart.title});function ve(){const a=Ee.useNestedProp({userConfig:b.config,defaultConfig:Ae});return a.theme?{...Ee.useNestedProp({userConfig:r.themes.vue_ui_nested_donuts[a.theme]||b.config,defaultConfig:a}),customPalette:r.themePalettes[a.theme]||r.palette}:a}e.watch(()=>b.config,a=>{t.value=ve(),U.value=!t.value.userOptions.showOnChartHover,G(),se.value+=1,re.value+=1,ue.value+=1,m.value.dataLabels.show=t.value.style.chart.layout.labels.dataLabels.show,m.value.showTable=t.value.table.show,m.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const fe=e.computed(()=>{const{top:a,right:s,bottom:o,left:n}=t.value.style.chart.padding;return{css:`padding:${a}px ${s}px ${o}px ${n}px`,top:a,right:s,bottom:o,left:n}});function De(a,s=1e3,o=50){return new Promise(n=>{const l=a.length;B.value=Array(l).fill(0),S.value=[];let u=0;a.forEach((c,f)=>{setTimeout(()=>{const L=performance.now();function g(i){const d=Math.min((i-L)/s,1),k=r.easeOutCubic(d),Q=c*k;B.value[f]=Q,B.value=[...B.value];const D=[];let V=0;b.dataset.forEach((I,Z)=>{const Xe=I.series.reduce((ee,te)=>ee+r.sanitizeArray(te.values).reduce((We,Je)=>We+Je,0),0),He=B.value.slice(V,V+I.series.length).reduce((ee,te)=>ee+te,0),j=Xe-He;j>.001&&D.push({name:"__ghost__",arcOf:I.name,arcOfId:`${p.value}_${Z}`,id:`ghost_${p.value}_${Z}`,seriesIndex:-1,datasetIndex:Z,color:"transparent",value:j,fullValue:j,absoluteValues:[],ghost:!0}),V+=I.series.length}),S.value=D,d<1?requestAnimationFrame(g):(u+=1,u===l&&n())}requestAnimationFrame(g)},f*o)})})}e.onMounted(async()=>{var a;if(G(),(a=t.value.startAnimation)!=null&&a.show){const o=b.dataset.flatMap(n=>n.series).map(n=>r.sanitizeArray(n.values).reduce((l,u)=>l+u,0));B.value=o.map(()=>0),x.value=!0,S.value=b.dataset.map((n,l)=>{const u=n.series.reduce((c,f)=>c+r.sanitizeArray(f.values).reduce((L,g)=>L+g,0),0);return{name:"__ghost__",arcOf:n.name,arcOfId:`${p.value}_${l}`,id:`ghost_${p.value}_${l}`,seriesIndex:-1,datasetIndex:l,color:"transparent",value:u,fullValue:u,absoluteValues:[],ghost:!0}}),await e.nextTick(),De(o,t.value.startAnimation.durationMs,t.value.startAnimation.staggerMs).then(()=>{x.value=!1,S.value=[]})}else x.value=!1});const T=e.ref(null);e.onMounted(()=>{G()});function G(){if(r.objectIsEmpty(b.dataset)&&r.error({componentName:"VueUiNestedDonuts",type:"dataset"}),t.value.responsive){const a=Se.throttle(()=>{const{width:s,height:o}=Se.useResponsive({chart:N.value,title:t.value.style.chart.title.text?ae.value:null,legend:t.value.style.chart.legend.show?q.value:null,source:oe.value,noTitle:ne.value,padding:fe.value});requestAnimationFrame(()=>{v.value.width=s,v.value.height=o})});T.value=new ResizeObserver(a),T.value.observe(N.value.parentNode)}}e.onBeforeUnmount(()=>{T.value&&T.value.disconnect()});const{isPrinting:pe,isImaging:he,generatePdf:ye,generateImage:me}=Ve.usePrinter({elementId:`nested_donuts_${p.value}`,fileName:t.value.style.chart.title.text||"vue-ui-nested-donuts",options:t.value.userOptions.print}),Ie=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),Me=e.computed(()=>r.convertCustomPalette(t.value.customPalette)),m=e.ref({dataLabels:{show:t.value.style.chart.layout.labels.dataLabels.show},showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),v=e.ref({height:512,width:512}),be=Oe;function Re({datapoint:a,index:s}){be("selectDatapoint",{datapoint:a,index:s})}function ge({from:a,to:s,duration:o,onUpdate:n,onDone:l,easing:u=r.easeOutCubic}){const c=performance.now();function f(L){const g=Math.min((L-c)/o,1),i=u(g),d=a+(s-a)*i;n(d,g),g<1?requestAnimationFrame(f):(n(s,1),l&&l())}requestAnimationFrame(f)}const y=e.ref([]),w=e.computed(()=>{b.dataset.forEach((s,o)=>{[null,void 0].includes(s.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:o}),[null,void 0].includes(s.series)?r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"series",index:o}):s.series.length===0?r.error({componentName:"VueUiNestedDonuts",type:"datasetAttributeEmpty",property:`series at index ${o}`}):s.series.forEach((n,l)=>{[null,void 0].includes(n.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:l,key:"serie"}),[null,void 0].includes(n.values)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"values",index:l,key:"serie"})})});let a=0;return b.dataset.map((s,o)=>({...s,total:s.series.filter(n=>!y.value.includes(n.id)).map(n=>r.sanitizeArray(n.values).reduce((l,u)=>l+u,0)).reduce((n,l)=>n+l,0),datasetIndex:o,id:`${p.value}_${o}`,series:s.series.map((n,l)=>{const u=r.sanitizeArray(n.values).reduce((c,f)=>c+f,0);return{name:n.name,arcOf:s.name,arcOfId:`${p.value}_${o}`,id:`${p.value}_${o}_${l}`,seriesIndex:l,datasetIndex:o,color:r.convertColorToHex(n.color)||Me.value[l]||r.palette[l%r.palette.length],value:x.value?B.value[a++]??0:u,absoluteValues:n.values||[]}})}))}),C=e.computed(()=>Math.min(v.value.height,v.value.width)*(t.value.style.chart.layout.donut.strokeWidth/512)),ke=e.computed(()=>[...w.value].map((a,s)=>{const o=a.series.filter(n=>!y.value.includes(n.id)).map(n=>n.value).reduce((n,l)=>n+l,0);return{...a,total:o,series:a.series.filter(n=>!y.value.includes(n.id)).map(n=>({...n,proportion:n.value/o}))}}));function qe(a,s,o){let n=0;for(let l=0;l<a.length;l+=1)o.includes(a[l])&&(n+=1);return n<s}const h=e.ref(ke.value);e.watch(()=>ke.value,a=>h.value=a);function Y(a){var g;be("selectLegend",a);const s=b.dataset.flatMap((i,d)=>i.series.map((k,Q)=>({value:r.sanitizeArray(k.values).reduce((D,V)=>D+V,0),id:`${p.value}_${d}_${Q}`,arcOfId:`${p.value}_${d}`}))).find(i=>i.id===a.id);if(!s)return;const o=((g=w.value.flatMap(i=>i.series).find(i=>i.id===a.id))==null?void 0:g.value)??0,n=h.value.flatMap(i=>i.series).find(i=>i.id===a.id);let u=n?n.value:0;const c=w.value.find(i=>i.id===s.arcOfId);if(!c)return;const f=c.series.map(i=>i.id),L=qe(f,f.length-1,y.value);y.value.includes(a.id)?(y.value=y.value.filter(i=>i!==a.id),t.value.serieToggleAnimation.show?ge({from:u,to:o,duration:t.value.serieToggleAnimation.durationMs,onUpdate:i=>{h.value=h.value.map(d=>({...d,series:d.series.map(k=>k.id===a.id?{...k,value:i}:k)}))}}):h.value=h.value.map(i=>({...i,series:i.series.map(d=>d.id===a.id?{...d,value:o}:d)}))):L&&(t.value.serieToggleAnimation.show?ge({from:u,to:0,duration:t.value.serieToggleAnimation.durationMs,onUpdate:i=>{h.value=h.value.map(d=>({...d,series:d.series.map(k=>k.id===a.id?{...k,value:i}:k)}))},onDone:()=>{y.value.push(a.id)}}):(h.value=h.value.map(i=>({...i,series:i.series.map(d=>d.id===a.id?{...d,value:0}:d)})),y.value.push(a.id)))}const X=e.computed(()=>C.value/w.value.length*t.value.style.chart.layout.donut.spacingRatio),we=e.computed(()=>h.value.map((a,s)=>C.value-s*C.value/w.value.length)),F=e.computed(()=>h.value.map((a,s)=>{const o=C.value-s*C.value/h.value.length,n=x.value?S.value.find(u=>u.datasetIndex===s):null,l=[...a.series,...n?[n]:[]].map(u=>({...u,value:u.value<.001?.001:u.value}));return{...a,radius:o,donut:r.makeDonut({series:l},v.value.width/2,v.value.height/2,o,o,1.99999,2,1,360,105.25,X.value)}})),Ce=e.computed(()=>[...w.value].map((a,s)=>{const o=s*C.value/w.value.length;return{sizeRatio:o,donut:r.makeDonut({series:[{value:1}]},v.value.width/2,v.value.height/2,C.value-o,C.value-o,1.99999,2,1,360,105.25,C.value/w.value.length*t.value.style.chart.layout.donut.spacingRatio)[0]}})),Le=e.ref(null),O=e.ref(null),A=e.ref(null),H=e.ref(null);function Ue({datapoint:a,_relativeIndex:s,seriesIndex:o}){Le.value=a.arcOfId,O.value=a.id,A.value=o,H.value={datapoint:a,seriesIndex:o,series:h.value,config:t.value};const n=t.value.style.chart.tooltip.customFormat;if(r.isFunction(n)&&r.functionReturnsString(()=>n({seriesIndex:o,datapoint:a,series:h.value,config:t.value})))R.value=n({seriesIndex:o,datapoint:a,series:h.value,config:t.value});else{let l="";if(t.value.style.chart.tooltip.showAllItemsAtIndex&&y.value.length===0){const u=h.value.map(c=>c.series.find(f=>f.seriesIndex===o));u.forEach((c,f)=>{if(!c)return"";l+=`
|
|
2
2
|
<div style="display:flex; flex-direction: column; justify-content:flex-start; align-items:flex-start;padding:6px 0; ${f<u.length-1?`border-bottom:1px solid ${t.value.style.chart.tooltip.borderColor}`:""}">
|
|
3
3
|
<div style="display:flex; flex-direction: row; gap: 3px; justify-content:flex-start; align-items:center;">
|
|
4
4
|
<svg viewBox="0 0 20 20" height="${t.value.style.chart.tooltip.fontSize}" width="${t.value.style.chart.tooltip.fontSize}">
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { computed as k, ref as v, watch as Ze, onMounted as je, nextTick as et, onBeforeUnmount as Tt, createElementBlock as r, openBlock as n, unref as i, normalizeStyle as se, normalizeClass as R, createBlock as U, createCommentVNode as g, createVNode as tt, createSlots as Ft, withCtx as _, renderSlot as L, normalizeProps as E, guardReactiveProps as G, createElementVNode as m, Fragment as T, renderList as S, toDisplayString as V, withDirectives as lt, vShow as at, createTextVNode as ue } from "vue";
|
|
2
|
-
import { u as Ot, c as St, t as It, p as _e, a as At, H as D, o as Nt, e as Y, b as Vt, d as Pt, m as ot, f as F, X as Dt, s as st, J as zt, k as Le, n as X, i as J, x as ut, q as Mt, r as Rt, y as Ut, R as nt } from "./index-
|
|
2
|
+
import { u as Ot, c as St, t as It, p as _e, a as At, H as D, o as Nt, e as Y, b as Vt, d as Pt, m as ot, f as F, X as Dt, s as st, J as zt, k as Le, n as X, i as J, x as ut, q as Mt, r as Rt, y as Ut, R as nt } from "./index-Co5UfCMK.js";
|
|
3
3
|
import { t as Bt, u as Et } from "./useResponsive-Cw4oZ8sQ.js";
|
|
4
|
-
import { _ as Gt } from "./Title-
|
|
5
|
-
import { u as Yt, U as Xt } from "./usePrinter-
|
|
6
|
-
import { D as Ht } from "./DataTable-
|
|
7
|
-
import { _ as Wt } from "./Tooltip-
|
|
8
|
-
import { L as qt } from "./Legend-
|
|
9
|
-
import Jt from "./vue-ui-skeleton-
|
|
10
|
-
import Kt from "./vue-ui-accordion-
|
|
11
|
-
import { u as rt } from "./useNestedProp-
|
|
12
|
-
import { _ as Qt } from "./PackageVersion-
|
|
13
|
-
import { _ as Zt } from "./PenAndPaper-
|
|
4
|
+
import { _ as Gt } from "./Title-tlFeM12I.js";
|
|
5
|
+
import { u as Yt, U as Xt } from "./usePrinter-D_wgo-7k.js";
|
|
6
|
+
import { D as Ht } from "./DataTable-CX-Ynkp4.js";
|
|
7
|
+
import { _ as Wt } from "./Tooltip-BCtHh3BT.js";
|
|
8
|
+
import { L as qt } from "./Legend-BTvPguV6.js";
|
|
9
|
+
import Jt from "./vue-ui-skeleton-BSlYUHZA.js";
|
|
10
|
+
import Kt from "./vue-ui-accordion-CfB_jW1X.js";
|
|
11
|
+
import { u as rt } from "./useNestedProp-C22WP03t.js";
|
|
12
|
+
import { _ as Qt } from "./PackageVersion-CkUbRQrt.js";
|
|
13
|
+
import { _ as Zt } from "./PenAndPaper-Br3OdauM.js";
|
|
14
14
|
import { u as jt } from "./useUserOptionState-BIvW1Kz7.js";
|
|
15
15
|
import { u as el } from "./useChartAccessibility-BWojgys7.js";
|
|
16
16
|
import { _ as tl } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("./index-Dy2-pNb6.cjs"),ae=require("./useResponsive-DQmBAoBf.cjs"),$e=require("./Title-CEZO2hzQ.cjs"),oe=require("./usePrinter-BQEYwy4a.cjs"),xe=require("./Legend-DFQ4iWI3.cjs"),Be=require("./DataTable-zSU-0X__.cjs"),Te=require("./Tooltip-BZa-QzER.cjs"),Se=require("./vue-ui-skeleton-Db7PiDqL.cjs"),Pe=require("./vue-ui-accordion-dVGUWjXH.cjs"),re=require("./useNestedProp-DQ8Jt3-Y.cjs"),Oe=require("./PackageVersion-DxR-fKLM.cjs"),Ne=require("./PenAndPaper-CG9o3ymS.cjs"),_e=require("./useUserOptionState-BgepsfED.cjs"),Ve=require("./useChartAccessibility-Cm7nkzTG.cjs"),Ae=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Fe=["id"],Ie=["xmlns","viewBox"],Ee=["width","height"],Re=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Me=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Le=["id"],ze=["stdDeviation"],De=["filter"],qe=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset"],Ue=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset","onMouseenter"],Ye={key:2},Xe=["onMouseenter"],Ge=["x","y","font-size","fill","font-weight"],He={key:5,class:"vue-data-ui-watermark"},je=["onClick"],We=["innerHTML"],Je={__name:"vue-ui-onion",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend"],setup(ne,{expose:ue,emit:se}){const{vue_ui_onion:ie}=u.useConfig(),f=ne,C=e.computed(()=>!!f.dataset&&f.dataset.length),m=e.ref(u.createUid()),ce=e.ref(null),I=e.ref(0),$=e.ref(!1),S=e.ref(""),d=e.ref([]),b=e.ref(null),E=e.ref(null),R=e.ref(null),M=e.ref(null),L=e.ref(null),z=e.ref(0),D=e.ref(0),q=e.ref(0),t=e.computed({get:()=>G(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:U,keepUserOptionState:Y}=_e.useUserOptionState({config:t.value}),{svgRef:X}=Ve.useChartAccessibility({config:t.value.style.chart.title});function G(){const l=re.useNestedProp({userConfig:f.config,defaultConfig:ie});return l.theme?{...re.useNestedProp({userConfig:u.themes.vue_ui_onion[l.theme]||f.config,defaultConfig:l}),customPalette:u.themePalettes[l.theme]||u.palette}:l}e.watch(()=>f.config,l=>{t.value=G(),P.value=!t.value.userOptions.showOnChartHover,K(),z.value+=1,D.value+=1,q.value+=1,v.value.showTable=t.value.table.show,v.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const{isPrinting:H,isImaging:j,generatePdf:W,generateImage:J}=oe.usePrinter({elementId:`vue-ui-onion_${m.value}`,fileName:t.value.style.chart.title.text||"vue-ui-onion",options:t.value.userOptions.print}),de=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),ve=e.computed(()=>u.convertCustomPalette(t.value.customPalette)),v=e.ref({showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),n=e.ref({height:512,width:512,padding:{top:64,left:64,right:64,bottom:64},minRadius:64}),x=e.ref(null);e.onMounted(()=>{K()});function K(){if(u.objectIsEmpty(f.dataset)&&u.error({componentName:"VueUiOnion",type:"dataset"}),t.value.responsive){const r=ae.throttle(()=>{const{width:a,height:o}=ae.useResponsive({chart:b.value,title:t.value.style.chart.title.text?E.value:null,legend:t.value.style.chart.legend.show?R.value:null,source:M.value,noTitle:L.value});requestAnimationFrame(()=>{n.value.width=a,n.value.height=o,n.value.padding.top=Math.max(a,o)*.125,n.value.padding.right=Math.max(a,o)*.125,n.value.padding.bottom=Math.max(a,o)*.125,n.value.padding.left=Math.max(a,o)*.125,n.value.minRadius=Math.min(a,o)*.125})});x.value=new ResizeObserver(r),x.value.observe(b.value.parentNode)}}e.onBeforeUnmount(()=>{x.value&&x.value.disconnect()});const s=e.computed(()=>({top:n.value.padding.top,left:n.value.padding.left,right:n.value.width-n.value.padding.right,bottom:n.value.height-n.value.padding.bottom,centerX:n.value.width/2,centerY:n.value.height/2,width:n.value.width-n.value.padding.right-n.value.padding.left,height:n.value.height-n.value.padding.bottom-n.value.padding.top,minRadius:n.value.minRadius,maxRadius:Math.min(n.value.width,n.value.height)-n.value.padding.top*2})),i=e.computed(()=>(f.dataset.forEach((l,r)=>{[null,void 0].includes(l.name)&&u.error({componentName:"VueUiOnion",type:"datasetSerieAttribute",property:"name",index:r}),[void 0].includes(l.percentage)&&u.error({componentName:"VueUiOnion",type:"datasetSerieAttribute",property:"percentage",index:r})}),f.dataset.map((l,r)=>{const a=`onion_serie_${r}_${m.value}`;return{...l,percentage:l.percentage||0,targetPercentage:l.percentage||0,color:u.convertColorToHex(l.color)||ve.value[r]||u.palette[r],id:a,shape:"circle",opacity:d.value.includes(a)?.5:1,absoluteIndex:r,segregate:()=>Q(a),isSegregated:d.value.includes(a)}}))),k=e.ref(i.value),he=e.computed(()=>t.value.useStartAnimation),pe=e.ref(null),fe=e.computed(()=>Math.max(...i.value.map(l=>l.percentage))),O=e.ref(!1);e.watch(()=>i.value,ge,{immediate:!0});function ge(){if(he.value&&!O.value){let r=function(){l>=fe.value?(cancelAnimationFrame(pe.value),k.value=i.value,O.value=!0):(k.value=i.value.map(a=>({...a,percentage:l<a.targetPercentage?l:a.targetPercentage})),l+=1,requestAnimationFrame(r),O.value=!0)};k.value=i.value.map(a=>({...a,percentage:0}));let l=0;r()}else k.value=i.value}const me=e.computed(()=>({cy:"onion-div-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""})),ye=e.computed(()=>i.value.filter(l=>!d.value.includes(l.id)).length),g=e.computed(()=>{const l=Math.min(s.value.width,s.value.height)/2/i.value.length;return{gutter:(l>t.value.style.chart.layout.maxThickness?t.value.style.chart.layout.maxThickness:l)*t.value.style.chart.layout.gutter.width,track:(l>t.value.style.chart.layout.maxThickness?t.value.style.chart.layout.maxThickness:l)*t.value.style.chart.layout.track.width}}),h=e.computed(()=>k.value.filter(l=>!d.value.includes(l.id)).map((l,r)=>{const a=(s.value.maxRadius-g.value.track)/ye.value/2*(1+r),o=s.value.centerY-a;return{percentage:l.percentage||0,...l,labelY:o,radius:a,path:be(a,l.percentage||0)}}));function be(l,r){const a=2*Math.PI*l,o=a*.75,c=`${o} ${a}`,w=o*(1-r/100);return{bgDashArray:`${o} ${a}`,bgDashOffset:0,dashArray:c,dashOffset:w,fullOffset:0,active:`
|
|
2
2
|
M ${s.value.centerX},${s.value.centerY-l}
|
|
3
3
|
A ${l},${l} 0 1 1
|
|
4
4
|
${s.value.centerX+l*Math.cos(Math.PI*3/4)},${s.value.centerY+l*Math.sin(Math.PI*3/4)}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { computed as h, ref as r, watch as we, onMounted as Xe, onBeforeUnmount as Ge, createElementBlock as u, openBlock as n, unref as i, normalizeStyle as B, normalizeClass as U, createBlock as C, createCommentVNode as g, createElementVNode as _, createVNode as $e, createSlots as Ee, withCtx as f, renderSlot as d, normalizeProps as O, guardReactiveProps as P, Fragment as M, renderList as N, toDisplayString as I, createTextVNode as He, nextTick as We } from "vue";
|
|
2
|
-
import { u as je, c as qe, t as Je, p as Ce, a as Ke, b as Qe, o as Ze, e as K, d as et, X as tt, f as R, i as Q, x as xe, q as at, r as lt, y as ot } from "./index-
|
|
2
|
+
import { u as je, c as qe, t as Je, p as Ce, a as Ke, b as Qe, o as Ze, e as K, d as et, X as tt, f as R, i as Q, x as xe, q as at, r as lt, y as ot } from "./index-Co5UfCMK.js";
|
|
3
3
|
import { t as st, u as nt } from "./useResponsive-Cw4oZ8sQ.js";
|
|
4
|
-
import { _ as rt } from "./Title-
|
|
5
|
-
import { u as ut, U as it } from "./usePrinter-
|
|
6
|
-
import { L as ct } from "./Legend-
|
|
7
|
-
import { D as dt } from "./DataTable-
|
|
8
|
-
import { _ as vt } from "./Tooltip-
|
|
9
|
-
import ht from "./vue-ui-skeleton-
|
|
10
|
-
import ft from "./vue-ui-accordion-
|
|
11
|
-
import { u as Te } from "./useNestedProp-
|
|
12
|
-
import { _ as gt } from "./PackageVersion-
|
|
13
|
-
import { _ as pt } from "./PenAndPaper-
|
|
4
|
+
import { _ as rt } from "./Title-tlFeM12I.js";
|
|
5
|
+
import { u as ut, U as it } from "./usePrinter-D_wgo-7k.js";
|
|
6
|
+
import { L as ct } from "./Legend-BTvPguV6.js";
|
|
7
|
+
import { D as dt } from "./DataTable-CX-Ynkp4.js";
|
|
8
|
+
import { _ as vt } from "./Tooltip-BCtHh3BT.js";
|
|
9
|
+
import ht from "./vue-ui-skeleton-BSlYUHZA.js";
|
|
10
|
+
import ft from "./vue-ui-accordion-CfB_jW1X.js";
|
|
11
|
+
import { u as Te } from "./useNestedProp-C22WP03t.js";
|
|
12
|
+
import { _ as gt } from "./PackageVersion-CkUbRQrt.js";
|
|
13
|
+
import { _ as pt } from "./PenAndPaper-Br3OdauM.js";
|
|
14
14
|
import { u as yt } from "./useUserOptionState-BIvW1Kz7.js";
|
|
15
15
|
import { u as mt } from "./useChartAccessibility-BWojgys7.js";
|
|
16
16
|
import { _ as bt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { computed as b, ref as v, watch as Xe, onMounted as Ye, onBeforeUnmount as qe, createElementBlock as i, openBlock as u, unref as x, normalizeStyle as T, normalizeClass as W, createBlock as z, createCommentVNode as m, createElementVNode as F, createVNode as Me, createSlots as Je, withCtx as k, renderSlot as f, normalizeProps as S, guardReactiveProps as D, Fragment as $, renderList as I, toDisplayString as R, createTextVNode as Ke } from "vue";
|
|
2
|
-
import { u as Qe, c as ee, t as Ze, p as H, a as et, o as tt, e as ze, g as at, b as lt, d as ot, D as st, S as nt, T as ut, U as it, X as rt, x as Ie, F as G, q as ct, r as vt, i as Fe, f as Pe, y as dt } from "./index-
|
|
2
|
+
import { u as Qe, c as ee, t as Ze, p as H, a as et, o as tt, e as ze, g as at, b as lt, d as ot, D as st, S as nt, T as ut, U as it, X as rt, x as Ie, F as G, q as ct, r as vt, i as Fe, f as Pe, y as dt } from "./index-Co5UfCMK.js";
|
|
3
3
|
import { t as ht, u as pt } from "./useResponsive-Cw4oZ8sQ.js";
|
|
4
|
-
import { _ as mt } from "./Title-
|
|
5
|
-
import { L as yt } from "./Legend-
|
|
6
|
-
import { _ as ft } from "./Tooltip-
|
|
7
|
-
import { _ as gt } from "./Shape-
|
|
8
|
-
import { u as bt, U as xt } from "./usePrinter-
|
|
9
|
-
import { D as kt } from "./DataTable-
|
|
10
|
-
import wt from "./vue-ui-accordion-
|
|
11
|
-
import $t from "./vue-ui-skeleton-
|
|
12
|
-
import { u as Ne } from "./useNestedProp-
|
|
13
|
-
import { _ as Ct } from "./PackageVersion-
|
|
14
|
-
import { _ as At } from "./PenAndPaper-
|
|
4
|
+
import { _ as mt } from "./Title-tlFeM12I.js";
|
|
5
|
+
import { L as yt } from "./Legend-BTvPguV6.js";
|
|
6
|
+
import { _ as ft } from "./Tooltip-BCtHh3BT.js";
|
|
7
|
+
import { _ as gt } from "./Shape-Y1FgLdPz.js";
|
|
8
|
+
import { u as bt, U as xt } from "./usePrinter-D_wgo-7k.js";
|
|
9
|
+
import { D as kt } from "./DataTable-CX-Ynkp4.js";
|
|
10
|
+
import wt from "./vue-ui-accordion-CfB_jW1X.js";
|
|
11
|
+
import $t from "./vue-ui-skeleton-BSlYUHZA.js";
|
|
12
|
+
import { u as Ne } from "./useNestedProp-C22WP03t.js";
|
|
13
|
+
import { _ as Ct } from "./PackageVersion-CkUbRQrt.js";
|
|
14
|
+
import { _ as At } from "./PenAndPaper-Br3OdauM.js";
|
|
15
15
|
import { u as Tt } from "./useUserOptionState-BIvW1Kz7.js";
|
|
16
16
|
import { u as _t } from "./useChartAccessibility-BWojgys7.js";
|
|
17
17
|
import { _ as Mt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),i=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),i=require("./index-Dy2-pNb6.cjs"),ce=require("./useResponsive-DQmBAoBf.cjs"),Se=require("./Title-CEZO2hzQ.cjs"),ze=require("./Legend-DFQ4iWI3.cjs"),Ne=require("./Tooltip-BZa-QzER.cjs"),Ae=require("./Shape-D9l3WJGO.cjs"),de=require("./usePrinter-BQEYwy4a.cjs"),Te=require("./DataTable-zSU-0X__.cjs"),Pe=require("./vue-ui-accordion-dVGUWjXH.cjs"),Fe=require("./vue-ui-skeleton-Db7PiDqL.cjs"),ve=require("./useNestedProp-DQ8Jt3-Y.cjs"),Me=require("./PackageVersion-DxR-fKLM.cjs"),_e=require("./PenAndPaper-CG9o3ymS.cjs"),Ie=require("./useUserOptionState-BgepsfED.cjs"),Ee=require("./useChartAccessibility-Cm7nkzTG.cjs"),Le=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Ve=["id"],Oe=["xmlns","viewBox"],De=["x","y","width","height"],qe={style:{"pointer-events":"none"}},Re=["x1","x2","y1","y2","stroke","stroke-width"],Ue=["x","y","fill","font-size","font-weight"],We=["x1","x2","y1","y2","stroke","stroke-width"],je=["x","y","fill","font-size","font-weight"],He={key:0},Ge=["x","y","font-size","fill"],Ye=["width","x","y"],Xe={style:{width:"100%"}},Je=["x","y","fill","font-weight","font-size","onMouseenter"],Ke=["d","stroke","stroke-width","onMouseenter"],Qe=["d","onMouseenter"],Ze={key:5,class:"vue-data-ui-watermark"},et=["onClick"],tt=["innerHTML"],lt={__name:"vue-ui-parallel-coordinate-plot",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(pe,{expose:he,emit:me}){const{vue_ui_parallel_coordinate_plot:ye}=i.useConfig(),b=pe,x=e.computed({get(){return!!b.dataset&&b.dataset.length},set(l){return l}}),L=e.ref(0),$=e.ref(null),V=e.ref(null),O=e.ref(null),D=e.ref(null),q=e.ref(null),R=e.ref(0),U=e.ref(0),W=e.ref(0),T=e.ref(i.createUid()),C=e.ref(!1);function fe(l){C.value=l,L.value+=1}const t=e.computed({get:()=>Y(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:j,keepUserOptionState:H}=Ie.useUserOptionState({config:t.value}),{svgRef:G}=Ee.useChartAccessibility({config:t.value.style.chart.title});function Y(){const l=ve.useNestedProp({userConfig:b.config,defaultConfig:ye});return l.theme?{...ve.useNestedProp({userConfig:i.themes.vue_ui_parallel_coordinate_plot[l.theme]||b.config,defaultConfig:l}),customPalette:i.themePalettes[l.theme]||i.palette}:l}e.watch(()=>b.config,l=>{t.value=Y(),P.value=!t.value.userOptions.showOnChartHover,X(),R.value+=1,W.value+=1,U.value+=1,v.value.dataLabels.show=t.value.style.chart.yAxis.labels.datapoints.show,v.value.showTable=t.value.table.show,v.value.showTooltip=t.value.style.chart.tooltip.show},{deep:!0});const S=e.ref(null);e.onMounted(()=>{X()});function X(){if(i.objectIsEmpty(b.dataset)?i.error({componentName:"VueUiParallelCoordinatePlot",type:"dataset"}):b.dataset.forEach((l,o)=>{i.getMissingDatasetAttributes({datasetObject:l,requiredAttributes:["name","series"]}).forEach(a=>{x.value=!1,i.error({componentName:"VueUiParallelCoordinatePlot",type:"datasetSerieAttribute",property:a,index:o})})}),t.value.responsive){const l=ce.throttle(()=>{const{width:o,height:a}=ce.useResponsive({chart:$.value,title:t.value.style.chart.title.text?V.value:null,legend:t.value.style.chart.legend.show?O.value:null,source:D.value,noTitle:q.value});requestAnimationFrame(()=>{d.value.width=o,d.value.height=a,d.value.plotSize=i.translateSize({relator:Math.min(o,a),adjuster:600,source:t.value.style.chart.plots.radius,threshold:2,fallback:2}),d.value.ticksFontSize=i.translateSize({relator:Math.min(o,a),adjuster:600,source:t.value.style.chart.yAxis.labels.ticks.fontSize,threshold:10,fallback:10}),d.value.datapointFontSize=i.translateSize({relator:Math.min(o,a),adjuster:600,source:t.value.style.chart.yAxis.labels.datapoints.fontSize,threshold:10,fallback:10}),d.value.axisNameFontSize=i.translateSize({relator:Math.min(o,a),adjuster:600,source:t.value.style.chart.yAxis.labels.axisNamesFontSize,threshold:12,fallback:12})})});S.value=new ResizeObserver(l),S.value.observe($.value.parentNode)}}e.onBeforeUnmount(()=>{S.value&&S.value.disconnect()});const{isPrinting:J,isImaging:K,generatePdf:Q,generateImage:Z}=de.usePrinter({elementId:`pcp_${T.value}`,fileName:t.value.style.chart.title.text||"vue-ui-parallel-coordinate-plot",options:t.value.userOptions.print}),ge=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),d=e.ref({height:t.value.style.chart.height,width:t.value.style.chart.width,plotSize:t.value.style.chart.plots.radius,ticksFontSize:t.value.style.chart.yAxis.labels.ticks.fontSize,datapointFontSize:t.value.style.chart.yAxis.labels.datapoints.fontSize,axisNameFontSize:t.value.style.chart.yAxis.labels.axisNamesFontSize}),c=e.computed(()=>{const{top:l,right:o,bottom:a,left:n}=t.value.style.chart.padding,r=d.value.height,s=d.value.width;return{chartHeight:r,chartWidth:s,height:r-l-a,width:s-n-o,top:l,left:n,right:s-o,bottom:r-a}}),be=e.computed(()=>i.convertCustomPalette(t.value.customPalette)),v=e.ref({dataLabels:{show:t.value.style.chart.yAxis.labels.datapoints.show},showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),f=e.ref([]);function ee(l){f.value.includes(l)?f.value=f.value.filter(o=>o!==l):f.value.push(l)}const k=e.computed(()=>b.dataset.map((l,o)=>{const a=i.convertColorToHex(l.color)||be.value[o]||i.palette[o]||i.palette[o%i.palette.length];return{...l,series:l.series.map(n=>({...n,id:i.createUid(),color:a})),seriesIndex:o,color:a,id:i.createUid(),shape:l.shape||"circle"}})),ke=e.computed(()=>k.value.map(l=>({...l,opacity:f.value.includes(l.id)?.5:1,segregate:()=>ee(l.id),isSegregated:f.value.includes(l.id)}))),xe=e.computed(()=>({cy:"pcp-div-legend",backgroundColor:t.value.style.chart.legend.backgroundColor,color:t.value.style.chart.legend.color,fontSize:t.value.style.chart.legend.fontSize,paddingBottom:12,fontWeight:t.value.style.chart.legend.bold?"bold":""})),te=e.computed(()=>Math.max(...k.value.filter(l=>!f.value.includes(l.id)).map(l=>Math.max(...l.series.flatMap(o=>o.values.length))))),y=e.computed(()=>c.value.width/te.value),F=e.computed(()=>k.value.filter(l=>!f.value.includes(l.id))),m=e.computed(()=>{let l=[];for(let o=0;o<te.value;o+=1){const a=Math.min(...F.value.flatMap(p=>p.series.map(A=>A.values[o]||0)||0)),n=Math.max(...F.value.flatMap(p=>p.series.map(A=>A.values[o]||0)||0)),r=n===a?a/4:a,s=n===a?n*2:n,u=i.calculateNiceScale(r,s,t.value.style.chart.yAxis.scaleTicks),g=u.ticks.map((p,A)=>{const Be=u.min<0?p+Math.abs(u.min):p-Math.abs(u.min),$e=u.min<0?u.max+Math.abs(u.min):u.max-Math.abs(u.min);return{y:c.value.bottom-c.value.height*(Be/$e),x:c.value.left+y.value*o+y.value/2,value:p}});l.push({scale:u,ticks:g,name:t.value.style.chart.yAxis.labels.axisNames[o]||`Y-${o+1}`})}return l}),M=e.computed(()=>F.value.map((l,o)=>({...l,series:l.series.map((a,n)=>({...a,datapoints:a.values.map((r,s)=>{const u=m.value[s].scale.min<0?(r||0)+Math.abs(m.value[s].scale.min):(r||0)-Math.abs(m.value[s].scale.min),g=m.value[s].scale.min<0?m.value[s].scale.max+Math.abs(m.value[s].scale.min):m.value[s].scale.max-Math.abs(m.value[s].scale.min);return{name:a.name,seriesName:l.name,axisIndex:s,datapointIndex:n,seriesIndex:o,value:r||0,x:c.value.left+y.value*s+y.value/2,y:c.value.bottom-c.value.height*(u/g),comment:a.comments&&a.comments[s]||""}})}))})).map(l=>({...l,series:l.series.map(o=>{const a=i.createStraightPath(o.datapoints),n=i.createSmoothPath(o.datapoints),r=i.getPathLengthFromCoordinates(t.value.style.chart.lines.smooth?`M ${n}`:`M ${a}`);return{...o,smoothPath:n,straightPath:a,pathLength:r}})})));function le({value:l,index:o,datapoint:a}){return i.applyDataLabel(t.value.style.chart.yAxis.labels.formatters[o]||null,l,i.dataLabel({p:t.value.style.chart.yAxis.labels.prefixes[o]||"",v:l,s:t.value.style.chart.yAxis.labels.suffixes[o]||"",r:t.value.style.chart.yAxis.labels.roundings[o]||0}),{datapoint:a,seriesIndex:o})}const h=e.ref(null),_=e.ref(null),w=e.ref(!1),I=e.ref("");function z({shape:l,serieName:o,serie:a,relativeIndex:n,seriesIndex:r}){_.value={serie:a,relativeIndex:n,seriesIndex:r,series:k.value,scales:m.value},w.value=!0,h.value=a.id;let s="";const u=t.value.style.chart.tooltip.customFormat;i.isFunction(u)&&i.functionReturnsString(()=>u({serie:a,seriesIndex:a.seriesIndex,series:k.value,config:t.value,scales:m.value}))?I.value=u({serie:a,seriesIndex:a.seriesIndex,series:k.value,config:t.value,scales:m.value}):(s+=`<div style="width:100%;text-align:center;border-bottom:1px solid ${t.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${o?o+" - ":""}${a.name}</div>`,m.value.map(g=>g.name).forEach((g,p)=>{s+=`
|
|
2
2
|
<div class="vue-ui-tooltip-item" style="text-align:left">
|
|
3
3
|
<span>${g}: </span>
|
|
4
4
|
<span>
|