@visactor/vchart 1.0.1-alpha.2 → 1.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. package/build/index.js +6014 -5864
  2. package/build/index.min.js +2 -2
  3. package/cjs/chart/area/area.d.ts +1 -0
  4. package/cjs/chart/area/area.js +4 -1
  5. package/cjs/chart/area/area.js.map +1 -1
  6. package/cjs/chart/bar/bar.d.ts +1 -0
  7. package/cjs/chart/bar/bar.js +4 -1
  8. package/cjs/chart/bar/bar.js.map +1 -1
  9. package/cjs/chart/base-chart.js +2 -1
  10. package/cjs/chart/base-chart.js.map +1 -1
  11. package/cjs/chart/box-plot/box-plot.js +2 -2
  12. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  13. package/cjs/chart/histogram/histogram.d.ts +1 -0
  14. package/cjs/chart/histogram/histogram.js +4 -1
  15. package/cjs/chart/histogram/histogram.js.map +1 -1
  16. package/cjs/chart/line/line.d.ts +1 -0
  17. package/cjs/chart/line/line.js +4 -1
  18. package/cjs/chart/line/line.js.map +1 -1
  19. package/cjs/chart/range-area/range-area.d.ts +1 -0
  20. package/cjs/chart/range-area/range-area.js +4 -1
  21. package/cjs/chart/range-area/range-area.js.map +1 -1
  22. package/cjs/chart/range-column/range-column.d.ts +1 -0
  23. package/cjs/chart/range-column/range-column.js +4 -1
  24. package/cjs/chart/range-column/range-column.js.map +1 -1
  25. package/cjs/chart/sequence/sequence.js +1 -1
  26. package/cjs/chart/sequence/sequence.js.map +1 -1
  27. package/cjs/chart/util.d.ts +2 -0
  28. package/cjs/chart/util.js +23 -0
  29. package/cjs/chart/util.js.map +1 -0
  30. package/cjs/chart/waterfall/waterfall.js +2 -2
  31. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  32. package/cjs/compile/grammar-item.js +2 -1
  33. package/cjs/component/axis/cartesian/axis.js +1 -1
  34. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  35. package/cjs/component/crosshair/base.js +1 -2
  36. package/cjs/component/crosshair/base.js.map +1 -1
  37. package/cjs/component/crosshair/interface/spec.d.ts +1 -1
  38. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  39. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  40. package/cjs/component/index.js +1 -2
  41. package/cjs/component/legend/base-legend.js +7 -3
  42. package/cjs/component/legend/base-legend.js.map +1 -1
  43. package/cjs/component/legend/util.d.ts +1 -1
  44. package/cjs/component/player/utils/transform.js +1 -3
  45. package/cjs/component/player/utils/transform.js.map +1 -1
  46. package/cjs/component/tooltip/handler/base.d.ts +5 -4
  47. package/cjs/component/tooltip/handler/base.js +44 -34
  48. package/cjs/component/tooltip/handler/base.js.map +1 -1
  49. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  50. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -2
  51. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  52. package/cjs/component/tooltip/handler/constants.d.ts +4 -0
  53. package/cjs/component/tooltip/handler/constants.js +5 -2
  54. package/cjs/component/tooltip/handler/constants.js.map +1 -1
  55. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
  56. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -13
  57. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  58. package/cjs/component/tooltip/handler/dom/interface.d.ts +16 -5
  59. package/cjs/component/tooltip/handler/dom/interface.js.map +1 -1
  60. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
  61. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js +12 -27
  62. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  63. package/cjs/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
  64. package/cjs/component/tooltip/handler/dom/model/content-column-model.js +46 -26
  65. package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  66. package/cjs/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
  67. package/cjs/component/tooltip/handler/dom/model/content-model.js +4 -4
  68. package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  69. package/cjs/component/tooltip/handler/dom/model/interface.d.ts +4 -0
  70. package/cjs/component/tooltip/handler/dom/model/interface.js.map +1 -1
  71. package/cjs/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
  72. package/cjs/component/tooltip/handler/dom/model/shape-model.js +4 -4
  73. package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  74. package/cjs/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
  75. package/cjs/component/tooltip/handler/dom/model/style-constants.js +16 -18
  76. package/cjs/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  77. package/cjs/component/tooltip/handler/dom/model/text-model.js +1 -0
  78. package/cjs/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  79. package/cjs/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
  80. package/cjs/component/tooltip/handler/dom/model/title-model.js +15 -19
  81. package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  82. package/cjs/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
  83. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js +21 -16
  84. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  85. package/cjs/component/tooltip/handler/dom/util.d.ts +5 -0
  86. package/cjs/component/tooltip/handler/dom/{utils/style.js → util.js} +32 -20
  87. package/cjs/component/tooltip/handler/dom/util.js.map +1 -0
  88. package/cjs/component/tooltip/handler/interface/index.d.ts +0 -1
  89. package/cjs/component/tooltip/handler/interface/index.js +1 -1
  90. package/cjs/component/tooltip/handler/interface/index.js.map +1 -1
  91. package/cjs/component/tooltip/handler/utils/attribute.js +12 -8
  92. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  93. package/cjs/component/tooltip/handler/utils/common.d.ts +6 -2
  94. package/cjs/component/tooltip/handler/utils/common.js +30 -5
  95. package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
  96. package/cjs/component/tooltip/handler/utils/compose.d.ts +3 -2
  97. package/cjs/component/tooltip/handler/utils/compose.js +56 -45
  98. package/cjs/component/tooltip/handler/utils/compose.js.map +1 -1
  99. package/cjs/component/tooltip/handler/utils/get-spec.js +64 -28
  100. package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
  101. package/cjs/component/tooltip/handler/utils/style.d.ts +2 -1
  102. package/cjs/component/tooltip/handler/utils/style.js +4 -4
  103. package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
  104. package/cjs/component/tooltip/tooltip.d.ts +3 -1
  105. package/cjs/component/tooltip/tooltip.js +33 -18
  106. package/cjs/component/tooltip/tooltip.js.map +1 -1
  107. package/cjs/component/tooltip/utils/common.js +4 -2
  108. package/cjs/component/tooltip/utils/common.js.map +1 -1
  109. package/cjs/constant/marker.js +2 -1
  110. package/cjs/core/factory.js +1 -2
  111. package/cjs/core/index.d.ts +1 -1
  112. package/cjs/core/index.js +1 -1
  113. package/cjs/core/index.js.map +1 -1
  114. package/cjs/core/instance-manager.d.ts +1 -1
  115. package/cjs/core/instance-manager.js.map +1 -1
  116. package/cjs/core/vchart.d.ts +1 -0
  117. package/cjs/core/vchart.js +10 -2
  118. package/cjs/core/vchart.js.map +1 -1
  119. package/cjs/interaction/interface.js +1 -1
  120. package/cjs/interaction/trigger.js +1 -1
  121. package/cjs/layout/base-layout.js +9 -10
  122. package/cjs/layout/base-layout.js.map +1 -1
  123. package/cjs/layout/grid-layout/grid-layout.d.ts +5 -35
  124. package/cjs/layout/grid-layout/grid-layout.js +2 -1
  125. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  126. package/cjs/layout/index.d.ts +1 -2
  127. package/cjs/layout/index.js.map +1 -1
  128. package/cjs/layout/interface.d.ts +31 -3
  129. package/cjs/layout/interface.js.map +1 -1
  130. package/cjs/mark/arc-3d.js +1 -1
  131. package/cjs/mark/arc.d.ts +5 -4
  132. package/cjs/mark/arc.js +11 -13
  133. package/cjs/mark/arc.js.map +1 -1
  134. package/cjs/mark/area.js +1 -1
  135. package/cjs/mark/base/base-line.js +3 -3
  136. package/cjs/mark/base/base-line.js.map +1 -1
  137. package/cjs/mark/base/base-mark.d.ts +7 -0
  138. package/cjs/mark/base/base-mark.js +10 -6
  139. package/cjs/mark/base/base-mark.js.map +1 -1
  140. package/cjs/mark/box-plot.js +1 -1
  141. package/cjs/mark/cell.js +1 -1
  142. package/cjs/mark/utils/common.d.ts +0 -12
  143. package/cjs/mark/utils/common.js +2 -13
  144. package/cjs/mark/utils/common.js.map +1 -1
  145. package/cjs/model/base-model.js +1 -1
  146. package/cjs/model/interface.js +1 -1
  147. package/cjs/model/layout-item.js +2 -1
  148. package/cjs/model/model-state-manager.js +1 -1
  149. package/cjs/model/tooltip-helper.d.ts +3 -4
  150. package/cjs/model/tooltip-helper.js +5 -10
  151. package/cjs/model/tooltip-helper.js.map +1 -1
  152. package/cjs/plugin/interface.js +1 -1
  153. package/cjs/region/interface.js +1 -1
  154. package/cjs/region/region.js +6 -11
  155. package/cjs/region/region.js.map +1 -1
  156. package/cjs/series/base/base-series.js +1 -1
  157. package/cjs/series/base/base-series.js.map +1 -1
  158. package/cjs/series/base/tooltip-helper.d.ts +9 -8
  159. package/cjs/series/base/tooltip-helper.js +23 -12
  160. package/cjs/series/base/tooltip-helper.js.map +1 -1
  161. package/cjs/series/dot/dot.js +2 -2
  162. package/cjs/series/dot/dot.js.map +1 -1
  163. package/cjs/series/dot/tooltip-helper.d.ts +1 -2
  164. package/cjs/series/dot/tooltip-helper.js +6 -5
  165. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  166. package/cjs/series/funnel/funnel.d.ts +1 -1
  167. package/cjs/series/funnel/funnel.js +8 -8
  168. package/cjs/series/funnel/funnel.js.map +1 -1
  169. package/cjs/series/funnel/tooltip-helper.d.ts +5 -3
  170. package/cjs/series/funnel/tooltip-helper.js +10 -8
  171. package/cjs/series/funnel/tooltip-helper.js.map +1 -1
  172. package/cjs/series/interface/series.d.ts +2 -1
  173. package/cjs/series/interface/series.js.map +1 -1
  174. package/cjs/series/interface/tooltip-helper.d.ts +6 -6
  175. package/cjs/series/interface/tooltip-helper.js.map +1 -1
  176. package/cjs/series/link/link.js +2 -2
  177. package/cjs/series/link/link.js.map +1 -1
  178. package/cjs/series/treemap/treemap.js.map +1 -1
  179. package/cjs/series/word-cloud/base.js +2 -2
  180. package/cjs/series/word-cloud/base.js.map +1 -1
  181. package/cjs/series/word-cloud/word-cloud-3d.js +3 -3
  182. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  183. package/cjs/theme/buildin-theme/index.d.ts +0 -1
  184. package/cjs/theme/buildin-theme/index.js +3 -3
  185. package/cjs/theme/buildin-theme/index.js.map +1 -1
  186. package/cjs/theme/buildin-theme/light/component/crosshair.js +4 -4
  187. package/cjs/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  188. package/cjs/theme/buildin-theme/light/component/tooltip.js +1 -0
  189. package/cjs/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  190. package/cjs/typings/spec/common.d.ts +1 -1
  191. package/cjs/typings/spec/common.js.map +1 -1
  192. package/cjs/typings/tooltip/common.d.ts +7 -1
  193. package/cjs/typings/tooltip/common.js.map +1 -1
  194. package/cjs/typings/tooltip/handler.d.ts +1 -1
  195. package/cjs/typings/tooltip/handler.js.map +1 -1
  196. package/cjs/typings/tooltip/line.d.ts +6 -4
  197. package/cjs/typings/tooltip/line.js.map +1 -1
  198. package/cjs/typings/tooltip/shape.d.ts +3 -3
  199. package/cjs/typings/tooltip/shape.js.map +1 -1
  200. package/cjs/typings/tooltip/tooltip.d.ts +11 -8
  201. package/cjs/typings/tooltip/tooltip.js.map +1 -1
  202. package/cjs/typings/visual.d.ts +4 -11
  203. package/cjs/typings/visual.js.map +1 -1
  204. package/cjs/util/debug.d.ts +3 -3
  205. package/cjs/util/debug.js +11 -20
  206. package/cjs/util/debug.js.map +1 -1
  207. package/cjs/util/index.d.ts +1 -0
  208. package/cjs/util/index.js +2 -1
  209. package/cjs/util/index.js.map +1 -1
  210. package/cjs/util/style.js +3 -7
  211. package/cjs/util/style.js.map +1 -1
  212. package/esm/chart/area/area.d.ts +1 -0
  213. package/esm/chart/area/area.js +5 -0
  214. package/esm/chart/area/area.js.map +1 -1
  215. package/esm/chart/bar/bar.d.ts +1 -0
  216. package/esm/chart/bar/bar.js +5 -0
  217. package/esm/chart/bar/bar.js.map +1 -1
  218. package/esm/chart/base-chart.js +2 -1
  219. package/esm/chart/base-chart.js.map +1 -1
  220. package/esm/chart/box-plot/box-plot.js +3 -1
  221. package/esm/chart/box-plot/box-plot.js.map +1 -1
  222. package/esm/chart/histogram/histogram.d.ts +1 -0
  223. package/esm/chart/histogram/histogram.js +5 -0
  224. package/esm/chart/histogram/histogram.js.map +1 -1
  225. package/esm/chart/line/line.d.ts +1 -0
  226. package/esm/chart/line/line.js +5 -0
  227. package/esm/chart/line/line.js.map +1 -1
  228. package/esm/chart/range-area/range-area.d.ts +1 -0
  229. package/esm/chart/range-area/range-area.js +5 -0
  230. package/esm/chart/range-area/range-area.js.map +1 -1
  231. package/esm/chart/range-column/range-column.d.ts +1 -0
  232. package/esm/chart/range-column/range-column.js +5 -0
  233. package/esm/chart/range-column/range-column.js.map +1 -1
  234. package/esm/chart/sequence/sequence.js +2 -2
  235. package/esm/chart/sequence/sequence.js.map +1 -1
  236. package/esm/chart/util.d.ts +2 -0
  237. package/esm/chart/util.js +16 -0
  238. package/esm/chart/util.js.map +1 -0
  239. package/esm/chart/waterfall/waterfall.js +3 -1
  240. package/esm/chart/waterfall/waterfall.js.map +1 -1
  241. package/esm/compile/grammar-item.js +2 -1
  242. package/esm/component/axis/cartesian/axis.js +2 -2
  243. package/esm/component/axis/cartesian/axis.js.map +1 -1
  244. package/esm/component/crosshair/base.js +1 -2
  245. package/esm/component/crosshair/base.js.map +1 -1
  246. package/esm/component/crosshair/interface/spec.d.ts +1 -1
  247. package/esm/component/crosshair/interface/spec.js.map +1 -1
  248. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  249. package/esm/component/index.js +1 -2
  250. package/esm/component/legend/base-legend.js +7 -3
  251. package/esm/component/legend/base-legend.js.map +1 -1
  252. package/esm/component/legend/util.d.ts +1 -1
  253. package/esm/component/player/utils/transform.js +1 -3
  254. package/esm/component/player/utils/transform.js.map +1 -1
  255. package/esm/component/tooltip/handler/base.d.ts +5 -4
  256. package/esm/component/tooltip/handler/base.js +45 -35
  257. package/esm/component/tooltip/handler/base.js.map +1 -1
  258. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  259. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -3
  260. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  261. package/esm/component/tooltip/handler/constants.d.ts +4 -0
  262. package/esm/component/tooltip/handler/constants.js +9 -0
  263. package/esm/component/tooltip/handler/constants.js.map +1 -1
  264. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
  265. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -12
  266. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  267. package/esm/component/tooltip/handler/dom/interface.d.ts +16 -5
  268. package/esm/component/tooltip/handler/dom/interface.js.map +1 -1
  269. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
  270. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js +11 -29
  271. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  272. package/esm/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
  273. package/esm/component/tooltip/handler/dom/model/content-column-model.js +46 -24
  274. package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  275. package/esm/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
  276. package/esm/component/tooltip/handler/dom/model/content-model.js +5 -5
  277. package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  278. package/esm/component/tooltip/handler/dom/model/interface.d.ts +4 -0
  279. package/esm/component/tooltip/handler/dom/model/interface.js.map +1 -1
  280. package/esm/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
  281. package/esm/component/tooltip/handler/dom/model/shape-model.js +4 -4
  282. package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  283. package/esm/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
  284. package/esm/component/tooltip/handler/dom/model/style-constants.js +18 -20
  285. package/esm/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  286. package/esm/component/tooltip/handler/dom/model/text-model.js +1 -0
  287. package/esm/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  288. package/esm/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
  289. package/esm/component/tooltip/handler/dom/model/title-model.js +15 -19
  290. package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  291. package/esm/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
  292. package/esm/component/tooltip/handler/dom/model/tooltip-model.js +22 -16
  293. package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  294. package/esm/component/tooltip/handler/dom/util.d.ts +5 -0
  295. package/esm/component/tooltip/handler/dom/util.js +71 -0
  296. package/esm/component/tooltip/handler/dom/util.js.map +1 -0
  297. package/esm/component/tooltip/handler/interface/index.d.ts +0 -1
  298. package/esm/component/tooltip/handler/interface/index.js +0 -2
  299. package/esm/component/tooltip/handler/interface/index.js.map +1 -1
  300. package/esm/component/tooltip/handler/utils/attribute.js +11 -7
  301. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  302. package/esm/component/tooltip/handler/utils/common.d.ts +6 -2
  303. package/esm/component/tooltip/handler/utils/common.js +25 -2
  304. package/esm/component/tooltip/handler/utils/common.js.map +1 -1
  305. package/esm/component/tooltip/handler/utils/compose.d.ts +3 -2
  306. package/esm/component/tooltip/handler/utils/compose.js +52 -43
  307. package/esm/component/tooltip/handler/utils/compose.js.map +1 -1
  308. package/esm/component/tooltip/handler/utils/get-spec.js +60 -23
  309. package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
  310. package/esm/component/tooltip/handler/utils/style.d.ts +2 -1
  311. package/esm/component/tooltip/handler/utils/style.js +4 -4
  312. package/esm/component/tooltip/handler/utils/style.js.map +1 -1
  313. package/esm/component/tooltip/tooltip.d.ts +3 -1
  314. package/esm/component/tooltip/tooltip.js +33 -18
  315. package/esm/component/tooltip/tooltip.js.map +1 -1
  316. package/esm/component/tooltip/utils/common.js +4 -2
  317. package/esm/component/tooltip/utils/common.js.map +1 -1
  318. package/esm/constant/marker.js +2 -1
  319. package/esm/core/factory.js +1 -2
  320. package/esm/core/index.d.ts +1 -1
  321. package/esm/core/index.js +1 -1
  322. package/esm/core/index.js.map +1 -1
  323. package/esm/core/instance-manager.d.ts +1 -1
  324. package/esm/core/instance-manager.js.map +1 -1
  325. package/esm/core/vchart.d.ts +1 -0
  326. package/esm/core/vchart.js +9 -2
  327. package/esm/core/vchart.js.map +1 -1
  328. package/esm/interaction/interface.js +1 -1
  329. package/esm/interaction/trigger.js +1 -1
  330. package/esm/layout/base-layout.js +9 -10
  331. package/esm/layout/base-layout.js.map +1 -1
  332. package/esm/layout/grid-layout/grid-layout.d.ts +5 -35
  333. package/esm/layout/grid-layout/grid-layout.js +2 -1
  334. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  335. package/esm/layout/index.d.ts +1 -2
  336. package/esm/layout/index.js.map +1 -1
  337. package/esm/layout/interface.d.ts +31 -3
  338. package/esm/layout/interface.js.map +1 -1
  339. package/esm/mark/arc-3d.js +1 -1
  340. package/esm/mark/arc.d.ts +5 -4
  341. package/esm/mark/arc.js +11 -13
  342. package/esm/mark/arc.js.map +1 -1
  343. package/esm/mark/area.js +1 -1
  344. package/esm/mark/base/base-line.js +2 -4
  345. package/esm/mark/base/base-line.js.map +1 -1
  346. package/esm/mark/base/base-mark.d.ts +7 -0
  347. package/esm/mark/base/base-mark.js +9 -7
  348. package/esm/mark/base/base-mark.js.map +1 -1
  349. package/esm/mark/box-plot.js +1 -1
  350. package/esm/mark/cell.js +1 -1
  351. package/esm/mark/utils/common.d.ts +0 -12
  352. package/esm/mark/utils/common.js +0 -13
  353. package/esm/mark/utils/common.js.map +1 -1
  354. package/esm/model/base-model.js +1 -1
  355. package/esm/model/interface.js +1 -1
  356. package/esm/model/layout-item.js +2 -1
  357. package/esm/model/model-state-manager.js +1 -1
  358. package/esm/model/tooltip-helper.d.ts +3 -4
  359. package/esm/model/tooltip-helper.js +5 -10
  360. package/esm/model/tooltip-helper.js.map +1 -1
  361. package/esm/plugin/interface.js +1 -1
  362. package/esm/region/interface.js +1 -1
  363. package/esm/region/region.js +7 -11
  364. package/esm/region/region.js.map +1 -1
  365. package/esm/series/base/base-series.js +1 -1
  366. package/esm/series/base/base-series.js.map +1 -1
  367. package/esm/series/base/tooltip-helper.d.ts +9 -8
  368. package/esm/series/base/tooltip-helper.js +23 -12
  369. package/esm/series/base/tooltip-helper.js.map +1 -1
  370. package/esm/series/dot/dot.js +1 -3
  371. package/esm/series/dot/dot.js.map +1 -1
  372. package/esm/series/dot/tooltip-helper.d.ts +1 -2
  373. package/esm/series/dot/tooltip-helper.js +7 -4
  374. package/esm/series/dot/tooltip-helper.js.map +1 -1
  375. package/esm/series/funnel/funnel.d.ts +1 -1
  376. package/esm/series/funnel/funnel.js +8 -8
  377. package/esm/series/funnel/funnel.js.map +1 -1
  378. package/esm/series/funnel/tooltip-helper.d.ts +5 -3
  379. package/esm/series/funnel/tooltip-helper.js +11 -7
  380. package/esm/series/funnel/tooltip-helper.js.map +1 -1
  381. package/esm/series/interface/series.d.ts +2 -1
  382. package/esm/series/interface/series.js.map +1 -1
  383. package/esm/series/interface/tooltip-helper.d.ts +6 -6
  384. package/esm/series/interface/tooltip-helper.js.map +1 -1
  385. package/esm/series/link/link.js +1 -3
  386. package/esm/series/link/link.js.map +1 -1
  387. package/esm/series/treemap/treemap.js.map +1 -1
  388. package/esm/series/word-cloud/base.js +3 -3
  389. package/esm/series/word-cloud/base.js.map +1 -1
  390. package/esm/series/word-cloud/word-cloud-3d.js +2 -4
  391. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  392. package/esm/theme/buildin-theme/index.d.ts +0 -1
  393. package/esm/theme/buildin-theme/index.js +1 -5
  394. package/esm/theme/buildin-theme/index.js.map +1 -1
  395. package/esm/theme/buildin-theme/light/component/crosshair.js +4 -4
  396. package/esm/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  397. package/esm/theme/buildin-theme/light/component/tooltip.js +1 -0
  398. package/esm/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  399. package/esm/typings/spec/common.d.ts +1 -1
  400. package/esm/typings/spec/common.js.map +1 -1
  401. package/esm/typings/tooltip/common.d.ts +7 -1
  402. package/esm/typings/tooltip/common.js.map +1 -1
  403. package/esm/typings/tooltip/handler.d.ts +1 -1
  404. package/esm/typings/tooltip/handler.js.map +1 -1
  405. package/esm/typings/tooltip/line.d.ts +6 -4
  406. package/esm/typings/tooltip/line.js.map +1 -1
  407. package/esm/typings/tooltip/shape.d.ts +3 -3
  408. package/esm/typings/tooltip/shape.js.map +1 -1
  409. package/esm/typings/tooltip/tooltip.d.ts +11 -8
  410. package/esm/typings/tooltip/tooltip.js.map +1 -1
  411. package/esm/typings/visual.d.ts +4 -11
  412. package/esm/typings/visual.js.map +1 -1
  413. package/esm/util/debug.d.ts +3 -3
  414. package/esm/util/debug.js +11 -14
  415. package/esm/util/debug.js.map +1 -1
  416. package/esm/util/index.d.ts +1 -0
  417. package/esm/util/index.js +2 -0
  418. package/esm/util/index.js.map +1 -1
  419. package/esm/util/style.js +3 -8
  420. package/esm/util/style.js.map +1 -1
  421. package/package.json +35 -39
  422. package/cjs/component/tooltip/handler/dom/utils/style.d.ts +0 -3
  423. package/cjs/component/tooltip/handler/dom/utils/style.js.map +0 -1
  424. package/cjs/component/tooltip/handler/interface/cache.d.ts +0 -28
  425. package/cjs/component/tooltip/handler/interface/cache.js +0 -6
  426. package/cjs/component/tooltip/handler/interface/cache.js.map +0 -1
  427. package/cjs/theme/buildin-theme/dark.d.ts +0 -2
  428. package/cjs/theme/buildin-theme/dark.js +0 -16
  429. package/cjs/theme/buildin-theme/dark.js.map +0 -1
  430. package/esm/component/tooltip/handler/dom/utils/style.d.ts +0 -3
  431. package/esm/component/tooltip/handler/dom/utils/style.js +0 -59
  432. package/esm/component/tooltip/handler/dom/utils/style.js.map +0 -1
  433. package/esm/component/tooltip/handler/interface/cache.d.ts +0 -28
  434. package/esm/component/tooltip/handler/interface/cache.js +0 -2
  435. package/esm/component/tooltip/handler/interface/cache.js.map +0 -1
  436. package/esm/theme/buildin-theme/dark.d.ts +0 -2
  437. package/esm/theme/buildin-theme/dark.js +0 -12
  438. package/esm/theme/buildin-theme/dark.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/content-column-model.ts"],"names":[],"mappings":"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","file":"content-column-model.js","sourcesContent":["import { isNumber, isString, merge, toNumber } from '@visactor/vutils';\nimport { defaultKeyStyle, defaultShapeBoxStyle, defaultValueStyle } from './style-constants';\nimport { BaseTooltipModel, TOOLTIP_EMPTY_STRING } from './base-tooltip-model';\nimport type { ITooltipModelOption } from './interface';\nimport type { IShapeSvgOption } from './shape-model';\n// eslint-disable-next-line no-duplicate-imports\nimport { ShapeModel } from './shape-model';\nimport { TextModel } from './text-model';\nimport type { IDomTooltipStyle } from '../interface';\nimport type { IToolTipActual } from '../../../../../typings';\n\nexport type ContentColumnType = 'shape-box' | 'key-box' | 'value-box';\n\nexport class ContentColumnModel extends BaseTooltipModel {\n readonly className: ContentColumnType;\n\n constructor(\n parent: BaseTooltipModel | HTMLElement,\n option: ITooltipModelOption,\n className: ContentColumnType,\n childIndex?: number,\n tooltipStyle?: IDomTooltipStyle,\n tooltipActual?: IToolTipActual\n ) {\n super(parent, option, childIndex, tooltipStyle, tooltipActual);\n this.className = className;\n }\n\n init(): void {\n if (!this.product) {\n this.product = this.createElement('div', [this.className]);\n }\n const renderContent = this.getRenderContent();\n\n if (this.className === 'shape-box' && !renderContent.some(c => c.hasShape && c.shapeType)) {\n // 当有一行配有形状的时候,其他行要对齐。如果没有一行配有形状,则删除所有的行\n Object.keys(this.children).forEach(key => {\n const i = toNumber(key);\n this.children[i].release();\n delete this.children[i];\n });\n } else {\n // 删除多余的行\n Object.keys(this.children).forEach(key => {\n const i = toNumber(key);\n if (i >= renderContent.length) {\n this.children[i].release();\n delete this.children[i];\n }\n });\n // 新增没有的行\n for (let i = 0; i < renderContent.length; i++) {\n if (!this.children[i]) {\n if (this.className === 'key-box' || this.className === 'value-box') {\n const text = new TextModel(this.product, this._option, i, this._tooltipStyle, this._tooltipActual);\n text.init([this.className.substring(0, this.className.indexOf('-'))], undefined, 'div');\n this.children[i] = text;\n } else if (this.className === 'shape-box') {\n const shape = new ShapeModel(this.product, this._option, i, this._tooltipStyle, this._tooltipActual);\n shape.init(['shape'], undefined, 'div');\n this.children[i] = shape;\n }\n }\n }\n }\n }\n\n setStyle() {\n if (!this._tooltipStyle) {\n return;\n }\n\n super.setStyle(merge({}, defaultShapeBoxStyle, this._tooltipStyle.content));\n\n const renderContent = this.getRenderContent();\n renderContent.forEach((line, i) => {\n let childStyle: any = {};\n if (this.className === 'key-box') {\n const keyContent = line.key;\n childStyle = merge({}, defaultKeyStyle, {\n height: `${100 / renderContent.length}%`,\n ...this._tooltipStyle.content.key\n });\n const hasContent = (isString(keyContent) && keyContent?.trim?.() !== '') || isNumber(keyContent);\n if (!hasContent && !childStyle.visibility) {\n childStyle.visibility = 'hidden';\n } else {\n childStyle.visibility = 'visible';\n }\n (this.children[i] as TextModel).setStyle(childStyle);\n } else if (this.className === 'value-box') {\n childStyle = merge({}, defaultValueStyle, {\n height: `${100 / renderContent.length}%`,\n ...this._tooltipStyle.content.value\n });\n (this.children[i] as TextModel).setStyle(childStyle);\n } else if (this.className === 'shape-box') {\n childStyle = this._tooltipStyle.content.shape;\n const childContent = {\n hasShape: line.hasShape,\n shapeType: line.shapeType,\n size: this._tooltipStyle.content.shape.width,\n color: line.shapeColor,\n hollow: line.shapeHollow\n } as IShapeSvgOption;\n (this.children[i] as ShapeModel)?.setStyle(childStyle, childContent);\n }\n });\n }\n\n setContent(): void {\n if (!this._tooltipStyle) {\n return;\n }\n\n const renderContent = this.getRenderContent();\n renderContent.forEach((line, i) => {\n let childContent: any;\n if (this.className === 'key-box') {\n const keyContent = line.key;\n if ((isString(keyContent) && keyContent?.trim?.() !== '') || isNumber(keyContent)) {\n childContent = keyContent;\n } else {\n childContent = TOOLTIP_EMPTY_STRING;\n }\n } else if (this.className === 'value-box') {\n const valueContent = line.value;\n if ((isString(valueContent) && valueContent?.trim?.() !== '') || isNumber(valueContent)) {\n childContent = valueContent;\n } else {\n childContent = TOOLTIP_EMPTY_STRING;\n }\n } else if (this.className === 'shape-box') {\n childContent = {\n hasShape: line.hasShape,\n shapeType: line.shapeType,\n size: this._tooltipStyle.content.shape.width,\n color: line.shapeColor,\n hollow: line.shapeHollow\n } as IShapeSvgOption;\n }\n this.children[i]?.setContent(childContent);\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/content-column-model.ts"],"names":[],"mappings":"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","file":"content-column-model.js","sourcesContent":["import { isNumber, isString, merge, toNumber } from '@visactor/vutils';\nimport {\n defaultKeyStyle,\n defaultContentColumnStyle,\n defaultValueStyle,\n defaultAdaptiveKeyStyle\n} from './style-constants';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport type { ITooltipModelOption } from './interface';\nimport type { IShapeSvgOption } from './shape-model';\n// eslint-disable-next-line no-duplicate-imports\nimport { ShapeModel } from './shape-model';\nimport { TextModel } from './text-model';\nimport { TOOLTIP_EMPTY_STRING } from '../../constants';\n\nexport type ContentColumnType = 'shape-box' | 'key-box' | 'value-box';\n\nexport class ContentColumnModel extends BaseTooltipModel {\n readonly className: ContentColumnType;\n\n constructor(\n parent: BaseTooltipModel | HTMLElement,\n option: ITooltipModelOption,\n className: ContentColumnType,\n childIndex?: number\n ) {\n super(parent, option, childIndex);\n this.className = className;\n }\n\n init(): void {\n if (!this.product) {\n this.product = this.createElement('div', [this.className]);\n }\n const renderContent = this._option.getTooltipActual()?.content ?? [];\n\n if (this.className === 'shape-box' && !renderContent.some(c => c.hasShape && c.shapeType)) {\n // 当有一行配有形状的时候,其他行要对齐。如果没有一行配有形状,则删除所有的行\n Object.keys(this.children).forEach(key => {\n const i = toNumber(key);\n this.children[i].release();\n delete this.children[i];\n });\n } else {\n // 删除多余的行\n Object.keys(this.children).forEach(key => {\n const i = toNumber(key);\n if (i >= renderContent.length) {\n this.children[i].release();\n delete this.children[i];\n }\n });\n // 新增没有的行\n for (let i = 0; i < renderContent.length; i++) {\n if (!this.children[i]) {\n if (this.className === 'key-box' || this.className === 'value-box') {\n const text = new TextModel(this.product!, this._option, i);\n text.init([this.className.substring(0, this.className.indexOf('-'))], undefined, 'div');\n this.children[i] = text;\n } else if (this.className === 'shape-box') {\n const shape = new ShapeModel(this.product!, this._option, i);\n shape.init(['shape'], undefined, 'div');\n this.children[i] = shape;\n }\n }\n }\n }\n }\n\n setStyle() {\n const tooltipStyle = this._option.getTooltipStyle();\n\n super.setStyle(merge({}, defaultContentColumnStyle, tooltipStyle.content, this._getContentColumnStyle()));\n\n const renderContent = this._option.getTooltipActual()?.content ?? [];\n renderContent.forEach((line, i) => {\n let childStyle: any = {};\n if (this.className === 'key-box') {\n const { key, isKeyAdaptive } = line;\n childStyle = merge({}, isKeyAdaptive ? defaultAdaptiveKeyStyle : defaultKeyStyle, {\n height: `${100 / renderContent.length}%`,\n ...tooltipStyle.keyColumn.item\n });\n const hasContent = (isString(key) && key?.trim?.() !== '') || isNumber(key);\n if (!hasContent && !childStyle.visibility) {\n childStyle.visibility = 'hidden';\n } else {\n childStyle.visibility = 'visible';\n }\n (this.children[i] as TextModel).setStyle(childStyle);\n } else if (this.className === 'value-box') {\n childStyle = merge({}, defaultValueStyle, {\n height: `${100 / renderContent.length}%`,\n ...tooltipStyle.valueColumn.item\n });\n (this.children[i] as TextModel).setStyle(childStyle);\n } else if (this.className === 'shape-box') {\n childStyle = tooltipStyle.shapeColumn.item;\n const childContent = {\n hasShape: line.hasShape,\n shapeType: line.shapeType,\n size: tooltipStyle.shapeColumn.item?.width,\n color: line.shapeColor,\n hollow: line.shapeHollow\n } as IShapeSvgOption;\n (this.children[i] as ShapeModel)?.setStyle(childStyle, childContent);\n }\n });\n }\n\n setContent(): void {\n const tooltipStyle = this._option.getTooltipStyle();\n\n const renderContent = this._option.getTooltipActual()?.content ?? [];\n renderContent.forEach((line, i) => {\n let childContent: any;\n if (this.className === 'key-box') {\n const keyContent = line.key;\n if ((isString(keyContent) && keyContent?.trim?.() !== '') || isNumber(keyContent)) {\n childContent = keyContent;\n } else {\n childContent = TOOLTIP_EMPTY_STRING;\n }\n } else if (this.className === 'value-box') {\n const valueContent = line.value;\n if ((isString(valueContent) && valueContent?.trim?.() !== '') || isNumber(valueContent)) {\n childContent = valueContent;\n } else {\n childContent = TOOLTIP_EMPTY_STRING;\n }\n } else if (this.className === 'shape-box') {\n childContent = {\n hasShape: line.hasShape,\n shapeType: line.shapeType,\n size: tooltipStyle.shapeColumn.item?.width,\n color: line.shapeColor,\n hollow: line.shapeHollow\n } as IShapeSvgOption;\n }\n this.children[i]?.setContent(childContent);\n });\n }\n\n protected _getContentColumnStyle() {\n const tooltipStyle = this._option.getTooltipStyle();\n\n switch (this.className) {\n case 'shape-box':\n const renderContent = this._option.getTooltipActual()?.content ?? [];\n return {\n ...tooltipStyle.shapeColumn,\n ...(this.className === 'shape-box' && !renderContent.some(c => c.hasShape && c.shapeType)\n ? { display: 'none' }\n : {})\n };\n case 'key-box':\n return tooltipStyle.keyColumn;\n case 'value-box':\n return tooltipStyle.valueColumn;\n }\n }\n}\n"]}
@@ -1,9 +1,10 @@
1
1
  import { BaseTooltipModel } from './base-tooltip-model';
2
2
  import { ContentColumnModel } from './content-column-model';
3
+ import type { Maybe } from '@visactor/vutils';
3
4
  export declare class ContentModel extends BaseTooltipModel {
4
- shapeBox: ContentColumnModel;
5
- keyBox: ContentColumnModel;
6
- valueBox: ContentColumnModel;
5
+ shapeBox: Maybe<ContentColumnModel>;
6
+ keyBox: Maybe<ContentColumnModel>;
7
+ valueBox: Maybe<ContentColumnModel>;
7
8
  init(): void;
8
9
  private _initShapeBox;
9
10
  private _initKeyBox;
@@ -12,19 +12,19 @@ class ContentModel extends base_tooltip_model_1.BaseTooltipModel {
12
12
  this.shapeBox || this._initShapeBox(), this.keyBox || this._initKeyBox(), this.valueBox || this._initValueBox();
13
13
  }
14
14
  _initShapeBox() {
15
- const shapeBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "shape-box", 0, this._tooltipStyle, this._tooltipActual);
15
+ const shapeBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "shape-box", 0);
16
16
  shapeBox.init(), this.shapeBox = shapeBox, this.children[shapeBox.childIndex] = shapeBox;
17
17
  }
18
18
  _initKeyBox() {
19
- const keyBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "key-box", 1, this._tooltipStyle, this._tooltipActual);
19
+ const keyBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "key-box", 1);
20
20
  keyBox.init(), this.keyBox = keyBox, this.children[keyBox.childIndex] = keyBox;
21
21
  }
22
22
  _initValueBox() {
23
- const valueBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "value-box", 2, this._tooltipStyle, this._tooltipActual);
23
+ const valueBox = new content_column_model_1.ContentColumnModel(this.product, this._option, "value-box", 2);
24
24
  valueBox.init(), this.valueBox = valueBox, this.children[valueBox.childIndex] = valueBox;
25
25
  }
26
26
  setStyle(style) {
27
- super.setStyle((0, vutils_1.merge)({}, style_constants_1.defaultContainerBoxStyle, style)),
27
+ super.setStyle((0, vutils_1.merge)({}, style_constants_1.defaultContentContainerStyle, style)),
28
28
  Object.values(this.children).forEach((c => {
29
29
  c.setStyle();
30
30
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/content-model.ts"],"names":[],"mappings":";;;AAAA,uDAA6D;AAC7D,6DAAwD;AACxD,iEAA4D;AAC5D,6CAAyC;AAEzC,MAAa,YAAa,SAAQ,qCAAgB;IAKhD,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;SAC7D;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAEO,aAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,yCAAkB,CACrC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,CAAC,EACD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAChD,CAAC;IAEO,WAAW;QACjB,MAAM,MAAM,GAAG,IAAI,yCAAkB,CACnC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,CAAC,EACD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;IAC5C,CAAC;IAEO,aAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,yCAAkB,CACrC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,CAAC,EACD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAChD,CAAC;IAED,QAAQ,CAAC,KAAoC;QAC3C,KAAK,CAAC,QAAQ,CAAC,IAAA,cAAK,EAAC,EAAE,EAAE,0CAAwB,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU;QACR,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AAjFD,oCAiFC","file":"content-model.js","sourcesContent":["import { defaultContainerBoxStyle } from './style-constants';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ContentColumnModel } from './content-column-model';\nimport { merge } from '@visactor/vutils';\n\nexport class ContentModel extends BaseTooltipModel {\n shapeBox: ContentColumnModel;\n keyBox: ContentColumnModel;\n valueBox: ContentColumnModel;\n\n init(): void {\n if (!this.product) {\n this.product = this.createElement('div', ['container-box']);\n }\n if (!this.shapeBox) {\n this._initShapeBox();\n }\n if (!this.keyBox) {\n this._initKeyBox();\n }\n if (!this.valueBox) {\n this._initValueBox();\n }\n }\n\n private _initShapeBox() {\n const shapeBox = new ContentColumnModel(\n this.product,\n this._option,\n 'shape-box',\n 0,\n this._tooltipStyle,\n this._tooltipActual\n );\n shapeBox.init();\n this.shapeBox = shapeBox;\n this.children[shapeBox.childIndex] = shapeBox;\n }\n\n private _initKeyBox() {\n const keyBox = new ContentColumnModel(\n this.product,\n this._option,\n 'key-box',\n 1,\n this._tooltipStyle,\n this._tooltipActual\n );\n keyBox.init();\n this.keyBox = keyBox;\n this.children[keyBox.childIndex] = keyBox;\n }\n\n private _initValueBox() {\n const valueBox = new ContentColumnModel(\n this.product,\n this._option,\n 'value-box',\n 2,\n this._tooltipStyle,\n this._tooltipActual\n );\n valueBox.init();\n this.valueBox = valueBox;\n this.children[valueBox.childIndex] = valueBox;\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>): void {\n super.setStyle(merge({}, defaultContainerBoxStyle, style));\n Object.values(this.children).forEach(c => {\n c.setStyle();\n });\n }\n\n setContent(): void {\n Object.values(this.children).forEach(c => {\n c.setContent();\n });\n }\n\n release(): void {\n super.release();\n this.shapeBox = null;\n this.keyBox = null;\n this.valueBox = null;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/content-model.ts"],"names":[],"mappings":";;;AAAA,uDAAiE;AACjE,6DAAwD;AACxD,iEAA4D;AAG5D,6CAAyC;AAEzC,MAAa,YAAa,SAAQ,qCAAgB;IAKhD,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;SAC7D;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;IACH,CAAC;IAEO,aAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,OAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QACrF,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAChD,CAAC;IAEO,WAAW;QACjB,MAAM,MAAM,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,OAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;IAC5C,CAAC;IAEO,aAAa;QACnB,MAAM,QAAQ,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,OAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QACrF,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAChD,CAAC;IAED,QAAQ,CAAC,KAAoC;QAC3C,KAAK,CAAC,QAAQ,CAAC,IAAA,cAAK,EAAC,EAAE,EAAE,8CAA4B,EAAE,KAAK,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU;QACR,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AA5DD,oCA4DC","file":"content-model.js","sourcesContent":["import { defaultContentContainerStyle } from './style-constants';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ContentColumnModel } from './content-column-model';\nimport type { Maybe } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { merge } from '@visactor/vutils';\n\nexport class ContentModel extends BaseTooltipModel {\n shapeBox: Maybe<ContentColumnModel>;\n keyBox: Maybe<ContentColumnModel>;\n valueBox: Maybe<ContentColumnModel>;\n\n init(): void {\n if (!this.product) {\n this.product = this.createElement('div', ['container-box']);\n }\n if (!this.shapeBox) {\n this._initShapeBox();\n }\n if (!this.keyBox) {\n this._initKeyBox();\n }\n if (!this.valueBox) {\n this._initValueBox();\n }\n }\n\n private _initShapeBox() {\n const shapeBox = new ContentColumnModel(this.product!, this._option, 'shape-box', 0);\n shapeBox.init();\n this.shapeBox = shapeBox;\n this.children[shapeBox.childIndex] = shapeBox;\n }\n\n private _initKeyBox() {\n const keyBox = new ContentColumnModel(this.product!, this._option, 'key-box', 1);\n keyBox.init();\n this.keyBox = keyBox;\n this.children[keyBox.childIndex] = keyBox;\n }\n\n private _initValueBox() {\n const valueBox = new ContentColumnModel(this.product!, this._option, 'value-box', 2);\n valueBox.init();\n this.valueBox = valueBox;\n this.children[valueBox.childIndex] = valueBox;\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>): void {\n super.setStyle(merge({}, defaultContentContainerStyle, style));\n Object.values(this.children).forEach(c => {\n c.setStyle();\n });\n }\n\n setContent(): void {\n Object.values(this.children).forEach(c => {\n c.setContent();\n });\n }\n\n release(): void {\n super.release();\n this.shapeBox = null;\n this.keyBox = null;\n this.valueBox = null;\n }\n}\n"]}
@@ -1,3 +1,7 @@
1
+ import type { IToolTipActual } from '../../../../../typings';
2
+ import type { IDomTooltipStyle } from '../interface';
1
3
  export interface ITooltipModelOption {
2
4
  valueToHtml: (value: any) => string;
5
+ getTooltipStyle: () => IDomTooltipStyle;
6
+ getTooltipActual: () => IToolTipActual;
3
7
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["export interface ITooltipModelOption {\n valueToHtml: (value: any) => string;\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IToolTipActual } from '../../../../../typings';\nimport type { IDomTooltipStyle } from '../interface';\n\nexport interface ITooltipModelOption {\n valueToHtml: (value: any) => string;\n getTooltipStyle: () => IDomTooltipStyle;\n getTooltipActual: () => IToolTipActual;\n}\n"]}
@@ -2,10 +2,10 @@ import type { IGradientColor } from '@visactor/vrender';
2
2
  import type { ShapeType } from '../../../../../typings';
3
3
  import { BaseTooltipModel } from './base-tooltip-model';
4
4
  export interface IShapeSvgOption {
5
- hasShape: boolean;
6
- shapeType: ShapeType;
7
- size: string;
8
- color: string | IGradientColor;
5
+ hasShape?: boolean;
6
+ shapeType?: ShapeType;
7
+ size?: string;
8
+ color?: string | IGradientColor;
9
9
  hollow?: boolean;
10
10
  }
11
11
  export declare class ShapeModel extends BaseTooltipModel {
@@ -14,6 +14,6 @@ export declare class ShapeModel extends BaseTooltipModel {
14
14
  init(classList?: string[], id?: string, tag?: keyof HTMLElementTagNameMap): void;
15
15
  setStyle(style?: Partial<CSSStyleDeclaration>, option?: IShapeSvgOption): void;
16
16
  setContent(option: IShapeSvgOption): void;
17
- setSvg(option: IShapeSvgOption): void;
17
+ setSvg(option?: IShapeSvgOption): void;
18
18
  release(): void;
19
19
  }
@@ -21,7 +21,7 @@ class ShapeModel extends base_tooltip_model_1.BaseTooltipModel {
21
21
  }
22
22
  setSvg(option) {
23
23
  const html = getSvgHtml(option);
24
- html !== this._svgHtmlCache && (this._svgHtmlCache = html, this.product.innerHTML = html);
24
+ this.product && html !== this._svgHtmlCache && (this._svgHtmlCache = html, this.product.innerHTML = html);
25
25
  }
26
26
  release() {
27
27
  super.release(), this._svgHtmlCache = "";
@@ -30,16 +30,16 @@ class ShapeModel extends base_tooltip_model_1.BaseTooltipModel {
30
30
 
31
31
  function getSvgHtml(option) {
32
32
  var _a, _b, _c, _d, _e, _f, _g;
33
- if (!(null == option ? void 0 : option.hasShape) || !vrender_1.builtinSymbolsMap[option.shapeType]) return "";
33
+ if (!(null == option ? void 0 : option.hasShape) || !option.shapeType || !vrender_1.builtinSymbolsMap[option.shapeType]) return "";
34
34
  const {shapeType: shapeType, size: size, color: color, hollow: hollow = !1} = option, path = vrender_1.builtinSymbolsMap[shapeType].pathStr;
35
35
  let fill = "currentColor";
36
36
  if (!color || (0, util_1.isString)(color) || hollow) return fill = hollow ? "none" : null !== (_a = color) && void 0 !== _a ? _a : "currentColor",
37
- `\n <svg width="${size}"\n height="${size}" viewBox="-0.8 -0.8 1.5 1.5" style="display: inline-block; vertical-align: middle;">\n <path fill="${fill}" d="${path}" style="fill: ${fill};">\n </path>\n </svg>`;
37
+ `\n <svg width="${size}"\n height="${size}" viewBox="-0.5 -0.5 1 1" style="display: inline-block; vertical-align: middle;">\n <path fill="${fill}" d="${path}" style="fill: ${fill};">\n </path>\n </svg>`;
38
38
  if ((0, util_1.isObject)(color)) {
39
39
  fill = "gradientColor";
40
40
  let gradient = "";
41
41
  return "radial" === color.gradient ? gradient = `\n <radialGradient id="${fill}" cx="50%" cy="50%" r="50%" fx="0%" fy="0%">\n ${(null !== (_b = color.stops) && void 0 !== _b ? _b : []).map((s => `<stop offset="${s.offset}" stop-color="${s.color}"/>`))}\n \t</radialGradient>\n ` : "linear" === color.gradient && (gradient = `\n <linearGradient id="${fill}" x1="${100 * (null !== (_c = color.x0) && void 0 !== _c ? _c : 0)}%" y1="${100 * (null !== (_d = color.y0) && void 0 !== _d ? _d : 0)}%" x2="${100 * (null !== (_e = color.x1) && void 0 !== _e ? _e : 0)}%" y2="${100 * (null !== (_f = color.y1) && void 0 !== _f ? _f : 0)}%">\n ${(null !== (_g = color.stops) && void 0 !== _g ? _g : []).map((s => `<stop offset="${s.offset}" stop-color="${s.color}"/>`))}\n </linearGradient>\n `),
42
- `\n <svg width="${size}" height="${size}"\n viewBox="-0.8 -0.8 1.5 1.5" style="display: inline-block; vertical-align: middle;">\n ${gradient}\n <path fill="url(#${fill})" d="${path}" style="fill: url(#${fill});">\n </path>\n </svg>`;
42
+ `\n <svg width="${size}" height="${size}"\n viewBox="-0.5 -0.5 1 1" style="display: inline-block; vertical-align: middle;">\n ${gradient}\n <path fill="url(#${fill})" d="${path}" style="fill: url(#${fill});">\n </path>\n </svg>`;
43
43
  }
44
44
  return "";
45
45
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/shape-model.ts"],"names":[],"mappings":"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","file":"shape-model.js","sourcesContent":["import type { IGradientColor, ILinearGradient } from '@visactor/vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport { builtinSymbolsMap } from '@visactor/vrender';\n\nimport { isObject, isString } from '../../../../../util';\nimport type { ShapeType } from '../../../../../typings';\nimport { BaseTooltipModel } from './base-tooltip-model';\n\nexport interface IShapeSvgOption {\n hasShape: boolean;\n shapeType: ShapeType;\n size: string;\n color: string | IGradientColor;\n hollow?: boolean;\n}\n\nexport class ShapeModel extends BaseTooltipModel {\n svg: SVGElement;\n\n private _svgHtmlCache: string;\n\n init(classList?: string[], id?: string, tag?: keyof HTMLElementTagNameMap): void {\n if (!this.product) {\n const container = this.createElement(tag ?? 'div', [...(classList ?? []), 'shape'], undefined, id);\n this.product = container;\n }\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>, option?: IShapeSvgOption): void {\n super.setStyle(style);\n this.setSvg(option);\n }\n\n setContent(option: IShapeSvgOption) {\n this.setSvg(option);\n }\n\n setSvg(option: IShapeSvgOption) {\n const html = getSvgHtml(option);\n if (html !== this._svgHtmlCache) {\n this._svgHtmlCache = html;\n this.product.innerHTML = html;\n }\n }\n\n release(): void {\n super.release();\n this._svgHtmlCache = '';\n }\n}\n\nfunction getSvgHtml(option: IShapeSvgOption) {\n if (!option?.hasShape || !builtinSymbolsMap[option.shapeType]) {\n return '';\n }\n\n const { shapeType, size, color, hollow = false } = option;\n\n // FIXME 通过 VRender 获取symbol path\n const path = builtinSymbolsMap[shapeType].pathStr;\n let fill: string = 'currentColor';\n if (!color || isString(color) || hollow) {\n fill = hollow ? 'none' : (color as string) ?? 'currentColor';\n return `\n <svg width=\"${size}\"\n height=\"${size}\" viewBox=\"-0.8 -0.8 1.5 1.5\" style=\"display: inline-block; vertical-align: middle;\">\n <path fill=\"${fill}\" d=\"${path}\" style=\"fill: ${fill};\">\n </path>\n </svg>`;\n }\n if (isObject(color)) {\n fill = 'gradientColor';\n let gradient = '';\n if ((color as IGradientColor).gradient === 'radial') {\n gradient = `\n <radialGradient id=\"${fill}\" cx=\"50%\" cy=\"50%\" r=\"50%\" fx=\"0%\" fy=\"0%\">\n ${(((color as IGradientColor).stops as any[]) ?? []).map(\n s => `<stop offset=\"${s.offset}\" stop-color=\"${s.color}\"/>`\n )}\n \t</radialGradient>\n `;\n } else if ((color as IGradientColor).gradient === 'linear') {\n gradient = `\n <linearGradient id=\"${fill}\" x1=\"${(((color as ILinearGradient).x0 as number) ?? 0) * 100}%\" y1=\"${\n (((color as ILinearGradient).y0 as number) ?? 0) * 100\n }%\" x2=\"${(((color as ILinearGradient).x1 as number) ?? 0) * 100}%\" y2=\"${\n (((color as ILinearGradient).y1 as number) ?? 0) * 100\n }%\">\n ${((color as ILinearGradient).stops ?? []).map(s => `<stop offset=\"${s.offset}\" stop-color=\"${s.color}\"/>`)}\n </linearGradient>\n `;\n }\n return `\n <svg width=\"${size}\" height=\"${size}\"\n viewBox=\"-0.8 -0.8 1.5 1.5\" style=\"display: inline-block; vertical-align: middle;\">\n ${gradient}\n <path fill=\"url(#${fill})\" d=\"${path}\" style=\"fill: url(#${fill});\">\n </path>\n </svg>`;\n }\n\n return '';\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/shape-model.ts"],"names":[],"mappings":"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","file":"shape-model.js","sourcesContent":["import type { IGradientColor, ILinearGradient } from '@visactor/vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport { builtinSymbolsMap } from '@visactor/vrender';\n\nimport { isObject, isString } from '../../../../../util';\nimport type { ShapeType } from '../../../../../typings';\nimport { BaseTooltipModel } from './base-tooltip-model';\n\nexport interface IShapeSvgOption {\n hasShape?: boolean;\n shapeType?: ShapeType;\n size?: string;\n color?: string | IGradientColor;\n hollow?: boolean;\n}\n\nexport class ShapeModel extends BaseTooltipModel {\n svg: SVGElement;\n\n private _svgHtmlCache: string;\n\n init(classList?: string[], id?: string, tag?: keyof HTMLElementTagNameMap): void {\n if (!this.product) {\n const container = this.createElement(tag ?? 'div', [...(classList ?? []), 'shape'], undefined, id);\n this.product = container;\n }\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>, option?: IShapeSvgOption): void {\n super.setStyle(style);\n this.setSvg(option);\n }\n\n setContent(option: IShapeSvgOption) {\n this.setSvg(option);\n }\n\n setSvg(option?: IShapeSvgOption) {\n const html = getSvgHtml(option);\n if (this.product && html !== this._svgHtmlCache) {\n this._svgHtmlCache = html;\n this.product.innerHTML = html;\n }\n }\n\n release(): void {\n super.release();\n this._svgHtmlCache = '';\n }\n}\n\nfunction getSvgHtml(option?: IShapeSvgOption) {\n if (!option?.hasShape || !option.shapeType || !builtinSymbolsMap[option.shapeType]) {\n return '';\n }\n\n const { shapeType, size, color, hollow = false } = option;\n\n // FIXME 通过 VRender 获取symbol path\n const path = builtinSymbolsMap[shapeType].pathStr;\n let fill: string = 'currentColor';\n if (!color || isString(color) || hollow) {\n fill = hollow ? 'none' : (color as string) ?? 'currentColor';\n return `\n <svg width=\"${size}\"\n height=\"${size}\" viewBox=\"-0.5 -0.5 1 1\" style=\"display: inline-block; vertical-align: middle;\">\n <path fill=\"${fill}\" d=\"${path}\" style=\"fill: ${fill};\">\n </path>\n </svg>`;\n }\n if (isObject(color)) {\n fill = 'gradientColor';\n let gradient = '';\n if ((color as IGradientColor).gradient === 'radial') {\n gradient = `\n <radialGradient id=\"${fill}\" cx=\"50%\" cy=\"50%\" r=\"50%\" fx=\"0%\" fy=\"0%\">\n ${(((color as IGradientColor).stops as any[]) ?? []).map(\n s => `<stop offset=\"${s.offset}\" stop-color=\"${s.color}\"/>`\n )}\n \t</radialGradient>\n `;\n } else if ((color as IGradientColor).gradient === 'linear') {\n gradient = `\n <linearGradient id=\"${fill}\" x1=\"${(((color as ILinearGradient).x0 as number) ?? 0) * 100}%\" y1=\"${\n (((color as ILinearGradient).y0 as number) ?? 0) * 100\n }%\" x2=\"${(((color as ILinearGradient).x1 as number) ?? 0) * 100}%\" y2=\"${\n (((color as ILinearGradient).y1 as number) ?? 0) * 100\n }%\">\n ${((color as ILinearGradient).stops ?? []).map(s => `<stop offset=\"${s.offset}\" stop-color=\"${s.color}\"/>`)}\n </linearGradient>\n `;\n }\n return `\n <svg width=\"${size}\" height=\"${size}\"\n viewBox=\"-0.5 -0.5 1 1\" style=\"display: inline-block; vertical-align: middle;\">\n ${gradient}\n <path fill=\"url(#${fill})\" d=\"${path}\" style=\"fill: url(#${fill});\">\n </path>\n </svg>`;\n }\n\n return '';\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  export declare const defaultH2Style: Partial<CSSStyleDeclaration>;
2
- export declare const defaultContainerBoxStyle: Partial<CSSStyleDeclaration>;
3
- export declare const defaultShapeBoxStyle: Partial<CSSStyleDeclaration>;
4
- export declare const defaultKeyBoxStyle: Partial<CSSStyleDeclaration>;
5
- export declare const defaultValueBoxStyle: Partial<CSSStyleDeclaration>;
2
+ export declare const defaultContainerStyle: Partial<CSSStyleDeclaration>;
3
+ export declare const defaultContentContainerStyle: Partial<CSSStyleDeclaration>;
4
+ export declare const defaultContentColumnStyle: Partial<CSSStyleDeclaration>;
6
5
  export declare const defaultKeyStyle: Partial<CSSStyleDeclaration>;
6
+ export declare const defaultAdaptiveKeyStyle: Partial<CSSStyleDeclaration>;
7
7
  export declare const defaultValueStyle: Partial<CSSStyleDeclaration>;
@@ -2,37 +2,35 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
- }), exports.defaultValueStyle = exports.defaultKeyStyle = exports.defaultValueBoxStyle = exports.defaultKeyBoxStyle = exports.defaultShapeBoxStyle = exports.defaultContainerBoxStyle = exports.defaultH2Style = void 0,
5
+ }), exports.defaultValueStyle = exports.defaultAdaptiveKeyStyle = exports.defaultKeyStyle = exports.defaultContentColumnStyle = exports.defaultContentContainerStyle = exports.defaultContainerStyle = exports.defaultH2Style = void 0,
6
6
  exports.defaultH2Style = {
7
7
  fontSize: "13px",
8
- marginBottom: "0px"
9
- }, exports.defaultContainerBoxStyle = {
8
+ marginBottom: "0px",
9
+ fontWeight: "normal"
10
+ }, exports.defaultContainerStyle = {
11
+ boxSizing: "border-box"
12
+ }, exports.defaultContentContainerStyle = {
10
13
  display: "flex",
11
- maxWidth: "440px",
12
14
  whiteSpace: "nowrap"
13
- }, exports.defaultShapeBoxStyle = {
15
+ }, exports.defaultContentColumnStyle = {
14
16
  display: "flex",
15
17
  flexDirection: "column",
16
18
  justifyContent: "space-around",
17
19
  fontSize: "0"
18
- }, exports.defaultKeyBoxStyle = {
19
- flex: "1",
20
- display: "flex",
21
- flexDirection: "column",
22
- overflow: "hidden"
23
- }, exports.defaultValueBoxStyle = {
24
- display: "flex",
25
- flexDirection: "column"
26
20
  }, exports.defaultKeyStyle = {
27
21
  paddingTop: "0px",
28
22
  paddingBottom: "0px",
29
- overflow: "hidden",
30
- textOverflow: "ellipsis",
31
- textAlign: "left"
23
+ textAlign: "left",
24
+ fontWeight: "normal"
25
+ }, exports.defaultAdaptiveKeyStyle = {
26
+ paddingTop: "0px",
27
+ paddingBottom: "0px",
28
+ textAlign: "left",
29
+ fontWeight: "normal"
32
30
  }, exports.defaultValueStyle = {
33
31
  paddingTop: "0px",
34
32
  paddingBottom: "0px",
35
- overflow: "hidden",
36
- textAlign: "right"
33
+ textAlign: "right",
34
+ fontWeight: "normal"
37
35
  };
38
36
  //# sourceMappingURL=style-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/style-constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAiC;IAC1D,QAAQ,EAAE,MAAM;IAChB,YAAY,EAAE,KAAK;CACpB,CAAC;AAEW,QAAA,wBAAwB,GAAiC;IACpE,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEW,QAAA,oBAAoB,GAAiC;IAChE,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,cAAc,EAAE,cAAc;IAC9B,QAAQ,EAAE,GAAG;CACd,CAAC;AAEW,QAAA,kBAAkB,GAAiC;IAC9D,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,QAAQ,EAAE,QAAQ;CACnB,CAAC;AAEW,QAAA,oBAAoB,GAAiC;IAChE,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEW,QAAA,eAAe,GAAiC;IAC3D,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,QAAQ,EAAE,QAAQ;IAClB,YAAY,EAAE,UAAU;IACxB,SAAS,EAAE,MAAM;CAClB,CAAC;AAEW,QAAA,iBAAiB,GAAiC;IAC7D,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,OAAO;CACnB,CAAC","file":"style-constants.js","sourcesContent":["export const defaultH2Style: Partial<CSSStyleDeclaration> = {\n fontSize: '13px',\n marginBottom: '0px'\n};\n\nexport const defaultContainerBoxStyle: Partial<CSSStyleDeclaration> = {\n display: 'flex',\n maxWidth: '440px',\n whiteSpace: 'nowrap'\n};\n\nexport const defaultShapeBoxStyle: Partial<CSSStyleDeclaration> = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-around',\n fontSize: '0'\n};\n\nexport const defaultKeyBoxStyle: Partial<CSSStyleDeclaration> = {\n flex: '1',\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden'\n};\n\nexport const defaultValueBoxStyle: Partial<CSSStyleDeclaration> = {\n display: 'flex',\n flexDirection: 'column'\n};\n\nexport const defaultKeyStyle: Partial<CSSStyleDeclaration> = {\n paddingTop: '0px',\n paddingBottom: '0px',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n textAlign: 'left'\n};\n\nexport const defaultValueStyle: Partial<CSSStyleDeclaration> = {\n paddingTop: '0px',\n paddingBottom: '0px',\n overflow: 'hidden',\n textAlign: 'right'\n};\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/style-constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAiC;IAC1D,QAAQ,EAAE,MAAM;IAChB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEW,QAAA,qBAAqB,GAAiC;IACjE,SAAS,EAAE,YAAY;CACxB,CAAC;AAEW,QAAA,4BAA4B,GAAiC;IACxE,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEW,QAAA,yBAAyB,GAAiC;IACrE,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,cAAc,EAAE,cAAc;IAC9B,QAAQ,EAAE,GAAG;CACd,CAAC;AAEW,QAAA,eAAe,GAAiC;IAC3D,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IAGpB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEW,QAAA,uBAAuB,GAAiC;IACnE,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,QAAQ;CACrB,CAAC;AAEW,QAAA,iBAAiB,GAAiC;IAC7D,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IAEpB,SAAS,EAAE,OAAO;IAClB,UAAU,EAAE,QAAQ;CACrB,CAAC","file":"style-constants.js","sourcesContent":["export const defaultH2Style: Partial<CSSStyleDeclaration> = {\n fontSize: '13px',\n marginBottom: '0px',\n fontWeight: 'normal'\n};\n\nexport const defaultContainerStyle: Partial<CSSStyleDeclaration> = {\n boxSizing: 'border-box'\n};\n\nexport const defaultContentContainerStyle: Partial<CSSStyleDeclaration> = {\n display: 'flex',\n whiteSpace: 'nowrap'\n};\n\nexport const defaultContentColumnStyle: Partial<CSSStyleDeclaration> = {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-around',\n fontSize: '0'\n};\n\nexport const defaultKeyStyle: Partial<CSSStyleDeclaration> = {\n paddingTop: '0px',\n paddingBottom: '0px',\n // overflow: 'hidden',\n // textOverflow: 'ellipsis',\n textAlign: 'left',\n fontWeight: 'normal'\n};\n\nexport const defaultAdaptiveKeyStyle: Partial<CSSStyleDeclaration> = {\n paddingTop: '0px',\n paddingBottom: '0px',\n textAlign: 'left',\n fontWeight: 'normal'\n};\n\nexport const defaultValueStyle: Partial<CSSStyleDeclaration> = {\n paddingTop: '0px',\n paddingBottom: '0px',\n // overflow: 'hidden',\n textAlign: 'right',\n fontWeight: 'normal'\n};\n"]}
@@ -11,6 +11,7 @@ class TextModel extends base_tooltip_model_1.BaseTooltipModel {
11
11
  this.product || (this.product = this.createElement(null != tag ? tag : "span", classList, void 0, id));
12
12
  }
13
13
  setContent(content) {
14
+ if (!this.product) return;
14
15
  this._option.valueToHtml(content) !== this.product.innerHTML && (this.product.innerHTML = this._option.valueToHtml(content));
15
16
  }
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/text-model.ts"],"names":[],"mappings":";;;AAAA,6DAAwD;AAExD,MAAa,SAAU,SAAQ,qCAAgB;IAC7C,IAAI,CAAC,SAAoB,EAAE,EAAW,EAAE,GAAiC;QACvE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;SAC5E;IACH,CAAC;IAED,UAAU,CAAC,OAAa;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACnC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SAC5D;IACH,CAAC;CACF;AAbD,8BAaC","file":"text-model.js","sourcesContent":["import { BaseTooltipModel } from './base-tooltip-model';\n\nexport class TextModel extends BaseTooltipModel {\n init(classList?: string[], id?: string, tag?: keyof HTMLElementTagNameMap): void {\n if (!this.product) {\n this.product = this.createElement(tag ?? 'span', classList, undefined, id);\n }\n }\n\n setContent(content?: any): void {\n const html = this._option.valueToHtml(content);\n if (html !== this.product.innerHTML) {\n this.product.innerHTML = this._option.valueToHtml(content);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/text-model.ts"],"names":[],"mappings":";;;AAAA,6DAAwD;AAExD,MAAa,SAAU,SAAQ,qCAAgB;IAC7C,IAAI,CAAC,SAAoB,EAAE,EAAW,EAAE,GAAiC;QACvE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;SAC5E;IACH,CAAC;IAED,UAAU,CAAC,OAAa;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO;SACR;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACnC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SAC5D;IACH,CAAC;CACF;AAhBD,8BAgBC","file":"text-model.js","sourcesContent":["import { BaseTooltipModel } from './base-tooltip-model';\n\nexport class TextModel extends BaseTooltipModel {\n init(classList?: string[], id?: string, tag?: keyof HTMLElementTagNameMap): void {\n if (!this.product) {\n this.product = this.createElement(tag ?? 'span', classList, undefined, id);\n }\n }\n\n setContent(content?: any): void {\n if (!this.product) {\n return;\n }\n const html = this._option.valueToHtml(content);\n if (html !== this.product.innerHTML) {\n this.product.innerHTML = this._option.valueToHtml(content);\n }\n }\n}\n"]}
@@ -1,9 +1,10 @@
1
+ import type { Maybe } from '@visactor/vutils';
1
2
  import { BaseTooltipModel } from './base-tooltip-model';
2
3
  import { ShapeModel } from './shape-model';
3
4
  import { TextModel } from './text-model';
4
5
  export declare class TitleModel extends BaseTooltipModel {
5
- shape: ShapeModel | null;
6
- textSpan: TextModel;
6
+ shape: Maybe<ShapeModel>;
7
+ textSpan: Maybe<TextModel>;
7
8
  init(): void;
8
9
  private _initShape;
9
10
  private _releaseShape;
@@ -7,53 +7,49 @@ Object.defineProperty(exports, "__esModule", {
7
7
  const vutils_1 = require("@visactor/vutils"), style_constants_1 = require("./style-constants"), base_tooltip_model_1 = require("./base-tooltip-model"), shape_model_1 = require("./shape-model"), text_model_1 = require("./text-model");
8
8
 
9
9
  class TitleModel extends base_tooltip_model_1.BaseTooltipModel {
10
- constructor() {
11
- super(...arguments), this.shape = null;
12
- }
13
10
  init() {
14
- if (!this._tooltipActual) return;
11
+ const tooltipActual = this._option.getTooltipActual();
15
12
  this.product || (this.product = this.createElement("h2"));
16
- const {title: title} = this._tooltipActual;
13
+ const {title: title} = tooltipActual;
17
14
  (null == title ? void 0 : title.hasShape) && (null == title ? void 0 : title.shapeType) ? this.shape || this._initShape() : this.shape && this._releaseShape(),
18
15
  this.textSpan || this._initTextSpan();
19
16
  }
20
17
  _initShape() {
21
- const shape = new shape_model_1.ShapeModel(this.product, this._option, 0, this._tooltipStyle, this._tooltipActual);
18
+ const shape = new shape_model_1.ShapeModel(this.product, this._option, 0);
22
19
  shape.init(), this.shape = shape, this.children[shape.childIndex] = shape;
23
20
  }
24
21
  _releaseShape() {
25
- this.shape.release(), delete this.children[this.shape.childIndex], this.shape = null;
22
+ this.shape && (this.shape.release(), delete this.children[this.shape.childIndex],
23
+ this.shape = null);
26
24
  }
27
25
  _initTextSpan() {
28
- const textSpan = new text_model_1.TextModel(this.product, this._option, 1, this._tooltipStyle, this._tooltipActual);
26
+ const textSpan = new text_model_1.TextModel(this.product, this._option, 1);
29
27
  textSpan.init(), this.textSpan = textSpan, this.children[textSpan.childIndex] = textSpan;
30
28
  }
31
29
  setStyle(style) {
32
- var _a;
33
- if (!this._tooltipActual || !this._tooltipStyle) return;
34
- const {title: title} = this._tooltipActual;
35
- super.setStyle((0, vutils_1.merge)({}, style_constants_1.defaultH2Style, this._tooltipStyle.title, style)),
30
+ var _a, _b, _c;
31
+ const tooltipStyle = this._option.getTooltipStyle(), tooltipActual = this._option.getTooltipActual(), {title: title} = tooltipActual;
32
+ super.setStyle((0, vutils_1.merge)({}, style_constants_1.defaultH2Style, tooltipStyle.title, style)),
36
33
  null === (_a = this.shape) || void 0 === _a || _a.setStyle({
37
- paddingRight: this._tooltipStyle.content.shape.marginRight
34
+ paddingRight: null === (_b = tooltipStyle.shapeColumn.item) || void 0 === _b ? void 0 : _b.marginRight
38
35
  }, {
39
36
  hasShape: null == title ? void 0 : title.hasShape,
40
37
  shapeType: null == title ? void 0 : title.shapeType,
41
- size: this._tooltipStyle.content.shape.width,
38
+ size: null === (_c = tooltipStyle.shapeColumn.item) || void 0 === _c ? void 0 : _c.width,
42
39
  color: null == title ? void 0 : title.shapeColor,
43
40
  hollow: null == title ? void 0 : title.shapeHollow
44
41
  });
45
42
  }
46
43
  setContent() {
47
- var _a;
48
- if (!this._tooltipActual || !this._tooltipStyle) return;
49
- const {title: title} = this._tooltipActual;
44
+ var _a, _b, _c;
45
+ const tooltipStyle = this._option.getTooltipStyle(), tooltipActual = this._option.getTooltipActual(), {title: title} = tooltipActual;
50
46
  this.init(), null === (_a = this.shape) || void 0 === _a || _a.setStyle(void 0, {
51
47
  hasShape: null == title ? void 0 : title.hasShape,
52
48
  shapeType: null == title ? void 0 : title.shapeType,
53
- size: this._tooltipStyle.content.shape.width,
49
+ size: null === (_b = tooltipStyle.shapeColumn.item) || void 0 === _b ? void 0 : _b.width,
54
50
  color: null == title ? void 0 : title.shapeColor,
55
51
  hollow: null == title ? void 0 : title.shapeHollow
56
- }), this.textSpan.setContent(title.value);
52
+ }), null === (_c = this.textSpan) || void 0 === _c || _c.setContent(null == title ? void 0 : title.value);
57
53
  }
58
54
  release() {
59
55
  super.release(), this.shape = null, this.textSpan = null;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/title-model.ts"],"names":[],"mappings":"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","file":"title-model.js","sourcesContent":["import { merge } from '@visactor/vutils';\nimport { defaultH2Style } from './style-constants';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ShapeModel } from './shape-model';\nimport { TextModel } from './text-model';\n\nexport class TitleModel extends BaseTooltipModel {\n shape: ShapeModel | null = null;\n textSpan: TextModel;\n\n init(): void {\n if (!this._tooltipActual) {\n return;\n }\n\n if (!this.product) {\n this.product = this.createElement('h2');\n }\n\n const { title } = this._tooltipActual;\n if (title?.hasShape && title?.shapeType) {\n if (!this.shape) {\n this._initShape();\n }\n } else if (this.shape) {\n this._releaseShape();\n }\n\n if (!this.textSpan) {\n this._initTextSpan();\n }\n }\n\n private _initShape() {\n const shape = new ShapeModel(this.product, this._option, 0, this._tooltipStyle, this._tooltipActual);\n shape.init();\n this.shape = shape;\n this.children[shape.childIndex] = shape;\n }\n\n private _releaseShape() {\n this.shape.release();\n delete this.children[this.shape.childIndex];\n this.shape = null;\n }\n\n private _initTextSpan() {\n const textSpan = new TextModel(this.product, this._option, 1, this._tooltipStyle, this._tooltipActual);\n textSpan.init();\n this.textSpan = textSpan;\n this.children[textSpan.childIndex] = textSpan;\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>): void {\n if (!this._tooltipActual || !this._tooltipStyle) {\n return;\n }\n\n const { title } = this._tooltipActual;\n super.setStyle(merge({}, defaultH2Style, this._tooltipStyle.title, style));\n\n this.shape?.setStyle(\n {\n paddingRight: this._tooltipStyle.content.shape.marginRight\n },\n {\n hasShape: title?.hasShape,\n shapeType: title?.shapeType,\n size: this._tooltipStyle.content.shape.width,\n color: title?.shapeColor,\n hollow: title?.shapeHollow\n }\n );\n }\n\n setContent(): void {\n if (!this._tooltipActual || !this._tooltipStyle) {\n return;\n }\n\n const { title } = this._tooltipActual;\n this.init();\n this.shape?.setStyle(undefined, {\n hasShape: title?.hasShape,\n shapeType: title?.shapeType,\n size: this._tooltipStyle.content.shape.width,\n color: title?.shapeColor,\n hollow: title?.shapeHollow\n });\n this.textSpan.setContent(title.value);\n }\n\n release(): void {\n super.release();\n this.shape = null;\n this.textSpan = null;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/title-model.ts"],"names":[],"mappings":"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","file":"title-model.js","sourcesContent":["import type { Maybe } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { merge } from '@visactor/vutils';\nimport { defaultH2Style } from './style-constants';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ShapeModel } from './shape-model';\nimport { TextModel } from './text-model';\n\nexport class TitleModel extends BaseTooltipModel {\n shape: Maybe<ShapeModel>;\n textSpan: Maybe<TextModel>;\n\n init(): void {\n const tooltipActual = this._option.getTooltipActual();\n\n if (!this.product) {\n this.product = this.createElement('h2');\n }\n\n const { title } = tooltipActual;\n if (title?.hasShape && title?.shapeType) {\n if (!this.shape) {\n this._initShape();\n }\n } else if (this.shape) {\n this._releaseShape();\n }\n\n if (!this.textSpan) {\n this._initTextSpan();\n }\n }\n\n private _initShape() {\n const shape = new ShapeModel(this.product!, this._option, 0);\n shape.init();\n this.shape = shape;\n this.children[shape.childIndex] = shape;\n }\n\n private _releaseShape() {\n if (!this.shape) {\n return;\n }\n this.shape.release();\n delete this.children[this.shape.childIndex];\n this.shape = null;\n }\n\n private _initTextSpan() {\n const textSpan = new TextModel(this.product!, this._option, 1);\n textSpan.init();\n this.textSpan = textSpan;\n this.children[textSpan.childIndex] = textSpan;\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>): void {\n const tooltipStyle = this._option.getTooltipStyle();\n const tooltipActual = this._option.getTooltipActual();\n\n const { title } = tooltipActual;\n super.setStyle(merge({}, defaultH2Style, tooltipStyle.title, style));\n\n this.shape?.setStyle(\n {\n paddingRight: tooltipStyle.shapeColumn.item?.marginRight\n },\n {\n hasShape: title?.hasShape,\n shapeType: title?.shapeType,\n size: tooltipStyle.shapeColumn.item?.width,\n color: title?.shapeColor,\n hollow: title?.shapeHollow\n }\n );\n }\n\n setContent(): void {\n const tooltipStyle = this._option.getTooltipStyle();\n const tooltipActual = this._option.getTooltipActual();\n\n const { title } = tooltipActual;\n this.init();\n this.shape?.setStyle(undefined, {\n hasShape: title?.hasShape,\n shapeType: title?.shapeType,\n size: tooltipStyle.shapeColumn.item?.width,\n color: title?.shapeColor,\n hollow: title?.shapeHollow\n });\n this.textSpan?.setContent(title?.value);\n }\n\n release(): void {\n super.release();\n this.shape = null;\n this.textSpan = null;\n }\n}\n"]}
@@ -1,4 +1,3 @@
1
- import type { IDomTooltipStyle } from '../interface';
2
1
  import { BaseTooltipModel } from './base-tooltip-model';
3
2
  import { ContentModel } from './content-model';
4
3
  import type { ITooltipModelOption } from './interface';
@@ -8,7 +7,7 @@ export declare class TooltipModel extends BaseTooltipModel {
8
7
  content: ContentModel | null;
9
8
  private _classList;
10
9
  private _id;
11
- constructor(parent: BaseTooltipModel | HTMLElement, option: ITooltipModelOption, classList: string[], id: string, style: IDomTooltipStyle);
10
+ constructor(parent: BaseTooltipModel | HTMLElement, option: ITooltipModelOption, classList: string[], id: string);
12
11
  setVisibility(visibility: boolean): void;
13
12
  init(): void;
14
13
  private _initPanel;
@@ -4,24 +4,25 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.TooltipModel = void 0;
6
6
 
7
- const vutils_1 = require("@visactor/vutils"), base_tooltip_model_1 = require("./base-tooltip-model"), content_model_1 = require("./content-model"), title_model_1 = require("./title-model");
7
+ const vutils_1 = require("@visactor/vutils"), base_tooltip_model_1 = require("./base-tooltip-model"), content_model_1 = require("./content-model"), title_model_1 = require("./title-model"), style_constants_1 = require("./style-constants");
8
8
 
9
9
  class TooltipModel extends base_tooltip_model_1.BaseTooltipModel {
10
- constructor(parent, option, classList, id, style) {
11
- super(parent, option, 0, style), this.title = null, this.content = null, this._classList = classList,
12
- this._id = id, this._tooltipStyle = style;
10
+ constructor(parent, option, classList, id) {
11
+ super(parent, option, 0), this.title = null, this.content = null, this._classList = classList,
12
+ this._id = id;
13
13
  }
14
14
  setVisibility(visibility) {
15
- super.setVisibility(visibility);
15
+ if (super.setVisibility(visibility), !this.product) return;
16
16
  const {classList: classList} = this.product;
17
17
  visibility ? classList.add("visible") : classList.remove("visible");
18
18
  }
19
19
  init() {
20
- if (!this._tooltipActual) return;
20
+ var _a;
21
+ const tooltipActual = this._option.getTooltipActual();
21
22
  this.product || this._initPanel(this._classList, this._id);
22
- const {title: title} = this._tooltipActual;
23
- !1 !== title.visible && (0, vutils_1.isValid)(title.value) ? this.title || this._initTitle() : this.title && this._releaseTitle();
24
- this.getRenderContent().length > 0 ? this.content || this._initContent() : this.content && this._releaseContent();
23
+ const {title: title} = tooltipActual;
24
+ !1 !== (null == title ? void 0 : title.visible) && (0, vutils_1.isValid)(null == title ? void 0 : title.value) ? this.title || this._initTitle() : this.title && this._releaseTitle();
25
+ (null !== (_a = tooltipActual.content) && void 0 !== _a ? _a : []).length > 0 ? this.content || this._initContent() : this.content && this._releaseContent();
25
26
  }
26
27
  _initPanel(classList, id) {
27
28
  const panel = this.createElement("div", classList, {
@@ -44,27 +45,31 @@ class TooltipModel extends base_tooltip_model_1.BaseTooltipModel {
44
45
  this.product = panel;
45
46
  }
46
47
  _initTitle() {
47
- const title = new title_model_1.TitleModel(this.product, this._option, 0, this._tooltipStyle, this._tooltipActual);
48
+ const title = new title_model_1.TitleModel(this.product, this._option, 0);
48
49
  title.init(), this.title = title, this.children[title.childIndex] = title;
49
50
  }
50
51
  _releaseTitle() {
51
- this.title.release(), delete this.children[this.title.childIndex], this.title = null;
52
+ this.title && (this.title.release(), delete this.children[this.title.childIndex],
53
+ this.title = null);
52
54
  }
53
55
  _initContent() {
54
- const content = new content_model_1.ContentModel(this.product, this._option, 1, this._tooltipStyle, this._tooltipActual);
56
+ const content = new content_model_1.ContentModel(this.product, this._option, 1);
55
57
  content.init(), this.content = content, this.children[content.childIndex] = content;
56
58
  }
57
59
  _releaseContent() {
58
- this.content.release(), delete this.children[this.content.childIndex], this.content = null;
60
+ this.content && (this.content.release(), delete this.children[this.content.childIndex],
61
+ this.content = null);
59
62
  }
60
63
  setStyle() {
61
- this._tooltipStyle && (super.setStyle(this._tooltipStyle.panel), Object.values(this.children).forEach(((c, i) => {
64
+ const tooltipStyle = this._option.getTooltipStyle();
65
+ super.setStyle((0, vutils_1.merge)({}, style_constants_1.defaultContainerStyle, tooltipStyle.panel)),
66
+ Object.values(this.children).forEach(((c, i) => {
62
67
  c.setStyle(i > 0 ? {
63
- marginTop: "10px"
68
+ marginTop: tooltipStyle.spaceRow
64
69
  } : {
65
70
  marginTop: "0px"
66
71
  });
67
- })));
72
+ }));
68
73
  }
69
74
  setContent() {
70
75
  Object.values(this.children).forEach((c => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/tooltip-model.ts"],"names":[],"mappings":"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","file":"tooltip-model.js","sourcesContent":["import { isValid } from '@visactor/vutils';\nimport type { IDomTooltipStyle } from '../interface';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ContentModel } from './content-model';\nimport type { ITooltipModelOption } from './interface';\nimport { TitleModel } from './title-model';\n\nexport class TooltipModel extends BaseTooltipModel {\n title: TitleModel | null = null;\n content: ContentModel | null = null;\n\n private _classList: string[];\n private _id: string;\n\n constructor(\n parent: BaseTooltipModel | HTMLElement,\n option: ITooltipModelOption,\n classList: string[],\n id: string,\n style: IDomTooltipStyle\n ) {\n super(parent, option, 0, style);\n this._classList = classList;\n this._id = id;\n this._tooltipStyle = style;\n }\n\n setVisibility(visibility: boolean) {\n super.setVisibility(visibility);\n const { classList } = this.product;\n if (visibility) {\n classList.add('visible');\n } else {\n classList.remove('visible');\n }\n }\n\n init(): void {\n if (!this._tooltipActual) {\n return;\n }\n\n if (!this.product) {\n this._initPanel(this._classList, this._id);\n }\n\n const { title } = this._tooltipActual;\n if (title.visible !== false && isValid(title.value)) {\n if (!this.title) {\n this._initTitle();\n }\n } else if (this.title) {\n this._releaseTitle();\n }\n\n const renderContent = this.getRenderContent();\n if (renderContent.length > 0) {\n if (!this.content) {\n this._initContent();\n }\n } else if (this.content) {\n this._releaseContent();\n }\n }\n\n private _initPanel(classList?: string[], id?: string) {\n const panel = this.createElement(\n 'div',\n classList,\n {\n left: '0',\n top: '0',\n pointerEvents: 'none',\n padding: '12px',\n position: 'absolute',\n zIndex: '99999999999999',\n fontFamily: 'sans-serif',\n fontSize: '11px',\n borderRadius: '3px',\n borderStyle: 'solid',\n lineHeight: 'initial',\n background: '#fff',\n boxShadow: '2px 2px 4px rgba(0, 0, 0, 0.1)',\n maxWidth: '100wh',\n maxHeight: '100vh'\n },\n id\n );\n this.product = panel;\n }\n\n private _initTitle() {\n const title = new TitleModel(this.product, this._option, 0, this._tooltipStyle, this._tooltipActual);\n title.init();\n this.title = title;\n this.children[title.childIndex] = title;\n }\n\n private _releaseTitle() {\n this.title.release();\n delete this.children[this.title.childIndex];\n this.title = null;\n }\n\n private _initContent() {\n const content = new ContentModel(this.product, this._option, 1, this._tooltipStyle, this._tooltipActual);\n content.init();\n this.content = content;\n this.children[content.childIndex] = content;\n }\n\n private _releaseContent() {\n this.content.release();\n delete this.children[this.content.childIndex];\n this.content = null;\n }\n\n setStyle(): void {\n if (!this._tooltipStyle) {\n return;\n }\n super.setStyle(this._tooltipStyle.panel as any);\n Object.values(this.children).forEach((c, i) => {\n c.setStyle(\n i > 0\n ? {\n marginTop: '10px'\n }\n : {\n marginTop: '0px'\n }\n );\n });\n }\n\n setContent() {\n Object.values(this.children).forEach(c => {\n c.setContent();\n });\n }\n\n release(): void {\n super.release();\n this.title = null;\n this.content = null;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/tooltip-model.ts"],"names":[],"mappings":"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","file":"tooltip-model.js","sourcesContent":["import { isValid, merge } from '@visactor/vutils';\nimport { BaseTooltipModel } from './base-tooltip-model';\nimport { ContentModel } from './content-model';\nimport type { ITooltipModelOption } from './interface';\nimport { TitleModel } from './title-model';\nimport { defaultContainerStyle } from './style-constants';\n\nexport class TooltipModel extends BaseTooltipModel {\n title: TitleModel | null = null;\n content: ContentModel | null = null;\n\n private _classList: string[];\n private _id: string;\n\n constructor(parent: BaseTooltipModel | HTMLElement, option: ITooltipModelOption, classList: string[], id: string) {\n super(parent, option, 0);\n this._classList = classList;\n this._id = id;\n }\n\n setVisibility(visibility: boolean) {\n super.setVisibility(visibility);\n if (!this.product) {\n return;\n }\n const { classList } = this.product;\n if (visibility) {\n classList.add('visible');\n } else {\n classList.remove('visible');\n }\n }\n\n init(): void {\n const tooltipActual = this._option.getTooltipActual();\n\n if (!this.product) {\n this._initPanel(this._classList, this._id);\n }\n\n const { title } = tooltipActual;\n if (title?.visible !== false && isValid(title?.value)) {\n if (!this.title) {\n this._initTitle();\n }\n } else if (this.title) {\n this._releaseTitle();\n }\n\n const renderContent = tooltipActual.content ?? [];\n if (renderContent.length > 0) {\n if (!this.content) {\n this._initContent();\n }\n } else if (this.content) {\n this._releaseContent();\n }\n }\n\n private _initPanel(classList?: string[], id?: string) {\n const panel = this.createElement(\n 'div',\n classList,\n {\n left: '0',\n top: '0',\n pointerEvents: 'none',\n padding: '12px',\n position: 'absolute',\n zIndex: '99999999999999',\n fontFamily: 'sans-serif',\n fontSize: '11px',\n borderRadius: '3px',\n borderStyle: 'solid',\n lineHeight: 'initial',\n background: '#fff',\n boxShadow: '2px 2px 4px rgba(0, 0, 0, 0.1)',\n maxWidth: '100wh',\n maxHeight: '100vh'\n },\n id\n );\n this.product = panel;\n }\n\n private _initTitle() {\n const title = new TitleModel(this.product!, this._option, 0);\n title.init();\n this.title = title;\n this.children[title.childIndex] = title;\n }\n\n private _releaseTitle() {\n if (!this.title) {\n return;\n }\n this.title.release();\n delete this.children[this.title.childIndex];\n this.title = null;\n }\n\n private _initContent() {\n const content = new ContentModel(this.product!, this._option, 1);\n content.init();\n this.content = content;\n this.children[content.childIndex] = content;\n }\n\n private _releaseContent() {\n if (!this.content) {\n return;\n }\n this.content.release();\n delete this.children[this.content.childIndex];\n this.content = null;\n }\n\n setStyle(): void {\n const tooltipStyle = this._option.getTooltipStyle();\n\n super.setStyle(merge({}, defaultContainerStyle, tooltipStyle.panel));\n Object.values(this.children).forEach((c, i) => {\n c.setStyle(\n i > 0\n ? {\n marginTop: tooltipStyle.spaceRow\n }\n : {\n marginTop: '0px'\n }\n );\n });\n }\n\n setContent() {\n Object.values(this.children).forEach(c => {\n c.setContent();\n });\n }\n\n release(): void {\n super.release();\n this.title = null;\n this.content = null;\n }\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import type { Maybe } from '@visactor/vutils';
2
+ import type { ITooltipStyle } from '../interface';
3
+ import type { IDomTooltipStyle } from './interface';
4
+ import type { TooltipAttributes } from '@visactor/vrender-components';
5
+ export declare function getDomStyles(style: ITooltipStyle, attributeCache?: Maybe<TooltipAttributes>): IDomTooltipStyle;