@chartts/core 0.1.3 → 0.1.4

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 (291) hide show
  1. package/dist/area.cjs +10 -10
  2. package/dist/area.js +5 -5
  3. package/dist/bar.cjs +9 -9
  4. package/dist/bar.js +4 -4
  5. package/dist/baseline.cjs +9 -9
  6. package/dist/baseline.js +4 -4
  7. package/dist/boxplot.cjs +9 -9
  8. package/dist/boxplot.js +4 -4
  9. package/dist/bubble.cjs +9 -9
  10. package/dist/bubble.js +4 -4
  11. package/dist/bullet.cjs +10 -10
  12. package/dist/bullet.js +5 -5
  13. package/dist/calendar.cjs +10 -10
  14. package/dist/calendar.js +5 -5
  15. package/dist/candlestick.cjs +9 -9
  16. package/dist/candlestick.js +4 -4
  17. package/dist/chord.cjs +10 -10
  18. package/dist/chord.js +5 -5
  19. package/dist/{chunk-XKERO5K2.js → chunk-24557PYN.js} +3 -3
  20. package/dist/{chunk-XKERO5K2.js.map → chunk-24557PYN.js.map} +1 -1
  21. package/dist/{chunk-5YNIOIKK.js → chunk-2BUIZDOB.js} +3 -3
  22. package/dist/{chunk-5YNIOIKK.js.map → chunk-2BUIZDOB.js.map} +1 -1
  23. package/dist/{chunk-EHKHXQ46.cjs → chunk-2IMUTDTD.cjs} +10 -10
  24. package/dist/{chunk-EHKHXQ46.cjs.map → chunk-2IMUTDTD.cjs.map} +1 -1
  25. package/dist/{chunk-7ZPHLIFP.cjs → chunk-2IWLOBSF.cjs} +6 -6
  26. package/dist/{chunk-7ZPHLIFP.cjs.map → chunk-2IWLOBSF.cjs.map} +1 -1
  27. package/dist/{chunk-F5AOBHQY.js → chunk-2JYK52HV.js} +4 -4
  28. package/dist/{chunk-F5AOBHQY.js.map → chunk-2JYK52HV.js.map} +1 -1
  29. package/dist/{chunk-WVQVGQJO.cjs → chunk-2QRCHYTZ.cjs} +7 -7
  30. package/dist/{chunk-WVQVGQJO.cjs.map → chunk-2QRCHYTZ.cjs.map} +1 -1
  31. package/dist/{chunk-XWCY67K5.js → chunk-34DQGCPP.js} +4 -4
  32. package/dist/{chunk-XWCY67K5.js.map → chunk-34DQGCPP.js.map} +1 -1
  33. package/dist/{chunk-5J26EN5I.js → chunk-3JB4JBBK.js} +4 -4
  34. package/dist/{chunk-5J26EN5I.js.map → chunk-3JB4JBBK.js.map} +1 -1
  35. package/dist/{chunk-EHNX3MG3.cjs → chunk-3NHH6C4K.cjs} +13 -13
  36. package/dist/{chunk-EHNX3MG3.cjs.map → chunk-3NHH6C4K.cjs.map} +1 -1
  37. package/dist/{chunk-ECB3UPTC.cjs → chunk-3SVNEKXE.cjs} +11 -11
  38. package/dist/{chunk-ECB3UPTC.cjs.map → chunk-3SVNEKXE.cjs.map} +1 -1
  39. package/dist/{chunk-BYB3LQAT.cjs → chunk-4D6PVH2C.cjs} +9 -9
  40. package/dist/{chunk-BYB3LQAT.cjs.map → chunk-4D6PVH2C.cjs.map} +1 -1
  41. package/dist/{chunk-NG7DRWWT.cjs → chunk-4MNVJVK3.cjs} +6 -6
  42. package/dist/{chunk-NG7DRWWT.cjs.map → chunk-4MNVJVK3.cjs.map} +1 -1
  43. package/dist/{chunk-RQJRVKAH.js → chunk-4QRND2V5.js} +3 -3
  44. package/dist/{chunk-RQJRVKAH.js.map → chunk-4QRND2V5.js.map} +1 -1
  45. package/dist/{chunk-NGKUI7XE.cjs → chunk-55ZTXQQQ.cjs} +12 -12
  46. package/dist/{chunk-NGKUI7XE.cjs.map → chunk-55ZTXQQQ.cjs.map} +1 -1
  47. package/dist/{chunk-2MWA7H6J.js → chunk-56BN43J4.js} +5 -5
  48. package/dist/{chunk-2MWA7H6J.js.map → chunk-56BN43J4.js.map} +1 -1
  49. package/dist/{chunk-RJIPFWW7.js → chunk-5E7FXDBM.js} +4 -4
  50. package/dist/{chunk-RJIPFWW7.js.map → chunk-5E7FXDBM.js.map} +1 -1
  51. package/dist/{chunk-ILCWDAKD.js → chunk-5HZEDCJG.js} +3 -3
  52. package/dist/{chunk-ILCWDAKD.js.map → chunk-5HZEDCJG.js.map} +1 -1
  53. package/dist/{chunk-DKXW2FQC.cjs → chunk-5QT67VYJ.cjs} +10 -10
  54. package/dist/{chunk-DKXW2FQC.cjs.map → chunk-5QT67VYJ.cjs.map} +1 -1
  55. package/dist/{chunk-XE5ZYFGM.js → chunk-5QVUBGM7.js} +4 -4
  56. package/dist/{chunk-XE5ZYFGM.js.map → chunk-5QVUBGM7.js.map} +1 -1
  57. package/dist/{chunk-DR5MQC3W.js → chunk-62DBXI4N.js} +4 -4
  58. package/dist/{chunk-DR5MQC3W.js.map → chunk-62DBXI4N.js.map} +1 -1
  59. package/dist/{chunk-HMB2RIEE.js → chunk-6QMV75NT.js} +4 -4
  60. package/dist/{chunk-HMB2RIEE.js.map → chunk-6QMV75NT.js.map} +1 -1
  61. package/dist/{chunk-OUN3MWRQ.cjs → chunk-754Z4OR6.cjs} +10 -10
  62. package/dist/{chunk-OUN3MWRQ.cjs.map → chunk-754Z4OR6.cjs.map} +1 -1
  63. package/dist/{chunk-3SOKHPAO.js → chunk-7GLCJPV5.js} +4 -4
  64. package/dist/{chunk-3SOKHPAO.js.map → chunk-7GLCJPV5.js.map} +1 -1
  65. package/dist/{chunk-PQCHNZHM.cjs → chunk-7PHOSSLJ.cjs} +9 -9
  66. package/dist/{chunk-PQCHNZHM.cjs.map → chunk-7PHOSSLJ.cjs.map} +1 -1
  67. package/dist/{chunk-VBEZS3Q4.cjs → chunk-A5G32G2R.cjs} +9 -9
  68. package/dist/{chunk-VBEZS3Q4.cjs.map → chunk-A5G32G2R.cjs.map} +1 -1
  69. package/dist/{chunk-DX4FBN3I.js → chunk-AEQXFDL7.js} +14 -9
  70. package/dist/chunk-AEQXFDL7.js.map +1 -0
  71. package/dist/{chunk-RHTVKBRC.cjs → chunk-ATMSGQCW.cjs} +9 -9
  72. package/dist/{chunk-RHTVKBRC.cjs.map → chunk-ATMSGQCW.cjs.map} +1 -1
  73. package/dist/{chunk-2ITF366P.js → chunk-BFBVJ6MU.js} +3 -3
  74. package/dist/{chunk-2ITF366P.js.map → chunk-BFBVJ6MU.js.map} +1 -1
  75. package/dist/{chunk-E43H3A3G.cjs → chunk-BGGESAAG.cjs} +7 -7
  76. package/dist/{chunk-E43H3A3G.cjs.map → chunk-BGGESAAG.cjs.map} +1 -1
  77. package/dist/{chunk-R6ZDSXN7.cjs → chunk-CA42BCSM.cjs} +8 -8
  78. package/dist/{chunk-R6ZDSXN7.cjs.map → chunk-CA42BCSM.cjs.map} +1 -1
  79. package/dist/{chunk-FV7R2LLD.js → chunk-CU5ZXVZQ.js} +4 -4
  80. package/dist/{chunk-FV7R2LLD.js.map → chunk-CU5ZXVZQ.js.map} +1 -1
  81. package/dist/{chunk-JNQ4NL3R.cjs → chunk-CUIPBYMG.cjs} +8 -8
  82. package/dist/{chunk-JNQ4NL3R.cjs.map → chunk-CUIPBYMG.cjs.map} +1 -1
  83. package/dist/{chunk-CCMLOCTH.js → chunk-CWZADOJ6.js} +3 -3
  84. package/dist/{chunk-CCMLOCTH.js.map → chunk-CWZADOJ6.js.map} +1 -1
  85. package/dist/{chunk-FZIBM3G5.cjs → chunk-D5QUAWF3.cjs} +10 -10
  86. package/dist/{chunk-FZIBM3G5.cjs.map → chunk-D5QUAWF3.cjs.map} +1 -1
  87. package/dist/{chunk-YZQROIJY.js → chunk-DAAU5H24.js} +3 -3
  88. package/dist/{chunk-YZQROIJY.js.map → chunk-DAAU5H24.js.map} +1 -1
  89. package/dist/{chunk-GAWIUMAK.cjs → chunk-DT4GG5BF.cjs} +7 -7
  90. package/dist/{chunk-GAWIUMAK.cjs.map → chunk-DT4GG5BF.cjs.map} +1 -1
  91. package/dist/{chunk-4L62MAZA.js → chunk-DX77WSIB.js} +5 -5
  92. package/dist/{chunk-4L62MAZA.js.map → chunk-DX77WSIB.js.map} +1 -1
  93. package/dist/{chunk-4ORSJM2I.js → chunk-EPUWA3ZW.js} +4 -4
  94. package/dist/{chunk-4ORSJM2I.js.map → chunk-EPUWA3ZW.js.map} +1 -1
  95. package/dist/{chunk-ZTUKOCJN.cjs → chunk-ESJMEDLY.cjs} +4 -4
  96. package/dist/{chunk-ZTUKOCJN.cjs.map → chunk-ESJMEDLY.cjs.map} +1 -1
  97. package/dist/{chunk-6JNW43SE.js → chunk-EWVXMQRW.js} +5 -5
  98. package/dist/{chunk-6JNW43SE.js.map → chunk-EWVXMQRW.js.map} +1 -1
  99. package/dist/{chunk-LIY7MYRG.js → chunk-FGBIJ6PL.js} +4 -4
  100. package/dist/{chunk-LIY7MYRG.js.map → chunk-FGBIJ6PL.js.map} +1 -1
  101. package/dist/{chunk-OFEROCC5.cjs → chunk-FGHSUT6X.cjs} +6 -6
  102. package/dist/{chunk-OFEROCC5.cjs.map → chunk-FGHSUT6X.cjs.map} +1 -1
  103. package/dist/{chunk-QKJUAMRK.cjs → chunk-FVLVTY5D.cjs} +6 -6
  104. package/dist/{chunk-QKJUAMRK.cjs.map → chunk-FVLVTY5D.cjs.map} +1 -1
  105. package/dist/{chunk-YX6RW6ZW.cjs → chunk-GBL4R3GH.cjs} +6 -6
  106. package/dist/{chunk-YX6RW6ZW.cjs.map → chunk-GBL4R3GH.cjs.map} +1 -1
  107. package/dist/{chunk-SXVMEC6N.cjs → chunk-GRXHW5S3.cjs} +12 -12
  108. package/dist/{chunk-SXVMEC6N.cjs.map → chunk-GRXHW5S3.cjs.map} +1 -1
  109. package/dist/{chunk-K5TPJVOK.js → chunk-HCIBBUV5.js} +3 -3
  110. package/dist/{chunk-K5TPJVOK.js.map → chunk-HCIBBUV5.js.map} +1 -1
  111. package/dist/{chunk-HFWO37RY.cjs → chunk-HCK2VUWD.cjs} +8 -8
  112. package/dist/{chunk-HFWO37RY.cjs.map → chunk-HCK2VUWD.cjs.map} +1 -1
  113. package/dist/{chunk-FSDI3NJV.js → chunk-IDZTDJLH.js} +3 -3
  114. package/dist/{chunk-FSDI3NJV.js.map → chunk-IDZTDJLH.js.map} +1 -1
  115. package/dist/{chunk-FDNJNVKA.cjs → chunk-IF6RQ53Q.cjs} +9 -9
  116. package/dist/{chunk-FDNJNVKA.cjs.map → chunk-IF6RQ53Q.cjs.map} +1 -1
  117. package/dist/{chunk-PVPTFMJJ.js → chunk-IOV77VHP.js} +4 -4
  118. package/dist/{chunk-PVPTFMJJ.js.map → chunk-IOV77VHP.js.map} +1 -1
  119. package/dist/{chunk-UMIJYYF3.cjs → chunk-JVVGQLJQ.cjs} +14 -9
  120. package/dist/chunk-JVVGQLJQ.cjs.map +1 -0
  121. package/dist/{chunk-MY4KMVJ5.cjs → chunk-JYVRX3BX.cjs} +8 -8
  122. package/dist/{chunk-MY4KMVJ5.cjs.map → chunk-JYVRX3BX.cjs.map} +1 -1
  123. package/dist/{chunk-ZY7ETQD6.js → chunk-KHG3G2ZX.js} +3 -3
  124. package/dist/{chunk-ZY7ETQD6.js.map → chunk-KHG3G2ZX.js.map} +1 -1
  125. package/dist/{chunk-ASNAQ35U.js → chunk-KNMEXOKJ.js} +4 -4
  126. package/dist/{chunk-ASNAQ35U.js.map → chunk-KNMEXOKJ.js.map} +1 -1
  127. package/dist/{chunk-WYIIWTIR.cjs → chunk-KWSVJRXX.cjs} +4 -4
  128. package/dist/{chunk-WYIIWTIR.cjs.map → chunk-KWSVJRXX.cjs.map} +1 -1
  129. package/dist/{chunk-OAL5RS2X.cjs → chunk-LARNENXE.cjs} +10 -10
  130. package/dist/{chunk-OAL5RS2X.cjs.map → chunk-LARNENXE.cjs.map} +1 -1
  131. package/dist/{chunk-MYXLKVJE.js → chunk-LRHMLNPW.js} +12 -4
  132. package/dist/chunk-LRHMLNPW.js.map +1 -0
  133. package/dist/{chunk-66BHM3UN.cjs → chunk-LXYNL7BI.cjs} +10 -10
  134. package/dist/{chunk-66BHM3UN.cjs.map → chunk-LXYNL7BI.cjs.map} +1 -1
  135. package/dist/{chunk-V45C74EB.js → chunk-MEERXUZS.js} +4 -4
  136. package/dist/{chunk-V45C74EB.js.map → chunk-MEERXUZS.js.map} +1 -1
  137. package/dist/{chunk-YJHB2GHQ.js → chunk-MJY25P44.js} +3 -3
  138. package/dist/{chunk-YJHB2GHQ.js.map → chunk-MJY25P44.js.map} +1 -1
  139. package/dist/{chunk-6UWYKNFN.cjs → chunk-MSCRIA2U.cjs} +12 -12
  140. package/dist/{chunk-6UWYKNFN.cjs.map → chunk-MSCRIA2U.cjs.map} +1 -1
  141. package/dist/{chunk-UZH6PVHD.js → chunk-N35UAFEU.js} +4 -4
  142. package/dist/{chunk-UZH6PVHD.js.map → chunk-N35UAFEU.js.map} +1 -1
  143. package/dist/{chunk-6E6ZDWZD.cjs → chunk-NE2W2MF3.cjs} +10 -10
  144. package/dist/{chunk-6E6ZDWZD.cjs.map → chunk-NE2W2MF3.cjs.map} +1 -1
  145. package/dist/{chunk-7PNCJ4OQ.js → chunk-NQ7Y6ZKH.js} +3 -3
  146. package/dist/{chunk-7PNCJ4OQ.js.map → chunk-NQ7Y6ZKH.js.map} +1 -1
  147. package/dist/{chunk-LK2A3HBT.js → chunk-NRULNA5F.js} +4 -4
  148. package/dist/{chunk-LK2A3HBT.js.map → chunk-NRULNA5F.js.map} +1 -1
  149. package/dist/{chunk-47EP245Y.cjs → chunk-OEGSDOJ2.cjs} +7 -7
  150. package/dist/{chunk-47EP245Y.cjs.map → chunk-OEGSDOJ2.cjs.map} +1 -1
  151. package/dist/{chunk-ZFSFOD5W.cjs → chunk-OMAW52LY.cjs} +6 -6
  152. package/dist/{chunk-ZFSFOD5W.cjs.map → chunk-OMAW52LY.cjs.map} +1 -1
  153. package/dist/{chunk-YOLF5DYU.js → chunk-OMSHGBV3.js} +4 -4
  154. package/dist/{chunk-YOLF5DYU.js.map → chunk-OMSHGBV3.js.map} +1 -1
  155. package/dist/{chunk-4H2LGLGI.cjs → chunk-OTXHJHXU.cjs} +11 -11
  156. package/dist/{chunk-4H2LGLGI.cjs.map → chunk-OTXHJHXU.cjs.map} +1 -1
  157. package/dist/{chunk-DRIJNFWP.cjs → chunk-PCAYYCLY.cjs} +10 -10
  158. package/dist/{chunk-DRIJNFWP.cjs.map → chunk-PCAYYCLY.cjs.map} +1 -1
  159. package/dist/{chunk-QERWC7U6.js → chunk-PKXW45G4.js} +3 -3
  160. package/dist/{chunk-QERWC7U6.js.map → chunk-PKXW45G4.js.map} +1 -1
  161. package/dist/{chunk-YDQDZWZ7.cjs → chunk-QEPMEEZC.cjs} +6 -6
  162. package/dist/{chunk-YDQDZWZ7.cjs.map → chunk-QEPMEEZC.cjs.map} +1 -1
  163. package/dist/{chunk-G6R6MSRF.cjs → chunk-QPHUAF3R.cjs} +8 -8
  164. package/dist/{chunk-G6R6MSRF.cjs.map → chunk-QPHUAF3R.cjs.map} +1 -1
  165. package/dist/{chunk-RFEKSP62.js → chunk-QPHWRD25.js} +3 -3
  166. package/dist/{chunk-RFEKSP62.js.map → chunk-QPHWRD25.js.map} +1 -1
  167. package/dist/{chunk-XN6YS55F.cjs → chunk-QYI7ZV3B.cjs} +30 -22
  168. package/dist/chunk-QYI7ZV3B.cjs.map +1 -0
  169. package/dist/{chunk-3V64BDKG.cjs → chunk-R2W3RJFW.cjs} +13 -13
  170. package/dist/{chunk-3V64BDKG.cjs.map → chunk-R2W3RJFW.cjs.map} +1 -1
  171. package/dist/{chunk-46ZZTP5B.js → chunk-SGZUUUXU.js} +4 -4
  172. package/dist/{chunk-46ZZTP5B.js.map → chunk-SGZUUUXU.js.map} +1 -1
  173. package/dist/{chunk-MPQECPE3.js → chunk-T7SCCACB.js} +3 -3
  174. package/dist/{chunk-MPQECPE3.js.map → chunk-T7SCCACB.js.map} +1 -1
  175. package/dist/{chunk-GPSNBZPX.js → chunk-TC3H6ZED.js} +4 -4
  176. package/dist/{chunk-GPSNBZPX.js.map → chunk-TC3H6ZED.js.map} +1 -1
  177. package/dist/{chunk-AG7VY6MJ.cjs → chunk-TEZNWW3R.cjs} +8 -8
  178. package/dist/{chunk-AG7VY6MJ.cjs.map → chunk-TEZNWW3R.cjs.map} +1 -1
  179. package/dist/{chunk-KTCP23W6.js → chunk-THHZMRFU.js} +3 -3
  180. package/dist/{chunk-KTCP23W6.js.map → chunk-THHZMRFU.js.map} +1 -1
  181. package/dist/{chunk-RWQH5EO5.cjs → chunk-TLHQ6JCK.cjs} +11 -11
  182. package/dist/{chunk-RWQH5EO5.cjs.map → chunk-TLHQ6JCK.cjs.map} +1 -1
  183. package/dist/{chunk-CDS2NXGT.cjs → chunk-V5Q6UNUK.cjs} +4 -4
  184. package/dist/{chunk-CDS2NXGT.cjs.map → chunk-V5Q6UNUK.cjs.map} +1 -1
  185. package/dist/{chunk-BT5H3WMI.js → chunk-VBMLJUBE.js} +4 -4
  186. package/dist/{chunk-BT5H3WMI.js.map → chunk-VBMLJUBE.js.map} +1 -1
  187. package/dist/{chunk-UFMPALRH.js → chunk-VGJD4F4H.js} +3 -3
  188. package/dist/{chunk-UFMPALRH.js.map → chunk-VGJD4F4H.js.map} +1 -1
  189. package/dist/{chunk-RN7NNB6I.js → chunk-VJXUBN7J.js} +3 -3
  190. package/dist/{chunk-RN7NNB6I.js.map → chunk-VJXUBN7J.js.map} +1 -1
  191. package/dist/{chunk-TVDQNLGJ.js → chunk-VUHNBLFA.js} +3 -3
  192. package/dist/{chunk-TVDQNLGJ.js.map → chunk-VUHNBLFA.js.map} +1 -1
  193. package/dist/{chunk-OAIMES5S.cjs → chunk-W476ER4X.cjs} +17 -17
  194. package/dist/{chunk-OAIMES5S.cjs.map → chunk-W476ER4X.cjs.map} +1 -1
  195. package/dist/{chunk-4XVJYNOT.js → chunk-WZCES5M6.js} +4 -4
  196. package/dist/{chunk-4XVJYNOT.js.map → chunk-WZCES5M6.js.map} +1 -1
  197. package/dist/{chunk-2EZ2TVYT.cjs → chunk-Y6CVUI6A.cjs} +13 -13
  198. package/dist/{chunk-2EZ2TVYT.cjs.map → chunk-Y6CVUI6A.cjs.map} +1 -1
  199. package/dist/{chunk-4WQUX2B4.cjs → chunk-YCL43UQM.cjs} +12 -12
  200. package/dist/{chunk-4WQUX2B4.cjs.map → chunk-YCL43UQM.cjs.map} +1 -1
  201. package/dist/{chunk-XWN43PZF.cjs → chunk-YZXRD6K6.cjs} +7 -7
  202. package/dist/{chunk-XWN43PZF.cjs.map → chunk-YZXRD6K6.cjs.map} +1 -1
  203. package/dist/{chunk-IRUIWMH6.js → chunk-ZFGLBJYC.js} +3 -3
  204. package/dist/{chunk-IRUIWMH6.js.map → chunk-ZFGLBJYC.js.map} +1 -1
  205. package/dist/{chunk-6EGHZDZI.cjs → chunk-ZNKVOTPB.cjs} +15 -15
  206. package/dist/{chunk-6EGHZDZI.cjs.map → chunk-ZNKVOTPB.cjs.map} +1 -1
  207. package/dist/{chunk-WJP6CRML.js → chunk-ZOEN3ARN.js} +3 -3
  208. package/dist/{chunk-WJP6CRML.js.map → chunk-ZOEN3ARN.js.map} +1 -1
  209. package/dist/{chunk-TWSWD4PU.js → chunk-ZYXRRVR6.js} +3 -3
  210. package/dist/{chunk-TWSWD4PU.js.map → chunk-ZYXRRVR6.js.map} +1 -1
  211. package/dist/combo.cjs +9 -9
  212. package/dist/combo.js +4 -4
  213. package/dist/custom.cjs +10 -10
  214. package/dist/custom.js +5 -5
  215. package/dist/donut.cjs +11 -11
  216. package/dist/donut.js +6 -6
  217. package/dist/dumbbell.cjs +10 -10
  218. package/dist/dumbbell.js +5 -5
  219. package/dist/funnel.cjs +10 -10
  220. package/dist/funnel.js +5 -5
  221. package/dist/gauge.cjs +10 -10
  222. package/dist/gauge.js +5 -5
  223. package/dist/geo.cjs +12 -12
  224. package/dist/geo.js +5 -5
  225. package/dist/graph.cjs +10 -10
  226. package/dist/graph.js +5 -5
  227. package/dist/heatmap.cjs +10 -10
  228. package/dist/heatmap.js +5 -5
  229. package/dist/histogram.cjs +9 -9
  230. package/dist/histogram.js +4 -4
  231. package/dist/horizontal-bar.cjs +9 -9
  232. package/dist/horizontal-bar.js +4 -4
  233. package/dist/index.cjs +180 -180
  234. package/dist/index.d.cts +4 -0
  235. package/dist/index.d.ts +4 -0
  236. package/dist/index.js +92 -92
  237. package/dist/kagi.cjs +10 -10
  238. package/dist/kagi.js +5 -5
  239. package/dist/line.cjs +9 -9
  240. package/dist/line.js +4 -4
  241. package/dist/lines.cjs +10 -10
  242. package/dist/lines.js +5 -5
  243. package/dist/lollipop.cjs +9 -9
  244. package/dist/lollipop.js +4 -4
  245. package/dist/matrix.cjs +10 -10
  246. package/dist/matrix.js +5 -5
  247. package/dist/ohlc.cjs +9 -9
  248. package/dist/ohlc.js +4 -4
  249. package/dist/parallel.cjs +10 -10
  250. package/dist/parallel.js +5 -5
  251. package/dist/pictorialbar.cjs +10 -10
  252. package/dist/pictorialbar.js +5 -5
  253. package/dist/pie.cjs +11 -11
  254. package/dist/pie.js +6 -6
  255. package/dist/polar.cjs +11 -11
  256. package/dist/polar.js +6 -6
  257. package/dist/radar.cjs +10 -10
  258. package/dist/radar.js +5 -5
  259. package/dist/radialbar.cjs +10 -10
  260. package/dist/radialbar.js +5 -5
  261. package/dist/range.cjs +9 -9
  262. package/dist/range.js +4 -4
  263. package/dist/renko.cjs +10 -10
  264. package/dist/renko.js +5 -5
  265. package/dist/sankey.cjs +10 -10
  266. package/dist/sankey.js +5 -5
  267. package/dist/scatter.cjs +9 -9
  268. package/dist/scatter.js +4 -4
  269. package/dist/sparkline.cjs +9 -9
  270. package/dist/sparkline.js +4 -4
  271. package/dist/stacked-bar.cjs +9 -9
  272. package/dist/stacked-bar.js +4 -4
  273. package/dist/step.cjs +10 -10
  274. package/dist/step.js +5 -5
  275. package/dist/sunburst.cjs +11 -11
  276. package/dist/sunburst.js +6 -6
  277. package/dist/themeriver.cjs +10 -10
  278. package/dist/themeriver.js +5 -5
  279. package/dist/tree.cjs +10 -10
  280. package/dist/tree.js +5 -5
  281. package/dist/treemap.cjs +10 -10
  282. package/dist/treemap.js +5 -5
  283. package/dist/volume.cjs +9 -9
  284. package/dist/volume.js +4 -4
  285. package/dist/waterfall.cjs +9 -9
  286. package/dist/waterfall.js +4 -4
  287. package/package.json +1 -1
  288. package/dist/chunk-DX4FBN3I.js.map +0 -1
  289. package/dist/chunk-MYXLKVJE.js.map +0 -1
  290. package/dist/chunk-UMIJYYF3.cjs.map +0 -1
  291. package/dist/chunk-XN6YS55F.cjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkCDS2NXGT_cjs = require('./chunk-CDS2NXGT.cjs');
4
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
3
+ var chunkV5Q6UNUK_cjs = require('./chunk-V5Q6UNUK.cjs');
4
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
5
5
 
6
6
  // src/charts/gauge/gauge-type.ts
7
7
  var gaugeChartType = {
@@ -10,7 +10,7 @@ var gaugeChartType = {
10
10
  return { x: "categorical", y: "linear" };
11
11
  },
12
12
  prepareData(data, options) {
13
- return chunkCDS2NXGT_cjs.prepareNoAxes(data, options);
13
+ return chunkV5Q6UNUK_cjs.prepareNoAxes(data, options);
14
14
  },
15
15
  render(ctx) {
16
16
  const { data, area, theme, options } = ctx;
@@ -36,7 +36,7 @@ var gaugeChartType = {
36
36
  const strokeW = Math.max(12, Math.min(radius * 0.18, 28));
37
37
  const cy = area.y + radius + strokeW / 2 + 4;
38
38
  const arcBottomY = cy + radius * Math.sin(toRad(30));
39
- nodes.push(chunkUMIJYYF3_cjs.path(strokeArc(cx, cy, radius, startRad, endRad), {
39
+ nodes.push(chunkJVVGQLJQ_cjs.path(strokeArc(cx, cy, radius, startRad, endRad), {
40
40
  class: "chartts-gauge-track",
41
41
  stroke: theme.gridColor,
42
42
  strokeWidth: strokeW,
@@ -47,7 +47,7 @@ var gaugeChartType = {
47
47
  const color = options.colors[0];
48
48
  if (pct > 5e-3) {
49
49
  const valueRad = startRad + (endRad - startRad) * pct;
50
- nodes.push(chunkUMIJYYF3_cjs.path(strokeArc(cx, cy, radius, startRad, valueRad), {
50
+ nodes.push(chunkJVVGQLJQ_cjs.path(strokeArc(cx, cy, radius, startRad, valueRad), {
51
51
  class: "chartts-gauge-fill",
52
52
  stroke: color,
53
53
  strokeWidth: strokeW,
@@ -64,24 +64,24 @@ var gaugeChartType = {
64
64
  const baseR = 3.5;
65
65
  const bAngle1 = needleAngle + Math.PI / 2;
66
66
  const bAngle2 = needleAngle - Math.PI / 2;
67
- const npb = new chunkUMIJYYF3_cjs.PathBuilder();
67
+ const npb = new chunkJVVGQLJQ_cjs.PathBuilder();
68
68
  npb.moveTo(needleTipX, needleTipY);
69
69
  npb.lineTo(cx + baseR * Math.cos(bAngle1), cy + baseR * Math.sin(bAngle1));
70
70
  npb.lineTo(cx + baseR * Math.cos(bAngle2), cy + baseR * Math.sin(bAngle2));
71
71
  npb.close();
72
- nodes.push(chunkUMIJYYF3_cjs.path(npb.build(), {
72
+ nodes.push(chunkJVVGQLJQ_cjs.path(npb.build(), {
73
73
  class: "chartts-gauge-needle",
74
74
  fill: color,
75
75
  opacity: 0.85
76
76
  }));
77
- nodes.push(chunkUMIJYYF3_cjs.circle(cx, cy, 5, {
77
+ nodes.push(chunkJVVGQLJQ_cjs.circle(cx, cy, 5, {
78
78
  class: "chartts-gauge-needle-cap",
79
79
  fill: color
80
80
  }));
81
81
  if (showValue) {
82
82
  const valueFontSize = Math.max(16, Math.min(radius * 0.35, 40));
83
83
  const valueY = arcBottomY + labelSpace * 0.28;
84
- nodes.push(chunkUMIJYYF3_cjs.text(cx, valueY, valueFormat(value), {
84
+ nodes.push(chunkJVVGQLJQ_cjs.text(cx, valueY, valueFormat(value), {
85
85
  class: "chartts-gauge-value",
86
86
  fill: theme.textColor,
87
87
  textAnchor: "middle",
@@ -91,7 +91,7 @@ var gaugeChartType = {
91
91
  fontWeight: 700
92
92
  }));
93
93
  if (series.name) {
94
- nodes.push(chunkUMIJYYF3_cjs.text(cx, valueY + valueFontSize * 0.85, series.name, {
94
+ nodes.push(chunkJVVGQLJQ_cjs.text(cx, valueY + valueFontSize * 0.85, series.name, {
95
95
  class: "chartts-gauge-label",
96
96
  fill: theme.textMuted,
97
97
  textAnchor: "middle",
@@ -102,7 +102,7 @@ var gaugeChartType = {
102
102
  }
103
103
  const minX = cx + radius * Math.cos(startRad);
104
104
  const minY = cy + radius * Math.sin(startRad) + strokeW / 2 + 12;
105
- nodes.push(chunkUMIJYYF3_cjs.text(minX, minY, valueFormat(min), {
105
+ nodes.push(chunkJVVGQLJQ_cjs.text(minX, minY, valueFormat(min), {
106
106
  class: "chartts-gauge-min",
107
107
  fill: theme.textMuted,
108
108
  textAnchor: "middle",
@@ -112,7 +112,7 @@ var gaugeChartType = {
112
112
  }));
113
113
  const maxX = cx + radius * Math.cos(toRad(30));
114
114
  const maxY = cy + radius * Math.sin(toRad(30)) + strokeW / 2 + 12;
115
- nodes.push(chunkUMIJYYF3_cjs.text(maxX, maxY, valueFormat(max), {
115
+ nodes.push(chunkJVVGQLJQ_cjs.text(maxX, maxY, valueFormat(max), {
116
116
  class: "chartts-gauge-max",
117
117
  fill: theme.textMuted,
118
118
  textAnchor: "middle",
@@ -128,7 +128,7 @@ var gaugeChartType = {
128
128
  }
129
129
  };
130
130
  function strokeArc(cx, cy, r, startAngle, endAngle) {
131
- const pb = new chunkUMIJYYF3_cjs.PathBuilder();
131
+ const pb = new chunkJVVGQLJQ_cjs.PathBuilder();
132
132
  const x1 = cx + r * Math.cos(startAngle);
133
133
  const y1 = cy + r * Math.sin(startAngle);
134
134
  const x2 = cx + r * Math.cos(endAngle);
@@ -142,5 +142,5 @@ function strokeArc(cx, cy, r, startAngle, endAngle) {
142
142
  }
143
143
 
144
144
  exports.gaugeChartType = gaugeChartType;
145
- //# sourceMappingURL=chunk-6EGHZDZI.cjs.map
146
- //# sourceMappingURL=chunk-6EGHZDZI.cjs.map
145
+ //# sourceMappingURL=chunk-ZNKVOTPB.cjs.map
146
+ //# sourceMappingURL=chunk-ZNKVOTPB.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/charts/gauge/gauge-type.ts"],"names":["prepareNoAxes","path","PathBuilder","circle","text"],"mappings":"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","file":"chunk-6EGHZDZI.cjs","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { prepareNoAxes } from '../../utils/prepare'\nimport { path, circle, text } from '../../render/tree'\nimport { PathBuilder } from '../../render/tree'\n\nexport interface GaugeOptions {\n /** Minimum value. Default 0. */\n gaugeMin?: number\n /** Maximum value. Default 100. */\n gaugeMax?: number\n /** Show value text in center. Default true. */\n showValue?: boolean\n /** Value format function. Default: round to int. */\n valueFormat?: (v: number) => string\n}\n\n/**\n * Gauge / Meter chart — single-value 240° arc with stroke-based rendering.\n *\n * Uses stroke-linecap:round for clean rounded endcaps. No fill-based donut arcs.\n * Looks like a modern dashboard gauge (Grafana, Material style).\n */\nexport const gaugeChartType: ChartTypePlugin = {\n type: 'gauge',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n return prepareNoAxes(data, options)\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, area, theme, options } = ctx\n const nodes: RenderNode[] = []\n\n const series = data.series[0]\n if (!series || series.values.length === 0) return nodes\n\n const gOpts = options as unknown as GaugeOptions\n const min = gOpts.gaugeMin ?? 0\n const max = gOpts.gaugeMax ?? 100\n const showValue = gOpts.showValue ?? true\n const valueFormat = gOpts.valueFormat ?? ((v: number) => String(Math.round(v)))\n\n const value = series.values[0]!\n const pct = Math.max(0, Math.min(1, (value - min) / (max - min || 1)))\n\n // ----- Layout -----\n const cx = area.x + area.width / 2\n\n // Arc angles: 240° sweep, opening at the bottom\n // Start at 150° (bottom-left), sweep CW to 30° (bottom-right)\n const toRad = (d: number) => (d * Math.PI) / 180\n const startRad = toRad(150)\n const endRad = toRad(390) // 390° = 30° but keeps sweep direction clear\n\n // Size the arc to fit within the area with padding for labels\n // The arc bottom-most points are at 150° and 30° — y = cy + r*sin(30°) = cy + r*0.5\n // The arc top is at cy - r\n // Below the arc we need ~50px for value text, label, min/max\n const labelSpace = Math.min(60, area.height * 0.22)\n const availH = area.height - labelSpace\n // Arc top to arc bottom-endpoints: r + r*sin(30°) = r*1.5\n // So r*1.5 + strokeW <= availH\n const maxRadiusH = (availH - 8) / 1.55\n const maxRadiusW = (area.width - 16) / 2\n const radius = Math.min(maxRadiusH, maxRadiusW)\n const strokeW = Math.max(12, Math.min(radius * 0.18, 28))\n\n // Position: the top of the arc (cy - radius - strokeW/2) should be just inside area.y\n const cy = area.y + radius + strokeW / 2 + 4\n\n // Arc bottom-left/right y coordinate\n const arcBottomY = cy + radius * Math.sin(toRad(30))\n\n // ----- Track arc (background) -----\n nodes.push(path(strokeArc(cx, cy, radius, startRad, endRad), {\n class: 'chartts-gauge-track',\n stroke: theme.gridColor,\n strokeWidth: strokeW,\n fill: 'none',\n opacity: 0.3,\n style: 'stroke-linecap:round',\n }))\n\n // ----- Value arc -----\n const color = options.colors[0]!\n if (pct > 0.005) {\n const valueRad = startRad + (endRad - startRad) * pct\n nodes.push(path(strokeArc(cx, cy, radius, startRad, valueRad), {\n class: 'chartts-gauge-fill',\n stroke: color,\n strokeWidth: strokeW,\n fill: 'none',\n style: 'stroke-linecap:round',\n 'data-series': 0,\n 'data-index': 0,\n }))\n }\n\n // ----- Needle -----\n const needleAngle = startRad + (endRad - startRad) * pct\n const needleLen = radius - strokeW / 2 - 2\n const needleTipX = cx + needleLen * Math.cos(needleAngle)\n const needleTipY = cy + needleLen * Math.sin(needleAngle)\n\n // Tapered needle triangle\n const baseR = 3.5\n const bAngle1 = needleAngle + Math.PI / 2\n const bAngle2 = needleAngle - Math.PI / 2\n const npb = new PathBuilder()\n npb.moveTo(needleTipX, needleTipY)\n npb.lineTo(cx + baseR * Math.cos(bAngle1), cy + baseR * Math.sin(bAngle1))\n npb.lineTo(cx + baseR * Math.cos(bAngle2), cy + baseR * Math.sin(bAngle2))\n npb.close()\n\n nodes.push(path(npb.build(), {\n class: 'chartts-gauge-needle',\n fill: color,\n opacity: 0.85,\n }))\n\n // Center cap\n nodes.push(circle(cx, cy, 5, {\n class: 'chartts-gauge-needle-cap',\n fill: color,\n }))\n\n // ----- Labels -----\n if (showValue) {\n // Big value — in the gap below the arc center\n const valueFontSize = Math.max(16, Math.min(radius * 0.35, 40))\n const valueY = arcBottomY + labelSpace * 0.28\n nodes.push(text(cx, valueY, valueFormat(value), {\n class: 'chartts-gauge-value',\n fill: theme.textColor,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: valueFontSize,\n fontFamily: theme.fontFamily,\n fontWeight: 700,\n }))\n\n // Series name\n if (series.name) {\n nodes.push(text(cx, valueY + valueFontSize * 0.85, series.name, {\n class: 'chartts-gauge-label',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n }\n\n // Min / Max at arc endpoints\n const minX = cx + radius * Math.cos(startRad)\n const minY = cy + radius * Math.sin(startRad) + strokeW / 2 + 12\n nodes.push(text(minX, minY, valueFormat(min), {\n class: 'chartts-gauge-min',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n\n const maxX = cx + radius * Math.cos(toRad(30))\n const maxY = cy + radius * Math.sin(toRad(30)) + strokeW / 2 + 12\n nodes.push(text(maxX, maxY, valueFormat(max), {\n class: 'chartts-gauge-max',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n }\n\n return nodes\n },\n\n hitTest(): HitResult | null {\n return null\n },\n}\n\n/**\n * Stroke-based arc path (open, for use with thick stroke + stroke-linecap:round).\n * Angles in radians, CW from positive X axis (SVG convention).\n */\nfunction strokeArc(\n cx: number, cy: number, r: number,\n startAngle: number, endAngle: number,\n): string {\n const pb = new PathBuilder()\n const x1 = cx + r * Math.cos(startAngle)\n const y1 = cy + r * Math.sin(startAngle)\n const x2 = cx + r * Math.cos(endAngle)\n const y2 = cy + r * Math.sin(endAngle)\n\n let span = endAngle - startAngle\n if (span < 0) span += 2 * Math.PI\n const largeArc = span > Math.PI\n\n pb.moveTo(x1, y1)\n pb.arc(r, r, 0, largeArc, true, x2, y2)\n return pb.build()\n}\n"]}
1
+ {"version":3,"sources":["../src/charts/gauge/gauge-type.ts"],"names":["prepareNoAxes","path","PathBuilder","circle","text"],"mappings":"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","file":"chunk-ZNKVOTPB.cjs","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { prepareNoAxes } from '../../utils/prepare'\nimport { path, circle, text } from '../../render/tree'\nimport { PathBuilder } from '../../render/tree'\n\nexport interface GaugeOptions {\n /** Minimum value. Default 0. */\n gaugeMin?: number\n /** Maximum value. Default 100. */\n gaugeMax?: number\n /** Show value text in center. Default true. */\n showValue?: boolean\n /** Value format function. Default: round to int. */\n valueFormat?: (v: number) => string\n}\n\n/**\n * Gauge / Meter chart — single-value 240° arc with stroke-based rendering.\n *\n * Uses stroke-linecap:round for clean rounded endcaps. No fill-based donut arcs.\n * Looks like a modern dashboard gauge (Grafana, Material style).\n */\nexport const gaugeChartType: ChartTypePlugin = {\n type: 'gauge',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n return prepareNoAxes(data, options)\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, area, theme, options } = ctx\n const nodes: RenderNode[] = []\n\n const series = data.series[0]\n if (!series || series.values.length === 0) return nodes\n\n const gOpts = options as unknown as GaugeOptions\n const min = gOpts.gaugeMin ?? 0\n const max = gOpts.gaugeMax ?? 100\n const showValue = gOpts.showValue ?? true\n const valueFormat = gOpts.valueFormat ?? ((v: number) => String(Math.round(v)))\n\n const value = series.values[0]!\n const pct = Math.max(0, Math.min(1, (value - min) / (max - min || 1)))\n\n // ----- Layout -----\n const cx = area.x + area.width / 2\n\n // Arc angles: 240° sweep, opening at the bottom\n // Start at 150° (bottom-left), sweep CW to 30° (bottom-right)\n const toRad = (d: number) => (d * Math.PI) / 180\n const startRad = toRad(150)\n const endRad = toRad(390) // 390° = 30° but keeps sweep direction clear\n\n // Size the arc to fit within the area with padding for labels\n // The arc bottom-most points are at 150° and 30° — y = cy + r*sin(30°) = cy + r*0.5\n // The arc top is at cy - r\n // Below the arc we need ~50px for value text, label, min/max\n const labelSpace = Math.min(60, area.height * 0.22)\n const availH = area.height - labelSpace\n // Arc top to arc bottom-endpoints: r + r*sin(30°) = r*1.5\n // So r*1.5 + strokeW <= availH\n const maxRadiusH = (availH - 8) / 1.55\n const maxRadiusW = (area.width - 16) / 2\n const radius = Math.min(maxRadiusH, maxRadiusW)\n const strokeW = Math.max(12, Math.min(radius * 0.18, 28))\n\n // Position: the top of the arc (cy - radius - strokeW/2) should be just inside area.y\n const cy = area.y + radius + strokeW / 2 + 4\n\n // Arc bottom-left/right y coordinate\n const arcBottomY = cy + radius * Math.sin(toRad(30))\n\n // ----- Track arc (background) -----\n nodes.push(path(strokeArc(cx, cy, radius, startRad, endRad), {\n class: 'chartts-gauge-track',\n stroke: theme.gridColor,\n strokeWidth: strokeW,\n fill: 'none',\n opacity: 0.3,\n style: 'stroke-linecap:round',\n }))\n\n // ----- Value arc -----\n const color = options.colors[0]!\n if (pct > 0.005) {\n const valueRad = startRad + (endRad - startRad) * pct\n nodes.push(path(strokeArc(cx, cy, radius, startRad, valueRad), {\n class: 'chartts-gauge-fill',\n stroke: color,\n strokeWidth: strokeW,\n fill: 'none',\n style: 'stroke-linecap:round',\n 'data-series': 0,\n 'data-index': 0,\n }))\n }\n\n // ----- Needle -----\n const needleAngle = startRad + (endRad - startRad) * pct\n const needleLen = radius - strokeW / 2 - 2\n const needleTipX = cx + needleLen * Math.cos(needleAngle)\n const needleTipY = cy + needleLen * Math.sin(needleAngle)\n\n // Tapered needle triangle\n const baseR = 3.5\n const bAngle1 = needleAngle + Math.PI / 2\n const bAngle2 = needleAngle - Math.PI / 2\n const npb = new PathBuilder()\n npb.moveTo(needleTipX, needleTipY)\n npb.lineTo(cx + baseR * Math.cos(bAngle1), cy + baseR * Math.sin(bAngle1))\n npb.lineTo(cx + baseR * Math.cos(bAngle2), cy + baseR * Math.sin(bAngle2))\n npb.close()\n\n nodes.push(path(npb.build(), {\n class: 'chartts-gauge-needle',\n fill: color,\n opacity: 0.85,\n }))\n\n // Center cap\n nodes.push(circle(cx, cy, 5, {\n class: 'chartts-gauge-needle-cap',\n fill: color,\n }))\n\n // ----- Labels -----\n if (showValue) {\n // Big value — in the gap below the arc center\n const valueFontSize = Math.max(16, Math.min(radius * 0.35, 40))\n const valueY = arcBottomY + labelSpace * 0.28\n nodes.push(text(cx, valueY, valueFormat(value), {\n class: 'chartts-gauge-value',\n fill: theme.textColor,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: valueFontSize,\n fontFamily: theme.fontFamily,\n fontWeight: 700,\n }))\n\n // Series name\n if (series.name) {\n nodes.push(text(cx, valueY + valueFontSize * 0.85, series.name, {\n class: 'chartts-gauge-label',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n }\n\n // Min / Max at arc endpoints\n const minX = cx + radius * Math.cos(startRad)\n const minY = cy + radius * Math.sin(startRad) + strokeW / 2 + 12\n nodes.push(text(minX, minY, valueFormat(min), {\n class: 'chartts-gauge-min',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n\n const maxX = cx + radius * Math.cos(toRad(30))\n const maxY = cy + radius * Math.sin(toRad(30)) + strokeW / 2 + 12\n nodes.push(text(maxX, maxY, valueFormat(max), {\n class: 'chartts-gauge-max',\n fill: theme.textMuted,\n textAnchor: 'middle',\n dominantBaseline: 'central',\n fontSize: theme.fontSizeSmall,\n fontFamily: theme.fontFamily,\n }))\n }\n\n return nodes\n },\n\n hitTest(): HitResult | null {\n return null\n },\n}\n\n/**\n * Stroke-based arc path (open, for use with thick stroke + stroke-linecap:round).\n * Angles in radians, CW from positive X axis (SVG convention).\n */\nfunction strokeArc(\n cx: number, cy: number, r: number,\n startAngle: number, endAngle: number,\n): string {\n const pb = new PathBuilder()\n const x1 = cx + r * Math.cos(startAngle)\n const y1 = cy + r * Math.sin(startAngle)\n const x2 = cx + r * Math.cos(endAngle)\n const y2 = cy + r * Math.sin(endAngle)\n\n let span = endAngle - startAngle\n if (span < 0) span += 2 * Math.PI\n const largeArc = span > Math.PI\n\n pb.moveTo(x1, y1)\n pb.arc(r, r, 0, largeArc, true, x2, y2)\n return pb.build()\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { formatNum } from './chunk-OGSZO22B.js';
2
- import { path, circle, CSS_PREFIX, group, prepareData, PathBuilder } from './chunk-DX4FBN3I.js';
2
+ import { path, circle, CSS_PREFIX, group, prepareData, PathBuilder } from './chunk-AEQXFDL7.js';
3
3
 
4
4
  // src/charts/line/line-type.ts
5
5
  var lineChartType = {
@@ -183,5 +183,5 @@ function buildMonotonePath(points) {
183
183
  }
184
184
 
185
185
  export { lineChartType };
186
- //# sourceMappingURL=chunk-WJP6CRML.js.map
187
- //# sourceMappingURL=chunk-WJP6CRML.js.map
186
+ //# sourceMappingURL=chunk-ZOEN3ARN.js.map
187
+ //# sourceMappingURL=chunk-ZOEN3ARN.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/charts/line/line-type.ts"],"names":[],"mappings":"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","file":"chunk-WJP6CRML.js","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { CSS_PREFIX } from '../../constants'\nimport { prepareData } from '../../data/prepare'\nimport { group, path, circle } from '../../render/tree'\nimport { PathBuilder } from '../../render/tree'\nimport { formatNum } from '../../utils/format'\n\nexport const lineChartType: ChartTypePlugin = {\n type: 'line',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n return prepareData(data, options)\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, options, area, xScale, yScale, theme } = ctx\n const nodes: RenderNode[] = []\n\n for (const series of data.series) {\n const seriesNodes: RenderNode[] = []\n\n // Build line path\n const linePath = buildLinePath(series.values, xScale, yScale, options.curve)\n\n // Area fill (if enabled) — use gradient for premium look\n if (series.fill) {\n const areaPath = buildAreaPath(\n series.values, xScale, yScale, area, options.curve,\n )\n seriesNodes.push(path(areaPath, {\n class: 'chartts-area',\n fill: `url(#chartts-area-${series.index})`,\n 'data-series': series.index,\n }))\n }\n\n const dash = series.style === 'dashed' ? '6,4'\n : series.style === 'dotted' ? '2,3' : undefined\n\n // Main line\n seriesNodes.push(path(linePath, {\n class: 'chartts-line',\n stroke: series.color,\n strokeWidth: theme.lineWidth,\n strokeDasharray: dash,\n 'data-series': series.index,\n }))\n\n // Data points with ambient glow\n if (series.showPoints) {\n for (let i = 0; i < series.values.length; i++) {\n if (isNaN(series.values[i]!)) continue // skip missing data\n const x = xScale.map(i)\n const y = yScale.map(series.values[i]!)\n\n // Ambient glow behind point\n seriesNodes.push(circle(x, y, theme.pointRadius * 3, {\n class: 'chartts-point-glow',\n fill: `url(#chartts-pglow-${series.index})`,\n }))\n\n seriesNodes.push(circle(x, y, theme.pointRadius, {\n class: 'chartts-point',\n fill: series.color,\n stroke: `var(${CSS_PREFIX}-bg, #fff)`,\n strokeWidth: 2,\n 'data-series': series.index,\n 'data-index': i,\n tabindex: 0,\n role: 'img',\n ariaLabel: `${series.name}: ${series.values[i]}`,\n }))\n }\n }\n\n nodes.push(group(seriesNodes, {\n class: `chartts-series chartts-series-${series.index}`,\n 'data-series-name': series.name,\n }))\n }\n\n return nodes\n },\n\n hitTest(ctx: RenderContext, mx: number, my: number): HitResult | null {\n const { data, xScale, yScale } = ctx\n let best: HitResult | null = null\n let bestDist = Infinity\n\n for (const series of data.series) {\n for (let i = 0; i < series.values.length; i++) {\n if (isNaN(series.values[i]!)) continue // skip missing data\n const x = xScale.map(i)\n const y = yScale.map(series.values[i]!)\n const dist = Math.sqrt((mx - x) ** 2 + (my - y) ** 2)\n if (dist < bestDist) {\n bestDist = dist\n best = { seriesIndex: series.index, pointIndex: i, distance: dist, x, y }\n }\n }\n }\n\n return best && best.distance < 30 ? best : null\n },\n}\n\n/** Build a line path string using specified interpolation, skipping NaN gaps */\nfunction buildLinePath(\n values: number[],\n xScale: { map(v: number | string | Date): number },\n yScale: { map(v: number | string | Date): number },\n curve: 'linear' | 'monotone' | 'step',\n): string {\n if (values.length === 0) return ''\n\n // Split into contiguous segments (break at NaN)\n const segments: { x: number; y: number }[][] = []\n let current: { x: number; y: number }[] = []\n for (let i = 0; i < values.length; i++) {\n if (isNaN(values[i]!)) {\n if (current.length > 0) { segments.push(current); current = [] }\n } else {\n current.push({ x: xScale.map(i), y: yScale.map(values[i]!) })\n }\n }\n if (current.length > 0) segments.push(current)\n\n // Build path for each segment\n const builder = curve === 'step' ? buildStepPath\n : curve === 'monotone' ? buildMonotonePath\n : buildLinearPath\n return segments.map(s => builder(s)).join('')\n}\n\n/** Build an area fill path (line path + close along x-axis), skipping NaN gaps */\nfunction buildAreaPath(\n values: number[],\n xScale: { map(v: number | string | Date): number },\n yScale: { map(v: number | string | Date): number },\n area: { y: number; height: number },\n curve: 'linear' | 'monotone' | 'step',\n): string {\n if (values.length === 0) return ''\n\n const baseline = area.y + area.height\n const builder = curve === 'monotone' ? buildMonotonePath\n : curve === 'step' ? buildStepPath\n : buildLinearPath\n\n // Split into contiguous segments (break at NaN)\n const segments: { x: number; y: number }[][] = []\n let current: { x: number; y: number }[] = []\n for (let i = 0; i < values.length; i++) {\n if (isNaN(values[i]!)) {\n if (current.length > 0) { segments.push(current); current = [] }\n } else {\n current.push({ x: xScale.map(i), y: yScale.map(values[i]!) })\n }\n }\n if (current.length > 0) segments.push(current)\n\n // Build closed area for each segment\n return segments.map(pts => {\n const linePart = builder(pts)\n const first = pts[0]!\n const last = pts[pts.length - 1]!\n return `${linePart}L${formatNum(last.x)},${formatNum(baseline)}L${formatNum(first.x)},${formatNum(baseline)}Z`\n }).join('')\n}\n\nfunction buildLinearPath(points: { x: number; y: number }[]): string {\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n for (let i = 1; i < points.length; i++) {\n pb.lineTo(points[i]!.x, points[i]!.y)\n }\n return pb.build()\n}\n\nfunction buildStepPath(points: { x: number; y: number }[]): string {\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n for (let i = 1; i < points.length; i++) {\n const midX = (points[i - 1]!.x + points[i]!.x) / 2\n pb.hTo(midX).vTo(points[i]!.y).hTo(points[i]!.x)\n }\n return pb.build()\n}\n\n/**\n * Monotone cubic interpolation (Fritsch–Carlson).\n * Produces smooth curves that never overshoot the data.\n */\nfunction buildMonotonePath(points: { x: number; y: number }[]): string {\n if (points.length < 2) return buildLinearPath(points)\n if (points.length === 2) return buildLinearPath(points)\n\n const n = points.length\n const dx: number[] = []\n const dy: number[] = []\n const m: number[] = []\n\n // Compute slopes\n for (let i = 0; i < n - 1; i++) {\n dx.push(points[i + 1]!.x - points[i]!.x)\n dy.push(points[i + 1]!.y - points[i]!.y)\n m.push(dy[i]! / (dx[i]! || 1))\n }\n\n // Compute tangents (Fritsch–Carlson)\n const tangents: number[] = [m[0]!]\n for (let i = 1; i < n - 1; i++) {\n if (m[i - 1]! * m[i]! <= 0) {\n tangents.push(0)\n } else {\n tangents.push((m[i - 1]! + m[i]!) / 2)\n }\n }\n tangents.push(m[n - 2]!)\n\n // Build path\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n\n for (let i = 0; i < n - 1; i++) {\n const d = dx[i]! / 3\n pb.curveTo(\n points[i]!.x + d,\n points[i]!.y + tangents[i]! * d,\n points[i + 1]!.x - d,\n points[i + 1]!.y - tangents[i + 1]! * d,\n points[i + 1]!.x,\n points[i + 1]!.y,\n )\n }\n\n return pb.build()\n}\n"]}
1
+ {"version":3,"sources":["../src/charts/line/line-type.ts"],"names":[],"mappings":"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","file":"chunk-ZOEN3ARN.js","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { CSS_PREFIX } from '../../constants'\nimport { prepareData } from '../../data/prepare'\nimport { group, path, circle } from '../../render/tree'\nimport { PathBuilder } from '../../render/tree'\nimport { formatNum } from '../../utils/format'\n\nexport const lineChartType: ChartTypePlugin = {\n type: 'line',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n return prepareData(data, options)\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, options, area, xScale, yScale, theme } = ctx\n const nodes: RenderNode[] = []\n\n for (const series of data.series) {\n const seriesNodes: RenderNode[] = []\n\n // Build line path\n const linePath = buildLinePath(series.values, xScale, yScale, options.curve)\n\n // Area fill (if enabled) — use gradient for premium look\n if (series.fill) {\n const areaPath = buildAreaPath(\n series.values, xScale, yScale, area, options.curve,\n )\n seriesNodes.push(path(areaPath, {\n class: 'chartts-area',\n fill: `url(#chartts-area-${series.index})`,\n 'data-series': series.index,\n }))\n }\n\n const dash = series.style === 'dashed' ? '6,4'\n : series.style === 'dotted' ? '2,3' : undefined\n\n // Main line\n seriesNodes.push(path(linePath, {\n class: 'chartts-line',\n stroke: series.color,\n strokeWidth: theme.lineWidth,\n strokeDasharray: dash,\n 'data-series': series.index,\n }))\n\n // Data points with ambient glow\n if (series.showPoints) {\n for (let i = 0; i < series.values.length; i++) {\n if (isNaN(series.values[i]!)) continue // skip missing data\n const x = xScale.map(i)\n const y = yScale.map(series.values[i]!)\n\n // Ambient glow behind point\n seriesNodes.push(circle(x, y, theme.pointRadius * 3, {\n class: 'chartts-point-glow',\n fill: `url(#chartts-pglow-${series.index})`,\n }))\n\n seriesNodes.push(circle(x, y, theme.pointRadius, {\n class: 'chartts-point',\n fill: series.color,\n stroke: `var(${CSS_PREFIX}-bg, #fff)`,\n strokeWidth: 2,\n 'data-series': series.index,\n 'data-index': i,\n tabindex: 0,\n role: 'img',\n ariaLabel: `${series.name}: ${series.values[i]}`,\n }))\n }\n }\n\n nodes.push(group(seriesNodes, {\n class: `chartts-series chartts-series-${series.index}`,\n 'data-series-name': series.name,\n }))\n }\n\n return nodes\n },\n\n hitTest(ctx: RenderContext, mx: number, my: number): HitResult | null {\n const { data, xScale, yScale } = ctx\n let best: HitResult | null = null\n let bestDist = Infinity\n\n for (const series of data.series) {\n for (let i = 0; i < series.values.length; i++) {\n if (isNaN(series.values[i]!)) continue // skip missing data\n const x = xScale.map(i)\n const y = yScale.map(series.values[i]!)\n const dist = Math.sqrt((mx - x) ** 2 + (my - y) ** 2)\n if (dist < bestDist) {\n bestDist = dist\n best = { seriesIndex: series.index, pointIndex: i, distance: dist, x, y }\n }\n }\n }\n\n return best && best.distance < 30 ? best : null\n },\n}\n\n/** Build a line path string using specified interpolation, skipping NaN gaps */\nfunction buildLinePath(\n values: number[],\n xScale: { map(v: number | string | Date): number },\n yScale: { map(v: number | string | Date): number },\n curve: 'linear' | 'monotone' | 'step',\n): string {\n if (values.length === 0) return ''\n\n // Split into contiguous segments (break at NaN)\n const segments: { x: number; y: number }[][] = []\n let current: { x: number; y: number }[] = []\n for (let i = 0; i < values.length; i++) {\n if (isNaN(values[i]!)) {\n if (current.length > 0) { segments.push(current); current = [] }\n } else {\n current.push({ x: xScale.map(i), y: yScale.map(values[i]!) })\n }\n }\n if (current.length > 0) segments.push(current)\n\n // Build path for each segment\n const builder = curve === 'step' ? buildStepPath\n : curve === 'monotone' ? buildMonotonePath\n : buildLinearPath\n return segments.map(s => builder(s)).join('')\n}\n\n/** Build an area fill path (line path + close along x-axis), skipping NaN gaps */\nfunction buildAreaPath(\n values: number[],\n xScale: { map(v: number | string | Date): number },\n yScale: { map(v: number | string | Date): number },\n area: { y: number; height: number },\n curve: 'linear' | 'monotone' | 'step',\n): string {\n if (values.length === 0) return ''\n\n const baseline = area.y + area.height\n const builder = curve === 'monotone' ? buildMonotonePath\n : curve === 'step' ? buildStepPath\n : buildLinearPath\n\n // Split into contiguous segments (break at NaN)\n const segments: { x: number; y: number }[][] = []\n let current: { x: number; y: number }[] = []\n for (let i = 0; i < values.length; i++) {\n if (isNaN(values[i]!)) {\n if (current.length > 0) { segments.push(current); current = [] }\n } else {\n current.push({ x: xScale.map(i), y: yScale.map(values[i]!) })\n }\n }\n if (current.length > 0) segments.push(current)\n\n // Build closed area for each segment\n return segments.map(pts => {\n const linePart = builder(pts)\n const first = pts[0]!\n const last = pts[pts.length - 1]!\n return `${linePart}L${formatNum(last.x)},${formatNum(baseline)}L${formatNum(first.x)},${formatNum(baseline)}Z`\n }).join('')\n}\n\nfunction buildLinearPath(points: { x: number; y: number }[]): string {\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n for (let i = 1; i < points.length; i++) {\n pb.lineTo(points[i]!.x, points[i]!.y)\n }\n return pb.build()\n}\n\nfunction buildStepPath(points: { x: number; y: number }[]): string {\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n for (let i = 1; i < points.length; i++) {\n const midX = (points[i - 1]!.x + points[i]!.x) / 2\n pb.hTo(midX).vTo(points[i]!.y).hTo(points[i]!.x)\n }\n return pb.build()\n}\n\n/**\n * Monotone cubic interpolation (Fritsch–Carlson).\n * Produces smooth curves that never overshoot the data.\n */\nfunction buildMonotonePath(points: { x: number; y: number }[]): string {\n if (points.length < 2) return buildLinearPath(points)\n if (points.length === 2) return buildLinearPath(points)\n\n const n = points.length\n const dx: number[] = []\n const dy: number[] = []\n const m: number[] = []\n\n // Compute slopes\n for (let i = 0; i < n - 1; i++) {\n dx.push(points[i + 1]!.x - points[i]!.x)\n dy.push(points[i + 1]!.y - points[i]!.y)\n m.push(dy[i]! / (dx[i]! || 1))\n }\n\n // Compute tangents (Fritsch–Carlson)\n const tangents: number[] = [m[0]!]\n for (let i = 1; i < n - 1; i++) {\n if (m[i - 1]! * m[i]! <= 0) {\n tangents.push(0)\n } else {\n tangents.push((m[i - 1]! + m[i]!) / 2)\n }\n }\n tangents.push(m[n - 2]!)\n\n // Build path\n const pb = new PathBuilder()\n pb.moveTo(points[0]!.x, points[0]!.y)\n\n for (let i = 0; i < n - 1; i++) {\n const d = dx[i]! / 3\n pb.curveTo(\n points[i]!.x + d,\n points[i]!.y + tangents[i]! * d,\n points[i + 1]!.x - d,\n points[i + 1]!.y - tangents[i + 1]! * d,\n points[i + 1]!.x,\n points[i + 1]!.y,\n )\n }\n\n return pb.build()\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { getBandwidth } from './chunk-E6PR75X7.js';
2
- import { line, group, prepareData } from './chunk-DX4FBN3I.js';
2
+ import { line, group, prepareData } from './chunk-AEQXFDL7.js';
3
3
 
4
4
  // src/charts/ohlc/ohlc-type.ts
5
5
  var ohlcChartType = {
@@ -100,5 +100,5 @@ var ohlcChartType = {
100
100
  };
101
101
 
102
102
  export { ohlcChartType };
103
- //# sourceMappingURL=chunk-TWSWD4PU.js.map
104
- //# sourceMappingURL=chunk-TWSWD4PU.js.map
103
+ //# sourceMappingURL=chunk-ZYXRRVR6.js.map
104
+ //# sourceMappingURL=chunk-ZYXRRVR6.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/charts/ohlc/ohlc-type.ts"],"names":[],"mappings":"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","file":"chunk-TWSWD4PU.js","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { prepareData } from '../../data/prepare'\nimport { group, line } from '../../render/tree'\nimport { getBandwidth } from '../../utils/scale'\n\nexport interface OHLCOptions {\n /** OHLC data arrays. */\n ohlc?: {\n open: number[]\n high: number[]\n low: number[]\n close: number[]\n }\n /** Up color (close >= open). Default green. */\n upColor?: string\n /** Down color (close < open). Default red. */\n downColor?: string\n /** Line width for stems and ticks. Default 1.5. */\n lineWidth?: number\n}\n\n/**\n * OHLC (Open-High-Low-Close) chart — tick-mark style.\n *\n * Each bar is a vertical line (high→low) with horizontal ticks:\n * - Left tick = open price\n * - Right tick = close price\n * Color indicates direction (green=up, red=down).\n */\nexport const ohlcChartType: ChartTypePlugin = {\n type: 'ohlc',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n const prepared = prepareData(data, options)\n\n if (ohlc) {\n let yMin = prepared.bounds.yMin\n let yMax = prepared.bounds.yMax\n for (let i = 0; i < ohlc.high.length; i++) {\n if (ohlc.high[i]! < yMin) yMin = ohlc.high[i]!\n if (ohlc.high[i]! > yMax) yMax = ohlc.high[i]!\n if (ohlc.low[i]! < yMin) yMin = ohlc.low[i]!\n if (ohlc.low[i]! > yMax) yMax = ohlc.low[i]!\n }\n prepared.bounds.yMin = yMin\n prepared.bounds.yMax = yMax\n }\n\n return prepared\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, xScale, yScale, options } = ctx\n const nodes: RenderNode[] = []\n\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n if (!ohlc) return nodes\n\n const series = data.series[0]\n if (!series) return nodes\n\n const upColor = opts.upColor ?? 'var(--color-emerald-500, #10b981)'\n const downColor = opts.downColor ?? 'var(--color-red-500, #ef4444)'\n const lw = opts.lineWidth ?? 1.5\n\n const bw = getBandwidth(xScale)\n const tickWidth = bw * 0.3\n\n const tickNodes: RenderNode[] = []\n\n for (let i = 0; i < ohlc.open.length; i++) {\n const open = ohlc.open[i]!\n const high = ohlc.high[i]!\n const low = ohlc.low[i]!\n const close = ohlc.close[i]!\n\n const cx = xScale.map(i)\n const isUp = close >= open\n const color = isUp ? upColor : downColor\n\n const yHigh = yScale.map(high)\n const yLow = yScale.map(low)\n const yOpen = yScale.map(open)\n const yClose = yScale.map(close)\n\n // Vertical stem (high → low)\n tickNodes.push(line(cx, yHigh, cx, yLow, {\n class: 'chartts-ohlc-stem',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n }))\n\n // Left tick (open)\n tickNodes.push(line(cx - tickWidth, yOpen, cx, yOpen, {\n class: 'chartts-ohlc-tick',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n }))\n\n // Right tick (close)\n tickNodes.push(line(cx, yClose, cx + tickWidth, yClose, {\n class: 'chartts-ohlc-tick',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n tabindex: 0,\n role: 'img',\n ariaLabel: `${data.labels[i] ?? i}: O${open} H${high} L${low} C${close}`,\n }))\n }\n\n nodes.push(group(tickNodes, {\n class: 'chartts-series chartts-series-0',\n 'data-series-name': series.name,\n }))\n\n return nodes\n },\n\n hitTest(ctx: RenderContext, mx: number, _my: number): HitResult | null {\n const { xScale, yScale, options } = ctx\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n if (!ohlc) return null\n\n const bw = getBandwidth(xScale)\n const half = bw * 0.35\n\n for (let i = 0; i < ohlc.open.length; i++) {\n const cx = xScale.map(i)\n if (mx >= cx - half && mx <= cx + half) {\n return { seriesIndex: 0, pointIndex: i, distance: Math.abs(mx - cx), x: cx, y: yScale.map(ohlc.close[i]!) }\n }\n }\n\n return null\n },\n}\n"]}
1
+ {"version":3,"sources":["../src/charts/ohlc/ohlc-type.ts"],"names":[],"mappings":"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","file":"chunk-ZYXRRVR6.js","sourcesContent":["import type {\n ChartTypePlugin, ChartData, ResolvedOptions, PreparedData,\n RenderContext, RenderNode, HitResult, ScaleType,\n} from '../../types'\nimport { prepareData } from '../../data/prepare'\nimport { group, line } from '../../render/tree'\nimport { getBandwidth } from '../../utils/scale'\n\nexport interface OHLCOptions {\n /** OHLC data arrays. */\n ohlc?: {\n open: number[]\n high: number[]\n low: number[]\n close: number[]\n }\n /** Up color (close >= open). Default green. */\n upColor?: string\n /** Down color (close < open). Default red. */\n downColor?: string\n /** Line width for stems and ticks. Default 1.5. */\n lineWidth?: number\n}\n\n/**\n * OHLC (Open-High-Low-Close) chart — tick-mark style.\n *\n * Each bar is a vertical line (high→low) with horizontal ticks:\n * - Left tick = open price\n * - Right tick = close price\n * Color indicates direction (green=up, red=down).\n */\nexport const ohlcChartType: ChartTypePlugin = {\n type: 'ohlc',\n\n getScaleTypes(): { x: ScaleType; y: ScaleType } {\n return { x: 'categorical', y: 'linear' }\n },\n\n prepareData(data: ChartData, options: ResolvedOptions): PreparedData {\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n const prepared = prepareData(data, options)\n\n if (ohlc) {\n let yMin = prepared.bounds.yMin\n let yMax = prepared.bounds.yMax\n for (let i = 0; i < ohlc.high.length; i++) {\n if (ohlc.high[i]! < yMin) yMin = ohlc.high[i]!\n if (ohlc.high[i]! > yMax) yMax = ohlc.high[i]!\n if (ohlc.low[i]! < yMin) yMin = ohlc.low[i]!\n if (ohlc.low[i]! > yMax) yMax = ohlc.low[i]!\n }\n prepared.bounds.yMin = yMin\n prepared.bounds.yMax = yMax\n }\n\n return prepared\n },\n\n render(ctx: RenderContext): RenderNode[] {\n const { data, xScale, yScale, options } = ctx\n const nodes: RenderNode[] = []\n\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n if (!ohlc) return nodes\n\n const series = data.series[0]\n if (!series) return nodes\n\n const upColor = opts.upColor ?? 'var(--color-emerald-500, #10b981)'\n const downColor = opts.downColor ?? 'var(--color-red-500, #ef4444)'\n const lw = opts.lineWidth ?? 1.5\n\n const bw = getBandwidth(xScale)\n const tickWidth = bw * 0.3\n\n const tickNodes: RenderNode[] = []\n\n for (let i = 0; i < ohlc.open.length; i++) {\n const open = ohlc.open[i]!\n const high = ohlc.high[i]!\n const low = ohlc.low[i]!\n const close = ohlc.close[i]!\n\n const cx = xScale.map(i)\n const isUp = close >= open\n const color = isUp ? upColor : downColor\n\n const yHigh = yScale.map(high)\n const yLow = yScale.map(low)\n const yOpen = yScale.map(open)\n const yClose = yScale.map(close)\n\n // Vertical stem (high → low)\n tickNodes.push(line(cx, yHigh, cx, yLow, {\n class: 'chartts-ohlc-stem',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n }))\n\n // Left tick (open)\n tickNodes.push(line(cx - tickWidth, yOpen, cx, yOpen, {\n class: 'chartts-ohlc-tick',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n }))\n\n // Right tick (close)\n tickNodes.push(line(cx, yClose, cx + tickWidth, yClose, {\n class: 'chartts-ohlc-tick',\n stroke: color,\n strokeWidth: lw,\n 'data-series': 0,\n 'data-index': i,\n tabindex: 0,\n role: 'img',\n ariaLabel: `${data.labels[i] ?? i}: O${open} H${high} L${low} C${close}`,\n }))\n }\n\n nodes.push(group(tickNodes, {\n class: 'chartts-series chartts-series-0',\n 'data-series-name': series.name,\n }))\n\n return nodes\n },\n\n hitTest(ctx: RenderContext, mx: number, _my: number): HitResult | null {\n const { xScale, yScale, options } = ctx\n const opts = options as unknown as OHLCOptions\n const ohlc = opts.ohlc\n if (!ohlc) return null\n\n const bw = getBandwidth(xScale)\n const half = bw * 0.35\n\n for (let i = 0; i < ohlc.open.length; i++) {\n const cx = xScale.map(i)\n if (mx >= cx - half && mx <= cx + half) {\n return { seriesIndex: 0, pointIndex: i, distance: Math.abs(mx - cx), x: cx, y: yScale.map(ohlc.close[i]!) }\n }\n }\n\n return null\n },\n}\n"]}
package/dist/combo.cjs CHANGED
@@ -1,33 +1,33 @@
1
1
  'use strict';
2
2
 
3
- var chunkECB3UPTC_cjs = require('./chunk-ECB3UPTC.cjs');
3
+ var chunk3SVNEKXE_cjs = require('./chunk-3SVNEKXE.cjs');
4
4
  require('./chunk-NHGKZMD7.cjs');
5
5
  require('./chunk-LU35QDPN.cjs');
6
- var chunkZTUKOCJN_cjs = require('./chunk-ZTUKOCJN.cjs');
7
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
6
+ var chunkESJMEDLY_cjs = require('./chunk-ESJMEDLY.cjs');
7
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
8
8
 
9
9
  // src/entries/combo.ts
10
- var Combo = chunkZTUKOCJN_cjs.createConvenience(chunkECB3UPTC_cjs.comboChartType);
10
+ var Combo = chunkESJMEDLY_cjs.createConvenience(chunk3SVNEKXE_cjs.comboChartType);
11
11
 
12
12
  Object.defineProperty(exports, "comboChartType", {
13
13
  enumerable: true,
14
- get: function () { return chunkECB3UPTC_cjs.comboChartType; }
14
+ get: function () { return chunk3SVNEKXE_cjs.comboChartType; }
15
15
  });
16
16
  Object.defineProperty(exports, "applyTheme", {
17
17
  enumerable: true,
18
- get: function () { return chunkUMIJYYF3_cjs.applyTheme; }
18
+ get: function () { return chunkJVVGQLJQ_cjs.applyTheme; }
19
19
  });
20
20
  Object.defineProperty(exports, "createChart", {
21
21
  enumerable: true,
22
- get: function () { return chunkUMIJYYF3_cjs.createChart; }
22
+ get: function () { return chunkJVVGQLJQ_cjs.createChart; }
23
23
  });
24
24
  Object.defineProperty(exports, "renderToString", {
25
25
  enumerable: true,
26
- get: function () { return chunkUMIJYYF3_cjs.renderToString; }
26
+ get: function () { return chunkJVVGQLJQ_cjs.renderToString; }
27
27
  });
28
28
  Object.defineProperty(exports, "resolveTheme", {
29
29
  enumerable: true,
30
- get: function () { return chunkUMIJYYF3_cjs.resolveTheme; }
30
+ get: function () { return chunkJVVGQLJQ_cjs.resolveTheme; }
31
31
  });
32
32
  exports.Combo = Combo;
33
33
  //# sourceMappingURL=combo.cjs.map
package/dist/combo.js CHANGED
@@ -1,9 +1,9 @@
1
- import { comboChartType } from './chunk-5YNIOIKK.js';
2
- export { comboChartType } from './chunk-5YNIOIKK.js';
1
+ import { comboChartType } from './chunk-2BUIZDOB.js';
2
+ export { comboChartType } from './chunk-2BUIZDOB.js';
3
3
  import './chunk-E6PR75X7.js';
4
4
  import './chunk-OGSZO22B.js';
5
- import { createConvenience } from './chunk-K5TPJVOK.js';
6
- export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-DX4FBN3I.js';
5
+ import { createConvenience } from './chunk-HCIBBUV5.js';
6
+ export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-AEQXFDL7.js';
7
7
 
8
8
  // src/entries/combo.ts
9
9
  var Combo = createConvenience(comboChartType);
package/dist/custom.cjs CHANGED
@@ -1,32 +1,32 @@
1
1
  'use strict';
2
2
 
3
- var chunkYX6RW6ZW_cjs = require('./chunk-YX6RW6ZW.cjs');
4
- require('./chunk-CDS2NXGT.cjs');
5
- var chunkZTUKOCJN_cjs = require('./chunk-ZTUKOCJN.cjs');
6
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
3
+ var chunkGBL4R3GH_cjs = require('./chunk-GBL4R3GH.cjs');
4
+ require('./chunk-V5Q6UNUK.cjs');
5
+ var chunkESJMEDLY_cjs = require('./chunk-ESJMEDLY.cjs');
6
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
7
7
 
8
8
  // src/entries/custom.ts
9
- var Custom = chunkZTUKOCJN_cjs.createConvenience(chunkYX6RW6ZW_cjs.customChartType);
9
+ var Custom = chunkESJMEDLY_cjs.createConvenience(chunkGBL4R3GH_cjs.customChartType);
10
10
 
11
11
  Object.defineProperty(exports, "customChartType", {
12
12
  enumerable: true,
13
- get: function () { return chunkYX6RW6ZW_cjs.customChartType; }
13
+ get: function () { return chunkGBL4R3GH_cjs.customChartType; }
14
14
  });
15
15
  Object.defineProperty(exports, "applyTheme", {
16
16
  enumerable: true,
17
- get: function () { return chunkUMIJYYF3_cjs.applyTheme; }
17
+ get: function () { return chunkJVVGQLJQ_cjs.applyTheme; }
18
18
  });
19
19
  Object.defineProperty(exports, "createChart", {
20
20
  enumerable: true,
21
- get: function () { return chunkUMIJYYF3_cjs.createChart; }
21
+ get: function () { return chunkJVVGQLJQ_cjs.createChart; }
22
22
  });
23
23
  Object.defineProperty(exports, "renderToString", {
24
24
  enumerable: true,
25
- get: function () { return chunkUMIJYYF3_cjs.renderToString; }
25
+ get: function () { return chunkJVVGQLJQ_cjs.renderToString; }
26
26
  });
27
27
  Object.defineProperty(exports, "resolveTheme", {
28
28
  enumerable: true,
29
- get: function () { return chunkUMIJYYF3_cjs.resolveTheme; }
29
+ get: function () { return chunkJVVGQLJQ_cjs.resolveTheme; }
30
30
  });
31
31
  exports.Custom = Custom;
32
32
  //# sourceMappingURL=custom.cjs.map
package/dist/custom.js CHANGED
@@ -1,8 +1,8 @@
1
- import { customChartType } from './chunk-DR5MQC3W.js';
2
- export { customChartType } from './chunk-DR5MQC3W.js';
3
- import './chunk-MPQECPE3.js';
4
- import { createConvenience } from './chunk-K5TPJVOK.js';
5
- export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-DX4FBN3I.js';
1
+ import { customChartType } from './chunk-62DBXI4N.js';
2
+ export { customChartType } from './chunk-62DBXI4N.js';
3
+ import './chunk-T7SCCACB.js';
4
+ import { createConvenience } from './chunk-HCIBBUV5.js';
5
+ export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-AEQXFDL7.js';
6
6
 
7
7
  // src/entries/custom.ts
8
8
  var Custom = createConvenience(customChartType);
package/dist/donut.cjs CHANGED
@@ -1,33 +1,33 @@
1
1
  'use strict';
2
2
 
3
- var chunk4WQUX2B4_cjs = require('./chunk-4WQUX2B4.cjs');
4
- require('./chunk-WYIIWTIR.cjs');
5
- require('./chunk-CDS2NXGT.cjs');
6
- var chunkZTUKOCJN_cjs = require('./chunk-ZTUKOCJN.cjs');
7
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
3
+ var chunkYCL43UQM_cjs = require('./chunk-YCL43UQM.cjs');
4
+ require('./chunk-KWSVJRXX.cjs');
5
+ require('./chunk-V5Q6UNUK.cjs');
6
+ var chunkESJMEDLY_cjs = require('./chunk-ESJMEDLY.cjs');
7
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
8
8
 
9
9
  // src/entries/donut.ts
10
- var Donut = chunkZTUKOCJN_cjs.createConvenience(chunk4WQUX2B4_cjs.donutChartType);
10
+ var Donut = chunkESJMEDLY_cjs.createConvenience(chunkYCL43UQM_cjs.donutChartType);
11
11
 
12
12
  Object.defineProperty(exports, "donutChartType", {
13
13
  enumerable: true,
14
- get: function () { return chunk4WQUX2B4_cjs.donutChartType; }
14
+ get: function () { return chunkYCL43UQM_cjs.donutChartType; }
15
15
  });
16
16
  Object.defineProperty(exports, "applyTheme", {
17
17
  enumerable: true,
18
- get: function () { return chunkUMIJYYF3_cjs.applyTheme; }
18
+ get: function () { return chunkJVVGQLJQ_cjs.applyTheme; }
19
19
  });
20
20
  Object.defineProperty(exports, "createChart", {
21
21
  enumerable: true,
22
- get: function () { return chunkUMIJYYF3_cjs.createChart; }
22
+ get: function () { return chunkJVVGQLJQ_cjs.createChart; }
23
23
  });
24
24
  Object.defineProperty(exports, "renderToString", {
25
25
  enumerable: true,
26
- get: function () { return chunkUMIJYYF3_cjs.renderToString; }
26
+ get: function () { return chunkJVVGQLJQ_cjs.renderToString; }
27
27
  });
28
28
  Object.defineProperty(exports, "resolveTheme", {
29
29
  enumerable: true,
30
- get: function () { return chunkUMIJYYF3_cjs.resolveTheme; }
30
+ get: function () { return chunkJVVGQLJQ_cjs.resolveTheme; }
31
31
  });
32
32
  exports.Donut = Donut;
33
33
  //# sourceMappingURL=donut.cjs.map
package/dist/donut.js CHANGED
@@ -1,9 +1,9 @@
1
- import { donutChartType } from './chunk-2MWA7H6J.js';
2
- export { donutChartType } from './chunk-2MWA7H6J.js';
3
- import './chunk-UFMPALRH.js';
4
- import './chunk-MPQECPE3.js';
5
- import { createConvenience } from './chunk-K5TPJVOK.js';
6
- export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-DX4FBN3I.js';
1
+ import { donutChartType } from './chunk-56BN43J4.js';
2
+ export { donutChartType } from './chunk-56BN43J4.js';
3
+ import './chunk-VGJD4F4H.js';
4
+ import './chunk-T7SCCACB.js';
5
+ import { createConvenience } from './chunk-HCIBBUV5.js';
6
+ export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-AEQXFDL7.js';
7
7
 
8
8
  // src/entries/donut.ts
9
9
  var Donut = createConvenience(donutChartType);
package/dist/dumbbell.cjs CHANGED
@@ -1,33 +1,33 @@
1
1
  'use strict';
2
2
 
3
- var chunkDRIJNFWP_cjs = require('./chunk-DRIJNFWP.cjs');
3
+ var chunkPCAYYCLY_cjs = require('./chunk-PCAYYCLY.cjs');
4
4
  require('./chunk-NHGKZMD7.cjs');
5
- require('./chunk-CDS2NXGT.cjs');
6
- var chunkZTUKOCJN_cjs = require('./chunk-ZTUKOCJN.cjs');
7
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
5
+ require('./chunk-V5Q6UNUK.cjs');
6
+ var chunkESJMEDLY_cjs = require('./chunk-ESJMEDLY.cjs');
7
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
8
8
 
9
9
  // src/entries/dumbbell.ts
10
- var Dumbbell = chunkZTUKOCJN_cjs.createConvenience(chunkDRIJNFWP_cjs.dumbbellChartType);
10
+ var Dumbbell = chunkESJMEDLY_cjs.createConvenience(chunkPCAYYCLY_cjs.dumbbellChartType);
11
11
 
12
12
  Object.defineProperty(exports, "dumbbellChartType", {
13
13
  enumerable: true,
14
- get: function () { return chunkDRIJNFWP_cjs.dumbbellChartType; }
14
+ get: function () { return chunkPCAYYCLY_cjs.dumbbellChartType; }
15
15
  });
16
16
  Object.defineProperty(exports, "applyTheme", {
17
17
  enumerable: true,
18
- get: function () { return chunkUMIJYYF3_cjs.applyTheme; }
18
+ get: function () { return chunkJVVGQLJQ_cjs.applyTheme; }
19
19
  });
20
20
  Object.defineProperty(exports, "createChart", {
21
21
  enumerable: true,
22
- get: function () { return chunkUMIJYYF3_cjs.createChart; }
22
+ get: function () { return chunkJVVGQLJQ_cjs.createChart; }
23
23
  });
24
24
  Object.defineProperty(exports, "renderToString", {
25
25
  enumerable: true,
26
- get: function () { return chunkUMIJYYF3_cjs.renderToString; }
26
+ get: function () { return chunkJVVGQLJQ_cjs.renderToString; }
27
27
  });
28
28
  Object.defineProperty(exports, "resolveTheme", {
29
29
  enumerable: true,
30
- get: function () { return chunkUMIJYYF3_cjs.resolveTheme; }
30
+ get: function () { return chunkJVVGQLJQ_cjs.resolveTheme; }
31
31
  });
32
32
  exports.Dumbbell = Dumbbell;
33
33
  //# sourceMappingURL=dumbbell.cjs.map
package/dist/dumbbell.js CHANGED
@@ -1,9 +1,9 @@
1
- import { dumbbellChartType } from './chunk-HMB2RIEE.js';
2
- export { dumbbellChartType } from './chunk-HMB2RIEE.js';
1
+ import { dumbbellChartType } from './chunk-6QMV75NT.js';
2
+ export { dumbbellChartType } from './chunk-6QMV75NT.js';
3
3
  import './chunk-E6PR75X7.js';
4
- import './chunk-MPQECPE3.js';
5
- import { createConvenience } from './chunk-K5TPJVOK.js';
6
- export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-DX4FBN3I.js';
4
+ import './chunk-T7SCCACB.js';
5
+ import { createConvenience } from './chunk-HCIBBUV5.js';
6
+ export { applyTheme, createChart, renderToString, resolveTheme } from './chunk-AEQXFDL7.js';
7
7
 
8
8
  // src/entries/dumbbell.ts
9
9
  var Dumbbell = createConvenience(dumbbellChartType);
package/dist/funnel.cjs CHANGED
@@ -1,32 +1,32 @@
1
1
  'use strict';
2
2
 
3
- var chunkFDNJNVKA_cjs = require('./chunk-FDNJNVKA.cjs');
4
- require('./chunk-CDS2NXGT.cjs');
5
- var chunkZTUKOCJN_cjs = require('./chunk-ZTUKOCJN.cjs');
6
- var chunkUMIJYYF3_cjs = require('./chunk-UMIJYYF3.cjs');
3
+ var chunkIF6RQ53Q_cjs = require('./chunk-IF6RQ53Q.cjs');
4
+ require('./chunk-V5Q6UNUK.cjs');
5
+ var chunkESJMEDLY_cjs = require('./chunk-ESJMEDLY.cjs');
6
+ var chunkJVVGQLJQ_cjs = require('./chunk-JVVGQLJQ.cjs');
7
7
 
8
8
  // src/entries/funnel.ts
9
- var Funnel = chunkZTUKOCJN_cjs.createConvenience(chunkFDNJNVKA_cjs.funnelChartType);
9
+ var Funnel = chunkESJMEDLY_cjs.createConvenience(chunkIF6RQ53Q_cjs.funnelChartType);
10
10
 
11
11
  Object.defineProperty(exports, "funnelChartType", {
12
12
  enumerable: true,
13
- get: function () { return chunkFDNJNVKA_cjs.funnelChartType; }
13
+ get: function () { return chunkIF6RQ53Q_cjs.funnelChartType; }
14
14
  });
15
15
  Object.defineProperty(exports, "applyTheme", {
16
16
  enumerable: true,
17
- get: function () { return chunkUMIJYYF3_cjs.applyTheme; }
17
+ get: function () { return chunkJVVGQLJQ_cjs.applyTheme; }
18
18
  });
19
19
  Object.defineProperty(exports, "createChart", {
20
20
  enumerable: true,
21
- get: function () { return chunkUMIJYYF3_cjs.createChart; }
21
+ get: function () { return chunkJVVGQLJQ_cjs.createChart; }
22
22
  });
23
23
  Object.defineProperty(exports, "renderToString", {
24
24
  enumerable: true,
25
- get: function () { return chunkUMIJYYF3_cjs.renderToString; }
25
+ get: function () { return chunkJVVGQLJQ_cjs.renderToString; }
26
26
  });
27
27
  Object.defineProperty(exports, "resolveTheme", {
28
28
  enumerable: true,
29
- get: function () { return chunkUMIJYYF3_cjs.resolveTheme; }
29
+ get: function () { return chunkJVVGQLJQ_cjs.resolveTheme; }
30
30
  });
31
31
  exports.Funnel = Funnel;
32
32
  //# sourceMappingURL=funnel.cjs.map