vue-data-ui 2.4.63 → 2.4.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/README.md +66 -34
  2. package/dist/{Arrow-BpZBF7Ak.cjs → Arrow-BKPURRQ6.cjs} +1 -1
  3. package/dist/{Arrow-nOy23OOV.js → Arrow-C7ihyW4O.js} +1 -1
  4. package/dist/{BaseIcon-rzIvDo2Q.cjs → BaseIcon-CyTdOpDr.cjs} +1 -1
  5. package/dist/{BaseIcon-CrqNvGTs.js → BaseIcon-DpaRUsHC.js} +1 -1
  6. package/dist/{DataTable-CCJGHIVo.cjs → DataTable-CwzQ-L0W.cjs} +1 -1
  7. package/dist/{DataTable-BBh7_ttv.js → DataTable-DX_jYNWG.js} +2 -2
  8. package/dist/Legend-BMTBtkoQ.cjs +1 -0
  9. package/dist/Legend-DGUxLqhs.js +70 -0
  10. package/dist/{PackageVersion-dR8EUy_P.js → PackageVersion-B9_Ed72C.js} +1 -1
  11. package/dist/{PackageVersion-eZ5Dmuid.cjs → PackageVersion-D_9QTWVm.cjs} +1 -1
  12. package/dist/{PenAndPaper-D_w2N2qM.cjs → PenAndPaper-CfGYucSm.cjs} +1 -1
  13. package/dist/{PenAndPaper-CrXlqi9I.js → PenAndPaper-CzjoEhsO.js} +3 -3
  14. package/dist/{Shape-qkkvCKyp.cjs → Shape-CZB2KQ0L.cjs} +1 -1
  15. package/dist/{Shape-CwmKWYzq.js → Shape-aXd72O71.js} +1 -1
  16. package/dist/{Slicer-oNEtv1s3.cjs → Slicer-ChxjRhai.cjs} +1 -1
  17. package/dist/{Slicer-DvdU-uf8.js → Slicer-CopZgIzh.js} +2 -2
  18. package/dist/{Title-CoNtoGH9.cjs → Title-BnRtxxP4.cjs} +1 -1
  19. package/dist/{Title-obqvTiXP.js → Title-DyUTj8GI.js} +1 -1
  20. package/dist/{Tooltip-BK-ACGDE.js → Tooltip-B-0uEV3l.js} +1 -1
  21. package/dist/{Tooltip-Dz4wVJkz.cjs → Tooltip-CUoQNXZK.cjs} +1 -1
  22. package/dist/documentation/installation.md +34 -34
  23. package/dist/{index-Z_vzxZTo.js → index-BVNcFEqn.js} +398 -393
  24. package/dist/{index-ChOY3hT9.cjs → index-CKgv8c-A.cjs} +5 -5
  25. package/dist/style.css +1 -1
  26. package/dist/{useNestedProp-CA8PjFJH.cjs → useNestedProp-0Mn5Z6Ae.cjs} +1 -1
  27. package/dist/{useNestedProp-Buhi5uyL.js → useNestedProp-D79dWdel.js} +1 -1
  28. package/dist/{usePrinter-Ck0oiMlt.js → usePrinter-Bcfs_I6G.js} +1 -1
  29. package/dist/{usePrinter-c3c7_uAW.cjs → usePrinter-Gkda9yEJ.cjs} +1 -1
  30. package/dist/{vue-data-ui-BGng_wXI.js → vue-data-ui-CXxR_hXg.js} +60 -60
  31. package/dist/{vue-data-ui-CihfnXFF.cjs → vue-data-ui-DAwVdbN1.cjs} +1 -1
  32. package/dist/vue-data-ui.cjs +1 -1
  33. package/dist/vue-data-ui.js +9 -9
  34. package/dist/{vue-ui-3d-bar-BsxFEhMN.cjs → vue-ui-3d-bar-baVCskbW.cjs} +1 -1
  35. package/dist/{vue-ui-3d-bar-B7k4LzL1.js → vue-ui-3d-bar-mxTzin_H.js} +9 -9
  36. package/dist/{vue-ui-accordion-CV2-8b1O.js → vue-ui-accordion-GNblUy42.js} +3 -3
  37. package/dist/{vue-ui-accordion-CZ8AlriN.cjs → vue-ui-accordion-xV0it5je.cjs} +1 -1
  38. package/dist/{vue-ui-age-pyramid-Bc4DaLIy.js → vue-ui-age-pyramid-DFBuvQgd.js} +10 -10
  39. package/dist/{vue-ui-age-pyramid-C1crnKk7.cjs → vue-ui-age-pyramid-ULh6qSJs.cjs} +1 -1
  40. package/dist/{vue-ui-annotator-DNKcAaEh.cjs → vue-ui-annotator-C89rtAuX.cjs} +1 -1
  41. package/dist/{vue-ui-annotator-DLbAn_Mz.js → vue-ui-annotator-XbCqxBQ0.js} +1 -1
  42. package/dist/{vue-ui-bullet-ClODxNrk.js → vue-ui-bullet-D_CS85II.js} +8 -8
  43. package/dist/{vue-ui-bullet-CEO3AsWC.cjs → vue-ui-bullet-DxRqDaiw.cjs} +1 -1
  44. package/dist/{vue-ui-candlestick-DI7t6jqz.js → vue-ui-candlestick-C8mUQTPF.js} +11 -11
  45. package/dist/{vue-ui-candlestick-B00zQB4B.cjs → vue-ui-candlestick-CZxpFMKR.cjs} +1 -1
  46. package/dist/{vue-ui-carousel-table-5jXlkslq.js → vue-ui-carousel-table-D5iLQe38.js} +4 -4
  47. package/dist/{vue-ui-carousel-table-Bm2D_0pZ.cjs → vue-ui-carousel-table-DKcc-jNW.cjs} +1 -1
  48. package/dist/{vue-ui-chestnut-DP6-Gie6.cjs → vue-ui-chestnut-BFV6pTfc.cjs} +1 -1
  49. package/dist/{vue-ui-chestnut-CRZsXRUH.js → vue-ui-chestnut-BqGCLMiu.js} +8 -8
  50. package/dist/{vue-ui-cursor-BGe0gZK8.cjs → vue-ui-cursor-BJjzKpLm.cjs} +1 -1
  51. package/dist/{vue-ui-cursor-DA8bsmEc.js → vue-ui-cursor-BysQ-bDH.js} +2 -2
  52. package/dist/{vue-ui-dashboard-D2v4oSiB.cjs → vue-ui-dashboard-C0L_0gyc.cjs} +1 -1
  53. package/dist/{vue-ui-dashboard-BZD-6Pz7.js → vue-ui-dashboard-zrJGrAmc.js} +2 -2
  54. package/dist/{vue-ui-digits-CKvrL9Wc.js → vue-ui-digits-B5P9UheE.js} +2 -2
  55. package/dist/{vue-ui-digits-DC8ZuHOj.cjs → vue-ui-digits-BG_xts2G.cjs} +1 -1
  56. package/dist/vue-ui-donut-7tNjrx1E.js +1173 -0
  57. package/dist/vue-ui-donut-B9M9CW9D.cjs +1 -0
  58. package/dist/{vue-ui-donut-evolution-CBsxmrTO.js → vue-ui-donut-evolution-C7FpJ59u.js} +11 -11
  59. package/dist/{vue-ui-donut-evolution-AlCGLfzy.cjs → vue-ui-donut-evolution-CEvGFdxK.cjs} +1 -1
  60. package/dist/{vue-ui-dumbbell-DB7jNjQP.js → vue-ui-dumbbell-CdxHbLz6.js} +10 -10
  61. package/dist/{vue-ui-dumbbell-B9cELz3z.cjs → vue-ui-dumbbell-DP27C8NG.cjs} +1 -1
  62. package/dist/{vue-ui-flow-Cw1Vfk_e.js → vue-ui-flow-cKQSDKfP.js} +9 -9
  63. package/dist/{vue-ui-flow-CCM51fzQ.cjs → vue-ui-flow-yW5Pa_MJ.cjs} +1 -1
  64. package/dist/{vue-ui-funnel--4JhwVwW.cjs → vue-ui-funnel-73aPtRj5.cjs} +1 -1
  65. package/dist/{vue-ui-funnel-CU72MuGg.js → vue-ui-funnel-qPYVhQpD.js} +9 -9
  66. package/dist/{vue-ui-galaxy-BKInqdOk.js → vue-ui-galaxy-2SRA_RYP.js} +11 -11
  67. package/dist/{vue-ui-galaxy-BJrkygeR.cjs → vue-ui-galaxy-9E5GUtBD.cjs} +1 -1
  68. package/dist/vue-ui-gauge-CBbvp9DU.cjs +1 -0
  69. package/dist/{vue-ui-gauge-DBPB11Eo.js → vue-ui-gauge-Cpvg4BBS.js} +236 -224
  70. package/dist/{vue-ui-gizmo-BSDdKP_q.js → vue-ui-gizmo-B5v0g_Ly.js} +3 -3
  71. package/dist/{vue-ui-gizmo-D7hHruEs.cjs → vue-ui-gizmo-BkNuHnnf.cjs} +1 -1
  72. package/dist/{vue-ui-heatmap-CysVyR78.cjs → vue-ui-heatmap-CcUuOqGT.cjs} +1 -1
  73. package/dist/{vue-ui-heatmap-DhoDd6I_.js → vue-ui-heatmap-dNeKqLC0.js} +10 -10
  74. package/dist/{vue-ui-history-plot-C1IcR5tn.js → vue-ui-history-plot-COtfhHw8.js} +11 -11
  75. package/dist/{vue-ui-history-plot-D97p0C8E.cjs → vue-ui-history-plot-p18wqHFY.cjs} +1 -1
  76. package/dist/{vue-ui-kpi-Cu2PoWud.cjs → vue-ui-kpi-DCn50wZ8.cjs} +1 -1
  77. package/dist/{vue-ui-kpi-C43FJnkn.js → vue-ui-kpi-HyZOfh63.js} +3 -3
  78. package/dist/{vue-ui-mini-loader-Bdr0862F.cjs → vue-ui-mini-loader-DaPxFP7e.cjs} +1 -1
  79. package/dist/{vue-ui-mini-loader-DgPnsWaW.js → vue-ui-mini-loader-Dp7zc34Q.js} +2 -2
  80. package/dist/{vue-ui-molecule-CvxtHapj.js → vue-ui-molecule-Oim4-hUn.js} +11 -11
  81. package/dist/{vue-ui-molecule-CEJzQ7RY.cjs → vue-ui-molecule-zkdP7FYM.cjs} +1 -1
  82. package/dist/{vue-ui-mood-radar-DIn_Oars.cjs → vue-ui-mood-radar-CKdM8iDY.cjs} +1 -1
  83. package/dist/{vue-ui-mood-radar-B6EmzBGf.js → vue-ui-mood-radar-DsSO6gfa.js} +11 -11
  84. package/dist/{vue-ui-nested-donuts-D4pAkaZH.js → vue-ui-nested-donuts-B5NPJfg6.js} +11 -11
  85. package/dist/{vue-ui-nested-donuts-c2pJF_ex.cjs → vue-ui-nested-donuts-DbTXLan2.cjs} +1 -1
  86. package/dist/{vue-ui-onion-DHOhnx2s.cjs → vue-ui-onion-0Od2Vodu.cjs} +1 -1
  87. package/dist/{vue-ui-onion-98XPhnVF.js → vue-ui-onion-CID0DNSa.js} +11 -11
  88. package/dist/{vue-ui-parallel-coordinate-plot-DLOtv_NO.js → vue-ui-parallel-coordinate-plot-DAfBgYbI.js} +12 -12
  89. package/dist/{vue-ui-parallel-coordinate-plot-CrVVxflg.cjs → vue-ui-parallel-coordinate-plot-WtcXCTd-.cjs} +1 -1
  90. package/dist/{vue-ui-quadrant-DWM3zE7x.js → vue-ui-quadrant-063Cq0di.js} +12 -12
  91. package/dist/{vue-ui-quadrant-DbDQtcxz.cjs → vue-ui-quadrant-B6WNmecC.cjs} +1 -1
  92. package/dist/{vue-ui-quick-chart-DP0hSesI.cjs → vue-ui-quick-chart-CwNFF0R4.cjs} +1 -1
  93. package/dist/{vue-ui-quick-chart-CFVAisN4.js → vue-ui-quick-chart-DCPwhpbx.js} +9 -9
  94. package/dist/{vue-ui-radar-CNBN5GF9.js → vue-ui-radar-BmY47r3J.js} +12 -12
  95. package/dist/{vue-ui-radar-CDhwXWfs.cjs → vue-ui-radar-DcnVyGrM.cjs} +1 -1
  96. package/dist/{vue-ui-rating-cHW6zh7i.cjs → vue-ui-rating-D_9Fqvd_.cjs} +1 -1
  97. package/dist/{vue-ui-rating-CEfg8aGb.js → vue-ui-rating-b2SThMJw.js} +2 -2
  98. package/dist/{vue-ui-relation-circle-92LvehQf.js → vue-ui-relation-circle-B0Q2FdDW.js} +7 -7
  99. package/dist/{vue-ui-relation-circle-olDAN0lU.cjs → vue-ui-relation-circle-Cg3QL_aP.cjs} +1 -1
  100. package/dist/vue-ui-rings-BQdgj7bV.cjs +2 -0
  101. package/dist/vue-ui-rings-DlsKpDkQ.js +666 -0
  102. package/dist/{vue-ui-scatter-BvdgtUHX.cjs → vue-ui-scatter-D6Yb6VpP.cjs} +1 -1
  103. package/dist/{vue-ui-scatter-6wDrQ5fP.js → vue-ui-scatter-E_WveJ4p.js} +36 -36
  104. package/dist/{vue-ui-screenshot-CIAlcAvq.js → vue-ui-screenshot-CbLsOjZv.js} +1 -1
  105. package/dist/{vue-ui-screenshot-ChB7VFUO.cjs → vue-ui-screenshot-DhvqiF7S.cjs} +1 -1
  106. package/dist/{vue-ui-skeleton-DlnPFtb4.cjs → vue-ui-skeleton-73YO0ovP.cjs} +1 -1
  107. package/dist/{vue-ui-skeleton-BMRe3SzB.js → vue-ui-skeleton-Bgf16k10.js} +3 -3
  108. package/dist/{vue-ui-smiley-DkrQ5gDD.cjs → vue-ui-smiley-D-QDQ3Re.cjs} +1 -1
  109. package/dist/{vue-ui-smiley-CN5FWJ1G.js → vue-ui-smiley-ne5pBMum.js} +2 -2
  110. package/dist/{vue-ui-spark-trend-MNkadB41.js → vue-ui-spark-trend-BkiRBoVD.js} +13 -13
  111. package/dist/{vue-ui-spark-trend-BlOdnAb4.cjs → vue-ui-spark-trend-Dq1hox65.cjs} +1 -1
  112. package/dist/{vue-ui-sparkbar-CBPO2mUa.js → vue-ui-sparkbar--Q2alJoW.js} +4 -4
  113. package/dist/{vue-ui-sparkbar-ChTbwY11.cjs → vue-ui-sparkbar-DV5CtFQY.cjs} +1 -1
  114. package/dist/{vue-ui-sparkgauge-VLkIev3p.js → vue-ui-sparkgauge-BOcEbdij.js} +4 -4
  115. package/dist/{vue-ui-sparkgauge-B7yvQfZW.cjs → vue-ui-sparkgauge-BVNkRW_m.cjs} +1 -1
  116. package/dist/{vue-ui-sparkhistogram-DbOxX4Ks.js → vue-ui-sparkhistogram-CIJmWjb4.js} +5 -5
  117. package/dist/{vue-ui-sparkhistogram-mYU6RAK_.cjs → vue-ui-sparkhistogram-CUiNT8vT.cjs} +1 -1
  118. package/dist/vue-ui-sparkline-BFlRfhM6.cjs +1 -0
  119. package/dist/{vue-ui-sparkline-D_-31O2S.js → vue-ui-sparkline-lY0wS6kU.js} +96 -96
  120. package/dist/{vue-ui-sparkstackbar-KaFMlIAL.cjs → vue-ui-sparkstackbar-CGeg_k0k.cjs} +1 -1
  121. package/dist/{vue-ui-sparkstackbar-gW7rpJmQ.js → vue-ui-sparkstackbar-GHM4EY7-.js} +5 -5
  122. package/dist/vue-ui-stackbar-CQur8zP0.cjs +6 -0
  123. package/dist/vue-ui-stackbar-uR3T6rG4.js +1114 -0
  124. package/dist/{vue-ui-strip-plot-MlP5pDNx.cjs → vue-ui-strip-plot-CBYrZEIt.cjs} +1 -1
  125. package/dist/{vue-ui-strip-plot-4o1zAxG_.js → vue-ui-strip-plot-CNFrYVZ6.js} +11 -11
  126. package/dist/{vue-ui-table-B0PFrkLI.cjs → vue-ui-table-BbTwHDCo.cjs} +1 -1
  127. package/dist/{vue-ui-table-DWNrd7zM.js → vue-ui-table-DZV-uDG2.js} +1 -1
  128. package/dist/{vue-ui-table-heatmap-BSKCS8Lq.js → vue-ui-table-heatmap-DQBm_9Z3.js} +14 -14
  129. package/dist/{vue-ui-table-heatmap-4k74Ux7O.cjs → vue-ui-table-heatmap-DSgQpgxG.cjs} +1 -1
  130. package/dist/{vue-ui-table-sparkline-DCCogh2-.cjs → vue-ui-table-sparkline-AFK2LNsw.cjs} +1 -1
  131. package/dist/{vue-ui-table-sparkline-BrImSTh0.js → vue-ui-table-sparkline-wWAVQ0es.js} +5 -5
  132. package/dist/{vue-ui-thermometer-DswmMXiU.cjs → vue-ui-thermometer-CGFQfRUy.cjs} +1 -1
  133. package/dist/{vue-ui-thermometer-DHEoT4yB.js → vue-ui-thermometer-DRZWIAFj.js} +7 -7
  134. package/dist/{vue-ui-timer-Tv94CYqL.cjs → vue-ui-timer-C-RRrh5f.cjs} +1 -1
  135. package/dist/{vue-ui-timer-BNFihNgK.js → vue-ui-timer-D2_1bbpl.js} +5 -5
  136. package/dist/{vue-ui-tiremarks-B2kuKLe-.cjs → vue-ui-tiremarks-CIeid_A2.cjs} +1 -1
  137. package/dist/{vue-ui-tiremarks-DzaUfiET.js → vue-ui-tiremarks-CdX2b-Fq.js} +7 -7
  138. package/dist/{vue-ui-treemap-qKZJcEYe.js → vue-ui-treemap-CgzgE20q.js} +11 -11
  139. package/dist/{vue-ui-treemap-Dmt3RPF2.cjs → vue-ui-treemap-r8xOrE8F.cjs} +1 -1
  140. package/dist/vue-ui-vertical-bar-BcxAjcoh.cjs +4 -0
  141. package/dist/vue-ui-vertical-bar-v9LvL35a.js +936 -0
  142. package/dist/{vue-ui-waffle-DjJoezg-.js → vue-ui-waffle-0mHE8fud.js} +11 -11
  143. package/dist/{vue-ui-waffle-fWQvVbAH.cjs → vue-ui-waffle-5h_9tS3C.cjs} +1 -1
  144. package/dist/{vue-ui-wheel-DOrWSWt6.js → vue-ui-wheel-BWL-td7-.js} +7 -7
  145. package/dist/{vue-ui-wheel-2qIHyZe1.cjs → vue-ui-wheel-rL5Shua2.cjs} +1 -1
  146. package/dist/{vue-ui-word-cloud-Tgg5jCE6.cjs → vue-ui-word-cloud-2E23n-B8.cjs} +1 -1
  147. package/dist/{vue-ui-word-cloud-UPPKGsXt.js → vue-ui-word-cloud-OkAF9hSC.js} +10 -10
  148. package/dist/{vue-ui-xy-zCJv-Vao.js → vue-ui-xy-C8E2WzGt.js} +866 -819
  149. package/dist/vue-ui-xy-DbJNxL5O.cjs +3 -0
  150. package/dist/{vue-ui-xy-canvas-paHHRtqs.js → vue-ui-xy-canvas-C_0c8FlA.js} +31 -31
  151. package/dist/{vue-ui-xy-canvas-Dm3YUQ3g.cjs → vue-ui-xy-canvas-I7rw1uDf.cjs} +1 -1
  152. package/package.json +1 -1
  153. package/dist/Legend-CqilK5CI.cjs +0 -1
  154. package/dist/Legend-WOejx9sp.js +0 -68
  155. package/dist/vue-ui-donut-D5mDCNky.cjs +0 -1
  156. package/dist/vue-ui-donut-DDayabSz.js +0 -1122
  157. package/dist/vue-ui-gauge-Uo_1rs0Z.cjs +0 -1
  158. package/dist/vue-ui-rings-Bp0WLW4E.js +0 -628
  159. package/dist/vue-ui-rings-BwvTmRCE.cjs +0 -2
  160. package/dist/vue-ui-sparkline-DO496Tk5.cjs +0 -1
  161. package/dist/vue-ui-stackbar-CYHsSzEK.cjs +0 -6
  162. package/dist/vue-ui-stackbar-vIyS6oag.js +0 -1061
  163. package/dist/vue-ui-vertical-bar-CMXtevyE.js +0 -888
  164. package/dist/vue-ui-vertical-bar-CQ_qEJ_O.cjs +0 -4
  165. package/dist/vue-ui-xy-CMde0Kq-.cjs +0 -3
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=require("./index-ChOY3hT9.cjs"),Le=require("./Title-CoNtoGH9.cjs"),pe=require("./usePrinter-c3c7_uAW.cjs"),Oe=require("./DataTable-CCJGHIVo.cjs"),ze=require("./Tooltip-Dz4wVJkz.cjs"),O=require("./BaseIcon-rzIvDo2Q.cjs"),Ue=require("./vue-ui-skeleton-DlnPFtb4.cjs"),Me=require("./vue-ui-accordion-CZ8AlriN.cjs"),fe=require("./useNestedProp-CA8PjFJH.cjs"),De=require("./PackageVersion-eZ5Dmuid.cjs"),Ae=require("./PenAndPaper-D_w2N2qM.cjs"),Ie=require("./useUserOptionState-BgepsfED.cjs"),He=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),qe=["cx","cy","r","fill","stroke","stroke-width","onClick","onMouseover"],je={__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:["zoom","hover"],setup(r,{emit:g}){const h=r;function u(a){g("zoom",a)}function c(a){g("hover",a)}return e.toRef(h,"dataset").value.forEach(a=>{a.nodes&&a.nodes.length>0&&a.nodes.forEach(d=>{d.ancestor=a})}),(a,d)=>{const B=e.resolveComponent("RecursiveCircles",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,v=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[v.polygonPath&&v.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.polygonPath.coordinates,(x,z)=>(e.openBlock(),e.createElementBlock("circle",{cx:x.x,cy:x.y,r:v.circleRadius,fill:`url(#gradient_${v.color})`,stroke:r.hoveredUid&&r.hoveredUid===v.uid?r.strokeHovered:r.stroke,"stroke-width":r.hoveredUid&&r.hoveredUid===v.uid?v.circleRadius/6:v.circleRadius/12,style:{cursor:"pointer"},onClick:e.withModifiers($=>u(v),["stop"]),onMouseover:$=>c(v),onMouseleave:d[0]||(d[0]=$=>c(null))},null,40,qe))),256)),v.nodes&&v.nodes.length>0?(e.openBlock(),e.createBlock(B,{key:0,dataset:v.nodes,color:r.color,stroke:r.stroke,strokeHovered:r.strokeHovered,hoveredUid:r.hoveredUid,onZoom:u,onHover:c},null,8,["dataset","color","stroke","strokeHovered","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Ge=["x1","y1","x2","y2","stroke","stroke-width"],Xe=["x1","y1","x2","y2","stroke","stroke-width"],Ye={__name:"RecursiveLinks",props:{dataset:{type:Array,default:()=>[]},color:{type:String,default:"#DDDDDD"},backgroundColor:{type:String,default:"#FFFFFF"}},setup(r){const g=r;return e.toRef(g,"dataset").value.forEach(u=>{u.nodes&&u.nodes.length>0&&u.nodes.forEach(c=>{c.ancestor=u})}),(u,c)=>{const w=e.resolveComponent("RecursiveLinks",!0);return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,a=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.polygonPath&&a.polygonPath.coordinates?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.polygonPath.coordinates,(d,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.ancestor&&a.ancestor.polygonPath?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("line",{x1:d.x,y1:d.y,x2:a.ancestor.polygonPath.coordinates[0].x,y2:a.ancestor.polygonPath.coordinates[0].y,stroke:r.backgroundColor,"stroke-width":a.circleRadius/1.5},null,8,Ge),e.createElementVNode("line",{x1:d.x,y1:d.y,x2:a.ancestor.polygonPath.coordinates[0].x,y2:a.ancestor.polygonPath.coordinates[0].y,stroke:r.color,"stroke-width":a.circleRadius/2},null,8,Xe)],64)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)],64))),256)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,a=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.polygonPath&&a.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[a.nodes&&a.nodes.length>0?(e.openBlock(),e.createBlock(w,{key:0,dataset:a.nodes,color:r.color,backgroundColor:r.backgroundColor},null,8,["dataset","color","backgroundColor"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256))],64)}}},We=["x","y","fill","font-size"],Ze={__name:"RecursiveLabels",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null}},emits:["zoom","hover"],setup(r,{emit:g}){const h=r;return e.toRef(h,"dataset").value.forEach(c=>{c.nodes&&c.nodes.length>0&&c.nodes.forEach(w=>{w.ancestor=c})}),(c,w)=>{const a=e.resolveComponent("RecursiveLabels",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,d=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[d.polygonPath&&d.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.polygonPath.coordinates,B=>(e.openBlock(),e.createElementBlock("text",{x:B.x,y:B.y+d.circleRadius*2,fill:r.color,"font-size":d.circleRadius,"text-anchor":"middle",style:{opacity:"0.8","pointer-events":"none"}},e.toDisplayString(d.name),9,We))),256)),d.nodes&&d.nodes.length>0?(e.openBlock(),e.createBlock(a,{key:0,dataset:d.nodes,color:r.color,hoveredUid:r.hoveredUid},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Je={style:{position:"relative",height:"100%",width:"100%"}},Ke={__name:"BaseDirectionPad",props:{color:{type:String,default:"#FF0000"},isFullscreen:{type:Boolean,default:!1}},emits:["moveLeft","moveTop","moveRight","moveBottom","reset"],setup(r,{emit:g}){return(h,u)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(`position: ${r.isFullscreen?"fixed":"absolute"};bottom:0;right:${r.isFullscreen?"12px":"0"};width:80px;height:80px`),"data-html2canvas-ignore":""},[e.createElementVNode("div",Je,[e.createElementVNode("button",{onClick:u[0]||(u[0]=e.withModifiers(c=>g("moveLeft"),["stop"])),style:{position:"absolute",left:"0",top:"50%",transform:"translateY(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowLeft",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[1]||(u[1]=e.withModifiers(c=>g("moveTop"),["stop"])),style:{position:"absolute",top:"0",left:"50%",transform:"translateX(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowTop",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[2]||(u[2]=e.withModifiers(c=>g("moveRight"),["stop"])),style:{position:"absolute",right:"0",top:"50%",transform:"translateY(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowRight",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[3]||(u[3]=e.withModifiers(c=>g("moveBottom"),["stop"])),style:{position:"absolute",bottom:"0",left:"50%",transform:"translateX(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowBottom",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[4]||(u[4]=e.withModifiers(c=>g("reset"),["stop"])),style:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%,-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"close",style:{cursor:"pointer"},strokeWidth:2},null,8,["stroke"])])])],4))}},Qe=["id"],_e={key:1,ref:"noTitle",class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},et={key:2,style:"width:100%;background:transparent;"},tt=["xmlns","viewBox"],ot=["width","height"],lt=["id"],nt=["stop-color"],rt=["stop-color"],at={key:6,class:"vue-data-ui-watermark"},st={key:8,ref:"source",dir:"auto"},it=["innerHTML"],ut={__name:"vue-ui-molecule",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},setup(r,{expose:g}){const h=r,{vue_ui_molecule:u}=m.useConfig(),c=e.computed(()=>!!h.dataset&&h.dataset.length);e.onMounted(()=>{w()});function w(){m.objectIsEmpty(h.dataset)&&m.error({componentName:"VueUiMolecule",type:"dataset"})}const a=e.ref(m.createUid()),d=e.ref(null),B=e.ref(!1),v=e.ref(""),x=e.ref(null),z=e.ref(null),$=e.ref(!1),k=e.ref(null),Z=e.ref(null),D=e.ref(0),J=e.ref(0),K=e.ref(0),o=e.computed({get:()=>ee(),set:t=>t}),{userOptionsVisible:A,setUserOptionsVisibility:Q,keepUserOptionState:_}=Ie.useUserOptionState({config:o.value});function ee(){const t=fe.useNestedProp({userConfig:h.config,defaultConfig:u});return t.theme?{...fe.useNestedProp({userConfig:m.themes.vue_ui_molecule[t.theme]||h.config,defaultConfig:t}),customPalette:m.themePalettes[t.theme]||m.palette}:t}e.watch(()=>h.config,t=>{o.value=ee(),A.value=!o.value.showOnChartHover,w(),J.value+=1,K.value+=1},{deep:!0});const{isPrinting:te,isImaging:oe,generatePdf:le,generateImage:ne}=pe.usePrinter({elementId:`cluster_${a.value}`,fileName:o.value.style.chart.title.text||"vue-ui-molecule"}),me=e.computed(()=>o.value.userOptions.show&&!o.value.style.chart.title.text),he=e.computed(()=>m.convertCustomPalette(o.value.customPalette)),b=e.ref({showTable:o.value.table.show,showDataLabels:!0,showTooltip:o.value.style.chart.tooltip.show});function re(t,l=0){return Array.isArray(t)&&t.length>0&&t[0].nodes?re(t[0].nodes,l+1):l}function ge(){const t=re(h.dataset);let l=100,n=l;for(let i=0;i<t;i+=1)l/=1,n+=l;return{height:n,width:n}}const y=e.ref(ge()),I=e.ref(`0 0 ${y.value.width} ${y.value.height}`);function ae(t,l={x:-y.value.width/2.43,y:y.value.height/2},n=y.value.width/1.1,i=24,s=0,p=0,V="#BBBBBB"){if(t&&t.length>0){const Y=m.createPolygonPath({plot:l,radius:n,sides:t.length,rotation:s});t.forEach((f,F)=>{const R=Y.coordinates[F];let P;if(f.ancestor?f.ancestor.ancestor?P=f.ancestor.color||V:(P=he.value[p]||m.palette[p]||V,p+=1):P=V,f.polygonPath={coordinates:[R]},f.circleRadius=i,f.color=P,f.uid=m.createUid(),f.nodes&&f.nodes.length>0){const W=!f.ancestor||!f.ancestor.ancestor?p:0;f.nodes=ae(f.nodes,R,n/2.9,i/2.2,s+Math.PI*F/f.nodes.length,W,P)}})}return t}function ye(t){const l=new Set;function n(s){s.forEach(p=>{p.color&&!l.has(p.color)&&l.add(p.color),p.nodes&&p.nodes.length>0&&n(p.nodes)})}n(t);const i={};return Array.from(l).forEach((s,p)=>{i[s]=`gradient_${p}`}),i}const ke=e.computed(()=>ye(C.value)),C=e.computed(()=>ae(h.dataset));function H(){$.value=!1,z.value=null,Z.value=null,k.value=null,j({polygonPath:{coordinates:[{x:y.value.width/2,y:y.value.height/2}]},circleRadius:24})}const q=e.ref(null);function j(t){x.value.focus(),e.nextTick(()=>{q.value&&cancelAnimationFrame(q.value);const l=I.value.split(" "),n=parseFloat(l[0]),i=parseFloat(l[1]),s=parseFloat(l[2]),p=parseFloat(l[3]),{x:V,y:Y}=t.polygonPath.coordinates[0],{circleRadius:f}=t,F=8.34,R=V-f*F,P=Y-f*F,W=f*F*2,Ne=f*F*2,Ee=Math.sqrt((R-n)**2+(P-i)**2),L=Math.min(1200,Math.max(20,Math.floor(Ee/10))),Te=(R-n)/L,Se=(P-i)/L,Ve=(W-s)/L,Re=(Ne-p)/L;let T=0;function ve(){I.value=`${n+Te*T} ${i+Se*T} ${s+Ve*T} ${p+Re*T}`,T+=o.value.style.chart.zoom.speed,T<=L&&(q.value=requestAnimationFrame(ve))}ve()})}function be(t){z.value===t.uid?H():(z.value=t.uid,Z.value=t,k.value={circleRadius:t.circleRadius,polygonPath:{coordinates:[{x:t.polygonPath.coordinates[0].x,y:t.polygonPath.coordinates[0].y}]}},j(t),$.value=t.uid!==C.value[0].uid)}function Ce(t){if(t.target.nodeName!=="circle")H(),$.value=!1;else return}const G=e.ref(null);function Be(t){G.value={datapoint:t,seriesIndex:-1,series:C.value,config:o.value};const l=o.value.style.chart.tooltip.customFormat;if(m.isFunction(l)&&m.functionReturnsString(()=>l({seriesIndex:-1,datapoint:t,series:C.value,config:o.value})))v.value=l({seriesIndex:-1,datapoint:t,series:C.value,config:o.value});else{let n="";n+=`<div style="display:flex;align-items:center;gap:3px"><div style="color:${t.color}">⬤</div><div>${t.name}</div></div>`,t.details&&(n+=`<div style="width:100%;border-top:1px solid ${o.value.style.chart.tooltip.borderColor};margin-top: 2px">${t.details}</div>`),v.value=`<div style="font-family:inherit">${n}</div>`}}const se=e.ref(null),S=e.ref(null);function we(t){se.value=t,t?(B.value=!0,Be(t),S.value=t.uid):(B.value=!1,v.value="",S.value=null)}function U(t){t==="right"&&(k.value.polygonPath.coordinates[0].x+=k.value.circleRadius),t==="left"&&(k.value.polygonPath.coordinates[0].x-=k.value.circleRadius),t==="top"&&(k.value.polygonPath.coordinates[0].y-=k.value.circleRadius),t==="bottom"&&(k.value.polygonPath.coordinates[0].y+=k.value.circleRadius),j(k.value)}function xe(t){const l=[];function n(i){i.forEach(s=>{const p={name:s.name,details:s.details||"-",ancestor:s.ancestor&&s.ancestor.name||"-",color:s.color||""};l.push(p),s.nodes&&s.nodes.length>0&&n(s.nodes,s.name)})}return n(t),l}const $e=e.computed(()=>xe(C.value)),N=e.computed(()=>{const t=[o.value.table.translations.nodeName,o.value.table.translations.details,o.value.table.translations.ancestor],l=$e.value.map((s,p)=>[{color:s.color,name:s.name},s.details,s.ancestor||""]),n={th:{backgroundColor:o.value.table.th.backgroundColor,color:o.value.table.th.color,outline:o.value.table.th.outline},td:{backgroundColor:o.value.table.td.backgroundColor,color:o.value.table.td.color,outline:o.value.table.td.outline},breakpoint:o.value.table.responsiveBreakpoint},i=[o.value.table.translations.nodeName,o.value.table.translations.details,o.value.table.translations.ancestor];return{head:t,body:l,config:n,colNames:i}});function ie(){e.nextTick(()=>{const t=N.value.body.map((i,s)=>[[i[0].name],[i[1]],[i[2]]]),l=[[o.value.style.chart.title.text],[o.value.style.chart.title.subtitle.text],[[...N.value.head]]].concat(t),n=m.createCsvContent(l);m.downloadCsv({csvContent:n,title:o.value.style.chart.title.text||"vue-ui-molecule"})})}function Pe(){return C.value}const E=e.ref(!1);function Fe(t){E.value=t,D.value+=1}function ue(){b.value.showTable=!b.value.showTable}function ce(){b.value.showDataLabels=!b.value.showDataLabels}function de(){b.value.showTooltip=!b.value.showTooltip}const M=e.ref(!1);function X(){M.value=!M.value}return g({getData:Pe,generatePdf:le,generateCsv:ie,generateImage:ne,toggleTable:ue,toggleLabels:ce,toggleTooltip:de,toggleAnnotator:X}),(t,l)=>(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:${o.value.style.fontFamily};width:100%; text-align:center;background:${o.value.style.chart.backgroundColor}`),id:`cluster_${a.value}`,onMouseleave:l[7]||(l[7]=n=>{se.value=null,S.value=null,e.unref(Q)(!1)}),onMouseenter:l[8]||(l[8]=()=>e.unref(Q)(!0))},[o.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(Ae.PenAndPaper,{key:0,parent:x.value,backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color,active:M.value,onClose:X},null,8,["parent","backgroundColor","color","active"])):e.createCommentVNode("",!0),me.value?(e.openBlock(),e.createElementBlock("div",_e,null,512)):e.createCommentVNode("",!0),o.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",et,[(e.openBlock(),e.createBlock(Le._sfc_main,{key:`title_${J.value}`,config:{title:{cy:"molecule-div-title",...o.value.style.chart.title},subtitle:{cy:"molecule-div-subtitle",...o.value.style.chart.title.subtitle}}},null,8,["config"]))])):e.createCommentVNode("",!0),o.value.userOptions.show&&c.value&&(e.unref(_)||e.unref(A))?(e.openBlock(),e.createBlock(pe.UserOptions,{ref_key:"details",ref:d,key:`user_options_${D.value}`,backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color,isPrinting:e.unref(te),isImaging:e.unref(oe),uid:a.value,hasTooltip:o.value.userOptions.buttons.tooltip&&o.value.style.chart.tooltip.show,hasPdf:o.value.userOptions.buttons.pdf,hasXls:o.value.userOptions.buttons.csv,hasImg:o.value.userOptions.buttons.img,hasTable:o.value.userOptions.buttons.table,hasLabel:o.value.userOptions.buttons.labels,hasFullscreen:o.value.userOptions.buttons.fullscreen,isTooltip:b.value.showTooltip,titles:{...o.value.userOptions.buttonTitles},chartElement:x.value,position:o.value.userOptions.position,hasAnnotator:o.value.userOptions.buttons.annotator,isAnnotation:M.value,onToggleFullscreen:Fe,onGeneratePdf:e.unref(le),onGenerateCsv:ie,onGenerateImage:e.unref(ne),onToggleTable:ue,onToggleLabels:ce,onToggleTooltip:de,onToggleAnnotator:X,style:e.normalizeStyle({visibility:e.unref(_)?e.unref(A)?"visible":"hidden":"visible"})},e.createSlots({_:2},[t.$slots.optionTooltip?{name:"optionTooltip",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionTooltip",{},void 0,!0)]),key:"0"}:void 0,t.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,t.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,t.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,t.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,t.$slots.optionLabels?{name:"optionLabels",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionLabels",{},void 0,!0)]),key:"5"}:void 0,t.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:n,isFullscreen:i})=>[e.renderSlot(t.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:n,isFullscreen:i})),void 0,!0)]),key:"6"}:void 0,t.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:n,isAnnotator:i})=>[e.renderSlot(t.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:n,isAnnotator:i})),void 0,!0)]),key:"7"}: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),c.value?(e.openBlock(),e.createElementBlock("svg",{key:4,xmlns:e.unref(m.XMLNS),viewBox:I.value,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:${o.value.style.chart.color}`),onClick:l[0]||(l[0]=e.withModifiers(n=>Ce(n),["stop"]))},[e.createVNode(De._sfc_main),t.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:y.value.width<=0?10:y.value.width,height:y.value.height<=0?10:y.value.height,style:{pointerEvents:"none"}},[e.renderSlot(t.$slots,"chart-background",{},void 0,!0)],8,ot)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(ke.value),n=>(e.openBlock(),e.createElementBlock("radialGradient",{id:`gradient_${n}`,cx:"50%",cy:"30%",r:"50%",fx:"50%",fy:"50%"},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(m.lightenHexColor)(n,.5)},null,8,nt),e.createElementVNode("stop",{offset:"100%","stop-color":n},null,8,rt)],8,lt))),256))]),e.createVNode(Ye,{dataset:C.value,color:o.value.style.chart.links.stroke,backgroundColor:o.value.style.chart.backgroundColor},null,8,["dataset","color","backgroundColor"]),e.createVNode(je,{dataset:C.value,hoveredUid:S.value,stroke:o.value.style.chart.nodes.stroke,strokeHovered:o.value.style.chart.nodes.strokeHovered,onZoom:be,onHover:we},null,8,["dataset","hoveredUid","stroke","strokeHovered"]),b.value.showDataLabels?(e.openBlock(),e.createBlock(Ze,{key:1,dataset:C.value,color:o.value.style.chart.color,hoveredUid:S.value},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"svg",{svg:y.value},void 0,!0)],14,tt)):e.createCommentVNode("",!0),$.value?(e.openBlock(),e.createBlock(Ke,{key:`direction_pad_${D.value}`,color:o.value.style.chart.color,isFullscreen:E.value,onMoveLeft:l[1]||(l[1]=n=>U("left")),onMoveRight:l[2]||(l[2]=n=>U("right")),onMoveTop:l[3]||(l[3]=n=>U("top")),onMoveBottom:l[4]||(l[4]=n=>U("bottom")),onReset:l[5]||(l[5]=n=>{H(),$.value=!1})},null,8,["color","isFullscreen"])):e.createCommentVNode("",!0),t.$slots.watermark?(e.openBlock(),e.createElementBlock("div",at,[e.renderSlot(t.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(te)||e.unref(oe)})),void 0,!0)])):e.createCommentVNode("",!0),c.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ue.default,{key:7,config:{type:"molecule",style:{backgroundColor:o.value.style.chart.backgroundColor,molecule:{color:"#CCCCCC"}}}},null,8,["config"])),t.$slots.source?(e.openBlock(),e.createElementBlock("div",st,[e.renderSlot(t.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),e.createVNode(ze._sfc_main,{show:b.value.showTooltip&&B.value,backgroundColor:o.value.style.chart.tooltip.backgroundColor,color:o.value.style.chart.tooltip.color,borderRadius:o.value.style.chart.tooltip.borderRadius,borderColor:o.value.style.chart.tooltip.borderColor,borderWidth:o.value.style.chart.tooltip.borderWidth,fontSize:o.value.style.chart.tooltip.fontSize,backgroundOpacity:o.value.style.chart.tooltip.backgroundOpacity,position:o.value.style.chart.tooltip.position,offsetY:o.value.style.chart.tooltip.offsetY,parent:x.value,content:v.value,isFullscreen:E.value,isCustom:o.value.style.chart.tooltip.customFormat&&typeof o.value.style.chart.tooltip.customFormat=="function"},{"tooltip-before":e.withCtx(()=>[e.renderSlot(t.$slots,"tooltip-before",e.normalizeProps(e.guardReactiveProps({...G.value})),void 0,!0)]),"tooltip-after":e.withCtx(()=>[e.renderSlot(t.$slots,"tooltip-after",e.normalizeProps(e.guardReactiveProps({...G.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","borderRadius","borderColor","borderWidth","fontSize","backgroundOpacity","position","offsetY","parent","content","isFullscreen","isCustom"]),c.value?(e.openBlock(),e.createBlock(Me.default,{key:9,hideDetails:"",config:{open:b.value.showTable,maxHeight:1e4,body:{backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color},head:{backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color}}},{content:e.withCtx(()=>[(e.openBlock(),e.createBlock(Oe.DataTable,{key:`table_${K.value}`,colNames:N.value.colNames,head:N.value.head,body:N.value.body,config:N.value.config,title:`${o.value.style.chart.title.text}${o.value.style.chart.title.subtitle.text?` : ${o.value.style.chart.title.subtitle.text}`:""}`,onClose:l[6]||(l[6]=n=>b.value.showTable=!1)},{th:e.withCtx(({th:n})=>[e.createElementVNode("div",{innerHTML:n,style:{display:"flex","align-items":"center"}},null,8,it)]),td:e.withCtx(({td:n})=>[e.createTextVNode(e.toDisplayString(n.name||n),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,Qe))}},ct=He._export_sfc(ut,[["__scopeId","data-v-84f8e29e"]]);exports.default=ct;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=require("./index-CKgv8c-A.cjs"),Le=require("./Title-BnRtxxP4.cjs"),pe=require("./usePrinter-Gkda9yEJ.cjs"),Oe=require("./DataTable-CwzQ-L0W.cjs"),ze=require("./Tooltip-CUoQNXZK.cjs"),O=require("./BaseIcon-CyTdOpDr.cjs"),Ue=require("./vue-ui-skeleton-73YO0ovP.cjs"),Me=require("./vue-ui-accordion-xV0it5je.cjs"),fe=require("./useNestedProp-0Mn5Z6Ae.cjs"),De=require("./PackageVersion-D_9QTWVm.cjs"),Ae=require("./PenAndPaper-CfGYucSm.cjs"),Ie=require("./useUserOptionState-BgepsfED.cjs"),He=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),qe=["cx","cy","r","fill","stroke","stroke-width","onClick","onMouseover"],je={__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:["zoom","hover"],setup(r,{emit:g}){const h=r;function u(a){g("zoom",a)}function c(a){g("hover",a)}return e.toRef(h,"dataset").value.forEach(a=>{a.nodes&&a.nodes.length>0&&a.nodes.forEach(d=>{d.ancestor=a})}),(a,d)=>{const B=e.resolveComponent("RecursiveCircles",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,v=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[v.polygonPath&&v.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(v.polygonPath.coordinates,(x,z)=>(e.openBlock(),e.createElementBlock("circle",{cx:x.x,cy:x.y,r:v.circleRadius,fill:`url(#gradient_${v.color})`,stroke:r.hoveredUid&&r.hoveredUid===v.uid?r.strokeHovered:r.stroke,"stroke-width":r.hoveredUid&&r.hoveredUid===v.uid?v.circleRadius/6:v.circleRadius/12,style:{cursor:"pointer"},onClick:e.withModifiers($=>u(v),["stop"]),onMouseover:$=>c(v),onMouseleave:d[0]||(d[0]=$=>c(null))},null,40,qe))),256)),v.nodes&&v.nodes.length>0?(e.openBlock(),e.createBlock(B,{key:0,dataset:v.nodes,color:r.color,stroke:r.stroke,strokeHovered:r.strokeHovered,hoveredUid:r.hoveredUid,onZoom:u,onHover:c},null,8,["dataset","color","stroke","strokeHovered","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Ge=["x1","y1","x2","y2","stroke","stroke-width"],Xe=["x1","y1","x2","y2","stroke","stroke-width"],Ye={__name:"RecursiveLinks",props:{dataset:{type:Array,default:()=>[]},color:{type:String,default:"#DDDDDD"},backgroundColor:{type:String,default:"#FFFFFF"}},setup(r){const g=r;return e.toRef(g,"dataset").value.forEach(u=>{u.nodes&&u.nodes.length>0&&u.nodes.forEach(c=>{c.ancestor=u})}),(u,c)=>{const w=e.resolveComponent("RecursiveLinks",!0);return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,a=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.polygonPath&&a.polygonPath.coordinates?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(a.polygonPath.coordinates,(d,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.ancestor&&a.ancestor.polygonPath?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("line",{x1:d.x,y1:d.y,x2:a.ancestor.polygonPath.coordinates[0].x,y2:a.ancestor.polygonPath.coordinates[0].y,stroke:r.backgroundColor,"stroke-width":a.circleRadius/1.5},null,8,Ge),e.createElementVNode("line",{x1:d.x,y1:d.y,x2:a.ancestor.polygonPath.coordinates[0].x,y2:a.ancestor.polygonPath.coordinates[0].y,stroke:r.color,"stroke-width":a.circleRadius/2},null,8,Xe)],64)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)],64))),256)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,a=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[a.polygonPath&&a.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[a.nodes&&a.nodes.length>0?(e.openBlock(),e.createBlock(w,{key:0,dataset:a.nodes,color:r.color,backgroundColor:r.backgroundColor},null,8,["dataset","color","backgroundColor"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256))],64)}}},We=["x","y","fill","font-size"],Ze={__name:"RecursiveLabels",props:{color:{type:String,default:"#000000"},dataset:{type:Array,default:()=>[]},hoveredUid:{type:String,default:null}},emits:["zoom","hover"],setup(r,{emit:g}){const h=r;return e.toRef(h,"dataset").value.forEach(c=>{c.nodes&&c.nodes.length>0&&c.nodes.forEach(w=>{w.ancestor=c})}),(c,w)=>{const a=e.resolveComponent("RecursiveLabels",!0);return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.dataset,d=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[d.polygonPath&&d.polygonPath.coordinates?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.polygonPath.coordinates,B=>(e.openBlock(),e.createElementBlock("text",{x:B.x,y:B.y+d.circleRadius*2,fill:r.color,"font-size":d.circleRadius,"text-anchor":"middle",style:{opacity:"0.8","pointer-events":"none"}},e.toDisplayString(d.name),9,We))),256)),d.nodes&&d.nodes.length>0?(e.openBlock(),e.createBlock(a,{key:0,dataset:d.nodes,color:r.color,hoveredUid:r.hoveredUid},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),256)}}},Je={style:{position:"relative",height:"100%",width:"100%"}},Ke={__name:"BaseDirectionPad",props:{color:{type:String,default:"#FF0000"},isFullscreen:{type:Boolean,default:!1}},emits:["moveLeft","moveTop","moveRight","moveBottom","reset"],setup(r,{emit:g}){return(h,u)=>(e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(`position: ${r.isFullscreen?"fixed":"absolute"};bottom:0;right:${r.isFullscreen?"12px":"0"};width:80px;height:80px`),"data-html2canvas-ignore":""},[e.createElementVNode("div",Je,[e.createElementVNode("button",{onClick:u[0]||(u[0]=e.withModifiers(c=>g("moveLeft"),["stop"])),style:{position:"absolute",left:"0",top:"50%",transform:"translateY(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowLeft",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[1]||(u[1]=e.withModifiers(c=>g("moveTop"),["stop"])),style:{position:"absolute",top:"0",left:"50%",transform:"translateX(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowTop",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[2]||(u[2]=e.withModifiers(c=>g("moveRight"),["stop"])),style:{position:"absolute",right:"0",top:"50%",transform:"translateY(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowRight",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[3]||(u[3]=e.withModifiers(c=>g("moveBottom"),["stop"])),style:{position:"absolute",bottom:"0",left:"50%",transform:"translateX(-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"arrowBottom",style:{cursor:"pointer"}},null,8,["stroke"])]),e.createElementVNode("button",{onClick:u[4]||(u[4]=e.withModifiers(c=>g("reset"),["stop"])),style:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%,-50%)",height:"24px",width:"24px",padding:"0",background:"transparent",border:"none",display:"flex","align-items":"center","justify-content":"center"}},[e.createVNode(O.default,{stroke:r.color,name:"close",style:{cursor:"pointer"},strokeWidth:2},null,8,["stroke"])])])],4))}},Qe=["id"],_e={key:1,ref:"noTitle",class:"vue-data-ui-no-title-space",style:"height:36px; width: 100%;background:transparent"},et={key:2,style:"width:100%;background:transparent;"},tt=["xmlns","viewBox"],ot=["width","height"],lt=["id"],nt=["stop-color"],rt=["stop-color"],at={key:6,class:"vue-data-ui-watermark"},st={key:8,ref:"source",dir:"auto"},it=["innerHTML"],ut={__name:"vue-ui-molecule",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},setup(r,{expose:g}){const h=r,{vue_ui_molecule:u}=m.useConfig(),c=e.computed(()=>!!h.dataset&&h.dataset.length);e.onMounted(()=>{w()});function w(){m.objectIsEmpty(h.dataset)&&m.error({componentName:"VueUiMolecule",type:"dataset"})}const a=e.ref(m.createUid()),d=e.ref(null),B=e.ref(!1),v=e.ref(""),x=e.ref(null),z=e.ref(null),$=e.ref(!1),k=e.ref(null),Z=e.ref(null),D=e.ref(0),J=e.ref(0),K=e.ref(0),o=e.computed({get:()=>ee(),set:t=>t}),{userOptionsVisible:A,setUserOptionsVisibility:Q,keepUserOptionState:_}=Ie.useUserOptionState({config:o.value});function ee(){const t=fe.useNestedProp({userConfig:h.config,defaultConfig:u});return t.theme?{...fe.useNestedProp({userConfig:m.themes.vue_ui_molecule[t.theme]||h.config,defaultConfig:t}),customPalette:m.themePalettes[t.theme]||m.palette}:t}e.watch(()=>h.config,t=>{o.value=ee(),A.value=!o.value.showOnChartHover,w(),J.value+=1,K.value+=1},{deep:!0});const{isPrinting:te,isImaging:oe,generatePdf:le,generateImage:ne}=pe.usePrinter({elementId:`cluster_${a.value}`,fileName:o.value.style.chart.title.text||"vue-ui-molecule"}),me=e.computed(()=>o.value.userOptions.show&&!o.value.style.chart.title.text),he=e.computed(()=>m.convertCustomPalette(o.value.customPalette)),b=e.ref({showTable:o.value.table.show,showDataLabels:!0,showTooltip:o.value.style.chart.tooltip.show});function re(t,l=0){return Array.isArray(t)&&t.length>0&&t[0].nodes?re(t[0].nodes,l+1):l}function ge(){const t=re(h.dataset);let l=100,n=l;for(let i=0;i<t;i+=1)l/=1,n+=l;return{height:n,width:n}}const y=e.ref(ge()),I=e.ref(`0 0 ${y.value.width} ${y.value.height}`);function ae(t,l={x:-y.value.width/2.43,y:y.value.height/2},n=y.value.width/1.1,i=24,s=0,p=0,V="#BBBBBB"){if(t&&t.length>0){const Y=m.createPolygonPath({plot:l,radius:n,sides:t.length,rotation:s});t.forEach((f,F)=>{const R=Y.coordinates[F];let P;if(f.ancestor?f.ancestor.ancestor?P=f.ancestor.color||V:(P=he.value[p]||m.palette[p]||V,p+=1):P=V,f.polygonPath={coordinates:[R]},f.circleRadius=i,f.color=P,f.uid=m.createUid(),f.nodes&&f.nodes.length>0){const W=!f.ancestor||!f.ancestor.ancestor?p:0;f.nodes=ae(f.nodes,R,n/2.9,i/2.2,s+Math.PI*F/f.nodes.length,W,P)}})}return t}function ye(t){const l=new Set;function n(s){s.forEach(p=>{p.color&&!l.has(p.color)&&l.add(p.color),p.nodes&&p.nodes.length>0&&n(p.nodes)})}n(t);const i={};return Array.from(l).forEach((s,p)=>{i[s]=`gradient_${p}`}),i}const ke=e.computed(()=>ye(C.value)),C=e.computed(()=>ae(h.dataset));function H(){$.value=!1,z.value=null,Z.value=null,k.value=null,j({polygonPath:{coordinates:[{x:y.value.width/2,y:y.value.height/2}]},circleRadius:24})}const q=e.ref(null);function j(t){x.value.focus(),e.nextTick(()=>{q.value&&cancelAnimationFrame(q.value);const l=I.value.split(" "),n=parseFloat(l[0]),i=parseFloat(l[1]),s=parseFloat(l[2]),p=parseFloat(l[3]),{x:V,y:Y}=t.polygonPath.coordinates[0],{circleRadius:f}=t,F=8.34,R=V-f*F,P=Y-f*F,W=f*F*2,Ne=f*F*2,Ee=Math.sqrt((R-n)**2+(P-i)**2),L=Math.min(1200,Math.max(20,Math.floor(Ee/10))),Te=(R-n)/L,Se=(P-i)/L,Ve=(W-s)/L,Re=(Ne-p)/L;let T=0;function ve(){I.value=`${n+Te*T} ${i+Se*T} ${s+Ve*T} ${p+Re*T}`,T+=o.value.style.chart.zoom.speed,T<=L&&(q.value=requestAnimationFrame(ve))}ve()})}function be(t){z.value===t.uid?H():(z.value=t.uid,Z.value=t,k.value={circleRadius:t.circleRadius,polygonPath:{coordinates:[{x:t.polygonPath.coordinates[0].x,y:t.polygonPath.coordinates[0].y}]}},j(t),$.value=t.uid!==C.value[0].uid)}function Ce(t){if(t.target.nodeName!=="circle")H(),$.value=!1;else return}const G=e.ref(null);function Be(t){G.value={datapoint:t,seriesIndex:-1,series:C.value,config:o.value};const l=o.value.style.chart.tooltip.customFormat;if(m.isFunction(l)&&m.functionReturnsString(()=>l({seriesIndex:-1,datapoint:t,series:C.value,config:o.value})))v.value=l({seriesIndex:-1,datapoint:t,series:C.value,config:o.value});else{let n="";n+=`<div style="display:flex;align-items:center;gap:3px"><div style="color:${t.color}">⬤</div><div>${t.name}</div></div>`,t.details&&(n+=`<div style="width:100%;border-top:1px solid ${o.value.style.chart.tooltip.borderColor};margin-top: 2px">${t.details}</div>`),v.value=`<div style="font-family:inherit">${n}</div>`}}const se=e.ref(null),S=e.ref(null);function we(t){se.value=t,t?(B.value=!0,Be(t),S.value=t.uid):(B.value=!1,v.value="",S.value=null)}function U(t){t==="right"&&(k.value.polygonPath.coordinates[0].x+=k.value.circleRadius),t==="left"&&(k.value.polygonPath.coordinates[0].x-=k.value.circleRadius),t==="top"&&(k.value.polygonPath.coordinates[0].y-=k.value.circleRadius),t==="bottom"&&(k.value.polygonPath.coordinates[0].y+=k.value.circleRadius),j(k.value)}function xe(t){const l=[];function n(i){i.forEach(s=>{const p={name:s.name,details:s.details||"-",ancestor:s.ancestor&&s.ancestor.name||"-",color:s.color||""};l.push(p),s.nodes&&s.nodes.length>0&&n(s.nodes,s.name)})}return n(t),l}const $e=e.computed(()=>xe(C.value)),N=e.computed(()=>{const t=[o.value.table.translations.nodeName,o.value.table.translations.details,o.value.table.translations.ancestor],l=$e.value.map((s,p)=>[{color:s.color,name:s.name},s.details,s.ancestor||""]),n={th:{backgroundColor:o.value.table.th.backgroundColor,color:o.value.table.th.color,outline:o.value.table.th.outline},td:{backgroundColor:o.value.table.td.backgroundColor,color:o.value.table.td.color,outline:o.value.table.td.outline},breakpoint:o.value.table.responsiveBreakpoint},i=[o.value.table.translations.nodeName,o.value.table.translations.details,o.value.table.translations.ancestor];return{head:t,body:l,config:n,colNames:i}});function ie(){e.nextTick(()=>{const t=N.value.body.map((i,s)=>[[i[0].name],[i[1]],[i[2]]]),l=[[o.value.style.chart.title.text],[o.value.style.chart.title.subtitle.text],[[...N.value.head]]].concat(t),n=m.createCsvContent(l);m.downloadCsv({csvContent:n,title:o.value.style.chart.title.text||"vue-ui-molecule"})})}function Pe(){return C.value}const E=e.ref(!1);function Fe(t){E.value=t,D.value+=1}function ue(){b.value.showTable=!b.value.showTable}function ce(){b.value.showDataLabels=!b.value.showDataLabels}function de(){b.value.showTooltip=!b.value.showTooltip}const M=e.ref(!1);function X(){M.value=!M.value}return g({getData:Pe,generatePdf:le,generateCsv:ie,generateImage:ne,toggleTable:ue,toggleLabels:ce,toggleTooltip:de,toggleAnnotator:X}),(t,l)=>(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:${o.value.style.fontFamily};width:100%; text-align:center;background:${o.value.style.chart.backgroundColor}`),id:`cluster_${a.value}`,onMouseleave:l[7]||(l[7]=n=>{se.value=null,S.value=null,e.unref(Q)(!1)}),onMouseenter:l[8]||(l[8]=()=>e.unref(Q)(!0))},[o.value.userOptions.buttons.annotator?(e.openBlock(),e.createBlock(Ae.PenAndPaper,{key:0,parent:x.value,backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color,active:M.value,onClose:X},null,8,["parent","backgroundColor","color","active"])):e.createCommentVNode("",!0),me.value?(e.openBlock(),e.createElementBlock("div",_e,null,512)):e.createCommentVNode("",!0),o.value.style.chart.title.text?(e.openBlock(),e.createElementBlock("div",et,[(e.openBlock(),e.createBlock(Le._sfc_main,{key:`title_${J.value}`,config:{title:{cy:"molecule-div-title",...o.value.style.chart.title},subtitle:{cy:"molecule-div-subtitle",...o.value.style.chart.title.subtitle}}},null,8,["config"]))])):e.createCommentVNode("",!0),o.value.userOptions.show&&c.value&&(e.unref(_)||e.unref(A))?(e.openBlock(),e.createBlock(pe.UserOptions,{ref_key:"details",ref:d,key:`user_options_${D.value}`,backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color,isPrinting:e.unref(te),isImaging:e.unref(oe),uid:a.value,hasTooltip:o.value.userOptions.buttons.tooltip&&o.value.style.chart.tooltip.show,hasPdf:o.value.userOptions.buttons.pdf,hasXls:o.value.userOptions.buttons.csv,hasImg:o.value.userOptions.buttons.img,hasTable:o.value.userOptions.buttons.table,hasLabel:o.value.userOptions.buttons.labels,hasFullscreen:o.value.userOptions.buttons.fullscreen,isTooltip:b.value.showTooltip,titles:{...o.value.userOptions.buttonTitles},chartElement:x.value,position:o.value.userOptions.position,hasAnnotator:o.value.userOptions.buttons.annotator,isAnnotation:M.value,onToggleFullscreen:Fe,onGeneratePdf:e.unref(le),onGenerateCsv:ie,onGenerateImage:e.unref(ne),onToggleTable:ue,onToggleLabels:ce,onToggleTooltip:de,onToggleAnnotator:X,style:e.normalizeStyle({visibility:e.unref(_)?e.unref(A)?"visible":"hidden":"visible"})},e.createSlots({_:2},[t.$slots.optionTooltip?{name:"optionTooltip",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionTooltip",{},void 0,!0)]),key:"0"}:void 0,t.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionPdf",{},void 0,!0)]),key:"1"}:void 0,t.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionCsv",{},void 0,!0)]),key:"2"}:void 0,t.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionImg",{},void 0,!0)]),key:"3"}:void 0,t.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionTable",{},void 0,!0)]),key:"4"}:void 0,t.$slots.optionLabels?{name:"optionLabels",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"optionLabels",{},void 0,!0)]),key:"5"}:void 0,t.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:n,isFullscreen:i})=>[e.renderSlot(t.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:n,isFullscreen:i})),void 0,!0)]),key:"6"}:void 0,t.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:n,isAnnotator:i})=>[e.renderSlot(t.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:n,isAnnotator:i})),void 0,!0)]),key:"7"}: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),c.value?(e.openBlock(),e.createElementBlock("svg",{key:4,xmlns:e.unref(m.XMLNS),viewBox:I.value,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:${o.value.style.chart.color}`),onClick:l[0]||(l[0]=e.withModifiers(n=>Ce(n),["stop"]))},[e.createVNode(De._sfc_main),t.$slots["chart-background"]?(e.openBlock(),e.createElementBlock("foreignObject",{key:0,x:0,y:0,width:y.value.width<=0?10:y.value.width,height:y.value.height<=0?10:y.value.height,style:{pointerEvents:"none"}},[e.renderSlot(t.$slots,"chart-background",{},void 0,!0)],8,ot)):e.createCommentVNode("",!0),e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(ke.value),n=>(e.openBlock(),e.createElementBlock("radialGradient",{id:`gradient_${n}`,cx:"50%",cy:"30%",r:"50%",fx:"50%",fy:"50%"},[e.createElementVNode("stop",{offset:"0%","stop-color":e.unref(m.lightenHexColor)(n,.5)},null,8,nt),e.createElementVNode("stop",{offset:"100%","stop-color":n},null,8,rt)],8,lt))),256))]),e.createVNode(Ye,{dataset:C.value,color:o.value.style.chart.links.stroke,backgroundColor:o.value.style.chart.backgroundColor},null,8,["dataset","color","backgroundColor"]),e.createVNode(je,{dataset:C.value,hoveredUid:S.value,stroke:o.value.style.chart.nodes.stroke,strokeHovered:o.value.style.chart.nodes.strokeHovered,onZoom:be,onHover:we},null,8,["dataset","hoveredUid","stroke","strokeHovered"]),b.value.showDataLabels?(e.openBlock(),e.createBlock(Ze,{key:1,dataset:C.value,color:o.value.style.chart.color,hoveredUid:S.value},null,8,["dataset","color","hoveredUid"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"svg",{svg:y.value},void 0,!0)],14,tt)):e.createCommentVNode("",!0),$.value?(e.openBlock(),e.createBlock(Ke,{key:`direction_pad_${D.value}`,color:o.value.style.chart.color,isFullscreen:E.value,onMoveLeft:l[1]||(l[1]=n=>U("left")),onMoveRight:l[2]||(l[2]=n=>U("right")),onMoveTop:l[3]||(l[3]=n=>U("top")),onMoveBottom:l[4]||(l[4]=n=>U("bottom")),onReset:l[5]||(l[5]=n=>{H(),$.value=!1})},null,8,["color","isFullscreen"])):e.createCommentVNode("",!0),t.$slots.watermark?(e.openBlock(),e.createElementBlock("div",at,[e.renderSlot(t.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(te)||e.unref(oe)})),void 0,!0)])):e.createCommentVNode("",!0),c.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ue.default,{key:7,config:{type:"molecule",style:{backgroundColor:o.value.style.chart.backgroundColor,molecule:{color:"#CCCCCC"}}}},null,8,["config"])),t.$slots.source?(e.openBlock(),e.createElementBlock("div",st,[e.renderSlot(t.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),e.createVNode(ze._sfc_main,{show:b.value.showTooltip&&B.value,backgroundColor:o.value.style.chart.tooltip.backgroundColor,color:o.value.style.chart.tooltip.color,borderRadius:o.value.style.chart.tooltip.borderRadius,borderColor:o.value.style.chart.tooltip.borderColor,borderWidth:o.value.style.chart.tooltip.borderWidth,fontSize:o.value.style.chart.tooltip.fontSize,backgroundOpacity:o.value.style.chart.tooltip.backgroundOpacity,position:o.value.style.chart.tooltip.position,offsetY:o.value.style.chart.tooltip.offsetY,parent:x.value,content:v.value,isFullscreen:E.value,isCustom:o.value.style.chart.tooltip.customFormat&&typeof o.value.style.chart.tooltip.customFormat=="function"},{"tooltip-before":e.withCtx(()=>[e.renderSlot(t.$slots,"tooltip-before",e.normalizeProps(e.guardReactiveProps({...G.value})),void 0,!0)]),"tooltip-after":e.withCtx(()=>[e.renderSlot(t.$slots,"tooltip-after",e.normalizeProps(e.guardReactiveProps({...G.value})),void 0,!0)]),_:3},8,["show","backgroundColor","color","borderRadius","borderColor","borderWidth","fontSize","backgroundOpacity","position","offsetY","parent","content","isFullscreen","isCustom"]),c.value?(e.openBlock(),e.createBlock(Me.default,{key:9,hideDetails:"",config:{open:b.value.showTable,maxHeight:1e4,body:{backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color},head:{backgroundColor:o.value.style.chart.backgroundColor,color:o.value.style.chart.color}}},{content:e.withCtx(()=>[(e.openBlock(),e.createBlock(Oe.DataTable,{key:`table_${K.value}`,colNames:N.value.colNames,head:N.value.head,body:N.value.body,config:N.value.config,title:`${o.value.style.chart.title.text}${o.value.style.chart.title.subtitle.text?` : ${o.value.style.chart.title.subtitle.text}`:""}`,onClose:l[6]||(l[6]=n=>b.value.showTable=!1)},{th:e.withCtx(({th:n})=>[e.createElementVNode("div",{innerHTML:n,style:{display:"flex","align-items":"center"}},null,8,it)]),td:e.withCtx(({td:n})=>[e.createTextVNode(e.toDisplayString(n.name||n),1)]),_:1},8,["colNames","head","body","config","title"]))]),_:1},8,["config"])):e.createCommentVNode("",!0)],46,Qe))}},ct=He._export_sfc(ut,[["__scopeId","data-v-84f8e29e"]]);exports.default=ct;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-ChOY3hT9.cjs"),te=require("./Title-CoNtoGH9.cjs"),F=require("./usePrinter-c3c7_uAW.cjs"),oe=require("./Legend-CqilK5CI.cjs"),f=require("./BaseIcon-rzIvDo2Q.cjs"),le=require("./DataTable-CCJGHIVo.cjs"),ae=require("./vue-ui-skeleton-DlnPFtb4.cjs"),re=require("./vue-ui-accordion-CZ8AlriN.cjs"),q=require("./useNestedProp-CA8PjFJH.cjs"),ne=require("./PackageVersion-eZ5Dmuid.cjs"),se=require("./PenAndPaper-D_w2N2qM.cjs"),ue=require("./useUserOptionState-BgepsfED.cjs"),ie=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ce=["id"],de={key:2,style:"width:100%;background:transparent"},ve=["xmlns","viewBox"],ye=["width","height"],me=["id"],he=["stop-color"],pe=["stop-color"],fe=["x1","y1","x2","y2","stroke","stroke-width"],ke=["d","stroke","stroke-width"],ge=["stroke"],be=["fill"],Ce=["stroke"],Ne=["fill"],xe=["stroke"],we=["fill"],Ve=["stroke"],_e=["fill"],Be=["stroke"],Pe=["fill"],$e=["d","stroke","stroke-width","fill"],Me=["x1","y1","stroke"],Ee=["cx","cy","fill","stroke"],Oe=["fill","stroke"],Se=["y","fill","font-weight"],Ae=["y","fill"],Te={key:5,class:"vue-data-ui-watermark"},Le=["onClick"],Ie={style:{"font-weight":"bold"}},Fe={key:8,ref:"source",dir:"auto"},qe=["innerHTML"],ze={__name:"vue-ui-mood-radar",props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},setup(z,{expose:D}){const s=z,{vue_ui_mood_radar:j}=r.useConfig(),m=e.computed(()=>!!s.dataset&&Object.keys(s.dataset).length);e.onMounted(()=>{_()});function _(){r.objectIsEmpty(s.dataset)&&r.error({componentName:"VueUiMoodRadar",type:"dataset"})}const h=e.ref(r.createUid()),N=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:()=>M(),set:l=>l}),{userOptionsVisible:x,setUserOptionsVisibility:P,keepUserOptionState:$}=ue.useUserOptionState({config:t.value});function M(){const l=q.useNestedProp({userConfig:s.config,defaultConfig:j});return l.theme?{...q.useNestedProp({userConfig:r.themes.vue_ui_mood_radar[l.theme]||s.config,defaultConfig:l})}:l}e.watch(()=>s.config,l=>{t.value=M(),x.value=!t.value.showOnChartHover,_(),G.value+=1,H.value+=1,B.value+=1},{deep:!0});const{isPrinting:E,isImaging:O,generatePdf:S,generateImage:A}=F.usePrinter({elementId:h.value,fileName:t.value.style.chart.title.text||"vue-ui-mood-radar"}),R=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),k=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 X({centerX:l,centerY:a,apexX:o,apexY:u,proportion:d,key:p,value:ee}){return{x:l+(o-l)*d,y:a+(u-a)*d,key:p,value:ee}}const K=e.computed(()=>Math.max(...Object.values(s.dataset).map(l=>isNaN(l)?0:l))),y=e.computed(()=>Object.values(s.dataset).reduce((l,a)=>(isNaN(l)?0:l)+(isNaN(a)?0:a),0)),c=e.computed(()=>Object.keys(s.dataset).map((l,a)=>{const o=typeof s.dataset[l]!="number"||isNaN(s.dataset[l])?0:s.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)),T=e.computed(()=>m.value?(["1","2","3","4","5"].forEach(l=>{[null,void 0].includes(s.dataset[l])&&r.error({componentName:"VueUiMoodRadar",type:"datasetAttribute",property:l})}),w.value.coordinates.map((l,a)=>{const o=X({centerX:i.value.width/2,centerY:i.value.height/2,apexX:l.x,apexY:l.y,proportion:c.value[a].value/K.value,key:c.value[a].key,value:c.value[a].value});return{...l,plots:o,key:c.value[a].key}})):[]),Y=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 J(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 L(){e.nextTick(()=>{const l=v.value.head.map((u,d)=>[[u.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 g=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,p)=>[{color:d.color,name:d.name},v.value.body[p].toFixed(t.value.table.td.roundingValue),isNaN(v.value.body[p]/y.value)?"-":(v.value.body[p]/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},u=[t.value.table.columnNames.series,t.value.table.columnNames.value,t.value.table.columnNames.percentage];return{head:l,body:a,config:o,colNames:u}});function Q(){return c.value}function I(){k.value.showTable=!k.value.showTable}const b=e.ref(!1);function Z(l){b.value=l}const C=e.ref(!1);function V(){C.value=!C.value}return D({getData:Q,generatePdf:S,generateCsv:L,generateImage:A,toggleTable:I,toggleAnnotator:V}),(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`vue-ui-mood-radar ${b.value?"vue-data-ui-wrapper-fullscreen":""} ${t.value.useCssAnimation?"":"vue-ui-dna"}`),ref_key:"moodRadarChart",ref:N,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(se.PenAndPaper,{key:0,parent:N.value,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:C.value,onClose:V},null,8,["parent","backgroundColor","color","active"])):e.createCommentVNode("",!0),R.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",de,[e.createVNode(te._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(x))?(e.openBlock(),e.createBlock(F.UserOptions,{key:3,ref_key:"details",ref:U,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(E),isImaging:e.unref(O),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,titles:{...t.value.userOptions.buttonTitles},chartElement:N.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:C.value,onToggleFullscreen:Z,onGeneratePdf:e.unref(S),onGenerateCsv:L,onGenerateImage:e.unref(A),onToggleTable:I,onToggleAnnotator:V,style:e.normalizeStyle({visibility:e.unref($)?e.unref(x)?"visible":"hidden":"visible"})},e.createSlots({_:2},[l.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionPdf",{},void 0,!0)]),key:"0"}:void 0,l.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionCsv",{},void 0,!0)]),key:"1"}:void 0,l.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionImg",{},void 0,!0)]),key:"2"}:void 0,l.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionTable",{},void 0,!0)]),key:"3"}:void 0,l.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:o,isFullscreen:u})=>[e.renderSlot(l.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:o,isFullscreen:u})),void 0,!0)]),key:"4"}:void 0,l.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:o,isAnnotator:u})=>[e.renderSlot(l.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:o,isAnnotator:u})),void 0,!0)]),key:"5"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasPdf","hasXls","hasImg","hasTable","hasFullscreen","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createElementBlock("svg",{key:4,xmlns:e.unref(r.XMLNS),viewBox:`0 0 ${i.value.width} ${i.value.height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":b.value,"vue-data-ui-fulscreen--off":!b.value}),style:e.normalizeStyle(`overflow:visible;background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(ne._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,ye)):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,he),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,pe)],8,me)]),(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,fe))),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,ke),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,ge),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,be),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,Ce),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,Ne),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,xe),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,we),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,Ve),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,_e),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,Be),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,Pe),e.createElementVNode("path",{d:e.unref(r.makePath)(T.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,$e),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(T.value.map(o=>o.plots),(o,u)=>(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,Me),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,Ee),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,Oe),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:u})),9,Se),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,Ae)],4))),256)),e.renderSlot(l.$slots,"svg",{svg:i.value},void 0,!0)],14,ve)):e.createCommentVNode("",!0),l.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Te,[e.renderSlot(l.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(E)||e.unref(O)})),void 0,!0)])):e.createCommentVNode("",!0),m.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ae.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(oe.Legend,{legendSet:c.value,config:Y.value,key:`legend_${B.value}`,style:{display:"flex","row-gap":"6px"}},{item:e.withCtx(({legend:o,index:u})=>[e.createElementVNode("div",{onClick:()=>J(o.key),style:{display:"flex","flex-direction":"row",gap:"3px","align-items":"center",margin:"3px 0"}},[o.key==1?(e.openBlock(),e.createBlock(f.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(f.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(f.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(f.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(f.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",Ie,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:u})),1),e.createTextVNode(" ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.proportion*100,s:"%",r:t.value.style.chart.legend.roundingPercentage}))+") ",1)],8,Le)]),_: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",Fe,[e.renderSlot(l.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createBlock(re.default,{key:9,hideDetails:"",config:{open:k.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(le.DataTable,{colNames:g.value.colNames,head:g.value.head,body:g.value.body,config:g.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=>k.value.showTable=!1)},{th:e.withCtx(({th:o})=>[e.createElementVNode("div",{innerHTML:o,style:{display:"flex","align-items":"center"}},null,8,qe)]),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,ce))}},De=ie._export_sfc(ze,[["__scopeId","data-v-9ac93b41"]]);exports.default=De;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-CKgv8c-A.cjs"),te=require("./Title-BnRtxxP4.cjs"),F=require("./usePrinter-Gkda9yEJ.cjs"),oe=require("./Legend-BMTBtkoQ.cjs"),f=require("./BaseIcon-CyTdOpDr.cjs"),le=require("./DataTable-CwzQ-L0W.cjs"),ae=require("./vue-ui-skeleton-73YO0ovP.cjs"),re=require("./vue-ui-accordion-xV0it5je.cjs"),q=require("./useNestedProp-0Mn5Z6Ae.cjs"),ne=require("./PackageVersion-D_9QTWVm.cjs"),se=require("./PenAndPaper-CfGYucSm.cjs"),ue=require("./useUserOptionState-BgepsfED.cjs"),ie=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),ce=["id"],de={key:2,style:"width:100%;background:transparent"},ve=["xmlns","viewBox"],ye=["width","height"],me=["id"],he=["stop-color"],pe=["stop-color"],fe=["x1","y1","x2","y2","stroke","stroke-width"],ke=["d","stroke","stroke-width"],ge=["stroke"],be=["fill"],Ce=["stroke"],Ne=["fill"],xe=["stroke"],we=["fill"],Ve=["stroke"],_e=["fill"],Be=["stroke"],Pe=["fill"],$e=["d","stroke","stroke-width","fill"],Me=["x1","y1","stroke"],Ee=["cx","cy","fill","stroke"],Oe=["fill","stroke"],Se=["y","fill","font-weight"],Ae=["y","fill"],Te={key:5,class:"vue-data-ui-watermark"},Le=["onClick"],Ie={style:{"font-weight":"bold"}},Fe={key:8,ref:"source",dir:"auto"},qe=["innerHTML"],ze={__name:"vue-ui-mood-radar",props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},setup(z,{expose:D}){const s=z,{vue_ui_mood_radar:j}=r.useConfig(),m=e.computed(()=>!!s.dataset&&Object.keys(s.dataset).length);e.onMounted(()=>{_()});function _(){r.objectIsEmpty(s.dataset)&&r.error({componentName:"VueUiMoodRadar",type:"dataset"})}const h=e.ref(r.createUid()),N=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:()=>M(),set:l=>l}),{userOptionsVisible:x,setUserOptionsVisibility:P,keepUserOptionState:$}=ue.useUserOptionState({config:t.value});function M(){const l=q.useNestedProp({userConfig:s.config,defaultConfig:j});return l.theme?{...q.useNestedProp({userConfig:r.themes.vue_ui_mood_radar[l.theme]||s.config,defaultConfig:l})}:l}e.watch(()=>s.config,l=>{t.value=M(),x.value=!t.value.showOnChartHover,_(),G.value+=1,H.value+=1,B.value+=1},{deep:!0});const{isPrinting:E,isImaging:O,generatePdf:S,generateImage:A}=F.usePrinter({elementId:h.value,fileName:t.value.style.chart.title.text||"vue-ui-mood-radar"}),R=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),k=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 X({centerX:l,centerY:a,apexX:o,apexY:u,proportion:d,key:p,value:ee}){return{x:l+(o-l)*d,y:a+(u-a)*d,key:p,value:ee}}const K=e.computed(()=>Math.max(...Object.values(s.dataset).map(l=>isNaN(l)?0:l))),y=e.computed(()=>Object.values(s.dataset).reduce((l,a)=>(isNaN(l)?0:l)+(isNaN(a)?0:a),0)),c=e.computed(()=>Object.keys(s.dataset).map((l,a)=>{const o=typeof s.dataset[l]!="number"||isNaN(s.dataset[l])?0:s.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)),T=e.computed(()=>m.value?(["1","2","3","4","5"].forEach(l=>{[null,void 0].includes(s.dataset[l])&&r.error({componentName:"VueUiMoodRadar",type:"datasetAttribute",property:l})}),w.value.coordinates.map((l,a)=>{const o=X({centerX:i.value.width/2,centerY:i.value.height/2,apexX:l.x,apexY:l.y,proportion:c.value[a].value/K.value,key:c.value[a].key,value:c.value[a].value});return{...l,plots:o,key:c.value[a].key}})):[]),Y=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 J(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 L(){e.nextTick(()=>{const l=v.value.head.map((u,d)=>[[u.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 g=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,p)=>[{color:d.color,name:d.name},v.value.body[p].toFixed(t.value.table.td.roundingValue),isNaN(v.value.body[p]/y.value)?"-":(v.value.body[p]/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},u=[t.value.table.columnNames.series,t.value.table.columnNames.value,t.value.table.columnNames.percentage];return{head:l,body:a,config:o,colNames:u}});function Q(){return c.value}function I(){k.value.showTable=!k.value.showTable}const b=e.ref(!1);function Z(l){b.value=l}const C=e.ref(!1);function V(){C.value=!C.value}return D({getData:Q,generatePdf:S,generateCsv:L,generateImage:A,toggleTable:I,toggleAnnotator:V}),(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(`vue-ui-mood-radar ${b.value?"vue-data-ui-wrapper-fullscreen":""} ${t.value.useCssAnimation?"":"vue-ui-dna"}`),ref_key:"moodRadarChart",ref:N,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(se.PenAndPaper,{key:0,parent:N.value,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,active:C.value,onClose:V},null,8,["parent","backgroundColor","color","active"])):e.createCommentVNode("",!0),R.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",de,[e.createVNode(te._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(x))?(e.openBlock(),e.createBlock(F.UserOptions,{key:3,ref_key:"details",ref:U,backgroundColor:t.value.style.chart.backgroundColor,color:t.value.style.chart.color,isPrinting:e.unref(E),isImaging:e.unref(O),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,titles:{...t.value.userOptions.buttonTitles},chartElement:N.value,position:t.value.userOptions.position,hasAnnotator:t.value.userOptions.buttons.annotator,isAnnotation:C.value,onToggleFullscreen:Z,onGeneratePdf:e.unref(S),onGenerateCsv:L,onGenerateImage:e.unref(A),onToggleTable:I,onToggleAnnotator:V,style:e.normalizeStyle({visibility:e.unref($)?e.unref(x)?"visible":"hidden":"visible"})},e.createSlots({_:2},[l.$slots.optionPdf?{name:"optionPdf",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionPdf",{},void 0,!0)]),key:"0"}:void 0,l.$slots.optionCsv?{name:"optionCsv",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionCsv",{},void 0,!0)]),key:"1"}:void 0,l.$slots.optionImg?{name:"optionImg",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionImg",{},void 0,!0)]),key:"2"}:void 0,l.$slots.optionTable?{name:"optionTable",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"optionTable",{},void 0,!0)]),key:"3"}:void 0,l.$slots.optionFullscreen?{name:"optionFullscreen",fn:e.withCtx(({toggleFullscreen:o,isFullscreen:u})=>[e.renderSlot(l.$slots,"optionFullscreen",e.normalizeProps(e.guardReactiveProps({toggleFullscreen:o,isFullscreen:u})),void 0,!0)]),key:"4"}:void 0,l.$slots.optionAnnotator?{name:"optionAnnotator",fn:e.withCtx(({toggleAnnotator:o,isAnnotator:u})=>[e.renderSlot(l.$slots,"optionAnnotator",e.normalizeProps(e.guardReactiveProps({toggleAnnotator:o,isAnnotator:u})),void 0,!0)]),key:"5"}:void 0]),1032,["backgroundColor","color","isPrinting","isImaging","uid","hasPdf","hasXls","hasImg","hasTable","hasFullscreen","titles","chartElement","position","hasAnnotator","isAnnotation","onGeneratePdf","onGenerateImage","style"])):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createElementBlock("svg",{key:4,xmlns:e.unref(r.XMLNS),viewBox:`0 0 ${i.value.width} ${i.value.height}`,class:e.normalizeClass({"vue-data-ui-fullscreen--on":b.value,"vue-data-ui-fulscreen--off":!b.value}),style:e.normalizeStyle(`overflow:visible;background:transparent;color:${t.value.style.chart.color}`)},[e.createVNode(ne._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,ye)):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,he),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,pe)],8,me)]),(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,fe))),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,ke),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,ge),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,be),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,Ce),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,Ne),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,xe),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,we),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,Ve),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,_e),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,Be),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,Pe),e.createElementVNode("path",{d:e.unref(r.makePath)(T.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,$e),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(T.value.map(o=>o.plots),(o,u)=>(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,Me),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,Ee),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,Oe),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:u})),9,Se),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,Ae)],4))),256)),e.renderSlot(l.$slots,"svg",{svg:i.value},void 0,!0)],14,ve)):e.createCommentVNode("",!0),l.$slots.watermark?(e.openBlock(),e.createElementBlock("div",Te,[e.renderSlot(l.$slots,"watermark",e.normalizeProps(e.guardReactiveProps({isPrinting:e.unref(E)||e.unref(O)})),void 0,!0)])):e.createCommentVNode("",!0),m.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ae.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(oe.Legend,{legendSet:c.value,config:Y.value,key:`legend_${B.value}`,style:{display:"flex","row-gap":"6px"}},{item:e.withCtx(({legend:o,index:u})=>[e.createElementVNode("div",{onClick:()=>J(o.key),style:{display:"flex","flex-direction":"row",gap:"3px","align-items":"center",margin:"3px 0"}},[o.key==1?(e.openBlock(),e.createBlock(f.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(f.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(f.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(f.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(f.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",Ie,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:u})),1),e.createTextVNode(" ("+e.toDisplayString(e.unref(r.dataLabel)({v:o.proportion*100,s:"%",r:t.value.style.chart.legend.roundingPercentage}))+") ",1)],8,Le)]),_: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",Fe,[e.renderSlot(l.$slots,"source",{},void 0,!0)],512)):e.createCommentVNode("",!0),m.value?(e.openBlock(),e.createBlock(re.default,{key:9,hideDetails:"",config:{open:k.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(le.DataTable,{colNames:g.value.colNames,head:g.value.head,body:g.value.body,config:g.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=>k.value.showTable=!1)},{th:e.withCtx(({th:o})=>[e.createElementVNode("div",{innerHTML:o,style:{display:"flex","align-items":"center"}},null,8,qe)]),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,ce))}},De=ie._export_sfc(ze,[["__scopeId","data-v-9ac93b41"]]);exports.default=De;
@@ -1,15 +1,15 @@
1
1
  import { computed as c, onMounted as Ce, ref as v, watch as we, openBlock as r, createElementBlock as y, normalizeClass as Z, normalizeStyle as L, unref as a, createBlock as p, createCommentVNode as u, createVNode as U, createSlots as xe, withCtx as m, renderSlot as h, normalizeProps as B, guardReactiveProps as D, createElementVNode as s, Fragment as ee, renderList as te, toDisplayString as M, createTextVNode as oe, nextTick as _e } from "vue";
2
- import { u as $e, o as Me, e as le, c as Pe, t as Ne, O as Ae, X as Oe, s as C, w as Te, P as Le, i as ae, f as I, q as Ie, r as Fe } from "./index-Z_vzxZTo.js";
3
- import { _ as Se } from "./Title-obqvTiXP.js";
4
- import { u as Ve, U as je } from "./usePrinter-Ck0oiMlt.js";
5
- import { L as Ue } from "./Legend-WOejx9sp.js";
6
- import P from "./BaseIcon-CrqNvGTs.js";
7
- import { D as Be } from "./DataTable-BBh7_ttv.js";
8
- import De from "./vue-ui-skeleton-BMRe3SzB.js";
9
- import We from "./vue-ui-accordion-CV2-8b1O.js";
10
- import { u as se } from "./useNestedProp-Buhi5uyL.js";
11
- import { _ as ze } from "./PackageVersion-dR8EUy_P.js";
12
- import { P as Ee } from "./PenAndPaper-CrXlqi9I.js";
2
+ import { u as $e, o as Me, e as le, c as Pe, t as Ne, O as Ae, X as Oe, s as C, w as Te, P as Le, i as ae, f as I, q as Ie, r as Fe } from "./index-BVNcFEqn.js";
3
+ import { _ as Se } from "./Title-DyUTj8GI.js";
4
+ import { u as Ve, U as je } from "./usePrinter-Bcfs_I6G.js";
5
+ import { L as Ue } from "./Legend-DGUxLqhs.js";
6
+ import P from "./BaseIcon-DpaRUsHC.js";
7
+ import { D as Be } from "./DataTable-DX_jYNWG.js";
8
+ import De from "./vue-ui-skeleton-Bgf16k10.js";
9
+ import We from "./vue-ui-accordion-GNblUy42.js";
10
+ import { u as se } from "./useNestedProp-D79dWdel.js";
11
+ import { _ as ze } from "./PackageVersion-B9_Ed72C.js";
12
+ import { P as Ee } from "./PenAndPaper-CzjoEhsO.js";
13
13
  import { u as Ge } from "./useUserOptionState-BIvW1Kz7.js";
14
14
  import { _ as He } from "./_plugin-vue_export-helper-CHgC5LLL.js";
15
15
  const Re = ["id"], Xe = {
@@ -1,16 +1,16 @@
1
1
  import { computed as g, ref as i, watch as Ue, onMounted as at, onBeforeUnmount as ot, openBlock as u, createElementBlock as n, normalizeClass as P, normalizeStyle as Q, unref as r, createBlock as D, createCommentVNode as h, createSlots as st, withCtx as m, renderSlot as k, normalizeProps as E, guardReactiveProps as R, createVNode as Be, createElementVNode as p, Fragment as _, renderList as T, toDisplayString as N, createTextVNode as Z, nextTick as ut, pushScopeId as nt, popScopeId as rt } from "vue";
2
- import { u as it, c as dt, t as ct, a as vt, p as j, o as ht, e as M, b as ft, J as Ee, d as yt, m as Re, f as C, X as pt, s as Ge, L as bt, k as U, n as de, i as G, x as Ye, y as gt, q as mt, r as kt } from "./index-Z_vzxZTo.js";
2
+ import { u as it, c as dt, t as ct, a as vt, p as j, o as ht, e as M, b as ft, J as Ee, d as yt, m as Re, f as C, X as pt, s as Ge, L as bt, k as U, n as de, i as G, x as Ye, y as gt, q as mt, r as kt } from "./index-BVNcFEqn.js";
3
3
  import { t as wt, u as $t } from "./useResponsive-CoxXLe23.js";
4
- import { _ as Lt } from "./Title-obqvTiXP.js";
5
- import { u as _t, U as Ct } from "./usePrinter-Ck0oiMlt.js";
6
- import { D as xt } from "./DataTable-BBh7_ttv.js";
7
- import { _ as Ft } from "./Tooltip-BK-ACGDE.js";
8
- import { L as Tt } from "./Legend-WOejx9sp.js";
9
- import St from "./vue-ui-skeleton-BMRe3SzB.js";
10
- import Nt from "./vue-ui-accordion-CV2-8b1O.js";
11
- import { u as Xe } from "./useNestedProp-Buhi5uyL.js";
12
- import { _ as Ot } from "./PackageVersion-dR8EUy_P.js";
13
- import { P as It } from "./PenAndPaper-CrXlqi9I.js";
4
+ import { _ as Lt } from "./Title-DyUTj8GI.js";
5
+ import { u as _t, U as Ct } from "./usePrinter-Bcfs_I6G.js";
6
+ import { D as xt } from "./DataTable-DX_jYNWG.js";
7
+ import { _ as Ft } from "./Tooltip-B-0uEV3l.js";
8
+ import { L as Tt } from "./Legend-DGUxLqhs.js";
9
+ import St from "./vue-ui-skeleton-Bgf16k10.js";
10
+ import Nt from "./vue-ui-accordion-GNblUy42.js";
11
+ import { u as Xe } from "./useNestedProp-D79dWdel.js";
12
+ import { _ as Ot } from "./PackageVersion-B9_Ed72C.js";
13
+ import { P as It } from "./PenAndPaper-CzjoEhsO.js";
14
14
  import { u as At } from "./useUserOptionState-BIvW1Kz7.js";
15
15
  import { _ as Pt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
16
  const ce = (B) => (nt("data-v-7b38ae51"), B = B(), rt(), B), Dt = ["id"], zt = ["xmlns", "viewBox"], Vt = ["width", "height"], Mt = ["id"], Ut = /* @__PURE__ */ ce(() => /* @__PURE__ */ p("stop", {
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-ChOY3hT9.cjs"),me=require("./useResponsive-BJ7DTGpm.cjs"),Ee=require("./Title-CoNtoGH9.cjs"),be=require("./usePrinter-c3c7_uAW.cjs"),Fe=require("./DataTable-CCJGHIVo.cjs"),Te=require("./Tooltip-Dz4wVJkz.cjs"),Oe=require("./Legend-CqilK5CI.cjs"),Pe=require("./vue-ui-skeleton-DlnPFtb4.cjs"),ze=require("./vue-ui-accordion-CZ8AlriN.cjs"),ge=require("./useNestedProp-CA8PjFJH.cjs"),De=require("./PackageVersion-eZ5Dmuid.cjs"),Ie=require("./PenAndPaper-D_w2N2qM.cjs"),Ae=require("./useUserOptionState-BgepsfED.cjs"),Me=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),q=x=>(e.pushScopeId("data-v-7b38ae51"),x=x(),e.popScopeId(),x),Ue=["id"],Re=["xmlns","viewBox"],qe=["width","height"],Ye=["id"],Xe=q(()=>e.createElementVNode("stop",{offset:"0%","stop-color":"#FFFFFF","stop-opacity":"0"},null,-1)),Ge=["offset","stop-color"],He=["offset","stop-opacity"],We=q(()=>e.createElementVNode("stop",{offset:"100%","stop-color":"#FFFFFF","stop-opacity":"0"},null,-1)),Je=["id"],Ke=["id"],Qe=q(()=>e.createElementVNode("feColorMatrix",{type:"saturate",values:"0"},null,-1)),Ze=["id"],je=["flood-color"],et=["d","fill","stroke","stroke-width","filter"],tt={key:1},lt=["d","fill"],at={key:2},ot=["x","y","font-size","font-weight","fill"],nt={key:3},rt=["filter"],st=["text-anchor","x","y","fill","font-size","font-weight"],ut=["text-anchor","x","y","fill","font-size","font-weight"],it=["text-anchor","x","y","fill","font-size","font-weight"],ct=["d","fill","onMouseenter","onClick"],dt={key:5,class:"vue-data-ui-watermark"},vt={key:0,class:"vue-ui-nested-donuts-legend-title"},ft=["onClick"],pt=["innerHTML"],ht={__name:"vue-ui-nested-donuts",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(x,{expose:ke,emit:Y}){const k=x,{vue_ui_nested_donuts:Ce}=r.useConfig(),$=e.computed(()=>!!k.dataset&&k.dataset.length),p=e.ref(r.createUid()),T=e.ref(!1),O=e.ref(""),we=e.ref(null),X=e.ref(0),L=e.ref(null),G=e.ref(null),P=e.ref(null),H=e.ref(null),W=e.ref(null),J=e.ref(0),K=e.ref(0),Q=e.ref(0),B=e.ref(!1);function Le(l){B.value=l,X.value+=1}const t=e.computed({get:()=>ee(),set:l=>l}),{userOptionsVisible:z,setUserOptionsVisibility:Z,keepUserOptionState:j}=Ae.useUserOptionState({config:t.value});function ee(){const l=ge.useNestedProp({userConfig:k.config,defaultConfig:Ce});return l.theme?{...ge.useNestedProp({userConfig:r.themes.vue_ui_nested_donuts[l.theme]||k.config,defaultConfig:l}),customPalette:r.themePalettes[l.theme]||r.palette}:l}e.watch(()=>k.config,l=>{t.value=ee(),z.value=!t.value.showOnChartHover,te(),J.value+=1,K.value+=1,Q.value+=1},{deep:!0});const N=e.ref(null);e.onMounted(()=>{te()});function te(){if(r.objectIsEmpty(k.dataset)&&r.error({componentName:"VueUiNestedDonuts",type:"dataset"}),t.value.responsive){const l=me.throttle(()=>{const{width:s,height:o}=me.useResponsive({chart:L.value,title:t.value.style.chart.title.text?G.value:null,legend:t.value.style.chart.legend.show?P.value:null,source:H.value,noTitle:W.value});c.value.width=s,c.value.height=o});N.value=new ResizeObserver(l),N.value.observe(L.value.parentNode)}}e.onBeforeUnmount(()=>{N.value&&N.value.disconnect()});const{isPrinting:le,isImaging:ae,generatePdf:oe,generateImage:ne}=be.usePrinter({elementId:`nested_donuts_${p.value}`,fileName:t.value.style.chart.title.text||"vue-ui-nested-donuts"}),Be=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),xe=e.computed(()=>r.convertCustomPalette(t.value.customPalette)),h=e.ref({dataLabels:{show:t.value.style.chart.layout.labels.dataLabels.show},showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),c=e.ref({height:512,width:512});function $e({datapoint:l,index:s}){Y("selectDatapoint",{datapoint:l,index:s})}const v=e.ref([]),m=e.computed(()=>(k.dataset.forEach((l,s)=>{[null,void 0].includes(l.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:s}),[null,void 0].includes(l.series)?r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"series",index:s}):l.series.length===0?r.error({componentName:"VueUiNestedDonuts",type:"datasetAttributeEmpty",property:`series at index ${s}`}):l.series.forEach((o,n)=>{[null,void 0].includes(o.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:n,key:"serie"}),[null,void 0].includes(o.values)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"values",index:n,key:"serie"})})}),k.dataset.map((l,s)=>({...l,total:l.series.filter(o=>!v.value.includes(o.id)).map(o=>r.sanitizeArray(o.values).reduce((n,a)=>n+a,0)).reduce((o,n)=>o+n,0),datasetIndex:s,id:`${p.value}_${s}`,series:l.series.map((o,n)=>({name:o.name,arcOf:l.name,arcOfId:`${p.value}_${s}`,id:`${p.value}_${s}_${n}`,seriesIndex:n,datasetIndex:s,color:r.convertColorToHex(o.color)||xe.value[n]||r.palette[n]||r.palette[n%r.palette.length],value:r.sanitizeArray(o.values).reduce((a,u)=>a+u,0),absoluteValues:o.values||[]}))})))),b=e.computed(()=>Math.min(c.value.height,c.value.width)*(t.value.style.chart.layout.donut.strokeWidth/512)),re=e.computed(()=>[...m.value].map((l,s)=>{const o=l.series.filter(n=>!v.value.includes(n.id)).map(n=>n.value).reduce((n,a)=>n+a,0);return{...l,total:o,series:l.series.filter(n=>!v.value.includes(n.id)).map(n=>({...n,proportion:n.value/o}))}}));function Ne(l,s,o){let n=0;for(let a=0;a<l.length;a+=1)o.includes(l[a])&&(n+=1);return n<s}const d=e.ref(re.value);e.watch(()=>re.value,l=>d.value=l);const se=e.ref(null),ue=e.ref(null);function D(l){Y("selectLegend",l);const s=m.value.flatMap(i=>i.series).find(i=>i.id===l.id),o=d.value.flatMap(i=>i.series).find(i=>i.id===l.id);let a=o?o.value:0;const u=m.value.find(i=>i.id===s.arcOfId).series.map(i=>i.id),f=Ne(u,u.length-1,v.value);if(v.value.includes(l.id)){let i=function(){a>s.value?(cancelAnimationFrame(se.value),d.value=d.value.map(y=>({...y,series:y.series.map(g=>g.id==l.id?{...g,value:s.value}:g)}))):(a+=s.value*.025,d.value=d.value.map(y=>({...y,series:y.series.map(g=>g.id===l.id?{...g,value:a}:g)})),se.value=requestAnimationFrame(i))};v.value=v.value.filter(y=>y!==l.id),i()}else if(f){let i=function(){a<.1?(cancelAnimationFrame(ue.value),v.value.push(l.id),d.value=d.value.map((y,g)=>({...y,series:y.series.map(w=>w.id===l.id?{...w,value:0}:w)}))):(a/=1.1,d.value=d.value.map((y,g)=>({...y,series:y.series.map(w=>w.id===l.id?{...w,value:a}:w)})),ue.value=requestAnimationFrame(i))};i()}}const I=e.computed(()=>b.value/m.value.length*t.value.style.chart.layout.donut.spacingRatio),ie=e.computed(()=>d.value.map((l,s)=>b.value-s*b.value/m.value.length)),_=e.computed(()=>d.value.map((l,s)=>{const o=s*b.value/m.value.length;return{...l,radius:b.value-o,donut:r.makeDonut({series:l.series},c.value.width/2,c.value.height/2,b.value-o,b.value-o,1.99999,2,1,360,105.25,I.value)}})),ce=e.computed(()=>[...m.value].map((l,s)=>{const o=s*b.value/m.value.length;return{sizeRatio:o,donut:r.makeDonut({series:[{value:1}]},c.value.width/2,c.value.height/2,b.value-o,b.value-o,1.99999,2,1,360,105.25,b.value/m.value.length*t.value.style.chart.layout.donut.spacingRatio)[0]}})),de=e.ref(null),S=e.ref(null),V=e.ref(null),A=e.ref(null);function _e({datapoint:l,_relativeIndex:s,seriesIndex:o}){de.value=l.arcOfId,S.value=l.id,V.value=o,A.value={datapoint:l,seriesIndex:o,series:d.value,config:t.value};const n=t.value.style.chart.tooltip.customFormat;if(r.isFunction(n)&&r.functionReturnsString(()=>n({seriesIndex:o,datapoint:l,series:d.value,config:t.value})))O.value=n({seriesIndex:o,datapoint:l,series:d.value,config:t.value});else{let a="";if(t.value.style.chart.tooltip.showAllItemsAtIndex&&v.value.length===0){const u=d.value.map(f=>f.series.find(i=>i.seriesIndex===o));u.forEach((f,i)=>{if(!f)return"";a+=`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),r=require("./index-CKgv8c-A.cjs"),me=require("./useResponsive-BJ7DTGpm.cjs"),Ee=require("./Title-BnRtxxP4.cjs"),be=require("./usePrinter-Gkda9yEJ.cjs"),Fe=require("./DataTable-CwzQ-L0W.cjs"),Te=require("./Tooltip-CUoQNXZK.cjs"),Oe=require("./Legend-BMTBtkoQ.cjs"),Pe=require("./vue-ui-skeleton-73YO0ovP.cjs"),ze=require("./vue-ui-accordion-xV0it5je.cjs"),ge=require("./useNestedProp-0Mn5Z6Ae.cjs"),De=require("./PackageVersion-D_9QTWVm.cjs"),Ie=require("./PenAndPaper-CfGYucSm.cjs"),Ae=require("./useUserOptionState-BgepsfED.cjs"),Me=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),q=x=>(e.pushScopeId("data-v-7b38ae51"),x=x(),e.popScopeId(),x),Ue=["id"],Re=["xmlns","viewBox"],qe=["width","height"],Ye=["id"],Xe=q(()=>e.createElementVNode("stop",{offset:"0%","stop-color":"#FFFFFF","stop-opacity":"0"},null,-1)),Ge=["offset","stop-color"],He=["offset","stop-opacity"],We=q(()=>e.createElementVNode("stop",{offset:"100%","stop-color":"#FFFFFF","stop-opacity":"0"},null,-1)),Je=["id"],Ke=["id"],Qe=q(()=>e.createElementVNode("feColorMatrix",{type:"saturate",values:"0"},null,-1)),Ze=["id"],je=["flood-color"],et=["d","fill","stroke","stroke-width","filter"],tt={key:1},lt=["d","fill"],at={key:2},ot=["x","y","font-size","font-weight","fill"],nt={key:3},rt=["filter"],st=["text-anchor","x","y","fill","font-size","font-weight"],ut=["text-anchor","x","y","fill","font-size","font-weight"],it=["text-anchor","x","y","fill","font-size","font-weight"],ct=["d","fill","onMouseenter","onClick"],dt={key:5,class:"vue-data-ui-watermark"},vt={key:0,class:"vue-ui-nested-donuts-legend-title"},ft=["onClick"],pt=["innerHTML"],ht={__name:"vue-ui-nested-donuts",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(x,{expose:ke,emit:Y}){const k=x,{vue_ui_nested_donuts:Ce}=r.useConfig(),$=e.computed(()=>!!k.dataset&&k.dataset.length),p=e.ref(r.createUid()),T=e.ref(!1),O=e.ref(""),we=e.ref(null),X=e.ref(0),L=e.ref(null),G=e.ref(null),P=e.ref(null),H=e.ref(null),W=e.ref(null),J=e.ref(0),K=e.ref(0),Q=e.ref(0),B=e.ref(!1);function Le(l){B.value=l,X.value+=1}const t=e.computed({get:()=>ee(),set:l=>l}),{userOptionsVisible:z,setUserOptionsVisibility:Z,keepUserOptionState:j}=Ae.useUserOptionState({config:t.value});function ee(){const l=ge.useNestedProp({userConfig:k.config,defaultConfig:Ce});return l.theme?{...ge.useNestedProp({userConfig:r.themes.vue_ui_nested_donuts[l.theme]||k.config,defaultConfig:l}),customPalette:r.themePalettes[l.theme]||r.palette}:l}e.watch(()=>k.config,l=>{t.value=ee(),z.value=!t.value.showOnChartHover,te(),J.value+=1,K.value+=1,Q.value+=1},{deep:!0});const N=e.ref(null);e.onMounted(()=>{te()});function te(){if(r.objectIsEmpty(k.dataset)&&r.error({componentName:"VueUiNestedDonuts",type:"dataset"}),t.value.responsive){const l=me.throttle(()=>{const{width:s,height:o}=me.useResponsive({chart:L.value,title:t.value.style.chart.title.text?G.value:null,legend:t.value.style.chart.legend.show?P.value:null,source:H.value,noTitle:W.value});c.value.width=s,c.value.height=o});N.value=new ResizeObserver(l),N.value.observe(L.value.parentNode)}}e.onBeforeUnmount(()=>{N.value&&N.value.disconnect()});const{isPrinting:le,isImaging:ae,generatePdf:oe,generateImage:ne}=be.usePrinter({elementId:`nested_donuts_${p.value}`,fileName:t.value.style.chart.title.text||"vue-ui-nested-donuts"}),Be=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),xe=e.computed(()=>r.convertCustomPalette(t.value.customPalette)),h=e.ref({dataLabels:{show:t.value.style.chart.layout.labels.dataLabels.show},showTable:t.value.table.show,showTooltip:t.value.style.chart.tooltip.show}),c=e.ref({height:512,width:512});function $e({datapoint:l,index:s}){Y("selectDatapoint",{datapoint:l,index:s})}const v=e.ref([]),m=e.computed(()=>(k.dataset.forEach((l,s)=>{[null,void 0].includes(l.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:s}),[null,void 0].includes(l.series)?r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"series",index:s}):l.series.length===0?r.error({componentName:"VueUiNestedDonuts",type:"datasetAttributeEmpty",property:`series at index ${s}`}):l.series.forEach((o,n)=>{[null,void 0].includes(o.name)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"name",index:n,key:"serie"}),[null,void 0].includes(o.values)&&r.error({componentName:"VueUiNestedDonuts",type:"datasetSerieAttribute",property:"values",index:n,key:"serie"})})}),k.dataset.map((l,s)=>({...l,total:l.series.filter(o=>!v.value.includes(o.id)).map(o=>r.sanitizeArray(o.values).reduce((n,a)=>n+a,0)).reduce((o,n)=>o+n,0),datasetIndex:s,id:`${p.value}_${s}`,series:l.series.map((o,n)=>({name:o.name,arcOf:l.name,arcOfId:`${p.value}_${s}`,id:`${p.value}_${s}_${n}`,seriesIndex:n,datasetIndex:s,color:r.convertColorToHex(o.color)||xe.value[n]||r.palette[n]||r.palette[n%r.palette.length],value:r.sanitizeArray(o.values).reduce((a,u)=>a+u,0),absoluteValues:o.values||[]}))})))),b=e.computed(()=>Math.min(c.value.height,c.value.width)*(t.value.style.chart.layout.donut.strokeWidth/512)),re=e.computed(()=>[...m.value].map((l,s)=>{const o=l.series.filter(n=>!v.value.includes(n.id)).map(n=>n.value).reduce((n,a)=>n+a,0);return{...l,total:o,series:l.series.filter(n=>!v.value.includes(n.id)).map(n=>({...n,proportion:n.value/o}))}}));function Ne(l,s,o){let n=0;for(let a=0;a<l.length;a+=1)o.includes(l[a])&&(n+=1);return n<s}const d=e.ref(re.value);e.watch(()=>re.value,l=>d.value=l);const se=e.ref(null),ue=e.ref(null);function D(l){Y("selectLegend",l);const s=m.value.flatMap(i=>i.series).find(i=>i.id===l.id),o=d.value.flatMap(i=>i.series).find(i=>i.id===l.id);let a=o?o.value:0;const u=m.value.find(i=>i.id===s.arcOfId).series.map(i=>i.id),f=Ne(u,u.length-1,v.value);if(v.value.includes(l.id)){let i=function(){a>s.value?(cancelAnimationFrame(se.value),d.value=d.value.map(y=>({...y,series:y.series.map(g=>g.id==l.id?{...g,value:s.value}:g)}))):(a+=s.value*.025,d.value=d.value.map(y=>({...y,series:y.series.map(g=>g.id===l.id?{...g,value:a}:g)})),se.value=requestAnimationFrame(i))};v.value=v.value.filter(y=>y!==l.id),i()}else if(f){let i=function(){a<.1?(cancelAnimationFrame(ue.value),v.value.push(l.id),d.value=d.value.map((y,g)=>({...y,series:y.series.map(w=>w.id===l.id?{...w,value:0}:w)}))):(a/=1.1,d.value=d.value.map((y,g)=>({...y,series:y.series.map(w=>w.id===l.id?{...w,value:a}:w)})),ue.value=requestAnimationFrame(i))};i()}}const I=e.computed(()=>b.value/m.value.length*t.value.style.chart.layout.donut.spacingRatio),ie=e.computed(()=>d.value.map((l,s)=>b.value-s*b.value/m.value.length)),_=e.computed(()=>d.value.map((l,s)=>{const o=s*b.value/m.value.length;return{...l,radius:b.value-o,donut:r.makeDonut({series:l.series},c.value.width/2,c.value.height/2,b.value-o,b.value-o,1.99999,2,1,360,105.25,I.value)}})),ce=e.computed(()=>[...m.value].map((l,s)=>{const o=s*b.value/m.value.length;return{sizeRatio:o,donut:r.makeDonut({series:[{value:1}]},c.value.width/2,c.value.height/2,b.value-o,b.value-o,1.99999,2,1,360,105.25,b.value/m.value.length*t.value.style.chart.layout.donut.spacingRatio)[0]}})),de=e.ref(null),S=e.ref(null),V=e.ref(null),A=e.ref(null);function _e({datapoint:l,_relativeIndex:s,seriesIndex:o}){de.value=l.arcOfId,S.value=l.id,V.value=o,A.value={datapoint:l,seriesIndex:o,series:d.value,config:t.value};const n=t.value.style.chart.tooltip.customFormat;if(r.isFunction(n)&&r.functionReturnsString(()=>n({seriesIndex:o,datapoint:l,series:d.value,config:t.value})))O.value=n({seriesIndex:o,datapoint:l,series:d.value,config:t.value});else{let a="";if(t.value.style.chart.tooltip.showAllItemsAtIndex&&v.value.length===0){const u=d.value.map(f=>f.series.find(i=>i.seriesIndex===o));u.forEach((f,i)=>{if(!f)return"";a+=`
2
2
  <div style="display:flex; flex-direction: column; justify-content:flex-start; align-items:flex-start;padding:6px 0; ${i<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,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("./index-ChOY3hT9.cjs"),le=require("./useResponsive-BJ7DTGpm.cjs"),we=require("./Title-CoNtoGH9.cjs"),ae=require("./usePrinter-c3c7_uAW.cjs"),Ce=require("./Legend-CqilK5CI.cjs"),$e=require("./DataTable-CCJGHIVo.cjs"),xe=require("./Tooltip-Dz4wVJkz.cjs"),Be=require("./vue-ui-skeleton-DlnPFtb4.cjs"),Te=require("./vue-ui-accordion-CZ8AlriN.cjs"),oe=require("./useNestedProp-CA8PjFJH.cjs"),Se=require("./PackageVersion-eZ5Dmuid.cjs"),Pe=require("./PenAndPaper-D_w2N2qM.cjs"),Oe=require("./useUserOptionState-BgepsfED.cjs"),Ne=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),_e=["id"],Ve=["xmlns","viewBox"],Ee=["width","height"],Fe=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Ae=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Ie=["id"],Me=["stdDeviation"],Le=["filter"],Re=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset"],ze=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset","onMouseenter"],De={key:2},qe=["onMouseenter"],Ue=["x","y","font-size","fill","font-weight"],Ye={key:5,class:"vue-data-ui-watermark"},Xe=["onClick"],Ge=["innerHTML"],He={__name:"vue-ui-onion",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend"],setup(re,{expose:ne,emit:ue}){const p=re,{vue_ui_onion:se}=u.useConfig(),C=e.computed(()=>!!p.dataset&&p.dataset.length),m=e.ref(u.createUid()),ie=e.ref(null),A=e.ref(0),$=e.ref(!1),S=e.ref(""),d=e.ref([]),y=e.ref(null),I=e.ref(null),M=e.ref(null),L=e.ref(null),R=e.ref(null),z=e.ref(0),D=e.ref(0),q=e.ref(0),t=e.computed({get:()=>X(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:U,keepUserOptionState:Y}=Oe.useUserOptionState({config:t.value});function X(){const l=oe.useNestedProp({userConfig:p.config,defaultConfig:se});return l.theme?{...oe.useNestedProp({userConfig:u.themes.vue_ui_onion[l.theme]||p.config,defaultConfig:l}),customPalette:u.themePalettes[l.theme]||u.palette}:l}e.watch(()=>p.config,l=>{t.value=X(),P.value=!t.value.showOnChartHover,J(),z.value+=1,D.value+=1,q.value+=1},{deep:!0});const{isPrinting:G,isImaging:H,generatePdf:j,generateImage:W}=ae.usePrinter({elementId:`vue-ui-onion_${m.value}`,fileName:t.value.style.chart.title.text||"vue-ui-onion"}),ce=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),de=e.computed(()=>u.convertCustomPalette(t.value.customPalette)),f=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(()=>{J()});function J(){if(u.objectIsEmpty(p.dataset)&&u.error({componentName:"VueUiOnion",type:"dataset"}),t.value.responsive){const r=le.throttle(()=>{const{width:a,height:o}=le.useResponsive({chart:y.value,title:t.value.style.chart.title.text?I.value:null,legend:t.value.style.chart.legend.show?M.value:null,source:L.value,noTitle:R.value});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(y.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(()=>(p.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})}),p.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)||de.value[r]||u.palette[r],id:a,shape:"circle",opacity:d.value.includes(a)?.5:1,absoluteIndex:r,segregate:()=>K(a),isSegregated:d.value.includes(a)}}))),b=e.ref(i.value),ve=e.computed(()=>t.value.useStartAnimation),he=e.ref(null),pe=e.computed(()=>Math.max(...i.value.map(l=>l.percentage))),O=e.ref(!1);e.watch(()=>i.value,fe,{immediate:!0});function fe(){if(ve.value&&!O.value){let r=function(){l>=pe.value?(cancelAnimationFrame(he.value),b.value=i.value,O.value=!0):(b.value=i.value.map(a=>({...a,percentage:l<a.targetPercentage?l:a.targetPercentage})),l+=1,requestAnimationFrame(r),O.value=!0)};b.value=i.value.map(a=>({...a,percentage:0}));let l=0;r()}else b.value=i.value}const ge=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":""})),me=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}}),v=e.computed(()=>b.value.filter(l=>!d.value.includes(l.id)).map((l,r)=>{const a=(s.value.maxRadius-g.value.track)/me.value/2*(1+r),o=s.value.centerY-a;return{percentage:l.percentage||0,...l,labelY:o,radius:a,path:ye(a,l.percentage||0)}}));function ye(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:`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),u=require("./index-CKgv8c-A.cjs"),le=require("./useResponsive-BJ7DTGpm.cjs"),we=require("./Title-BnRtxxP4.cjs"),ae=require("./usePrinter-Gkda9yEJ.cjs"),Ce=require("./Legend-BMTBtkoQ.cjs"),$e=require("./DataTable-CwzQ-L0W.cjs"),xe=require("./Tooltip-CUoQNXZK.cjs"),Be=require("./vue-ui-skeleton-73YO0ovP.cjs"),Te=require("./vue-ui-accordion-xV0it5je.cjs"),oe=require("./useNestedProp-0Mn5Z6Ae.cjs"),Se=require("./PackageVersion-D_9QTWVm.cjs"),Pe=require("./PenAndPaper-CfGYucSm.cjs"),Oe=require("./useUserOptionState-BgepsfED.cjs"),Ne=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),_e=["id"],Ve=["xmlns","viewBox"],Ee=["width","height"],Fe=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Ae=["cx","cy","r","stroke","stroke-width","stroke-dasharray","stroke-dashoffset"],Ie=["id"],Me=["stdDeviation"],Le=["filter"],Re=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset"],ze=["cx","cy","r","stroke-width","stroke-dasharray","stroke-dashoffset","onMouseenter"],De={key:2},qe=["onMouseenter"],Ue=["x","y","font-size","fill","font-weight"],Ye={key:5,class:"vue-data-ui-watermark"},Xe=["onClick"],Ge=["innerHTML"],He={__name:"vue-ui-onion",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend"],setup(re,{expose:ne,emit:ue}){const p=re,{vue_ui_onion:se}=u.useConfig(),C=e.computed(()=>!!p.dataset&&p.dataset.length),m=e.ref(u.createUid()),ie=e.ref(null),A=e.ref(0),$=e.ref(!1),S=e.ref(""),d=e.ref([]),y=e.ref(null),I=e.ref(null),M=e.ref(null),L=e.ref(null),R=e.ref(null),z=e.ref(0),D=e.ref(0),q=e.ref(0),t=e.computed({get:()=>X(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:U,keepUserOptionState:Y}=Oe.useUserOptionState({config:t.value});function X(){const l=oe.useNestedProp({userConfig:p.config,defaultConfig:se});return l.theme?{...oe.useNestedProp({userConfig:u.themes.vue_ui_onion[l.theme]||p.config,defaultConfig:l}),customPalette:u.themePalettes[l.theme]||u.palette}:l}e.watch(()=>p.config,l=>{t.value=X(),P.value=!t.value.showOnChartHover,J(),z.value+=1,D.value+=1,q.value+=1},{deep:!0});const{isPrinting:G,isImaging:H,generatePdf:j,generateImage:W}=ae.usePrinter({elementId:`vue-ui-onion_${m.value}`,fileName:t.value.style.chart.title.text||"vue-ui-onion"}),ce=e.computed(()=>t.value.userOptions.show&&!t.value.style.chart.title.text),de=e.computed(()=>u.convertCustomPalette(t.value.customPalette)),f=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(()=>{J()});function J(){if(u.objectIsEmpty(p.dataset)&&u.error({componentName:"VueUiOnion",type:"dataset"}),t.value.responsive){const r=le.throttle(()=>{const{width:a,height:o}=le.useResponsive({chart:y.value,title:t.value.style.chart.title.text?I.value:null,legend:t.value.style.chart.legend.show?M.value:null,source:L.value,noTitle:R.value});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(y.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(()=>(p.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})}),p.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)||de.value[r]||u.palette[r],id:a,shape:"circle",opacity:d.value.includes(a)?.5:1,absoluteIndex:r,segregate:()=>K(a),isSegregated:d.value.includes(a)}}))),b=e.ref(i.value),ve=e.computed(()=>t.value.useStartAnimation),he=e.ref(null),pe=e.computed(()=>Math.max(...i.value.map(l=>l.percentage))),O=e.ref(!1);e.watch(()=>i.value,fe,{immediate:!0});function fe(){if(ve.value&&!O.value){let r=function(){l>=pe.value?(cancelAnimationFrame(he.value),b.value=i.value,O.value=!0):(b.value=i.value.map(a=>({...a,percentage:l<a.targetPercentage?l:a.targetPercentage})),l+=1,requestAnimationFrame(r),O.value=!0)};b.value=i.value.map(a=>({...a,percentage:0}));let l=0;r()}else b.value=i.value}const ge=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":""})),me=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}}),v=e.computed(()=>b.value.filter(l=>!d.value.includes(l.id)).map((l,r)=>{const a=(s.value.maxRadius-g.value.track)/me.value/2*(1+r),o=s.value.centerY-a;return{percentage:l.percentage||0,...l,labelY:o,radius:a,path:ye(a,l.percentage||0)}}));function ye(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 v, ref as s, watch as ke, onMounted as Be, onBeforeUnmount as Ue, openBlock as n, createElementBlock as u, normalizeClass as B, normalizeStyle as U, unref as i, createBlock as C, createCommentVNode as f, createSlots as Xe, withCtx as g, renderSlot as h, normalizeProps as S, guardReactiveProps as M, createVNode as we, Fragment as F, renderList as N, createElementVNode as O, toDisplayString as P, createTextVNode as Ge, nextTick as Ee } from "vue";
2
- import { u as He, c as We, t as je, a as qe, p as $e, b as Je, o as Ke, e as K, d as Qe, X as Ze, f as R, i as Q, x as Ce, q as et, r as tt, y as at } from "./index-Z_vzxZTo.js";
2
+ import { u as He, c as We, t as je, a as qe, p as $e, b as Je, o as Ke, e as K, d as Qe, X as Ze, f as R, i as Q, x as Ce, q as et, r as tt, y as at } from "./index-BVNcFEqn.js";
3
3
  import { t as lt, u as ot } from "./useResponsive-CoxXLe23.js";
4
- import { _ as rt } from "./Title-obqvTiXP.js";
5
- import { u as nt, U as st } from "./usePrinter-Ck0oiMlt.js";
6
- import { L as ut } from "./Legend-WOejx9sp.js";
7
- import { D as it } from "./DataTable-BBh7_ttv.js";
8
- import { _ as ct } from "./Tooltip-BK-ACGDE.js";
9
- import dt from "./vue-ui-skeleton-BMRe3SzB.js";
10
- import vt from "./vue-ui-accordion-CV2-8b1O.js";
11
- import { u as xe } from "./useNestedProp-Buhi5uyL.js";
12
- import { _ as ht } from "./PackageVersion-dR8EUy_P.js";
13
- import { P as ft } from "./PenAndPaper-CrXlqi9I.js";
4
+ import { _ as rt } from "./Title-DyUTj8GI.js";
5
+ import { u as nt, U as st } from "./usePrinter-Bcfs_I6G.js";
6
+ import { L as ut } from "./Legend-DGUxLqhs.js";
7
+ import { D as it } from "./DataTable-DX_jYNWG.js";
8
+ import { _ as ct } from "./Tooltip-B-0uEV3l.js";
9
+ import dt from "./vue-ui-skeleton-Bgf16k10.js";
10
+ import vt from "./vue-ui-accordion-GNblUy42.js";
11
+ import { u as xe } from "./useNestedProp-D79dWdel.js";
12
+ import { _ as ht } from "./PackageVersion-B9_Ed72C.js";
13
+ import { P as ft } from "./PenAndPaper-CzjoEhsO.js";
14
14
  import { u as gt } from "./useUserOptionState-BIvW1Kz7.js";
15
15
  import { _ as pt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
16
  const yt = ["id"], mt = ["xmlns", "viewBox"], bt = ["width", "height"], kt = ["cx", "cy", "r", "stroke", "stroke-width", "stroke-dasharray", "stroke-dashoffset"], wt = ["cx", "cy", "r", "stroke", "stroke-width", "stroke-dasharray", "stroke-dashoffset"], $t = ["id"], Ct = ["stdDeviation"], xt = ["filter"], Tt = ["cx", "cy", "r", "stroke-width", "stroke-dasharray", "stroke-dashoffset"], _t = ["cx", "cy", "r", "stroke-width", "stroke-dasharray", "stroke-dashoffset", "onMouseenter"], Ot = { key: 2 }, Pt = ["onMouseenter"], At = ["x", "y", "font-size", "fill", "font-weight"], It = {
@@ -1,17 +1,17 @@
1
1
  import { computed as g, ref as v, watch as He, onMounted as Ge, onBeforeUnmount as Xe, openBlock as u, createElementBlock as i, normalizeClass as U, normalizeStyle as T, unref as x, createBlock as z, createCommentVNode as p, createSlots as Ye, withCtx as k, renderSlot as b, normalizeProps as W, guardReactiveProps as E, createVNode as _e, Fragment as C, renderList as I, createElementVNode as F, toDisplayString as D, createTextVNode as qe } from "vue";
2
- import { u as Qe, c as ee, t as Je, a as Ke, p as H, o as Ze, e as Me, g as et, b as tt, d as at, D as lt, Q as ot, R as st, S as nt, X as ut, x as ze, i as Ie, f as Fe, y as it, q as rt, r as ct, F as G } from "./index-Z_vzxZTo.js";
2
+ import { u as Qe, c as ee, t as Je, a as Ke, p as H, o as Ze, e as Me, g as et, b as tt, d as at, D as lt, Q as ot, R as st, S as nt, X as ut, x as ze, i as Ie, f as Fe, y as it, q as rt, r as ct, F as G } from "./index-BVNcFEqn.js";
3
3
  import { t as vt, u as dt } from "./useResponsive-CoxXLe23.js";
4
- import { _ as ht } from "./Title-obqvTiXP.js";
5
- import { L as pt } from "./Legend-WOejx9sp.js";
6
- import { _ as mt } from "./Tooltip-BK-ACGDE.js";
7
- import { _ as yt } from "./Shape-CwmKWYzq.js";
8
- import { u as ft, U as gt } from "./usePrinter-Ck0oiMlt.js";
9
- import { D as bt } from "./DataTable-BBh7_ttv.js";
10
- import xt from "./vue-ui-accordion-CV2-8b1O.js";
11
- import kt from "./vue-ui-skeleton-BMRe3SzB.js";
12
- import { u as Pe } from "./useNestedProp-Buhi5uyL.js";
13
- import { _ as wt } from "./PackageVersion-dR8EUy_P.js";
14
- import { P as Ct } from "./PenAndPaper-CrXlqi9I.js";
4
+ import { _ as ht } from "./Title-DyUTj8GI.js";
5
+ import { L as pt } from "./Legend-DGUxLqhs.js";
6
+ import { _ as mt } from "./Tooltip-B-0uEV3l.js";
7
+ import { _ as yt } from "./Shape-aXd72O71.js";
8
+ import { u as ft, U as gt } from "./usePrinter-Bcfs_I6G.js";
9
+ import { D as bt } from "./DataTable-DX_jYNWG.js";
10
+ import xt from "./vue-ui-accordion-GNblUy42.js";
11
+ import kt from "./vue-ui-skeleton-Bgf16k10.js";
12
+ import { u as Pe } from "./useNestedProp-D79dWdel.js";
13
+ import { _ as wt } from "./PackageVersion-B9_Ed72C.js";
14
+ import { P as Ct } from "./PenAndPaper-CzjoEhsO.js";
15
15
  import { u as $t } from "./useUserOptionState-BIvW1Kz7.js";
16
16
  import { _ as At } from "./_plugin-vue_export-helper-CHgC5LLL.js";
17
17
  const Tt = ["id"], _t = ["xmlns", "viewBox"], Mt = ["x", "y", "width", "height"], zt = { style: { "pointer-events": "none" } }, It = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Ft = ["x", "y", "fill", "font-size", "font-weight"], Pt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Nt = ["x", "y", "fill", "font-size", "font-weight"], St = { key: 0 }, Lt = ["x", "y", "font-size", "fill"], Ot = ["width", "x", "y"], Dt = { style: { width: "100%" } }, Ut = ["x", "y", "fill", "font-weight", "font-size", "onMouseenter"], Wt = ["d", "stroke", "stroke-width", "onMouseenter"], Et = ["d", "onMouseenter"], Vt = {
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),i=require("./index-ChOY3hT9.cjs"),ue=require("./useResponsive-BJ7DTGpm.cjs"),Be=require("./Title-CoNtoGH9.cjs"),$e=require("./Legend-CqilK5CI.cjs"),Se=require("./Tooltip-Dz4wVJkz.cjs"),ze=require("./Shape-qkkvCKyp.cjs"),ce=require("./usePrinter-c3c7_uAW.cjs"),Ne=require("./DataTable-CCJGHIVo.cjs"),Ae=require("./vue-ui-accordion-CZ8AlriN.cjs"),Te=require("./vue-ui-skeleton-DlnPFtb4.cjs"),de=require("./useNestedProp-CA8PjFJH.cjs"),Pe=require("./PackageVersion-eZ5Dmuid.cjs"),Fe=require("./PenAndPaper-D_w2N2qM.cjs"),Me=require("./useUserOptionState-BgepsfED.cjs"),_e=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Ee=["id"],Ie=["xmlns","viewBox"],Le=["x","y","width","height"],Ve={style:{"pointer-events":"none"}},Oe=["x1","x2","y1","y2","stroke","stroke-width"],De=["x","y","fill","font-size","font-weight"],qe=["x1","x2","y1","y2","stroke","stroke-width"],Ue=["x","y","fill","font-size","font-weight"],Re={key:0},We=["x","y","font-size","fill"],je=["width","x","y"],He={style:{width:"100%"}},Ge=["x","y","fill","font-weight","font-size","onMouseenter"],Ye=["d","stroke","stroke-width","onMouseenter"],Xe=["d","onMouseenter"],Je={key:5,class:"vue-data-ui-watermark"},Ke=["onClick"],Qe=["innerHTML"],Ze={__name:"vue-ui-parallel-coordinate-plot",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(ve,{expose:pe,emit:L}){const b=ve,{vue_ui_parallel_coordinate_plot:he}=i.useConfig(),x=e.computed({get(){return!!b.dataset&&b.dataset.length},set(l){return l}}),V=e.ref(0),C=e.ref(null),O=e.ref(null),D=e.ref(null),q=e.ref(null),U=e.ref(null),R=e.ref(0),W=e.ref(0),j=e.ref(0),T=e.ref(i.createUid()),w=e.ref(!1);function me(l){w.value=l,V.value+=1}const t=e.computed({get:()=>Y(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:H,keepUserOptionState:G}=Me.useUserOptionState({config:t.value});function Y(){const l=de.useNestedProp({userConfig:b.config,defaultConfig:he});return l.theme?{...de.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.showOnChartHover,X(),R.value+=1,j.value+=1,W.value+=1},{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=ue.throttle(()=>{const{width:o,height:a}=ue.useResponsive({chart:C.value,title:t.value.style.chart.title.text?O.value:null,legend:t.value.style.chart.legend.show?D.value:null,source:q.value,noTitle:U.value});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(C.value.parentNode)}}e.onBeforeUnmount(()=>{S.value&&S.value.disconnect()});const{isPrinting:J,isImaging:K,generatePdf:Q,generateImage:Z}=ce.usePrinter({elementId:`pcp_${T.value}`,fileName:t.value.style.chart.title.text||"vue-ui-parallel-coordinate-plot"}),ye=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}}),fe=e.computed(()=>i.convertCustomPalette(t.value.customPalette)),h=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)||fe.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"}})),ge=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)}))),be=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(v=>v.series.map(A=>A.values[o]||0)||0)),n=Math.max(...F.value.flatMap(v=>v.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((v,A)=>{const Ce=u.min<0?v+Math.abs(u.min):v-Math.abs(u.min),we=u.min<0?u.max+Math.abs(u.min):u.max-Math.abs(u.min);return{y:c.value.bottom-c.value.height*(Ce/we),x:c.value.left+y.value*o+y.value/2,value:v}});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 p=e.ref(null),_=e.ref(null),B=e.ref(!1),E=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},B.value=!0,p.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}))?E.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,v)=>{s+=`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),i=require("./index-CKgv8c-A.cjs"),ue=require("./useResponsive-BJ7DTGpm.cjs"),Be=require("./Title-BnRtxxP4.cjs"),$e=require("./Legend-BMTBtkoQ.cjs"),Se=require("./Tooltip-CUoQNXZK.cjs"),ze=require("./Shape-CZB2KQ0L.cjs"),ce=require("./usePrinter-Gkda9yEJ.cjs"),Ne=require("./DataTable-CwzQ-L0W.cjs"),Ae=require("./vue-ui-accordion-xV0it5je.cjs"),Te=require("./vue-ui-skeleton-73YO0ovP.cjs"),de=require("./useNestedProp-0Mn5Z6Ae.cjs"),Pe=require("./PackageVersion-D_9QTWVm.cjs"),Fe=require("./PenAndPaper-CfGYucSm.cjs"),Me=require("./useUserOptionState-BgepsfED.cjs"),_e=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Ee=["id"],Ie=["xmlns","viewBox"],Le=["x","y","width","height"],Ve={style:{"pointer-events":"none"}},Oe=["x1","x2","y1","y2","stroke","stroke-width"],De=["x","y","fill","font-size","font-weight"],qe=["x1","x2","y1","y2","stroke","stroke-width"],Ue=["x","y","fill","font-size","font-weight"],Re={key:0},We=["x","y","font-size","fill"],je=["width","x","y"],He={style:{width:"100%"}},Ge=["x","y","fill","font-weight","font-size","onMouseenter"],Ye=["d","stroke","stroke-width","onMouseenter"],Xe=["d","onMouseenter"],Je={key:5,class:"vue-data-ui-watermark"},Ke=["onClick"],Qe=["innerHTML"],Ze={__name:"vue-ui-parallel-coordinate-plot",props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:["selectLegend","selectDatapoint"],setup(ve,{expose:pe,emit:L}){const b=ve,{vue_ui_parallel_coordinate_plot:he}=i.useConfig(),x=e.computed({get(){return!!b.dataset&&b.dataset.length},set(l){return l}}),V=e.ref(0),C=e.ref(null),O=e.ref(null),D=e.ref(null),q=e.ref(null),U=e.ref(null),R=e.ref(0),W=e.ref(0),j=e.ref(0),T=e.ref(i.createUid()),w=e.ref(!1);function me(l){w.value=l,V.value+=1}const t=e.computed({get:()=>Y(),set:l=>l}),{userOptionsVisible:P,setUserOptionsVisibility:H,keepUserOptionState:G}=Me.useUserOptionState({config:t.value});function Y(){const l=de.useNestedProp({userConfig:b.config,defaultConfig:he});return l.theme?{...de.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.showOnChartHover,X(),R.value+=1,j.value+=1,W.value+=1},{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=ue.throttle(()=>{const{width:o,height:a}=ue.useResponsive({chart:C.value,title:t.value.style.chart.title.text?O.value:null,legend:t.value.style.chart.legend.show?D.value:null,source:q.value,noTitle:U.value});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(C.value.parentNode)}}e.onBeforeUnmount(()=>{S.value&&S.value.disconnect()});const{isPrinting:J,isImaging:K,generatePdf:Q,generateImage:Z}=ce.usePrinter({elementId:`pcp_${T.value}`,fileName:t.value.style.chart.title.text||"vue-ui-parallel-coordinate-plot"}),ye=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}}),fe=e.computed(()=>i.convertCustomPalette(t.value.customPalette)),h=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)||fe.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"}})),ge=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)}))),be=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(v=>v.series.map(A=>A.values[o]||0)||0)),n=Math.max(...F.value.flatMap(v=>v.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((v,A)=>{const Ce=u.min<0?v+Math.abs(u.min):v-Math.abs(u.min),we=u.min<0?u.max+Math.abs(u.min):u.max-Math.abs(u.min);return{y:c.value.bottom-c.value.height*(Ce/we),x:c.value.left+y.value*o+y.value/2,value:v}});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 p=e.ref(null),_=e.ref(null),B=e.ref(!1),E=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},B.value=!0,p.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}))?E.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,v)=>{s+=`
2
2
  <div class="vue-ui-tooltip-item" style="text-align:left">
3
3
  <span>${g}: </span>
4
4
  <span>
@@ -1,17 +1,17 @@
1
1
  import { computed as g, ref as h, watch as Fe, onMounted as lt, onBeforeUnmount as at, openBlock as o, createElementBlock as n, normalizeClass as T, normalizeStyle as w, unref as y, createBlock as N, createCommentVNode as c, createSlots as ut, withCtx as x, renderSlot as $, normalizeProps as G, guardReactiveProps as Q, createVNode as ve, createElementVNode as d, Fragment as S, renderList as Y, toDisplayString as k, createTextVNode as ot, nextTick as st } from "vue";
2
- import { u as rt, c as Re, t as nt, a as it, p as de, o as vt, e as H, b as dt, T as ct, d as ht, i as O, f as P, X as yt, s as ae, w as bt, U as ft, G as pt, x as gt, y as mt, q as xt, r as $t } from "./index-Z_vzxZTo.js";
2
+ import { u as rt, c as Re, t as nt, a as it, p as de, o as vt, e as H, b as dt, T as ct, d as ht, i as O, f as P, X as yt, s as ae, w as bt, U as ft, G as pt, x as gt, y as mt, q as xt, r as $t } from "./index-BVNcFEqn.js";
3
3
  import { t as kt, u as Lt } from "./useResponsive-CoxXLe23.js";
4
- import { _ as wt } from "./Title-obqvTiXP.js";
5
- import { u as qt, U as _t } from "./usePrinter-Ck0oiMlt.js";
6
- import { _ as St } from "./Tooltip-BK-ACGDE.js";
7
- import { _ as He } from "./Shape-CwmKWYzq.js";
8
- import { L as Ct } from "./Legend-WOejx9sp.js";
9
- import { D as zt } from "./DataTable-BBh7_ttv.js";
10
- import Tt from "./vue-ui-skeleton-BMRe3SzB.js";
11
- import Xt from "./vue-ui-accordion-CV2-8b1O.js";
12
- import { u as Ie } from "./useNestedProp-Buhi5uyL.js";
13
- import { _ as Wt } from "./PackageVersion-dR8EUy_P.js";
14
- import { P as Yt } from "./PenAndPaper-CrXlqi9I.js";
4
+ import { _ as wt } from "./Title-DyUTj8GI.js";
5
+ import { u as qt, U as _t } from "./usePrinter-Bcfs_I6G.js";
6
+ import { _ as St } from "./Tooltip-B-0uEV3l.js";
7
+ import { _ as He } from "./Shape-aXd72O71.js";
8
+ import { L as Ct } from "./Legend-DGUxLqhs.js";
9
+ import { D as zt } from "./DataTable-DX_jYNWG.js";
10
+ import Tt from "./vue-ui-skeleton-Bgf16k10.js";
11
+ import Xt from "./vue-ui-accordion-GNblUy42.js";
12
+ import { u as Ie } from "./useNestedProp-D79dWdel.js";
13
+ import { _ as Wt } from "./PackageVersion-B9_Ed72C.js";
14
+ import { P as Yt } from "./PenAndPaper-CzjoEhsO.js";
15
15
  import { u as At } from "./useUserOptionState-BIvW1Kz7.js";
16
16
  import { _ as Mt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
17
17
  const Nt = ["id"], Ot = ["xmlns", "viewBox", "id"], Pt = ["x", "y", "width", "height"], Vt = ["id"], Bt = ["stop-color"], Ft = ["stop-color"], Rt = { key: 1 }, Ht = ["fill", "x", "y", "height", "width", "stroke-width", "stroke", "rx"], It = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], Ut = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], Dt = { key: 2 }, Et = ["points", "fill"], Gt = ["points", "fill"], Qt = ["points", "fill"], Jt = ["points", "fill"], jt = { key: 3 }, Zt = ["y", "fill", "font-size"], Kt = ["x", "y", "fill", "font-size"], el = ["x", "y", "fill", "font-size"], tl = ["y", "fill", "font-size"], ll = { key: 4 }, al = ["x", "y", "font-size", "fill"], ul = ["x", "y", "font-size", "fill"], ol = ["x", "y", "font-size", "fill"], sl = ["id", "font-size", "transform", "fill"], rl = ["id", "font-size", "transform", "fill"], nl = ["id", "font-size", "transform", "fill"], il = { key: 5 }, vl = ["fill", "points"], dl = ["x", "y", "width", "height"], cl = ["x", "y", "width", "height"], hl = ["x", "y", "width", "height"], yl = ["x", "y", "width", "height"], bl = {