@visactor/vstory 0.0.4 → 0.0.5-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/README.md +13 -0
  2. package/cjs/constants/character.d.ts +2 -1
  3. package/cjs/constants/character.js +1 -1
  4. package/cjs/constants/character.js.map +1 -1
  5. package/cjs/dsl/story-chart/chart.js +2 -1
  6. package/cjs/dsl/story-processor/processor.js +1 -1
  7. package/cjs/dsl/types/Datum.js +1 -1
  8. package/cjs/dsl/types/index.d.ts +1 -0
  9. package/cjs/dsl/types/index.js +1 -1
  10. package/cjs/dsl/types/index.js.map +1 -1
  11. package/cjs/dsl/utils/datum.js +1 -2
  12. package/cjs/dsl/utils/flicker.js +1 -1
  13. package/cjs/edit/const.d.ts +1 -3
  14. package/cjs/edit/const.js +1 -0
  15. package/cjs/edit/const.js.map +1 -1
  16. package/cjs/edit/edit-action.d.ts +9 -0
  17. package/cjs/edit/edit-action.js +61 -5
  18. package/cjs/edit/edit-action.js.map +1 -1
  19. package/cjs/edit/edit-component/base-selection.d.ts +8 -3
  20. package/cjs/edit/edit-component/base-selection.js +30 -4
  21. package/cjs/edit/edit-component/base-selection.js.map +1 -1
  22. package/cjs/edit/edit-component/chart-selection.d.ts +15 -0
  23. package/cjs/edit/edit-component/chart-selection.js +39 -0
  24. package/cjs/edit/edit-component/chart-selection.js.map +1 -0
  25. package/cjs/edit/edit-component/common.d.ts +1 -11
  26. package/cjs/edit/edit-component/common.js +1 -30
  27. package/cjs/edit/edit-component/common.js.map +1 -1
  28. package/cjs/edit/edit-component/edit-control/richtext-control.d.ts +19 -0
  29. package/cjs/edit/edit-component/edit-control/richtext-control.js +34 -0
  30. package/cjs/edit/edit-component/edit-control/richtext-control.js.map +1 -0
  31. package/cjs/edit/edit-component/edit-control/richtext-transform-control.d.ts +2 -3
  32. package/cjs/edit/edit-component/edit-control/richtext-transform-control.js +30 -32
  33. package/cjs/edit/edit-component/edit-control/richtext-transform-control.js.map +1 -1
  34. package/cjs/edit/edit-component/edit-control/transform-control.d.ts +4 -2
  35. package/cjs/edit/edit-component/edit-control/transform-control.js +10 -6
  36. package/cjs/edit/edit-component/edit-control/transform-control.js.map +1 -1
  37. package/cjs/edit/edit-component/edit-control/transform-drag.d.ts +1 -0
  38. package/cjs/edit/edit-component/edit-control/transform-drag.js +4 -2
  39. package/cjs/edit/edit-component/edit-control/transform-drag.js.map +1 -1
  40. package/cjs/edit/edit-component/image-selection.d.ts +1 -2
  41. package/cjs/edit/edit-component/image-selection.js +3 -6
  42. package/cjs/edit/edit-component/image-selection.js.map +1 -1
  43. package/cjs/edit/edit-component/index.js +5 -6
  44. package/cjs/edit/edit-component/index.js.map +1 -1
  45. package/cjs/edit/edit-component/layer-edit.js +2 -0
  46. package/cjs/edit/edit-component/mixin/richtext.d.ts +21 -0
  47. package/cjs/edit/edit-component/mixin/richtext.js +26 -0
  48. package/cjs/edit/edit-component/mixin/richtext.js.map +1 -0
  49. package/cjs/edit/edit-component/rect-selection.d.ts +8 -12
  50. package/cjs/edit/edit-component/rect-selection.js +13 -18
  51. package/cjs/edit/edit-component/rect-selection.js.map +1 -1
  52. package/cjs/edit/edit-component/richtext-selection-common.d.ts +19 -0
  53. package/cjs/edit/edit-component/richtext-selection-common.js +35 -0
  54. package/cjs/edit/edit-component/richtext-selection-common.js.map +1 -0
  55. package/cjs/edit/edit-component/richtext-selection.d.ts +0 -2
  56. package/cjs/edit/edit-component/richtext-selection.js +1 -7
  57. package/cjs/edit/edit-component/richtext-selection.js.map +1 -1
  58. package/cjs/edit/edit-component/shape-selection.d.ts +11 -0
  59. package/cjs/edit/edit-component/shape-selection.js +36 -0
  60. package/cjs/edit/edit-component/shape-selection.js.map +1 -0
  61. package/cjs/edit/edit-component/text-selection.d.ts +0 -3
  62. package/cjs/edit/edit-component/text-selection.js +3 -10
  63. package/cjs/edit/edit-component/text-selection.js.map +1 -1
  64. package/cjs/edit/edit.d.ts +5 -2
  65. package/cjs/edit/edit.js +20 -5
  66. package/cjs/edit/edit.js.map +1 -1
  67. package/cjs/edit/interface.d.ts +6 -1
  68. package/cjs/edit/interface.js +3 -1
  69. package/cjs/edit/interface.js.map +1 -1
  70. package/cjs/index.d.ts +3 -0
  71. package/cjs/index.js +3 -1
  72. package/cjs/index.js.map +1 -1
  73. package/cjs/player/interface/player.js +1 -1
  74. package/cjs/player/interface/scheduler.js +1 -1
  75. package/cjs/player/player.js +6 -2
  76. package/cjs/player/player.js.map +1 -1
  77. package/cjs/player/processor/chart/common/chartAppear.d.ts +2 -2
  78. package/cjs/player/processor/chart/common/chartAppear.js.map +1 -1
  79. package/cjs/player/processor/chart/common/commonAppear.d.ts +3 -3
  80. package/cjs/player/processor/chart/common/commonAppear.js.map +1 -1
  81. package/cjs/player/processor/chart/component/axisAppear.d.ts +2 -2
  82. package/cjs/player/processor/chart/component/axisAppear.js.map +1 -1
  83. package/cjs/player/processor/chart/component/commonAppear.d.ts +3 -3
  84. package/cjs/player/processor/chart/component/commonAppear.js.map +1 -1
  85. package/cjs/player/processor/chart/component/labelAppear.d.ts +2 -2
  86. package/cjs/player/processor/chart/component/labelAppear.js.map +1 -1
  87. package/cjs/player/processor/chart/rankingBar/rankingBar.d.ts +29 -0
  88. package/cjs/player/processor/chart/rankingBar/rankingBar.js +54 -0
  89. package/cjs/player/processor/chart/rankingBar/rankingBar.js.map +1 -0
  90. package/cjs/player/processor/chart/seriesmark/commonTransformMarkAppear.d.ts +3 -3
  91. package/cjs/player/processor/chart/seriesmark/commonTransformMarkAppear.js.map +1 -1
  92. package/cjs/player/processor/chart/seriesmark/transformArcVisibility.d.ts +2 -2
  93. package/cjs/player/processor/chart/seriesmark/transformArcVisibility.js.map +1 -1
  94. package/cjs/player/processor/chart/seriesmark/transformLineVisibility.d.ts +2 -2
  95. package/cjs/player/processor/chart/seriesmark/transformLineVisibility.js.map +1 -1
  96. package/cjs/player/processor/chart/seriesmark/transformRectVisibility.d.ts +2 -2
  97. package/cjs/player/processor/chart/seriesmark/transformRectVisibility.js.map +1 -1
  98. package/cjs/player/processor/chart/seriesmark/transformSymbolVisibility.d.ts +2 -2
  99. package/cjs/player/processor/chart/seriesmark/transformSymbolVisibility.js.map +1 -1
  100. package/cjs/player/processor/chart/seriesmark/transformTextVisibility.d.ts +2 -2
  101. package/cjs/player/processor/chart/seriesmark/transformTextVisibility.js.map +1 -1
  102. package/cjs/player/processor/chart/vchart.d.ts +35 -24
  103. package/cjs/player/processor/chart/vchart.js +88 -60
  104. package/cjs/player/processor/chart/vchart.js.map +1 -1
  105. package/cjs/player/processor/common/bounce-processor.js +2 -3
  106. package/cjs/player/processor/common/bounce-processor.js.map +1 -1
  107. package/cjs/player/processor/component/common-component.js +21 -21
  108. package/cjs/player/processor/component/common-component.js.map +1 -1
  109. package/cjs/player/processor/interface/action-processor.d.ts +1 -1
  110. package/cjs/player/processor/interface/action-processor.js.map +1 -1
  111. package/cjs/player/processor/interface/common-action.d.ts +3 -2
  112. package/cjs/player/processor/interface/common-action.js.map +1 -1
  113. package/cjs/player/processor/interface/style-action.d.ts +4 -5
  114. package/cjs/player/processor/interface/style-action.js.map +1 -1
  115. package/cjs/player/processor/processor.js +1 -1
  116. package/cjs/player/processor/processor.js.map +1 -1
  117. package/cjs/player/processor/processorMap.d.ts +9 -0
  118. package/cjs/player/processor/processorMap.js +7 -1
  119. package/cjs/player/processor/processorMap.js.map +1 -1
  120. package/cjs/player/scheduler.js +12 -8
  121. package/cjs/player/scheduler.js.map +1 -1
  122. package/cjs/story/canvas/canvas.js +3 -4
  123. package/cjs/story/canvas/canvas.js.map +1 -1
  124. package/cjs/story/character/base/base.d.ts +4 -0
  125. package/cjs/story/character/base/base.js +1 -1
  126. package/cjs/story/character/base/base.js.map +1 -1
  127. package/cjs/story/character/chart/character.d.ts +15 -0
  128. package/cjs/story/character/chart/character.js +54 -12
  129. package/cjs/story/character/chart/character.js.map +1 -1
  130. package/cjs/story/character/chart/characters/rankingBar.d.ts +4 -0
  131. package/cjs/story/character/chart/characters/rankingBar.js +15 -0
  132. package/cjs/story/character/chart/characters/rankingBar.js.map +1 -0
  133. package/cjs/story/character/chart/graphic/vchart-graphic-picker.js +6 -8
  134. package/cjs/story/character/chart/graphic/vchart-graphic-picker.js.map +1 -1
  135. package/cjs/story/character/chart/graphic/vchart-graphic-render.js +6 -6
  136. package/cjs/story/character/chart/graphic/vchart-graphic-render.js.map +1 -1
  137. package/cjs/story/character/chart/graphic/vchart-graphic.d.ts +14 -4
  138. package/cjs/story/character/chart/graphic/vchart-graphic.js +79 -14
  139. package/cjs/story/character/chart/graphic/vchart-graphic.js.map +1 -1
  140. package/cjs/story/character/chart/runtime/common-spec.d.ts +2 -4
  141. package/cjs/story/character/chart/runtime/common-spec.js +0 -2
  142. package/cjs/story/character/chart/runtime/common-spec.js.map +1 -1
  143. package/cjs/story/character/chart/runtime/component-spec.d.ts +4 -3
  144. package/cjs/story/character/chart/runtime/component-spec.js +7 -5
  145. package/cjs/story/character/chart/runtime/component-spec.js.map +1 -1
  146. package/cjs/story/character/chart/temp/constant.d.ts +1 -0
  147. package/cjs/story/character/chart/temp/constant.js +2 -1
  148. package/cjs/story/character/chart/temp/constant.js.map +1 -1
  149. package/cjs/story/character/chart/temp/templates/bar.d.ts +20 -0
  150. package/cjs/story/character/chart/temp/templates/bar.js +31 -0
  151. package/cjs/story/character/chart/temp/templates/bar.js.map +1 -0
  152. package/cjs/story/character/chart/temp/templates/base-temp.d.ts +6 -4
  153. package/cjs/story/character/chart/temp/templates/base-temp.js +1 -1
  154. package/cjs/story/character/chart/temp/templates/base-temp.js.map +1 -1
  155. package/cjs/story/character/chart/temp/templates/ranking-bar-temp.d.ts +8 -0
  156. package/cjs/story/character/chart/temp/templates/ranking-bar-temp.js +22 -0
  157. package/cjs/story/character/chart/temp/templates/ranking-bar-temp.js.map +1 -0
  158. package/cjs/story/character/component/character-group/component-group-graphic-render.d.ts +2 -2
  159. package/cjs/story/character/component/character-group/component-group-graphic-render.js +3 -3
  160. package/cjs/story/character/component/character-group/component-group-graphic-render.js.map +1 -1
  161. package/cjs/story/character/component/character-group/component-group-graphic.d.ts +1 -1
  162. package/cjs/story/character/component/character-group/component-group-graphic.js +6 -4
  163. package/cjs/story/character/component/character-group/component-group-graphic.js.map +1 -1
  164. package/cjs/story/character/component/character.d.ts +5 -1
  165. package/cjs/story/character/component/character.js +18 -1
  166. package/cjs/story/character/component/character.js.map +1 -1
  167. package/cjs/story/character/component/characters/character-image.d.ts +3 -0
  168. package/cjs/story/character/component/characters/character-image.js +4 -0
  169. package/cjs/story/character/component/characters/character-image.js.map +1 -1
  170. package/cjs/story/character/component/characters/character-rect.d.ts +3 -0
  171. package/cjs/story/character/component/characters/character-rect.js +4 -0
  172. package/cjs/story/character/component/characters/character-rect.js.map +1 -1
  173. package/cjs/story/character/component/characters/character-shape.d.ts +4 -0
  174. package/cjs/story/character/component/characters/character-shape.js +15 -0
  175. package/cjs/story/character/component/characters/character-shape.js.map +1 -1
  176. package/cjs/story/character/component/graphic/graphic-base-text.d.ts +2 -1
  177. package/cjs/story/character/component/graphic/graphic-base-text.js +7 -2
  178. package/cjs/story/character/component/graphic/graphic-base-text.js.map +1 -1
  179. package/cjs/story/character/component/graphic/symbol.d.ts +3 -0
  180. package/cjs/story/character/component/graphic/symbol.js +17 -3
  181. package/cjs/story/character/component/graphic/symbol.js.map +1 -1
  182. package/cjs/story/character/dsl-interface.d.ts +2 -0
  183. package/cjs/story/character/dsl-interface.js.map +1 -1
  184. package/cjs/story/character/runtime-interface.d.ts +9 -4
  185. package/cjs/story/character/runtime-interface.js.map +1 -1
  186. package/cjs/story/character/visactor/character.d.ts +18 -3
  187. package/cjs/story/character/visactor/character.js +17 -1
  188. package/cjs/story/character/visactor/character.js.map +1 -1
  189. package/cjs/story/character/visactor/interface.js.map +1 -1
  190. package/cjs/story/index.js +5 -2
  191. package/cjs/story/index.js.map +1 -1
  192. package/cjs/story/interface/dsl-interface.d.ts +3 -2
  193. package/cjs/story/interface/dsl-interface.js.map +1 -1
  194. package/cjs/story/interface/runtime-interface.d.ts +2 -0
  195. package/cjs/story/interface/runtime-interface.js.map +1 -1
  196. package/cjs/story/story.js +3 -2
  197. package/cjs/story/story.js.map +1 -1
  198. package/cjs/story/utils/chart.d.ts +2 -1
  199. package/cjs/story/utils/chart.js +19 -2
  200. package/cjs/story/utils/chart.js.map +1 -1
  201. package/cjs/story/utils/layout.d.ts +2 -1
  202. package/cjs/story/utils/layout.js +2 -2
  203. package/cjs/story/utils/layout.js.map +1 -1
  204. package/cjs/story/utils/vchart-pick.d.ts +115 -0
  205. package/cjs/story/utils/vchart-pick.js +109 -0
  206. package/cjs/story/utils/vchart-pick.js.map +1 -0
  207. package/dist/index.js +23459 -26042
  208. package/dist/index.min.js +3 -3
  209. package/es/constants/character.d.ts +2 -1
  210. package/es/constants/character.js +1 -1
  211. package/es/constants/character.js.map +1 -1
  212. package/es/dsl/story-chart/chart.js +2 -1
  213. package/es/dsl/story-processor/processor.js +1 -1
  214. package/es/dsl/types/Datum.js +1 -1
  215. package/es/dsl/types/index.d.ts +1 -0
  216. package/es/dsl/types/index.js +1 -1
  217. package/es/dsl/types/index.js.map +1 -1
  218. package/es/dsl/utils/datum.js +1 -2
  219. package/es/dsl/utils/flicker.js +1 -1
  220. package/es/edit/const.d.ts +1 -3
  221. package/es/edit/const.js +1 -0
  222. package/es/edit/const.js.map +1 -1
  223. package/es/edit/edit-action.d.ts +9 -0
  224. package/es/edit/edit-action.js +63 -5
  225. package/es/edit/edit-action.js.map +1 -1
  226. package/es/edit/edit-component/base-selection.d.ts +8 -3
  227. package/es/edit/edit-component/base-selection.js +31 -3
  228. package/es/edit/edit-component/base-selection.js.map +1 -1
  229. package/es/edit/edit-component/chart-selection.d.ts +15 -0
  230. package/es/edit/edit-component/chart-selection.js +31 -0
  231. package/es/edit/edit-component/chart-selection.js.map +1 -0
  232. package/es/edit/edit-component/common.d.ts +1 -11
  233. package/es/edit/edit-component/common.js +1 -24
  234. package/es/edit/edit-component/common.js.map +1 -1
  235. package/es/edit/edit-component/edit-control/richtext-control.d.ts +19 -0
  236. package/es/edit/edit-component/edit-control/richtext-control.js +28 -0
  237. package/es/edit/edit-component/edit-control/richtext-control.js.map +1 -0
  238. package/es/edit/edit-component/edit-control/richtext-transform-control.d.ts +2 -3
  239. package/es/edit/edit-component/edit-control/richtext-transform-control.js +29 -34
  240. package/es/edit/edit-component/edit-control/richtext-transform-control.js.map +1 -1
  241. package/es/edit/edit-component/edit-control/transform-control.d.ts +4 -2
  242. package/es/edit/edit-component/edit-control/transform-control.js +10 -6
  243. package/es/edit/edit-component/edit-control/transform-control.js.map +1 -1
  244. package/es/edit/edit-component/edit-control/transform-drag.d.ts +1 -0
  245. package/es/edit/edit-component/edit-control/transform-drag.js +4 -2
  246. package/es/edit/edit-component/edit-control/transform-drag.js.map +1 -1
  247. package/es/edit/edit-component/image-selection.d.ts +1 -2
  248. package/es/edit/edit-component/image-selection.js +3 -6
  249. package/es/edit/edit-component/image-selection.js.map +1 -1
  250. package/es/edit/edit-component/index.js +8 -10
  251. package/es/edit/edit-component/index.js.map +1 -1
  252. package/es/edit/edit-component/layer-edit.js +2 -0
  253. package/es/edit/edit-component/mixin/richtext.d.ts +21 -0
  254. package/es/edit/edit-component/mixin/richtext.js +18 -0
  255. package/es/edit/edit-component/mixin/richtext.js.map +1 -0
  256. package/es/edit/edit-component/rect-selection.d.ts +8 -12
  257. package/es/edit/edit-component/rect-selection.js +14 -21
  258. package/es/edit/edit-component/rect-selection.js.map +1 -1
  259. package/es/edit/edit-component/richtext-selection-common.d.ts +19 -0
  260. package/es/edit/edit-component/richtext-selection-common.js +33 -0
  261. package/es/edit/edit-component/richtext-selection-common.js.map +1 -0
  262. package/es/edit/edit-component/richtext-selection.d.ts +0 -2
  263. package/es/edit/edit-component/richtext-selection.js +1 -7
  264. package/es/edit/edit-component/richtext-selection.js.map +1 -1
  265. package/es/edit/edit-component/shape-selection.d.ts +11 -0
  266. package/es/edit/edit-component/shape-selection.js +30 -0
  267. package/es/edit/edit-component/shape-selection.js.map +1 -0
  268. package/es/edit/edit-component/text-selection.d.ts +0 -3
  269. package/es/edit/edit-component/text-selection.js +2 -11
  270. package/es/edit/edit-component/text-selection.js.map +1 -1
  271. package/es/edit/edit.d.ts +5 -2
  272. package/es/edit/edit.js +21 -4
  273. package/es/edit/edit.js.map +1 -1
  274. package/es/edit/interface.d.ts +6 -1
  275. package/es/edit/interface.js +3 -1
  276. package/es/edit/interface.js.map +1 -1
  277. package/es/index.d.ts +3 -0
  278. package/es/index.js +7 -1
  279. package/es/index.js.map +1 -1
  280. package/es/player/interface/player.js +1 -1
  281. package/es/player/interface/scheduler.js +1 -1
  282. package/es/player/player.js +6 -2
  283. package/es/player/player.js.map +1 -1
  284. package/es/player/processor/chart/common/chartAppear.d.ts +2 -2
  285. package/es/player/processor/chart/common/chartAppear.js.map +1 -1
  286. package/es/player/processor/chart/common/commonAppear.d.ts +3 -3
  287. package/es/player/processor/chart/common/commonAppear.js.map +1 -1
  288. package/es/player/processor/chart/component/axisAppear.d.ts +2 -2
  289. package/es/player/processor/chart/component/axisAppear.js.map +1 -1
  290. package/es/player/processor/chart/component/commonAppear.d.ts +3 -3
  291. package/es/player/processor/chart/component/commonAppear.js.map +1 -1
  292. package/es/player/processor/chart/component/labelAppear.d.ts +2 -2
  293. package/es/player/processor/chart/component/labelAppear.js.map +1 -1
  294. package/es/player/processor/chart/rankingBar/rankingBar.d.ts +29 -0
  295. package/es/player/processor/chart/rankingBar/rankingBar.js +50 -0
  296. package/es/player/processor/chart/rankingBar/rankingBar.js.map +1 -0
  297. package/es/player/processor/chart/seriesmark/commonTransformMarkAppear.d.ts +3 -3
  298. package/es/player/processor/chart/seriesmark/commonTransformMarkAppear.js.map +1 -1
  299. package/es/player/processor/chart/seriesmark/transformArcVisibility.d.ts +2 -2
  300. package/es/player/processor/chart/seriesmark/transformArcVisibility.js.map +1 -1
  301. package/es/player/processor/chart/seriesmark/transformLineVisibility.d.ts +2 -2
  302. package/es/player/processor/chart/seriesmark/transformLineVisibility.js.map +1 -1
  303. package/es/player/processor/chart/seriesmark/transformRectVisibility.d.ts +2 -2
  304. package/es/player/processor/chart/seriesmark/transformRectVisibility.js.map +1 -1
  305. package/es/player/processor/chart/seriesmark/transformSymbolVisibility.d.ts +2 -2
  306. package/es/player/processor/chart/seriesmark/transformSymbolVisibility.js.map +1 -1
  307. package/es/player/processor/chart/seriesmark/transformTextVisibility.d.ts +2 -2
  308. package/es/player/processor/chart/seriesmark/transformTextVisibility.js.map +1 -1
  309. package/es/player/processor/chart/vchart.d.ts +35 -24
  310. package/es/player/processor/chart/vchart.js +89 -61
  311. package/es/player/processor/chart/vchart.js.map +1 -1
  312. package/es/player/processor/common/bounce-processor.js +2 -3
  313. package/es/player/processor/common/bounce-processor.js.map +1 -1
  314. package/es/player/processor/component/common-component.js +21 -21
  315. package/es/player/processor/component/common-component.js.map +1 -1
  316. package/es/player/processor/interface/action-processor.d.ts +1 -1
  317. package/es/player/processor/interface/action-processor.js.map +1 -1
  318. package/es/player/processor/interface/common-action.d.ts +3 -2
  319. package/es/player/processor/interface/common-action.js.map +1 -1
  320. package/es/player/processor/interface/style-action.d.ts +4 -5
  321. package/es/player/processor/interface/style-action.js.map +1 -1
  322. package/es/player/processor/processor.js +1 -1
  323. package/es/player/processor/processor.js.map +1 -1
  324. package/es/player/processor/processorMap.d.ts +9 -0
  325. package/es/player/processor/processorMap.js +8 -0
  326. package/es/player/processor/processorMap.js.map +1 -1
  327. package/es/player/scheduler.js +12 -8
  328. package/es/player/scheduler.js.map +1 -1
  329. package/es/story/canvas/canvas.js +3 -4
  330. package/es/story/canvas/canvas.js.map +1 -1
  331. package/es/story/character/base/base.d.ts +4 -0
  332. package/es/story/character/base/base.js +1 -1
  333. package/es/story/character/base/base.js.map +1 -1
  334. package/es/story/character/chart/character.d.ts +15 -0
  335. package/es/story/character/chart/character.js +58 -13
  336. package/es/story/character/chart/character.js.map +1 -1
  337. package/es/story/character/chart/characters/rankingBar.d.ts +4 -0
  338. package/es/story/character/chart/characters/rankingBar.js +14 -0
  339. package/es/story/character/chart/characters/rankingBar.js.map +1 -0
  340. package/es/story/character/chart/graphic/vchart-graphic-picker.js +6 -8
  341. package/es/story/character/chart/graphic/vchart-graphic-picker.js.map +1 -1
  342. package/es/story/character/chart/graphic/vchart-graphic-render.js +7 -7
  343. package/es/story/character/chart/graphic/vchart-graphic-render.js.map +1 -1
  344. package/es/story/character/chart/graphic/vchart-graphic.d.ts +14 -4
  345. package/es/story/character/chart/graphic/vchart-graphic.js +83 -13
  346. package/es/story/character/chart/graphic/vchart-graphic.js.map +1 -1
  347. package/es/story/character/chart/runtime/common-spec.d.ts +2 -4
  348. package/es/story/character/chart/runtime/common-spec.js +0 -2
  349. package/es/story/character/chart/runtime/common-spec.js.map +1 -1
  350. package/es/story/character/chart/runtime/component-spec.d.ts +4 -3
  351. package/es/story/character/chart/runtime/component-spec.js +7 -5
  352. package/es/story/character/chart/runtime/component-spec.js.map +1 -1
  353. package/es/story/character/chart/temp/constant.d.ts +1 -0
  354. package/es/story/character/chart/temp/constant.js +2 -1
  355. package/es/story/character/chart/temp/constant.js.map +1 -1
  356. package/es/story/character/chart/temp/templates/bar.d.ts +20 -0
  357. package/es/story/character/chart/temp/templates/bar.js +27 -0
  358. package/es/story/character/chart/temp/templates/bar.js.map +1 -0
  359. package/es/story/character/chart/temp/templates/base-temp.d.ts +6 -4
  360. package/es/story/character/chart/temp/templates/base-temp.js +1 -1
  361. package/es/story/character/chart/temp/templates/base-temp.js.map +1 -1
  362. package/es/story/character/chart/temp/templates/ranking-bar-temp.d.ts +8 -0
  363. package/es/story/character/chart/temp/templates/ranking-bar-temp.js +18 -0
  364. package/es/story/character/chart/temp/templates/ranking-bar-temp.js.map +1 -0
  365. package/es/story/character/component/character-group/component-group-graphic-render.d.ts +2 -2
  366. package/es/story/character/component/character-group/component-group-graphic-render.js +4 -4
  367. package/es/story/character/component/character-group/component-group-graphic-render.js.map +1 -1
  368. package/es/story/character/component/character-group/component-group-graphic.d.ts +1 -1
  369. package/es/story/character/component/character-group/component-group-graphic.js +5 -3
  370. package/es/story/character/component/character-group/component-group-graphic.js.map +1 -1
  371. package/es/story/character/component/character.d.ts +5 -1
  372. package/es/story/character/component/character.js +18 -1
  373. package/es/story/character/component/character.js.map +1 -1
  374. package/es/story/character/component/characters/character-image.d.ts +3 -0
  375. package/es/story/character/component/characters/character-image.js +4 -0
  376. package/es/story/character/component/characters/character-image.js.map +1 -1
  377. package/es/story/character/component/characters/character-rect.d.ts +3 -0
  378. package/es/story/character/component/characters/character-rect.js +4 -0
  379. package/es/story/character/component/characters/character-rect.js.map +1 -1
  380. package/es/story/character/component/characters/character-shape.d.ts +4 -0
  381. package/es/story/character/component/characters/character-shape.js +15 -0
  382. package/es/story/character/component/characters/character-shape.js.map +1 -1
  383. package/es/story/character/component/graphic/graphic-base-text.d.ts +2 -1
  384. package/es/story/character/component/graphic/graphic-base-text.js +7 -2
  385. package/es/story/character/component/graphic/graphic-base-text.js.map +1 -1
  386. package/es/story/character/component/graphic/symbol.d.ts +3 -0
  387. package/es/story/character/component/graphic/symbol.js +17 -2
  388. package/es/story/character/component/graphic/symbol.js.map +1 -1
  389. package/es/story/character/dsl-interface.d.ts +2 -0
  390. package/es/story/character/dsl-interface.js.map +1 -1
  391. package/es/story/character/runtime-interface.d.ts +9 -4
  392. package/es/story/character/runtime-interface.js.map +1 -1
  393. package/es/story/character/visactor/character.d.ts +18 -3
  394. package/es/story/character/visactor/character.js +18 -0
  395. package/es/story/character/visactor/character.js.map +1 -1
  396. package/es/story/character/visactor/interface.js.map +1 -1
  397. package/es/story/index.js +7 -3
  398. package/es/story/index.js.map +1 -1
  399. package/es/story/interface/dsl-interface.d.ts +3 -2
  400. package/es/story/interface/dsl-interface.js.map +1 -1
  401. package/es/story/interface/runtime-interface.d.ts +2 -0
  402. package/es/story/interface/runtime-interface.js.map +1 -1
  403. package/es/story/story.js +3 -2
  404. package/es/story/story.js.map +1 -1
  405. package/es/story/utils/chart.d.ts +2 -1
  406. package/es/story/utils/chart.js +18 -1
  407. package/es/story/utils/chart.js.map +1 -1
  408. package/es/story/utils/layout.d.ts +2 -1
  409. package/es/story/utils/layout.js +2 -2
  410. package/es/story/utils/layout.js.map +1 -1
  411. package/es/story/utils/vchart-pick.d.ts +115 -0
  412. package/es/story/utils/vchart-pick.js +115 -0
  413. package/es/story/utils/vchart-pick.js.map +1 -0
  414. package/package.json +8 -7
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/component/graphic/symbol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,OAAO,aAAc,SAAQ,OAAO;IAGxC,oBAAoB;QAClB,OAAO;YACL,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YAChB,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,EAAkB;YAC/B,UAAU,EAAE,QAAQ;SACrB,CAAC;IACJ,CAAC;IAED,IAAI;;QACF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,YAAY,CAC1B,IAAI,CAAC,oBAAoB,iCACpB,IAAI,CAAC,oBAAoB,EAAE,GAC3B,CAAC,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,0CAAE,OAAO,mCAAI,EAAE,CAAC,EAChD,CACH,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACvD;IACH,CAAC;CACF","file":"symbol.js","sourcesContent":["import type { ISymbol } from '@visactor/vrender';\nimport { createSymbol } from '@visactor/vrender';\nimport type { IPointLike } from '@visactor/vutils';\nimport { Graphic } from './graphic';\n\nexport class GraphicSymbol extends Graphic {\n protected _graphic: ISymbol;\n\n getInitialAttributes() {\n return {\n x: 0,\n y: 0,\n width: 120,\n height: 80,\n angle: 0,\n anchor: [60, 40],\n lineWidth: 2,\n stroke: '#000000',\n shapePoints: [] as IPointLike[],\n symbolType: 'circle'\n };\n }\n\n init() {\n if (!this._graphic) {\n this._graphic = createSymbol(\n this._transformAttributes({\n ...this.getInitialAttributes(),\n ...(this._character.spec.options?.graphic ?? {})\n })\n );\n this._graphic.name = `graphic-symbol-${this._character.id}`;\n this._character.getGraphicParent().add(this._graphic);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/story/character/component/graphic/symbol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,OAAO,aAAc,SAAQ,OAAO;IAGxC,oBAAoB;QAClB,OAAO;YACL,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YAChB,SAAS,EAAE,CAAC;YACZ,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,EAAkB;YAC/B,UAAU,EAAE,QAAQ;SACrB,CAAC;IACJ,CAAC;IAED,IAAI;;QACF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,iCACvC,IAAI,CAAC,oBAAoB,EAAE,GAC3B,CAAC,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,0CAAE,OAAO,mCAAI,EAAE,CAAC,EAChD,CAAC;YACH,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACvD;IACH,CAAC;IAED,eAAe,CAAC,UAAgC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,iCACvC,mBAAmB,CAAC,UAAU,CAAC,KAClC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,IACrD,CAAC;QACH,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QAEhE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAES,oBAAoB,CAAC,UAAe;QAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;CACF","file":"symbol.js","sourcesContent":["import type { ISymbol } from '@visactor/vrender';\nimport { createSymbol } from '@visactor/vrender';\nimport type { IPointLike } from '@visactor/vutils';\nimport { Graphic } from './graphic';\nimport type { IWidgetData } from '../../dsl-interface';\nimport { getLayoutFromWidget } from '../../../utils/layout';\n\nexport class GraphicSymbol extends Graphic {\n protected _graphic: ISymbol;\n\n getInitialAttributes() {\n return {\n x: 0,\n y: 0,\n width: 120,\n height: 80,\n angle: 0,\n anchor: [60, 40],\n lineWidth: 2,\n stroke: '#000000',\n shapePoints: [] as IPointLike[],\n symbolType: 'circle'\n };\n }\n\n init() {\n if (!this._graphic) {\n const attributes = this._transformAttributes({\n ...this.getInitialAttributes(),\n ...(this._character.spec.options?.graphic ?? {})\n });\n this._graphic = createSymbol(attributes);\n this._graphic.name = `graphic-symbol-${this._character.id}`;\n this._character.getGraphicParent().add(this._graphic);\n }\n }\n\n applyLayoutData(layoutData: Partial<IWidgetData>): void {\n const attributes = this._transformAttributes({\n ...getLayoutFromWidget(layoutData),\n shapePoints: this._character.spec.options.shapePoints\n });\n attributes.size = Math.min(attributes.width, attributes.height);\n\n this._graphic.setAttributes(attributes);\n }\n\n protected _transformAttributes(attributes: any): any {\n const data = super._transformAttributes(attributes);\n const { width, height } = attributes;\n data.x = width / 2;\n data.y = height / 2;\n return data;\n }\n}\n"]}
@@ -1,3 +1,4 @@
1
+ import type { IInitOption } from '@visactor/vchart';
1
2
  import type { IRichTextGraphicAttribute, ITextGraphicAttribute } from '@visactor/vrender';
2
3
  import type { DirectionType } from './chart/const';
3
4
  export type IPercent = `${number}%`;
@@ -44,6 +45,7 @@ export interface IComponentSpec {
44
45
  export interface IChartCharacterSpec extends ICharacterSpecBase {
45
46
  options: {
46
47
  spec?: any;
48
+ initOption?: IInitOption;
47
49
  panel?: any;
48
50
  theme?: any;
49
51
  data?: any;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/dsl-interface.ts"],"names":[],"mappings":"","file":"dsl-interface.js","sourcesContent":["import type { IRichTextGraphicAttribute, ITextGraphicAttribute } from '@visactor/vrender';\nimport type { DirectionType } from './chart/const';\n\nexport type IPercent = `${number}%`;\nexport type WidgetNumber = number; // | IPercent;\n\nexport type IWidgetData = {\n left: WidgetNumber;\n top: WidgetNumber;\n} & (\n | {\n bottom: WidgetNumber;\n right: WidgetNumber;\n }\n | {\n width: WidgetNumber;\n height: WidgetNumber;\n }\n);\n\nexport interface ICharacterSpecBase {\n id: string;\n type: string; // 类型\n position: IWidgetData; // 定位描述\n zIndex: number;\n}\n\nexport type IEditorTextGraphicAttribute = {\n graphicAlign?: 'left' | 'center' | 'right';\n graphicBaseline?: 'top' | 'middle' | 'bottom';\n} & Partial<ITextGraphicAttribute & IRichTextGraphicAttribute>;\n\nexport interface IComponentCharacterSpec extends ICharacterSpecBase {\n options: {\n graphic: any;\n text?: IEditorTextGraphicAttribute;\n isResized?: boolean;\n angle?: number;\n shapePoints?: any;\n };\n}\n\nexport interface IComponentMatch {\n usrId?: string;\n specIndex?: number | 'all'; // all 表示所有\n [key: string]: any;\n}\n\nexport interface IComponentSpec {\n specKey: string;\n matchInfo: IComponentMatch;\n spec: any;\n}\n\nexport interface IChartCharacterSpec extends ICharacterSpecBase {\n options: {\n // 图表spec\n spec?: any;\n panel?: any;\n // 各种图表配置属性\n theme?: any;\n // 数据源\n data?: any;\n // 内部模块布局信息\n padding?: any;\n // 标题\n title?: any;\n layout?: any;\n // 色板\n color?: string[];\n // 标注\n marker?: any;\n // mark单元素样式配置\n markStyle?: any[];\n // 组样式\n dataGroupSpec?: {\n [key: string]: any;\n };\n // 方向\n direction?: DirectionType;\n // 系列配置\n seriesSpec?: {\n matchInfo: IComponentMatch;\n spec: any;\n }[];\n // 模块 spec\n componentSpec?: IComponentSpec[];\n };\n}\n\nexport type ICharacterSpec = IChartCharacterSpec | IComponentCharacterSpec;\n"]}
1
+ {"version":3,"sources":["../src/story/character/dsl-interface.ts"],"names":[],"mappings":"","file":"dsl-interface.js","sourcesContent":["import type { IInitOption } from '@visactor/vchart';\nimport type { IRichTextGraphicAttribute, ITextGraphicAttribute } from '@visactor/vrender';\nimport type { DirectionType } from './chart/const';\n\nexport type IPercent = `${number}%`;\nexport type WidgetNumber = number; // | IPercent;\n\nexport type IWidgetData = {\n left: WidgetNumber;\n top: WidgetNumber;\n} & (\n | {\n bottom: WidgetNumber;\n right: WidgetNumber;\n }\n | {\n width: WidgetNumber;\n height: WidgetNumber;\n }\n);\n\nexport interface ICharacterSpecBase {\n id: string;\n type: string; // 类型\n position: IWidgetData; // 定位描述\n zIndex: number;\n}\n\nexport type IEditorTextGraphicAttribute = {\n graphicAlign?: 'left' | 'center' | 'right';\n graphicBaseline?: 'top' | 'middle' | 'bottom';\n} & Partial<ITextGraphicAttribute & IRichTextGraphicAttribute>;\n\nexport interface IComponentCharacterSpec extends ICharacterSpecBase {\n options: {\n graphic: any;\n text?: IEditorTextGraphicAttribute;\n isResized?: boolean;\n angle?: number;\n shapePoints?: any;\n };\n}\n\nexport interface IComponentMatch {\n usrId?: string;\n specIndex?: number | 'all'; // all 表示所有\n [key: string]: any;\n}\n\nexport interface IComponentSpec {\n specKey: string;\n matchInfo: IComponentMatch;\n spec: any;\n}\n\nexport interface IChartCharacterSpec extends ICharacterSpecBase {\n options: {\n // 图表spec\n spec?: any;\n // 初始化参数\n initOption?: IInitOption;\n panel?: any;\n // 各种图表配置属性\n theme?: any;\n // 数据源\n data?: any;\n // 内部模块布局信息\n padding?: any;\n // 标题\n title?: any;\n layout?: any;\n // 色板\n color?: string[];\n // 标注\n marker?: any;\n // mark单元素样式配置\n markStyle?: any[];\n // 组样式\n dataGroupSpec?: {\n [key: string]: any;\n };\n // 方向\n direction?: DirectionType;\n // 系列配置\n seriesSpec?: {\n matchInfo: IComponentMatch;\n spec: any;\n }[];\n // 模块 spec\n componentSpec?: IComponentSpec[];\n };\n}\n\nexport type ICharacterSpec = IChartCharacterSpec | IComponentCharacterSpec;\n"]}
@@ -1,21 +1,26 @@
1
- import type { IGroup } from '@visactor/vrender';
2
- import type { IPointLike } from '@visactor/vutils';
1
+ import type { IGroup, IGraphic } from '@visactor/vrender';
2
+ import type { IBoundsLike, IPointLike } from '@visactor/vutils';
3
3
  import type { IStory, IStoryCanvas, StoryEvent } from '../interface/runtime-interface';
4
4
  import type { ICharacterSpec } from './dsl-interface';
5
5
  import type { Graphic } from './component/graphic/graphic';
6
6
  export interface ICharacterPickInfo {
7
7
  part: string;
8
- graphicType: string;
8
+ graphic?: IGraphic;
9
+ graphicType?: string;
10
+ modelInfo?: any;
9
11
  }
10
12
  export interface ICharacter {
11
13
  id: string;
14
+ type: string;
15
+ visActorType: string;
12
16
  spec: ICharacterSpec;
17
+ graphic: Graphic | IGroup;
13
18
  init: () => void;
14
19
  reset: () => void;
15
20
  show: () => void;
16
21
  hide: () => void;
17
22
  getGraphicParent: () => IGroup;
18
- graphic: Graphic | IGroup;
23
+ getLayoutBounds: () => IBoundsLike;
19
24
  tickTo: (t: number) => void;
20
25
  checkEvent: (event: StoryEvent) => false | (ICharacterPickInfo & any);
21
26
  updateSpec: (spec: Omit<Partial<ICharacterSpec>, 'id' | 'type'>) => void;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/runtime-interface.ts"],"names":[],"mappings":"","file":"runtime-interface.js","sourcesContent":["import type { IGroup } from '@visactor/vrender';\nimport type { IPointLike } from '@visactor/vutils';\nimport type { StoryCanvas } from '../canvas/canvas';\nimport type { IStory, IStoryCanvas, StoryEvent } from '../interface/runtime-interface';\nimport type { ICharacterSpec } from './dsl-interface';\nimport type { Graphic } from './component/graphic/graphic';\n\nexport interface ICharacterPickInfo {\n part: string;\n graphicType: string;\n}\nexport interface ICharacter {\n id: string;\n spec: ICharacterSpec;\n\n init: () => void;\n reset: () => void;\n show: () => void;\n hide: () => void;\n getGraphicParent: () => IGroup;\n graphic: Graphic | IGroup;\n tickTo: (t: number) => void;\n\n checkEvent: (event: StoryEvent) => false | (ICharacterPickInfo & any);\n\n updateSpec: (spec: Omit<Partial<ICharacterSpec>, 'id' | 'type'>) => void;\n\n setAttributes: (attr: Record<string, any>) => void;\n release: () => void;\n}\n\nexport interface ICharacterInitOption {\n story: IStory;\n canvas: IStoryCanvas;\n graphicParent: IGroup;\n}\n\nexport interface ICharacterConstructor {\n new (spec: ICharacterSpec, option: ICharacterInitOption): ICharacter;\n}\n\nexport interface ILayoutAttribute {\n x: number;\n y: number;\n width: number;\n height: number;\n angle: number;\n anchor?: [number | string, number | string];\n dx?: number;\n dy?: number;\n shapePoints?: IPointLike[];\n}\n"]}
1
+ {"version":3,"sources":["../src/story/character/runtime-interface.ts"],"names":[],"mappings":"","file":"runtime-interface.js","sourcesContent":["import type { IGroup, IGraphic } from '@visactor/vrender';\nimport type { IBoundsLike, IPointLike } from '@visactor/vutils';\nimport type { IStory, IStoryCanvas, StoryEvent } from '../interface/runtime-interface';\nimport type { ICharacterSpec } from './dsl-interface';\nimport type { Graphic } from './component/graphic/graphic';\n\nexport interface ICharacterPickInfo {\n part: string;\n graphic?: IGraphic;\n graphicType?: string;\n modelInfo?: any;\n}\nexport interface ICharacter {\n id: string;\n type: string;\n visActorType: string;\n spec: ICharacterSpec;\n graphic: Graphic | IGroup;\n\n init: () => void;\n reset: () => void;\n show: () => void;\n hide: () => void;\n getGraphicParent: () => IGroup;\n getLayoutBounds: () => IBoundsLike;\n tickTo: (t: number) => void;\n\n checkEvent: (event: StoryEvent) => false | (ICharacterPickInfo & any);\n\n updateSpec: (spec: Omit<Partial<ICharacterSpec>, 'id' | 'type'>) => void;\n\n setAttributes: (attr: Record<string, any>) => void;\n release: () => void;\n}\n\nexport interface ICharacterInitOption {\n story: IStory;\n canvas: IStoryCanvas;\n graphicParent: IGroup;\n}\n\nexport interface ICharacterConstructor {\n new (spec: ICharacterSpec, option: ICharacterInitOption): ICharacter;\n}\n\nexport interface ILayoutAttribute {\n x: number;\n y: number;\n width: number;\n height: number;\n angle: number;\n anchor?: [number | string, number | string];\n dx?: number;\n dy?: number;\n shapePoints?: IPointLike[];\n}\n"]}
@@ -1,8 +1,8 @@
1
- import { ICharacterSpec } from 'src/story/character/dsl-interface';
1
+ import type { ICharacterSpec } from 'src/story/character/dsl-interface';
2
2
  import { CharacterBase } from '../base/base';
3
3
  import type { ISpecProcess, ICharacterVisactor } from './interface';
4
- import { ICharacterInitOption } from '../runtime-interface';
5
- import { IChartCharacterRuntime } from '../chart/runtime/interface';
4
+ import type { ICharacterInitOption } from '../runtime-interface';
5
+ import type { IChartCharacterRuntime } from '../chart/runtime/interface';
6
6
  export declare abstract class CharacterVisactor extends CharacterBase implements ICharacterVisactor {
7
7
  protected _specProcess: ISpecProcess;
8
8
  get specProcess(): ISpecProcess;
@@ -24,6 +24,21 @@ export declare abstract class CharacterVisactor extends CharacterBase implements
24
24
  show(): void;
25
25
  hide(): void;
26
26
  getGraphicParent(): any;
27
+ getViewBoxFromSpec(): {
28
+ layout: Partial<import("../runtime-interface").ILayoutAttribute>;
29
+ viewBox: {
30
+ x1: number;
31
+ x2: number;
32
+ y1: number;
33
+ y2: number;
34
+ };
35
+ };
36
+ getLayoutBounds(): {
37
+ x1: number;
38
+ x2: number;
39
+ y1: number;
40
+ y2: number;
41
+ };
27
42
  tickTo(t: number): void;
28
43
  release(): void;
29
44
  }
@@ -1,5 +1,7 @@
1
1
  import { CharacterBase } from "../base/base";
2
2
 
3
+ import { getLayoutFromWidget } from "../../utils/layout";
4
+
3
5
  export class CharacterVisactor extends CharacterBase {
4
6
  get specProcess() {
5
7
  return this._specProcess;
@@ -37,6 +39,22 @@ export class CharacterVisactor extends CharacterBase {
37
39
  getGraphicParent() {
38
40
  return this._graphic;
39
41
  }
42
+ getViewBoxFromSpec() {
43
+ const layout = getLayoutFromWidget(this._spec.position);
44
+ return {
45
+ layout: layout,
46
+ viewBox: {
47
+ x1: layout.x,
48
+ x2: layout.x + layout.width,
49
+ y1: layout.y,
50
+ y2: layout.y + layout.height
51
+ }
52
+ };
53
+ }
54
+ getLayoutBounds() {
55
+ const {viewBox: viewBox} = this.getViewBoxFromSpec();
56
+ return viewBox;
57
+ }
40
58
  tickTo(t) {}
41
59
  release() {
42
60
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/visactor/character.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAK7C,MAAM,OAAgB,iBAAkB,SAAQ,aAAa;IAE3D,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC;IAC7C,CAAC;IAED,IAAI,SAAS;;QACX,OAAO,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,YAAY,EAAE,CAAC;IACtE,CAAC;IAED,IAAI,QAAQ;;QACV,OAAO,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,IAAI,CAAC;IAC5D,CAAC;IAID,YAAY,IAAoB,EAAE,MAA4B;QAC5D,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAHZ,aAAQ,GAA6B,EAAE,CAAC;QAelD,gBAAW,GAAG,GAAG,EAAE;;YACjB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,WAAW,iDAAI,CAAA,EAAA,CAAC,CAAC;YAC9C,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACpH,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC,CAAC;QAjBA,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAES,YAAY,KAAU,CAAC;IAEjC,WAAW,CAAC,GAAqD;IAEjE,CAAC;IAgBD,IAAI;QACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IACD,IAAI;QACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,CAAS;QACd,OAAO;IACT,CAAC;IAED,OAAO;;QACL,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,0CAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3C,CAAC;CACF","file":"character.js","sourcesContent":["/* eslint-disable no-console */\nimport { ICharacterSpec } from 'src/story/character/dsl-interface';\nimport { CharacterBase } from '../base/base';\nimport type { ISpecProcess, ICharacterVisactor, IVisactorGraphic } from './interface';\nimport { ICharacterInitOption } from '../runtime-interface';\nimport { IChartCharacterRuntime } from '../chart/runtime/interface';\n\nexport abstract class CharacterVisactor extends CharacterBase implements ICharacterVisactor {\n protected declare _specProcess: ISpecProcess;\n get specProcess() {\n return this._specProcess;\n }\n get dataTempTransform() {\n return this._specProcess.dataTempTransform;\n }\n\n get chartType() {\n return this._specProcess.dataTempTransform.specTemp?.getChartType();\n }\n\n get tempType() {\n return this._specProcess.dataTempTransform.specTemp?.type;\n }\n\n protected _runtime: IChartCharacterRuntime[] = [];\n\n constructor(spec: ICharacterSpec, option: ICharacterInitOption) {\n super(spec, option);\n this._initSpecProcess();\n }\n\n protected _initRuntime(): void {}\n\n clearConfig(opt: { clearCurrent: false | { [key: string]: any } }) {\n // do nothing\n }\n\n protected abstract _initSpecProcess(): void;\n\n onSpecReady = () => {\n console.log('onSpecReady !');\n this._runtime.forEach(r => r.onSpecReady?.());\n this._specProcess.dataTempTransform.specTemp?.standardizedSpec(this._specProcess.getVisSpec(), { character: this });\n this._updateVisactorSpec();\n this._afterRender();\n };\n\n protected abstract _afterRender(): void;\n\n protected abstract _updateVisactorSpec(): void;\n\n show(): void {\n this._graphic.setAttribute('visibleAll', true);\n }\n hide(): void {\n this._graphic.setAttribute('visibleAll', false);\n }\n\n getGraphicParent() {\n return this._graphic;\n }\n\n tickTo(t: number): void {\n return;\n }\n\n release() {\n this._specProcess.release();\n this._graphic?.parent?.removeChild(this._graphic);\n this._specProcess = this._graphic = null;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/story/character/visactor/character.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,OAAgB,iBAAkB,SAAQ,aAAa;IAE3D,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC;IAC7C,CAAC;IAED,IAAI,SAAS;;QACX,OAAO,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,YAAY,EAAE,CAAC;IACtE,CAAC;IAED,IAAI,QAAQ;;QACV,OAAO,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,IAAI,CAAC;IAC5D,CAAC;IAID,YAAY,IAAoB,EAAE,MAA4B;QAC5D,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAHZ,aAAQ,GAA6B,EAAE,CAAC;QAiBlD,gBAAW,GAAG,GAAG,EAAE;;YACjB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,WAAW,iDAAI,CAAA,EAAA,CAAC,CAAC;YAC9C,MAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,0CAAE,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACpH,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC,CAAC;QAnBA,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAES,YAAY;QACpB,OAAO;IACT,CAAC;IAED,WAAW,CAAC,GAAqD;IAEjE,CAAC;IAgBD,IAAI;QACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IACD,IAAI;QACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,MAAM,CAAC,CAAC;YACZ,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK;YAC3B,EAAE,EAAE,MAAM,CAAC,CAAC;YACZ,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM;SAC7B,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,eAAe;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,CAAS;QACd,OAAO;IACT,CAAC;IAED,OAAO;;QACL,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,0CAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3C,CAAC;CACF","file":"character.js","sourcesContent":["/* eslint-disable no-console */\nimport type { ICharacterSpec } from 'src/story/character/dsl-interface';\nimport { CharacterBase } from '../base/base';\nimport type { ISpecProcess, ICharacterVisactor } from './interface';\nimport type { ICharacterInitOption } from '../runtime-interface';\nimport type { IChartCharacterRuntime } from '../chart/runtime/interface';\nimport { getLayoutFromWidget } from '../../utils/layout';\n\nexport abstract class CharacterVisactor extends CharacterBase implements ICharacterVisactor {\n protected declare _specProcess: ISpecProcess;\n get specProcess() {\n return this._specProcess;\n }\n get dataTempTransform() {\n return this._specProcess.dataTempTransform;\n }\n\n get chartType() {\n return this._specProcess.dataTempTransform.specTemp?.getChartType();\n }\n\n get tempType() {\n return this._specProcess.dataTempTransform.specTemp?.type;\n }\n\n protected _runtime: IChartCharacterRuntime[] = [];\n\n constructor(spec: ICharacterSpec, option: ICharacterInitOption) {\n super(spec, option);\n this._initSpecProcess();\n }\n\n protected _initRuntime(): void {\n return;\n }\n\n clearConfig(opt: { clearCurrent: false | { [key: string]: any } }) {\n // do nothing\n }\n\n protected abstract _initSpecProcess(): void;\n\n onSpecReady = () => {\n console.log('onSpecReady !');\n this._runtime.forEach(r => r.onSpecReady?.());\n this._specProcess.dataTempTransform.specTemp?.standardizedSpec(this._specProcess.getVisSpec(), { character: this });\n this._updateVisactorSpec();\n this._afterRender();\n };\n\n protected abstract _afterRender(): void;\n\n protected abstract _updateVisactorSpec(): void;\n\n show(): void {\n this._graphic.setAttribute('visibleAll', true);\n }\n hide(): void {\n this._graphic.setAttribute('visibleAll', false);\n }\n\n getGraphicParent() {\n return this._graphic;\n }\n\n getViewBoxFromSpec() {\n const layout = getLayoutFromWidget(this._spec.position);\n const viewBox = {\n x1: layout.x,\n x2: layout.x + layout.width,\n y1: layout.y,\n y2: layout.y + layout.height\n };\n return { layout, viewBox };\n }\n\n getLayoutBounds() {\n const { viewBox } = this.getViewBoxFromSpec();\n return viewBox;\n }\n\n tickTo(t: number): void {\n return;\n }\n\n release() {\n this._specProcess.release();\n this._graphic?.parent?.removeChild(this._graphic);\n this._specProcess = this._graphic = null;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/visactor/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IChartCharacterSpec } from '../dsl-interface';\nimport type { EventEmitter } from '@visactor/vutils';\nimport type { ICharacter } from '../runtime-interface';\nimport type { ISpec, IVChart } from '@visactor/vchart';\nimport type { IGroup } from '@visactor/vrender';\n\nexport type StandardData = IDataValue | IDataValue[];\nexport type IParserValue = any;\nexport type DataUpdateCall = (data: StandardData) => void;\nexport type DataErrorCall = (msg: { type: string; info: string }, opt?: any) => void;\n\n// visactor 元素的内部结构\n// 数据部分 start\n// DataParser:数据处理。负责解析数据,得到模版可用数据,处理数据上的特性内容。\n// VisactorTemp:模版处理。负责结合数据,生成对应类型的基础 spec。不同类型图表的特殊逻辑,在 temp 中处理\n// DataTempTransform:数据与模版更新管理,当数据/模版更新时,通过这个模块判定更新是否成功,成功后抛出更新成功消息。包含 VisactorTemp 与 DataParser\n// SpecProcess:编辑配置管理器,编辑属性更新的处理,对外输出合并了编辑信息的 spec 。包含一个 dataTempTransform\n// 数据部分 end\n\n// graphic 部分 start\n// IVisactorGraphic:包含一个 vchart|vtbale 。visactor 的自定义图元封装。处理图元是否重绘,viewBox的图元属性逻辑\n// IVisactorGraphic-render:实际的 draw 入口,处理绘图过程,主要是处理变换矩阵。\n// graphic 部分 end\n\n// Visactor-role:编辑元素,包含一个 specProcess、IVisactorGraphic\n\nexport interface IDataTempTransform {\n readonly specTemp: IVisactorTemp;\n\n readonly nextTemp: IVisactorTemp;\n emitter: EventEmitter;\n\n updateChartTemp: (temp?: string) => void;\n\n // 得到没有经过编辑器配置加工过的基础spec\n getBaseSpec: () => any;\n\n // 释放\n release: () => void;\n\n dataParser?: IDataParser;\n}\n\nexport interface IDataTempTransformConstructor {\n new ({ specProcess, character }: { character: ICharacterVisactor; specProcess: ISpecProcess }): IDataTempTransform;\n}\n\nexport interface ISpecProcess {\n dataTempTransform: IDataTempTransform;\n emitter: EventEmitter;\n\n // 得到visactor元素的spec\n getVisSpec: () => ISpec;\n // 得到角色的spec\n getCharacterSpec: () => IChartCharacterSpec;\n\n // temp\n getCharacterType: () => string;\n\n release: () => void;\n}\n\nexport type IDataType = any;\n\nexport interface IDataValue {\n id: string;\n sourceKey: string;\n values: IDataType[];\n}\n\nexport type DataInfo = {\n [key: string]: {\n type: 'ordinal' | 'linear';\n };\n};\n\nexport type DataSave = {\n type: string;\n value: any;\n};\n\nexport interface IDataParser {\n type: string;\n getData: () => StandardData;\n getDataValue: () => IParserValue;\n getDataInfo?: () => DataInfo;\n getSpecOption?: () => any;\n getSave: () => DataSave;\n updateValue: (value: IParserValue) => void;\n setDataUpdateHandler: (call: DataUpdateCall) => void;\n setDataErrorHandler: (call: DataErrorCall) => void;\n clear: () => void;\n}\n\nexport interface IDataParserConstructor {\n type: string;\n new (\n value: any,\n option: {\n updateCall: DataUpdateCall;\n errorCall: DataErrorCall;\n currentData?: IDataParser;\n emitter: EventEmitter;\n }\n ): IDataParser;\n}\n\n// chart & table 都是用这个模版接口\nexport interface IVisactorTemp {\n type: string;\n getSpec: (data: StandardData, ctx: any, opt?: any) => ISpec | null;\n standardizedSpec: (spec: any, ctx: any, opt?: any) => void;\n getChartType: () => string;\n checkDataEnable: (data: StandardData, opt?: any) => boolean;\n getTempInfo?: () => any;\n clear: () => void;\n}\n\nexport interface IVisactorTempConstructor {\n new (): IVisactorTemp;\n}\n\n// 绘图元素\nexport interface IVisactorGraphic extends IGroup {\n readonly vProduct: IVChart;\n\n updateSpec: (spec: any) => void;\n release: () => void;\n}\n\n// 编辑元素\nexport interface ICharacterVisactor extends ICharacter {\n // 清除编辑数据\n clearConfig: (opt: { clearCurrent: false | { [key: string]: any } }) => void;\n getGraphicParent: () => IVisactorGraphic;\n}\n\nexport interface IUpdateAttributeOption {\n triggerHistory?: boolean;\n saveData?: boolean;\n actionType?: 'data-add' | 'data-change' | 'data-replace' | string;\n}\n"]}
1
+ {"version":3,"sources":["../src/story/character/visactor/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IChartCharacterSpec } from '../dsl-interface';\nimport type { EventEmitter, IBoundsLike } from '@visactor/vutils';\nimport type { ICharacter } from '../runtime-interface';\nimport type { ISpec, IVChart } from '@visactor/vchart';\nimport type { IGroup } from '@visactor/vrender';\n\nexport type StandardData = IDataValue | IDataValue[];\nexport type IParserValue = any;\nexport type DataUpdateCall = (data: StandardData) => void;\nexport type DataErrorCall = (msg: { type: string; info: string }, opt?: any) => void;\n\n// visactor 元素的内部结构\n// 数据部分 start\n// DataParser:数据处理。负责解析数据,得到模版可用数据,处理数据上的特性内容。\n// VisactorTemp:模版处理。负责结合数据,生成对应类型的基础 spec。不同类型图表的特殊逻辑,在 temp 中处理\n// DataTempTransform:数据与模版更新管理,当数据/模版更新时,通过这个模块判定更新是否成功,成功后抛出更新成功消息。包含 VisactorTemp 与 DataParser\n// SpecProcess:编辑配置管理器,编辑属性更新的处理,对外输出合并了编辑信息的 spec 。包含一个 dataTempTransform\n// 数据部分 end\n\n// graphic 部分 start\n// IVisactorGraphic:包含一个 vchart|vtbale 。visactor 的自定义图元封装。处理图元是否重绘,viewBox的图元属性逻辑\n// IVisactorGraphic-render:实际的 draw 入口,处理绘图过程,主要是处理变换矩阵。\n// graphic 部分 end\n\n// Visactor-role:编辑元素,包含一个 specProcess、IVisactorGraphic\n\nexport interface IDataTempTransform {\n readonly specTemp: IVisactorTemp;\n\n readonly nextTemp: IVisactorTemp;\n emitter: EventEmitter;\n\n updateChartTemp: (temp?: string) => void;\n\n // 得到没有经过编辑器配置加工过的基础spec\n getBaseSpec: () => any;\n\n // 释放\n release: () => void;\n\n dataParser?: IDataParser;\n}\n\nexport interface IDataTempTransformConstructor {\n new ({ specProcess, character }: { character: ICharacterVisactor; specProcess: ISpecProcess }): IDataTempTransform;\n}\n\nexport interface ISpecProcess {\n dataTempTransform: IDataTempTransform;\n emitter: EventEmitter;\n\n // 得到visactor元素的spec\n getVisSpec: () => ISpec;\n // 得到角色的spec\n getCharacterSpec: () => IChartCharacterSpec;\n\n // temp\n getCharacterType: () => string;\n\n release: () => void;\n}\n\nexport type IDataType = any;\n\nexport interface IDataValue {\n id: string;\n sourceKey: string;\n values: IDataType[];\n}\n\nexport type DataInfo = {\n [key: string]: {\n type: 'ordinal' | 'linear';\n };\n};\n\nexport type DataSave = {\n type: string;\n value: any;\n};\n\nexport interface IDataParser {\n type: string;\n getData: () => StandardData;\n getDataValue: () => IParserValue;\n getDataInfo?: () => DataInfo;\n getSpecOption?: () => any;\n getSave: () => DataSave;\n updateValue: (value: IParserValue) => void;\n setDataUpdateHandler: (call: DataUpdateCall) => void;\n setDataErrorHandler: (call: DataErrorCall) => void;\n clear: () => void;\n}\n\nexport interface IDataParserConstructor {\n type: string;\n new (\n value: any,\n option: {\n updateCall: DataUpdateCall;\n errorCall: DataErrorCall;\n currentData?: IDataParser;\n emitter: EventEmitter;\n }\n ): IDataParser;\n}\n\n// chart & table 都是用这个模版接口\nexport interface IVisactorTemp {\n type: string;\n getSpec: (data: StandardData, ctx: any, opt?: any) => ISpec | null;\n standardizedSpec: (spec: any, ctx: any, opt?: any) => void;\n getChartType: () => string;\n checkDataEnable: (data: StandardData, opt?: any) => boolean;\n getTempInfo?: () => any;\n clear: () => void;\n}\n\nexport interface IVisactorTempConstructor {\n new (): IVisactorTemp;\n}\n\n// 绘图元素\nexport interface IVisactorGraphic extends IGroup {\n readonly vProduct: IVChart;\n\n updateSpec: (spec: any) => void;\n release: () => void;\n}\n\n// 编辑元素\nexport interface ICharacterVisactor extends ICharacter {\n // 清除编辑数据\n clearConfig: (opt: { clearCurrent: false | { [key: string]: any } }) => void;\n getGraphicParent: () => IVisactorGraphic;\n}\n\nexport interface IUpdateAttributeOption {\n triggerHistory?: boolean;\n saveData?: boolean;\n actionType?: 'data-add' | 'data-change' | 'data-replace' | string;\n}\n"]}
package/es/story/index.js CHANGED
@@ -4,7 +4,7 @@ import { CharacterComponentRect } from "./character/component/characters/charact
4
4
 
5
5
  import { StoryFactory } from "./factory/factory";
6
6
 
7
- import { ContainerModule, GraphicRender, container } from "@visactor/vrender";
7
+ import { AutoEnablePlugins, ContainerModule, GraphicRender, RichTextEditPlugin, container } from "@visactor/vrender";
8
8
 
9
9
  import { CanvasPickerContribution } from "@visactor/vrender";
10
10
 
@@ -28,25 +28,29 @@ import { ComponentGroupRender } from "./character/component/character-group/comp
28
28
 
29
29
  import { CharacterComponentTimeline } from "./character/component/characters/character-timeline";
30
30
 
31
+ import { RankingBarCharacter } from "./character/chart/characters/rankingBar";
32
+
31
33
  const splitModule = new ContainerModule((bind => {
32
34
  bind(VChartRender).toSelf().inSingletonScope(), bind(ChartRender).toService(VChartRender),
33
35
  bind(GraphicRender).toService(ChartRender), bind(VChartPicker).to(VChartPicker).inSingletonScope(),
34
36
  bind(CanvasPickerContribution).toService(VChartPicker), bind(ComponentGroupRender).toSelf().inSingletonScope(),
35
37
  bind(GraphicRender).toService(ComponentGroupRender);
38
+ })), editPlugin = new ContainerModule((bind => {
39
+ bind(RichTextEditPlugin).toSelf(), bind(AutoEnablePlugins).toService(RichTextEditPlugin);
36
40
  }));
37
41
 
38
42
  let _register = !1;
39
43
 
40
44
  export function registerCharacter() {
41
45
  _register || (_register = !0, StoryFactory.registerCharacter(VChartCharacter.type, VChartCharacter),
42
- StoryFactory.registerCharacter(StoryComponentType.RECT, CharacterComponentRect),
46
+ StoryFactory.registerCharacter(RankingBarCharacter.type, RankingBarCharacter), StoryFactory.registerCharacter(StoryComponentType.RECT, CharacterComponentRect),
43
47
  StoryFactory.registerCharacter(StoryComponentType.TEXT, CharacterComponentText),
44
48
  StoryFactory.registerCharacter(StoryComponentType.QIPAO, CharacterComponentQipao),
45
49
  StoryFactory.registerCharacter(StoryComponentType.LINE, CharacterComponentLine),
46
50
  StoryFactory.registerCharacter(StoryComponentType.IMAGE, CharacterComponentImage),
47
51
  StoryFactory.registerCharacter(StoryComponentType.SHAPE, CharacterComponentShape),
48
52
  StoryFactory.registerCharacter(StoryComponentType.TIMELINE, CharacterComponentTimeline),
49
- container.load(splitModule));
53
+ container.load(splitModule), container.load(editPlugin));
50
54
  }
51
55
 
52
56
  registerCharacter();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iDAAiD,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sEAAsE,CAAC;AAC5G,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AAEjG,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;IAE7C,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC/C,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC1C,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACvD,IAAI,CAAC,wBAAwB,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAGvD,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACvD,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AAEH,IAAI,SAAS,GAAG,KAAK,CAAC;AACtB,MAAM,UAAU,iBAAiB;IAC/B,IAAI,SAAS,EAAE;QACb,OAAO;KACR;IACD,SAAS,GAAG,IAAI,CAAC;IACjB,YAAY,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAKtE,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAChF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAEhF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IAClF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;IAChF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IAClF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;IAClF,YAAY,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,QAAQ,EAAE,0BAA0B,CAAC,CAAC;IAExF,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC9B,CAAC;AAED,iBAAiB,EAAE,CAAC;AAEpB,cAAc,SAAS,CAAC","file":"index.js","sourcesContent":["import { CharacterComponentQipao } from './character/component/characters/character-qipao';\nimport { CharacterComponentRect } from './character/component/characters/character-rect';\nimport { StoryFactory } from './factory/factory';\nimport { ContainerModule, GraphicRender, container } from '@visactor/vrender';\nimport { CanvasPickerContribution } from '@visactor/vrender';\nimport { ChartRender, VChartRender } from './character/chart/graphic/vchart-graphic-render';\nimport { CharacterComponentText } from './character/component/characters/character-text';\n// import { CharacterComponentRichText } from './character/component/characters/character-richtext';\nimport { VChartPicker } from './character/chart/graphic/vchart-graphic-picker';\nimport { StoryComponentType } from '../constants/character';\nimport { CharacterComponentLine } from './character/component/characters/character-line';\nimport { CharacterComponentImage } from './character/component/characters/character-image';\nimport { CharacterComponentShape } from './character/component/characters/character-shape';\nimport { VChartCharacter } from './character/chart/characters/vchart';\nimport { ComponentGroupRender } from './character/component/character-group/component-group-graphic-render';\nimport { CharacterComponentTimeline } from './character/component/characters/character-timeline';\n\nconst splitModule = new ContainerModule(bind => {\n // chart渲染器注入\n bind(VChartRender).toSelf().inSingletonScope();\n bind(ChartRender).toService(VChartRender);\n bind(GraphicRender).toService(ChartRender);\n bind(VChartPicker).to(VChartPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(VChartPicker);\n\n // component渲染器注入\n bind(ComponentGroupRender).toSelf().inSingletonScope();\n bind(GraphicRender).toService(ComponentGroupRender);\n});\n\nlet _register = false;\nexport function registerCharacter() {\n if (_register) {\n return;\n }\n _register = true;\n StoryFactory.registerCharacter(VChartCharacter.type, VChartCharacter);\n\n // StoryFactory.registerCharacter('BarChart', CharacterChart);\n // StoryFactory.registerCharacter('CharacterChart', CharacterChart);\n // StoryFactory.registerCharacter('LineChart', CharacterChart);\n StoryFactory.registerCharacter(StoryComponentType.RECT, CharacterComponentRect);\n StoryFactory.registerCharacter(StoryComponentType.TEXT, CharacterComponentText);\n // StoryFactory.registerCharacter(StoryComponentType.RICH_TEXT, CharacterComponentRichText);\n StoryFactory.registerCharacter(StoryComponentType.QIPAO, CharacterComponentQipao);\n StoryFactory.registerCharacter(StoryComponentType.LINE, CharacterComponentLine);\n StoryFactory.registerCharacter(StoryComponentType.IMAGE, CharacterComponentImage);\n StoryFactory.registerCharacter(StoryComponentType.SHAPE, CharacterComponentShape);\n StoryFactory.registerCharacter(StoryComponentType.TIMELINE, CharacterComponentTimeline);\n\n container.load(splitModule);\n}\n\nregisterCharacter();\n\nexport * from './story';\n"]}
1
+ {"version":3,"sources":["../src/story/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import { CharacterComponentQipao } from './character/component/characters/character-qipao';\nimport { CharacterComponentRect } from './character/component/characters/character-rect';\nimport { StoryFactory } from './factory/factory';\nimport { AutoEnablePlugins, ContainerModule, GraphicRender, RichTextEditPlugin, container } from '@visactor/vrender';\nimport { CanvasPickerContribution } from '@visactor/vrender';\nimport { ChartRender, VChartRender } from './character/chart/graphic/vchart-graphic-render';\nimport { CharacterComponentText } from './character/component/characters/character-text';\n// import { CharacterComponentRichText } from './character/component/characters/character-richtext';\nimport { VChartPicker } from './character/chart/graphic/vchart-graphic-picker';\nimport { StoryComponentType } from '../constants/character';\nimport { CharacterComponentLine } from './character/component/characters/character-line';\nimport { CharacterComponentImage } from './character/component/characters/character-image';\nimport { CharacterComponentShape } from './character/component/characters/character-shape';\nimport { VChartCharacter } from './character/chart/characters/vchart';\nimport { ComponentGroupRender } from './character/component/character-group/component-group-graphic-render';\nimport { CharacterComponentTimeline } from './character/component/characters/character-timeline';\nimport { RankingBarCharacter } from './character/chart/characters/rankingBar';\n\nconst splitModule = new ContainerModule(bind => {\n // chart渲染器注入\n bind(VChartRender).toSelf().inSingletonScope();\n bind(ChartRender).toService(VChartRender);\n bind(GraphicRender).toService(ChartRender);\n bind(VChartPicker).to(VChartPicker).inSingletonScope();\n bind(CanvasPickerContribution).toService(VChartPicker);\n\n // component渲染器注入\n bind(ComponentGroupRender).toSelf().inSingletonScope();\n bind(GraphicRender).toService(ComponentGroupRender);\n});\n\nconst editPlugin = new ContainerModule(bind => {\n bind(RichTextEditPlugin).toSelf();\n bind(AutoEnablePlugins).toService(RichTextEditPlugin);\n});\n\nlet _register = false;\nexport function registerCharacter() {\n if (_register) {\n return;\n }\n _register = true;\n StoryFactory.registerCharacter(VChartCharacter.type, VChartCharacter);\n StoryFactory.registerCharacter(RankingBarCharacter.type, RankingBarCharacter);\n\n // StoryFactory.registerCharacter('BarChart', CharacterChart);\n // StoryFactory.registerCharacter('CharacterChart', CharacterChart);\n // StoryFactory.registerCharacter('LineChart', CharacterChart);\n StoryFactory.registerCharacter(StoryComponentType.RECT, CharacterComponentRect);\n StoryFactory.registerCharacter(StoryComponentType.TEXT, CharacterComponentText);\n // StoryFactory.registerCharacter(StoryComponentType.RICH_TEXT, CharacterComponentRichText);\n StoryFactory.registerCharacter(StoryComponentType.QIPAO, CharacterComponentQipao);\n StoryFactory.registerCharacter(StoryComponentType.LINE, CharacterComponentLine);\n StoryFactory.registerCharacter(StoryComponentType.IMAGE, CharacterComponentImage);\n StoryFactory.registerCharacter(StoryComponentType.SHAPE, CharacterComponentShape);\n StoryFactory.registerCharacter(StoryComponentType.TIMELINE, CharacterComponentTimeline);\n\n container.load(splitModule);\n container.load(editPlugin);\n}\n\nregisterCharacter();\n\nexport * from './story';\n"]}
@@ -1,14 +1,15 @@
1
+ import type { IRankingBarPlayAction } from './../../player/processor/chart/rankingBar/rankingBar';
1
2
  import type { IChartAddAction, IChartUpdateAction } from '../../player/processor/chart/vchart';
2
3
  import type { IChartVisibilityAction, IComponentVisibilityAction } from '../../player/processor/interface/appear-action';
3
4
  import type { IComponentBounceAction, IComponentMoveToAction, IComponentScaleToAction, IComponentStyleAction } from '../../player/processor/interface/style-action';
4
5
  import type { ICharacterSpec } from '../character';
5
- export type IActionSpec = IComponentStyleAction | IComponentVisibilityAction | IComponentMoveToAction | IComponentScaleToAction | IComponentBounceAction | IChartVisibilityAction | IChartUpdateAction | IChartAddAction;
6
+ export type IActionSpec = IComponentStyleAction | IComponentVisibilityAction | IComponentMoveToAction | IComponentScaleToAction | IComponentBounceAction | IChartVisibilityAction | IChartUpdateAction | IChartAddAction | IRankingBarPlayAction;
6
7
  export interface IStorySpec {
7
8
  acts: IActSpec[];
8
9
  characters: ICharacterSpec[];
9
10
  }
10
11
  export interface IActionsLink {
11
- characterId: string;
12
+ characterId: string | string[];
12
13
  characterActions: IActionSpec[];
13
14
  }
14
15
  export type ISceneSpec = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/interface/dsl-interface.ts"],"names":[],"mappings":"","file":"dsl-interface.js","sourcesContent":["import type { IChartAddAction, IChartUpdateAction } from '../../player/processor/chart/vchart';\nimport type {\n IChartVisibilityAction,\n IComponentVisibilityAction\n // IChartAddAction\n} from '../../player/processor/interface/appear-action';\nimport type {\n IComponentBounceAction,\n IComponentMoveToAction,\n IComponentScaleToAction,\n IComponentStyleAction\n} from '../../player/processor/interface/style-action';\nimport type { ICharacterSpec } from '../character';\n\nexport type IActionSpec =\n | IComponentStyleAction\n | IComponentVisibilityAction\n | IComponentMoveToAction\n | IComponentScaleToAction\n | IComponentBounceAction\n | IChartVisibilityAction\n | IChartUpdateAction\n | IChartAddAction;\n\nexport interface IStorySpec {\n acts: IActSpec[]; // 作品的章节\n characters: ICharacterSpec[]; // 作品中的元素\n}\n\nexport interface IActionsLink {\n characterId: string;\n characterActions: IActionSpec[];\n}\n\nexport type ISceneSpec = {\n id: string;\n delay?: number; // 入场延迟,可以是正数或者负数\n actions: IActionsLink[];\n};\n\nexport interface IActSpec {\n id: string;\n scenes: ISceneSpec[];\n}\n"]}
1
+ {"version":3,"sources":["../src/story/interface/dsl-interface.ts"],"names":[],"mappings":"","file":"dsl-interface.js","sourcesContent":["import type { IRankingBarPlayAction } from './../../player/processor/chart/rankingBar/rankingBar';\nimport type { IChartAddAction, IChartUpdateAction } from '../../player/processor/chart/vchart';\nimport type {\n IChartVisibilityAction,\n IComponentVisibilityAction\n} from '../../player/processor/interface/appear-action';\nimport type {\n IComponentBounceAction,\n IComponentMoveToAction,\n IComponentScaleToAction,\n IComponentStyleAction\n} from '../../player/processor/interface/style-action';\nimport type { ICharacterSpec } from '../character';\n\nexport type IActionSpec =\n | IComponentStyleAction\n | IComponentVisibilityAction\n | IComponentMoveToAction\n | IComponentScaleToAction\n | IComponentBounceAction\n | IChartVisibilityAction\n | IChartUpdateAction\n | IChartAddAction\n | IRankingBarPlayAction;\n\nexport interface IStorySpec {\n acts: IActSpec[]; // 作品的章节\n characters: ICharacterSpec[]; // 作品中的元素\n}\n\nexport interface IActionsLink {\n characterId: string | string[];\n characterActions: IActionSpec[];\n}\n\nexport type ISceneSpec = {\n id: string;\n delay?: number; // 入场延迟,可以是正数或者负数\n actions: IActionsLink[];\n};\n\nexport interface IActSpec {\n id: string;\n scenes: ISceneSpec[];\n}\n"]}
@@ -37,4 +37,6 @@ export interface ICharacterTree {
37
37
  export type StoryEvent = Event & {
38
38
  detailPath: IGraphic[];
39
39
  path: IGraphic[];
40
+ canvasX?: number;
41
+ canvasY?: number;
40
42
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/interface/runtime-interface.ts"],"names":[],"mappings":"","file":"runtime-interface.js","sourcesContent":["import type { IGraphic, IStage } from '@visactor/vrender';\nimport type { ICharacter, ICharacterSpec } from '../character';\nimport type { IPlayer } from '../../player/interface/player';\n\nexport interface IStoryInitOption {\n dom: string | HTMLDivElement; // dom id\n playerOption?: {\n scaleX?: number;\n scaleY?: number;\n };\n}\n\nexport interface IStoryCanvas {\n getStage: () => IStage;\n getCanvas: () => HTMLCanvasElement;\n getEventDetail: (event: StoryEvent) => {\n character: ICharacter;\n characterInfo: undefined;\n };\n release: () => void;\n}\n\nexport interface IStory {\n readonly id: string;\n readonly player: IPlayer;\n canvas: IStoryCanvas;\n getCharacters: () => { [key: string]: ICharacter };\n getCharactersById: (key: string) => ICharacter | null;\n}\nexport interface ICharacterTree {\n getCharacters: () => { [key: string]: ICharacter };\n getCharactersById: (key: string) => ICharacter | null;\n addCharacter: (spec: ICharacterSpec) => ICharacter;\n initCharacters: (spec: ICharacterSpec[]) => void;\n}\n\nexport type StoryEvent = Event & {\n detailPath: IGraphic[];\n path: IGraphic[];\n};\n"]}
1
+ {"version":3,"sources":["../src/story/interface/runtime-interface.ts"],"names":[],"mappings":"","file":"runtime-interface.js","sourcesContent":["import type { IGraphic, IStage } from '@visactor/vrender';\nimport type { ICharacter, ICharacterSpec } from '../character';\nimport type { IPlayer } from '../../player/interface/player';\n\nexport interface IStoryInitOption {\n dom: string | HTMLDivElement; // dom id\n playerOption?: {\n scaleX?: number;\n scaleY?: number;\n };\n}\n\nexport interface IStoryCanvas {\n getStage: () => IStage;\n getCanvas: () => HTMLCanvasElement;\n getEventDetail: (event: StoryEvent) => {\n character: ICharacter;\n characterInfo: undefined;\n };\n release: () => void;\n}\n\nexport interface IStory {\n readonly id: string;\n readonly player: IPlayer;\n canvas: IStoryCanvas;\n getCharacters: () => { [key: string]: ICharacter };\n getCharactersById: (key: string) => ICharacter | null;\n}\nexport interface ICharacterTree {\n getCharacters: () => { [key: string]: ICharacter };\n getCharactersById: (key: string) => ICharacter | null;\n addCharacter: (spec: ICharacterSpec) => ICharacter;\n initCharacters: (spec: ICharacterSpec[]) => void;\n}\n\nexport type StoryEvent = Event & {\n detailPath: IGraphic[];\n path: IGraphic[];\n canvasX?: number;\n canvasY?: number;\n};\n"]}
package/es/story/story.js CHANGED
@@ -46,10 +46,11 @@ export class Story {
46
46
  constructor(spec, option) {
47
47
  this.id = "test-mvp_" + Story._id_++, this._canvas = new StoryCanvas(this, isString(option.dom) ? document.getElementById(option.dom) : option.dom),
48
48
  this._player = new Player(this, option.playerOption), this._characterTree = new CharacterTree(this),
49
- this._spec = spec, this._spec && this.load(this._spec);
49
+ spec && this.load(spec);
50
50
  }
51
51
  load(spec) {
52
- this._characterTree.initCharacters(spec.characters), this._player.initActs(spec.acts);
52
+ this._spec = spec, spec && (this._characterTree.initCharacters(spec.characters),
53
+ this._player.initActs(spec.acts));
53
54
  }
54
55
  getCharacters() {
55
56
  return this._characterTree.getCharacters();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/story.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,OAAO,KAAK;IAahB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAY,IAAgB,EAAE,MAAwB;QACpD,IAAI,CAAC,EAAE,GAAG,WAAW,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAC5B,IAAI,EACJ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAC5F,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,IAAgB;QACnB,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,iBAAiB,CAAC,GAAW;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAMD,IAAI,CAAC,OAAgB,IAAI;QAEvB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;gBAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IAEK,aAAa,CAAC,YAAoB,EAAE,UAAkB,EAAE,GAAW;;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;KAAA;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;;AA7EM,UAAI,GAAG,CAAC,CAAC","file":"story.js","sourcesContent":["import type { ICharacterSpec } from './character/dsl-interface';\nimport { isString } from '@visactor/vutils';\nimport type { ICharacterTree, IStory, IStoryCanvas, IStoryInitOption } from './interface/runtime-interface';\nimport type { ICharacter } from './character/runtime-interface';\nimport { StoryCanvas } from './canvas/canvas';\nimport type { IStorySpec, IActSpec } from './interface';\nimport { StoryFactory } from './factory/factory';\nimport { defaultTicker, defaultTimeline } from '@visactor/vrender';\nimport { CharacterTree } from './character-tree/character-tree';\nimport type { IPlayer } from '../player/interface/player';\nimport { Player } from '../player/player';\nimport { logger } from '../util/output';\n\ndefaultTicker.remTimeline(defaultTimeline);\n\nexport class Story implements IStory {\n static _id_ = 0;\n\n protected _player: IPlayer;\n\n readonly id: string;\n\n protected _canvas: IStoryCanvas;\n\n protected _characterTree: ICharacterTree;\n\n protected _spec: IStorySpec;\n\n get canvas() {\n return this._canvas;\n }\n\n get player(): IPlayer {\n return this._player;\n }\n\n constructor(spec: IStorySpec, option: IStoryInitOption) {\n this.id = 'test-mvp_' + Story._id_++;\n this._canvas = new StoryCanvas(\n this,\n isString(option.dom) ? (document.getElementById(option.dom) as HTMLDivElement) : option.dom\n );\n this._player = new Player(this, option.playerOption);\n\n this._characterTree = new CharacterTree(this);\n this._spec = spec;\n this._spec && this.load(this._spec);\n }\n\n load(spec: IStorySpec) {\n this._characterTree.initCharacters(spec.characters);\n this._player.initActs(spec.acts);\n }\n\n getCharacters(): { [key: string]: ICharacter } {\n return this._characterTree.getCharacters();\n }\n\n getCharactersById(key: string) {\n return this._characterTree.getCharactersById(key);\n }\n\n // private _createAct(spec: IActSpec) {\n // this._player.addAct(spec, this._characters);\n // }\n\n play(loop: boolean = true) {\n // player 开始播放\n this._spec && this.load(this._spec);\n this._player.play();\n if (loop) {\n this._player.once('onstop', () => {\n this.play(loop);\n });\n }\n }\n\n pause() {\n this._player.pause();\n return;\n }\n\n async encodeToVideo(actIndexOrId: number, millsecond: number, fps: number) {\n return this._player.encodeToVideo(millsecond, fps);\n }\n\n getPlayer() {\n return this._player;\n }\n\n release() {\n this._player.release();\n this._canvas.release();\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/story/story.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,OAAO,KAAK;IAahB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAY,IAAgB,EAAE,MAAwB;QACpD,IAAI,CAAC,EAAE,GAAG,WAAW,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAC5B,IAAI,EACJ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAC5F,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,IAAgB;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,iBAAiB,CAAC,GAAW;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAMD,IAAI,CAAC,OAAgB,IAAI;QAEvB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;gBAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IAEK,aAAa,CAAC,YAAoB,EAAE,UAAkB,EAAE,GAAW;;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACrD,CAAC;KAAA;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;;AAhFM,UAAI,GAAG,CAAC,CAAC","file":"story.js","sourcesContent":["import type { ICharacterSpec } from './character/dsl-interface';\nimport { isString } from '@visactor/vutils';\nimport type { ICharacterTree, IStory, IStoryCanvas, IStoryInitOption } from './interface/runtime-interface';\nimport type { ICharacter } from './character/runtime-interface';\nimport { StoryCanvas } from './canvas/canvas';\nimport type { IStorySpec, IActSpec } from './interface';\nimport { StoryFactory } from './factory/factory';\nimport { defaultTicker, defaultTimeline } from '@visactor/vrender';\nimport { CharacterTree } from './character-tree/character-tree';\nimport type { IPlayer } from '../player/interface/player';\nimport { Player } from '../player/player';\nimport { logger } from '../util/output';\n\ndefaultTicker.remTimeline(defaultTimeline);\n\nexport class Story implements IStory {\n static _id_ = 0;\n\n protected _player: IPlayer;\n\n readonly id: string;\n\n protected _canvas: IStoryCanvas;\n\n protected _characterTree: ICharacterTree;\n\n protected _spec: IStorySpec;\n\n get canvas() {\n return this._canvas;\n }\n\n get player(): IPlayer {\n return this._player;\n }\n\n constructor(spec: IStorySpec, option: IStoryInitOption) {\n this.id = 'test-mvp_' + Story._id_++;\n this._canvas = new StoryCanvas(\n this,\n isString(option.dom) ? (document.getElementById(option.dom) as HTMLDivElement) : option.dom\n );\n this._player = new Player(this, option.playerOption);\n\n this._characterTree = new CharacterTree(this);\n spec && this.load(spec);\n }\n\n load(spec: IStorySpec) {\n this._spec = spec;\n if (!spec) {\n return;\n }\n this._characterTree.initCharacters(spec.characters);\n this._player.initActs(spec.acts);\n }\n\n getCharacters(): { [key: string]: ICharacter } {\n return this._characterTree.getCharacters();\n }\n\n getCharactersById(key: string) {\n return this._characterTree.getCharactersById(key);\n }\n\n // private _createAct(spec: IActSpec) {\n // this._player.addAct(spec, this._characters);\n // }\n\n play(loop: boolean = true) {\n // player 开始播放\n this._spec && this.load(this._spec);\n this._player.play();\n if (loop) {\n this._player.once('onstop', () => {\n this.play(loop);\n });\n }\n }\n\n pause() {\n this._player.pause();\n return;\n }\n\n async encodeToVideo(actIndexOrId: number, millsecond: number, fps: number) {\n return this._player.encodeToVideo(millsecond, fps);\n }\n\n getPlayer() {\n return this._player;\n }\n\n release() {\n this._player.release();\n this._canvas.release();\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { ISpec } from '@visactor/vchart';
1
+ import type { ISpec, IInitOption } from '@visactor/vchart';
2
2
  export declare function isModelInfoMatchSpec(info: any, spec: {
3
3
  id: string | number;
4
4
  }, specKey: string, index: number, option?: {
@@ -6,3 +6,4 @@ export declare function isModelInfoMatchSpec(info: any, spec: {
6
6
  }): boolean;
7
7
  export declare function mergeSpec(target: any, ...sources: any[]): any;
8
8
  export declare function findChartSpec(s: any, vchartSpec: ISpec): any;
9
+ export declare function mergeChartOption(target: Partial<IInitOption>, ...sources: Partial<IInitOption>[]): Partial<IInitOption>;
@@ -1,4 +1,4 @@
1
- import { isArray, isArrayLike, isNil, isObject, isPlainObject, isString, isValid } from "@visactor/vutils";
1
+ import { isArray, isArrayLike, isNil, isObject, isPlainObject, isString, isValid, merge } from "@visactor/vutils";
2
2
 
3
3
  const directlyAssignSpecKeys = [ "seriesId", "text" ];
4
4
 
@@ -62,4 +62,21 @@ export function findChartSpec(s, vchartSpec) {
62
62
  const chartSpec = vchartSpec[s.specKey];
63
63
  return chartSpec ? isArray(chartSpec) ? chartSpec.find(((_s, index) => isModelInfoMatchSpec(s, _s, s.specKey, index))) : isObject(chartSpec) && isModelInfoMatchSpec(s, chartSpec, s.specKey, 0) ? chartSpec : null : null;
64
64
  }
65
+
66
+ export function mergeChartOption(target, ...sources) {
67
+ const performanceHook = {};
68
+ function pushHookToTemp(hooks) {
69
+ Object.keys(hooks).forEach((k => {
70
+ performanceHook[k] || (performanceHook[k] = []), performanceHook[k].push(hooks[k]);
71
+ }));
72
+ }
73
+ return target.performanceHook && pushHookToTemp(target.performanceHook), sources.forEach((source => {
74
+ source && source.performanceHook && (pushHookToTemp(source.performanceHook), delete source.performanceHook,
75
+ merge(target, source));
76
+ })), target.performanceHook = {}, Object.keys(performanceHook).forEach((k => {
77
+ target.performanceHook[k] = () => {
78
+ performanceHook[k].forEach((f => f()));
79
+ };
80
+ })), target;
81
+ }
65
82
  //# sourceMappingURL=chart.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/utils/chart.ts"],"names":[],"mappings":"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","file":"chart.js","sourcesContent":["import { ISpec } from '@visactor/vchart';\nimport { isArray, isArrayLike, isNil, isObject, isPlainObject, isString, isValid } from '@visactor/vutils';\n\nconst directlyAssignSpecKeys = ['seriesId', 'text'];\n\nexport function isModelInfoMatchSpec(\n info: any,\n spec: { id: string | number },\n specKey: string,\n index: number,\n option: {\n ignoreIdMatch: boolean;\n } = {\n ignoreIdMatch: false\n }\n) {\n if (!isNil(info.id)) {\n const match = info.id === spec.id;\n if (match || option.ignoreIdMatch !== true) {\n return match;\n }\n }\n return info.specKey === specKey && info.specIndex === index;\n}\n\nfunction baseMerge(target: any, source: any, shallowArray = false) {\n if (source) {\n if (target === source) {\n return;\n }\n if (isValid(source) && typeof source === 'object') {\n // baseFor\n const iterable = Object(source);\n const props = [];\n // keysIn\n for (const key in iterable) {\n props.push(key);\n }\n let { length } = props;\n let propIndex = -1;\n while (length--) {\n const key = props[++propIndex];\n if (isValid(iterable[key]) && typeof iterable[key] === 'object') {\n baseMergeDeep(target, source, key, shallowArray);\n } else {\n assignMergeValue(target, key, iterable[key]);\n }\n }\n }\n }\n}\n\nfunction baseMergeDeep(target: object, source: object, key: string, shallowArray = false) {\n const objValue = target[key];\n const srcValue = source[key];\n let newValue = source[key];\n let isCommon = true;\n // handle excluded spec keys\n if (directlyAssignSpecKeys.includes(key)) {\n isCommon = false;\n }\n // 不考虑 buffer / typedArray 类型\n else if (isArray(srcValue)) {\n if (shallowArray || !objValue) {\n // 依据参数对数组做浅拷贝\n newValue = [];\n } else if (isArray(objValue)) {\n newValue = objValue;\n } else if (isArrayLike(objValue) && !isString(objValue)) {\n // 如果 objValue 是字符串则直接赋值\n // 如果 source 为数组,则 target 的 arrayLike 对象也视作为数组处理\n newValue = new Array(objValue.length);\n let index = -1;\n const length = objValue.length;\n while (++index < length) {\n newValue[index] = objValue[index];\n }\n }\n }\n // else if (isArray(srcValue) && shallowArray) {\n // newValue = [];\n // }\n // 不考虑 argument 类型\n else if (isPlainObject(srcValue)) {\n newValue = objValue ?? {};\n // 不考虑 prototype 的额外处理\n if (typeof objValue === 'function' || typeof objValue !== 'object') {\n newValue = {};\n }\n } else {\n isCommon = false;\n }\n // 对 class 等复杂对象或者浅拷贝的 array 不做拷贝处理\n if (isCommon) {\n baseMerge(newValue, srcValue, shallowArray);\n }\n assignMergeValue(target, key, newValue);\n}\n\nfunction assignMergeValue(target: object, key: string, value: any) {\n if ((value !== undefined && !eq(target[key], value)) || (value === undefined && !(key in target))) {\n // 不考虑 __proto__ 的赋值处理\n target[key] = value;\n }\n}\n\nfunction eq(value: any, other: any) {\n return value === other || (Number.isNaN(value) && Number.isNaN(other));\n}\n\nexport function mergeSpec(target: any, ...sources: any[]): any {\n let sourceIndex = -1;\n const length = sources.length;\n while (++sourceIndex < length) {\n const source = sources[sourceIndex];\n baseMerge(target, source, false);\n }\n return target;\n}\n\nexport function findChartSpec(s: any, vchartSpec: ISpec) {\n const chartSpec = vchartSpec[s.specKey];\n if (!chartSpec) {\n return null;\n }\n if (isArray(chartSpec)) {\n return chartSpec.find((_s, index) => {\n return isModelInfoMatchSpec(s, _s, s.specKey, index);\n });\n } else if (isObject(chartSpec)) {\n return isModelInfoMatchSpec(s, chartSpec as { id: string | number }, s.specKey, 0) ? chartSpec : null;\n }\n return null;\n}\n"]}
1
+ {"version":3,"sources":["../src/story/utils/chart.ts"],"names":[],"mappings":"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","file":"chart.js","sourcesContent":["import type { ISpec, IInitOption } from '@visactor/vchart';\nimport { isArray, isArrayLike, isNil, isObject, isPlainObject, isString, isValid, merge } from '@visactor/vutils';\n\nconst directlyAssignSpecKeys = ['seriesId', 'text'];\n\nexport function isModelInfoMatchSpec(\n info: any,\n spec: { id: string | number },\n specKey: string,\n index: number,\n option: {\n ignoreIdMatch: boolean;\n } = {\n ignoreIdMatch: false\n }\n) {\n if (!isNil(info.id)) {\n const match = info.id === spec.id;\n if (match || option.ignoreIdMatch !== true) {\n return match;\n }\n }\n return info.specKey === specKey && info.specIndex === index;\n}\n\nfunction baseMerge(target: any, source: any, shallowArray = false) {\n if (source) {\n if (target === source) {\n return;\n }\n if (isValid(source) && typeof source === 'object') {\n // baseFor\n const iterable = Object(source);\n const props = [];\n // keysIn\n for (const key in iterable) {\n props.push(key);\n }\n let { length } = props;\n let propIndex = -1;\n while (length--) {\n const key = props[++propIndex];\n if (isValid(iterable[key]) && typeof iterable[key] === 'object') {\n baseMergeDeep(target, source, key, shallowArray);\n } else {\n assignMergeValue(target, key, iterable[key]);\n }\n }\n }\n }\n}\n\nfunction baseMergeDeep(target: object, source: object, key: string, shallowArray = false) {\n const objValue = target[key];\n const srcValue = source[key];\n let newValue = source[key];\n let isCommon = true;\n // handle excluded spec keys\n if (directlyAssignSpecKeys.includes(key)) {\n isCommon = false;\n }\n // 不考虑 buffer / typedArray 类型\n else if (isArray(srcValue)) {\n if (shallowArray || !objValue) {\n // 依据参数对数组做浅拷贝\n newValue = [];\n } else if (isArray(objValue)) {\n newValue = objValue;\n } else if (isArrayLike(objValue) && !isString(objValue)) {\n // 如果 objValue 是字符串则直接赋值\n // 如果 source 为数组,则 target 的 arrayLike 对象也视作为数组处理\n newValue = new Array(objValue.length);\n let index = -1;\n const length = objValue.length;\n while (++index < length) {\n newValue[index] = objValue[index];\n }\n }\n }\n // else if (isArray(srcValue) && shallowArray) {\n // newValue = [];\n // }\n // 不考虑 argument 类型\n else if (isPlainObject(srcValue)) {\n newValue = objValue ?? {};\n // 不考虑 prototype 的额外处理\n if (typeof objValue === 'function' || typeof objValue !== 'object') {\n newValue = {};\n }\n } else {\n isCommon = false;\n }\n // 对 class 等复杂对象或者浅拷贝的 array 不做拷贝处理\n if (isCommon) {\n baseMerge(newValue, srcValue, shallowArray);\n }\n assignMergeValue(target, key, newValue);\n}\n\nfunction assignMergeValue(target: object, key: string, value: any) {\n if ((value !== undefined && !eq(target[key], value)) || (value === undefined && !(key in target))) {\n // 不考虑 __proto__ 的赋值处理\n target[key] = value;\n }\n}\n\nfunction eq(value: any, other: any) {\n return value === other || (Number.isNaN(value) && Number.isNaN(other));\n}\n\nexport function mergeSpec(target: any, ...sources: any[]): any {\n let sourceIndex = -1;\n const length = sources.length;\n while (++sourceIndex < length) {\n const source = sources[sourceIndex];\n baseMerge(target, source, false);\n }\n return target;\n}\n\nexport function findChartSpec(s: any, vchartSpec: ISpec) {\n const chartSpec = vchartSpec[s.specKey];\n if (!chartSpec) {\n return null;\n }\n if (isArray(chartSpec)) {\n return chartSpec.find((_s, index) => {\n return isModelInfoMatchSpec(s, _s, s.specKey, index);\n });\n } else if (isObject(chartSpec)) {\n return isModelInfoMatchSpec(s, chartSpec as { id: string | number }, s.specKey, 0) ? chartSpec : null;\n }\n return null;\n}\n\nexport function mergeChartOption(\n target: Partial<IInitOption>,\n ...sources: Partial<IInitOption>[]\n): Partial<IInitOption> {\n const performanceHook: { [key: string]: (() => void)[] } = {};\n\n function pushHookToTemp(hooks: IInitOption['performanceHook']) {\n Object.keys(hooks).forEach((k: string) => {\n if (!performanceHook[k]) {\n performanceHook[k] = [];\n }\n // @ts-ignore\n performanceHook[k].push(hooks[k]);\n });\n }\n if (target.performanceHook) {\n pushHookToTemp(target.performanceHook);\n }\n sources.forEach(source => {\n if (!source) {\n return;\n }\n if (source.performanceHook) {\n pushHookToTemp(source.performanceHook);\n delete source.performanceHook;\n merge(target, source);\n }\n });\n target.performanceHook = {};\n Object.keys(performanceHook).forEach(k => {\n // @ts-ignore\n target.performanceHook[k] = () => {\n performanceHook[k].forEach(f => f());\n };\n });\n return target;\n}\n"]}
@@ -1,2 +1,3 @@
1
+ import type { IRect } from '../../type/space';
1
2
  import type { ILayoutAttribute, IWidgetData } from '../character';
2
- export declare function getLayoutFromWidget(w: Partial<IWidgetData>): Partial<ILayoutAttribute>;
3
+ export declare function getLayoutFromWidget(w: Partial<IWidgetData> | IRect): Partial<ILayoutAttribute>;
@@ -1,7 +1,7 @@
1
1
  export function getLayoutFromWidget(w) {
2
2
  return {
3
- x: w.left,
4
- y: w.top,
3
+ x: "x" in w ? w.x : w.left,
4
+ y: "y" in w ? w.y : w.top,
5
5
  width: "width" in w ? w.width : w.right - w.left,
6
6
  height: "height" in w ? w.height : w.bottom - w.top
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/utils/layout.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,mBAAmB,CAAC,CAAuB;IACzD,OAAO;QACL,CAAC,EAAE,CAAC,CAAC,IAAI;QACT,CAAC,EAAE,CAAC,CAAC,GAAG;QACR,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAU,CAAS,CAAC,KAAK,GAAW,CAAC,CAAC,IAAI;QACzE,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAU,CAAS,CAAC,MAAM,GAAW,CAAC,CAAC,GAAG;KAC7E,CAAC;AACJ,CAAC","file":"layout.js","sourcesContent":["import type { ILayoutAttribute, IWidgetData } from '../character';\n\nexport function getLayoutFromWidget(w: Partial<IWidgetData>): Partial<ILayoutAttribute> {\n return {\n x: w.left,\n y: w.top,\n width: 'width' in w ? w.width : <number>(w as any).right - <number>w.left,\n height: 'height' in w ? w.height : <number>(w as any).bottom - <number>w.top\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/story/utils/layout.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,mBAAmB,CAAC,CAA+B;IACjE,OAAO;QACL,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC1B,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACzB,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAU,CAAS,CAAC,KAAK,GAAW,CAAC,CAAC,IAAI;QACzE,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAU,CAAS,CAAC,MAAM,GAAW,CAAC,CAAC,GAAG;KAC7E,CAAC;AACJ,CAAC","file":"layout.js","sourcesContent":["import type { IRect } from '../../type/space';\nimport type { ILayoutAttribute, IWidgetData } from '../character';\n\nexport function getLayoutFromWidget(w: Partial<IWidgetData> | IRect): Partial<ILayoutAttribute> {\n return {\n x: 'x' in w ? w.x : w.left,\n y: 'y' in w ? w.y : w.top,\n width: 'width' in w ? w.width : <number>(w as any).right - <number>w.left,\n height: 'height' in w ? w.height : <number>(w as any).bottom - <number>w.top\n };\n}\n"]}
@@ -0,0 +1,115 @@
1
+ import type { IGraphic } from '@visactor/vrender';
2
+ import type { IVChart } from '@visactor/vchart';
3
+ import type { StoryEvent } from '../interface/runtime-interface';
4
+ export interface IPickModelInfo {
5
+ type: string;
6
+ model: any;
7
+ specKey: string;
8
+ specIndex: number;
9
+ datum?: any;
10
+ mark?: any;
11
+ }
12
+ export declare const seriesMarkPick: {
13
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
14
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
15
+ type: string;
16
+ model: import("@visactor/vchart").ISeries;
17
+ mark: import("@visactor/vchart/esm/mark/interface").IMark;
18
+ specKey: string;
19
+ specIndex: number;
20
+ datum: any;
21
+ };
22
+ };
23
+ export declare const axisMarkPick: {
24
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
25
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
26
+ type: any;
27
+ model: any;
28
+ specKey: any;
29
+ specIndex: any;
30
+ };
31
+ };
32
+ export declare const markerMarkPick: {
33
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
34
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[]) => {
35
+ type: any;
36
+ model: any;
37
+ specKey: any;
38
+ specIndex: any;
39
+ };
40
+ };
41
+ export declare const labelMarkPick: {
42
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
43
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
44
+ datum: any;
45
+ type: any;
46
+ model: any;
47
+ specKey: any;
48
+ specIndex: any;
49
+ };
50
+ };
51
+ export declare const discreteLegendMarkPick: {
52
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
53
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
54
+ type: any;
55
+ model: any;
56
+ specKey: any;
57
+ specIndex: any;
58
+ };
59
+ };
60
+ export declare const colorLegendMarkPick: {
61
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
62
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
63
+ type: any;
64
+ model: any;
65
+ specKey: any;
66
+ specIndex: any;
67
+ };
68
+ };
69
+ export declare const sizeLegendMarkPick: {
70
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
71
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
72
+ type: any;
73
+ model: any;
74
+ specKey: any;
75
+ specIndex: any;
76
+ };
77
+ };
78
+ export declare const scrollBarMarkPick: {
79
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
80
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
81
+ type: any;
82
+ model: any;
83
+ specKey: any;
84
+ specIndex: any;
85
+ };
86
+ };
87
+ export declare const titleBarMarkPick: {
88
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
89
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
90
+ type: any;
91
+ model: any;
92
+ specKey: any;
93
+ specIndex: any;
94
+ };
95
+ };
96
+ export declare const continuousPlayerMarkPick: {
97
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
98
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
99
+ type: any;
100
+ model: any;
101
+ specKey: any;
102
+ specIndex: any;
103
+ };
104
+ };
105
+ export declare const discretePlayerMarkPick: {
106
+ check: (graphic: IGraphic, graphicPath: IGraphic[]) => boolean;
107
+ modelInfo: (chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number) => {
108
+ type: any;
109
+ model: any;
110
+ specKey: any;
111
+ specIndex: any;
112
+ };
113
+ };
114
+ export declare function getChartModelWithEvent(chart: IVChart, event: StoryEvent): IPickModelInfo;
115
+ export declare function getGraphicModelMark(chart: IVChart, graphic: IGraphic, graphicPath: IGraphic[], index: number): IPickModelInfo;