@visactor/vchart 2.0.4-alpha.5 → 2.0.4-alpha.7

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 (132) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +1509 -85
  3. package/build/index.js +1509 -85
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/utils.js +1 -1
  7. package/cjs/animation/utils.js.map +1 -1
  8. package/cjs/chart/base/base-chart.js +2 -1
  9. package/cjs/chart/base/base-chart.js.map +1 -1
  10. package/cjs/chart/range-area/range-area-transformer.js +2 -1
  11. package/cjs/chart/range-area/range-area-transformer.js.map +1 -1
  12. package/cjs/compile/compiler.js +4 -3
  13. package/cjs/compile/compiler.js.map +1 -1
  14. package/cjs/component/data-zoom/data-filter-base-component.d.ts +2 -0
  15. package/cjs/component/data-zoom/data-filter-base-component.js +15 -5
  16. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  17. package/cjs/component/data-zoom/interface.d.ts +1 -0
  18. package/cjs/component/data-zoom/interface.js.map +1 -1
  19. package/cjs/component/marker/mark-point/cartesian-mark-point.js +2 -2
  20. package/cjs/component/marker/mark-point/cartesian-mark-point.js.map +1 -1
  21. package/cjs/constant/attribute.js +1 -2
  22. package/cjs/constant/event.d.ts +2 -1
  23. package/cjs/constant/event.js +1 -1
  24. package/cjs/constant/event.js.map +1 -1
  25. package/cjs/constant/label.js +2 -1
  26. package/cjs/constant/waterfall.js +1 -2
  27. package/cjs/constant/word-cloud.js +1 -1
  28. package/cjs/core/expression-function.js +2 -1
  29. package/cjs/core/factory.d.ts +4 -0
  30. package/cjs/core/factory.js +8 -2
  31. package/cjs/core/factory.js.map +1 -1
  32. package/cjs/core/index.d.ts +1 -1
  33. package/cjs/core/index.js +1 -1
  34. package/cjs/core/index.js.map +1 -1
  35. package/cjs/core/interface.d.ts +2 -0
  36. package/cjs/core/interface.js.map +1 -1
  37. package/cjs/core/vchart.d.ts +3 -1
  38. package/cjs/core/vchart.js +8 -2
  39. package/cjs/core/vchart.js.map +1 -1
  40. package/cjs/model/interface.d.ts +1 -0
  41. package/cjs/model/interface.js.map +1 -1
  42. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.d.ts +1 -1
  43. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.js +17 -17
  44. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.js.map +1 -1
  45. package/cjs/plugin/vchart/index.d.ts +2 -0
  46. package/cjs/plugin/vchart/index.js +21 -0
  47. package/cjs/plugin/vchart/index.js.map +1 -0
  48. package/cjs/plugin/vchart/interface.d.ts +16 -0
  49. package/cjs/plugin/vchart/interface.js +6 -0
  50. package/cjs/plugin/vchart/interface.js.map +1 -0
  51. package/cjs/plugin/vchart/plugin-service.d.ts +9 -0
  52. package/cjs/plugin/vchart/plugin-service.js +24 -0
  53. package/cjs/plugin/vchart/plugin-service.js.map +1 -0
  54. package/cjs/plugin/vchart/register.d.ts +2 -0
  55. package/cjs/plugin/vchart/register.js +12 -0
  56. package/cjs/plugin/vchart/register.js.map +1 -0
  57. package/cjs/plugin/vchart/rotate/index.d.ts +1 -0
  58. package/cjs/plugin/vchart/rotate/index.js +21 -0
  59. package/cjs/plugin/vchart/rotate/index.js.map +1 -0
  60. package/cjs/plugin/vchart/rotate/rotate.d.ts +18 -0
  61. package/cjs/plugin/vchart/rotate/rotate.js +67 -0
  62. package/cjs/plugin/vchart/rotate/rotate.js.map +1 -0
  63. package/cjs/series/word-cloud/base.js +15 -1
  64. package/cjs/series/word-cloud/base.js.map +1 -1
  65. package/cjs/typings/spec/common.d.ts +1 -0
  66. package/cjs/typings/spec/common.js.map +1 -1
  67. package/cjs/util/style.js +3 -2
  68. package/cjs/util/style.js.map +1 -1
  69. package/esm/animation/utils.js +1 -1
  70. package/esm/animation/utils.js.map +1 -1
  71. package/esm/chart/base/base-chart.js +2 -1
  72. package/esm/chart/base/base-chart.js.map +1 -1
  73. package/esm/chart/range-area/range-area-transformer.js +2 -1
  74. package/esm/chart/range-area/range-area-transformer.js.map +1 -1
  75. package/esm/compile/compiler.js +4 -3
  76. package/esm/compile/compiler.js.map +1 -1
  77. package/esm/component/data-zoom/data-filter-base-component.d.ts +2 -0
  78. package/esm/component/data-zoom/data-filter-base-component.js +16 -6
  79. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  80. package/esm/component/data-zoom/interface.d.ts +1 -0
  81. package/esm/component/data-zoom/interface.js.map +1 -1
  82. package/esm/component/marker/mark-point/cartesian-mark-point.js +2 -2
  83. package/esm/component/marker/mark-point/cartesian-mark-point.js.map +1 -1
  84. package/esm/constant/attribute.js +1 -2
  85. package/esm/constant/event.d.ts +2 -1
  86. package/esm/constant/event.js +1 -1
  87. package/esm/constant/event.js.map +1 -1
  88. package/esm/constant/label.js +2 -1
  89. package/esm/constant/waterfall.js +1 -2
  90. package/esm/constant/word-cloud.js +1 -1
  91. package/esm/core/expression-function.js +2 -1
  92. package/esm/core/factory.d.ts +4 -0
  93. package/esm/core/factory.js +8 -1
  94. package/esm/core/factory.js.map +1 -1
  95. package/esm/core/index.d.ts +1 -1
  96. package/esm/core/index.js +1 -1
  97. package/esm/core/index.js.map +1 -1
  98. package/esm/core/interface.d.ts +2 -0
  99. package/esm/core/interface.js.map +1 -1
  100. package/esm/core/vchart.d.ts +3 -1
  101. package/esm/core/vchart.js +9 -1
  102. package/esm/core/vchart.js.map +1 -1
  103. package/esm/model/interface.d.ts +1 -0
  104. package/esm/model/interface.js.map +1 -1
  105. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.d.ts +1 -1
  106. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.js +17 -17
  107. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.js.map +1 -1
  108. package/esm/plugin/vchart/index.d.ts +2 -0
  109. package/esm/plugin/vchart/index.js +4 -0
  110. package/esm/plugin/vchart/index.js.map +1 -0
  111. package/esm/plugin/vchart/interface.d.ts +16 -0
  112. package/esm/plugin/vchart/interface.js +2 -0
  113. package/esm/plugin/vchart/interface.js.map +1 -0
  114. package/esm/plugin/vchart/plugin-service.d.ts +9 -0
  115. package/esm/plugin/vchart/plugin-service.js +16 -0
  116. package/esm/plugin/vchart/plugin-service.js.map +1 -0
  117. package/esm/plugin/vchart/register.d.ts +2 -0
  118. package/esm/plugin/vchart/register.js +6 -0
  119. package/esm/plugin/vchart/register.js.map +1 -0
  120. package/esm/plugin/vchart/rotate/index.d.ts +1 -0
  121. package/esm/plugin/vchart/rotate/index.js +2 -0
  122. package/esm/plugin/vchart/rotate/index.js.map +1 -0
  123. package/esm/plugin/vchart/rotate/rotate.d.ts +18 -0
  124. package/esm/plugin/vchart/rotate/rotate.js +62 -0
  125. package/esm/plugin/vchart/rotate/rotate.js.map +1 -0
  126. package/esm/series/word-cloud/base.js +16 -0
  127. package/esm/series/word-cloud/base.js.map +1 -1
  128. package/esm/typings/spec/common.d.ts +1 -0
  129. package/esm/typings/spec/common.js.map +1 -1
  130. package/esm/util/style.js +3 -2
  131. package/esm/util/style.js.map +1 -1
  132. package/package.json +8 -8
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAY3F,MAAM,OAAO,OAAO;IAqClB,MAAM,CAAC,aAAa,CAAC,GAAW,EAAE,KAAwB;QACxD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC/B,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,GAAW,EAAE,MAA0B;QAC3D,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,iBAAiB,CAAC,GAAW,EAAE,GAA0B,EAAE,WAAqB,EAAE,WAAoB;QAC3G,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,CAAC,EAAE,CAAC;IACjF,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,GAAW,EAAE,OAAoE;QAC/G,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,aAAqB,EAAE,KAAU,EAAE,OAAiC;QAChG,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,IAAI,CAAC;SACb;QAED,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IACD,MAAM,CAAC,YAAY,CAAC,GAAW,EAAE,IAAqB;QACpD,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAC7B,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,GAAW,EAAE,MAA0B;QAC3D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,iBAAiB,CAAC,GAAW,EAAE,SAAoB;QACxD,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACtC,CAAC;IAID,MAAM,CAAC,wBAAwB,CAAC,IAAY,EAAE,SAAiC;QAC7E,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAC,IAAY;QACrC,OAAO,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,GAAW,EAAE,MAA0B;QAC3D,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,iBAAiB,CAAC,GAAW,EAAE,SAA4D;QAChG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACvC,CAAC;IACD,MAAM,CAAC,iBAAiB,CAAC,GAAW,EAAE,SAAiC;QACrE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACvC,CAAC;IACD,MAAM,CAAC,mBAAmB,CAAC,GAAW,EAAE,MAA+B;QACrE,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACrC,CAAC;IACD,MAAM,CAAC,uBAAuB,CAAC,GAAW,EAAE,MAAmC;QAC7E,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,SAAiB,EAAE,IAAS,EAAE,OAAqB;QACpE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QACD,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpD,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAiB;QAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,0BAA0B,CAC/B,SAAiB,EACjB,MAAmC;QAEnC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC;SACb;QACD,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,+BAA+B,GAAG,gBAAgB,CAAC,sBAAsB,CAAC;QAChF,OAAO,IAAI,+BAA+B,iBACxC,UAAU,EAAE,gBAAgB,CAAC,UAAU,IACpC,MAAM,EACT,CAAC;IACL,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,UAAkB,EAAE,IAAS,EAAE,OAAqB;QACtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvD,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,2BAA2B,CAChC,UAAkB,EAClB,OAAwC;QAExC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,gCAAgC,GAAG,iBAAiB,CAAC,sBAAsB,CAAC;QAClF,OAAO,IAAI,gCAAgC,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,UAAkB,EAAE,IAAS,EAAE,OAAsB;QACvE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtD,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,2BAA2B,CAChC,UAAkB,EAClB,OAAwC;QAExC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,gCAAgC,GAAG,iBAAiB,CAAC,sBAAsB,CAAC;QAClF,OAAO,IAAI,gCAAgC,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,QAAgB,EAAE,IAAY,EAAE,OAAoB;QACpE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC;SACb;QACD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB,CAAC;QACrE,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,IAAI,YAAY,CAAC,IAAI,YAAuB,EAAE;YAE5C,YAAY,CAAC,aAAa,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;SACpD;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,aAAa;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,IAAY;QACnC,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,SAAS;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAAY;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,SAAS;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,GAAW;QAClC,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,GAAW;QAClC,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,UAAkB;QACxC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAChC,OAAO,EAAE,CAAC;SACX;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAC3C,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE;YACjC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;gBAC5D,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;aACpC;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,QAAgB;QAC9C,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE;YACrC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;gBAChF,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;aACxC;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,eAAe;QACpB,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,mBAAmB;QACxB,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,IAAY;QAC1C,OAAO,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,IAAkC;QACzD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,YAAY;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAkBD,MAAM,CAAC,wBAAwB,CAAC,eAAuB,EAAE,OAA6B;QACpF,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,IAAI,CAAC;SACb;QAED,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,qBAAqB,CAAC,eAAuB;QAClD,OAAO,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACzD,CAAC;IAQD,MAAM,CAAC,gBAAgB,CAAC,KAAa;QACnC,OAAO,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;;AAvSc,eAAO,GAAyC,EAAE,CAAC;AACnD,eAAO,GAA0C,EAAE,CAAC;AACpD,mBAAW,GAMtB,EAAE,CAAC;AACQ,0BAAkB,GAAgF,EAAE,CAAC;AACrG,cAAM,GAAuC,EAAE,CAAC;AAChD,gBAAQ,GAA0C,EAAE,CAAC;AACrD,mBAAW,GAAyE,EAAE,CAAC;AACvF,mBAAW,GAA8C,EAAE,CAAC;AAC5D,oBAAY,GAA+C,EAAE,CAAC;AAC9D,wBAAgB,GAAmD,EAAE,CAAC;AAO9E,kBAAU,GAAiC;IAEhD,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,IAAI;CACX,CAAC;AACK,kBAAU,GAA8B;IAE7C,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,SAAS;CACf,CAAC;AACK,eAAO,GAA0C,EAAE,CAAC;AAmC5C,0BAAkB,GAA2C,EAAE,CAAC;AA6LhE,0BAAkB,GAA2C,EAAE,CAAC;AAExE,gCAAwB,GAAG,CAAC,IAAY,EAAE,MAA8B,EAAE,EAAE;IACjF,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAC5C,CAAC,CAAC;AAEK,2BAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC5C,OAAO,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEa,4BAAoB,GAAwC,EAAE,CAAC;AAEvE,kCAA0B,GAAG,CAAC,eAAuB,EAAE,WAAgC,EAAE,EAAE;IAChG,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC;AAC9D,CAAC,CAAC;AAea,yBAAiB,GAA8C,EAAE,CAAC;AAE1E,6BAAqB,GAAG,CAAC,KAAa,EAAE,aAAwC,EAAE,EAAE;IACzF,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;AACnD,CAAC,CAAC;AAMa,0BAAkB,GAAiD,EAAE,CAAC;AAC9E,gCAAwB,GAAG,CAAC,IAAY,EAAE,SAAuC,EAAE,EAAE;IAC1F,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;AAC/C,CAAC,CAAC;AACK,8BAAsB,GAAG,CAAC,IAAY,EAAE,OAAiB,EAAE,EAAE;IAClE,MAAM,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,IAAI,CAAC;KACb;IACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC,CAAC","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = {};\n private static _series: { [key: string]: ISeriesConstructor } = {};\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = {};\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> = {};\n private static _marks: { [key: string]: MarkConstructor } = {};\n private static _regions: { [key: string]: IRegionConstructor } = {};\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } = {};\n private static _implements: { [key: string]: (...args: any) => void } = {};\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = {};\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = {};\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = {\n // buildIn transforms\n fields: fields,\n filter: filter,\n fold: fold\n };\n static dataParser: { [key: string]: Parser } = {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n };\n static _layout: { [key: string]: ILayoutConstructor } = {};\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = {};\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n }\n\n static getFormatter() {\n return this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = {};\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = {};\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = {};\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = {};\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"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","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = {};\n private static _series: { [key: string]: ISeriesConstructor } = {};\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = {};\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> = {};\n private static _marks: { [key: string]: MarkConstructor } = {};\n private static _regions: { [key: string]: IRegionConstructor } = {};\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } = {};\n private static _implements: { [key: string]: (...args: any) => void } = {};\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = {};\n private static _vChartPlugin: { [key: string]: IVChartPluginConstructor } = {};\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = {};\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = {\n // buildIn transforms\n fields: fields,\n filter: filter,\n fold: fold\n };\n static dataParser: { [key: string]: Parser } = {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n };\n static _layout: { [key: string]: ILayoutConstructor } = {};\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = {};\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerVChartPlugin(key: string, plugin: IVChartPluginConstructor) {\n Factory._vChartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getVChartPlugins() {\n return Object.values(Factory._vChartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n }\n\n static getFormatter() {\n return this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = {};\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = {};\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = {};\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = {};\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { VChart } from './vchart';
2
2
  import { Factory } from './factory';
3
3
  export { VChart, Factory };
4
- export declare const version = "2.0.4-alpha.5";
4
+ export declare const version = "2.0.4-alpha.7";
5
5
  export type { IVChart } from './interface';
6
6
  export type { IStateSpec, StateValueType } from '../compile/mark';
7
7
  export type { IRegion } from '../region/interface';
package/esm/core/index.js CHANGED
@@ -4,7 +4,7 @@ import { Factory } from "./factory";
4
4
 
5
5
  export { VChart, Factory };
6
6
 
7
- export const version = "2.0.4-alpha.5";
7
+ export const version = "2.0.4-alpha.7";
8
8
 
9
9
  export * from "../event/interface";
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAG3B,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC;AAOvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAI3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EACL,OAAO,EACP,WAAW,EACX,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGtE,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC","file":"index.js","sourcesContent":["/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"2.0.4-alpha.5\";\n\n// export necessary types\nexport type { IVChart } from './interface';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport type { IRegion } from '../region/interface';\n\nexport * from '../event/interface';\nexport * from '../theme/interface';\nexport * from '../model/interface';\n\nexport * from './interface';\nexport * from '../typings';\nexport type { IMarkGraphic, IGraphicContext } from '../mark/interface/';\n\n// some constants\nexport * from '../constant/base';\nexport * from '../constant/data';\nexport * from '../constant/layout';\nexport { AttributeLevel } from '../constant/attribute';\nexport { TransformLevel } from '../data/initialize';\nexport { STATE_VALUE_ENUM } from '../compile/mark/interface';\nexport { ChartEvent } from '../constant/event';\n\n/**\n * spec\n */\nexport * from '../typings/spec/index';\nexport * from '../typings/visual';\n\n// tooltip\nexport * from '../typings/tooltip';\n\n// theme\nexport * from '../theme/index';\n\n// vrender\nexport {\n vglobal,\n createGroup,\n createRichText,\n createText,\n createArc,\n createArea,\n createRect,\n createLine,\n createSymbol\n} from '@visactor/vrender-core';\nexport { ManualTicker, StreamLight } from '@visactor/vrender-animate';\n\n// utils\nexport * from '../util/space';\nexport { transformToGraphic } from '../util/style';\nexport { getSpecInfo } from '../component/util';\nexport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../data/register';\nexport { lookup } from '../data/transforms/lookup';\nexport { warn } from '../util/debug';\nexport { measureText } from '../util/text';\n"]}
1
+ {"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAG3B,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC;AAOvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAI3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EACL,OAAO,EACP,WAAW,EACX,cAAc,EACd,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGtE,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AACnG,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC","file":"index.js","sourcesContent":["/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"2.0.4-alpha.7\";\n\n// export necessary types\nexport type { IVChart } from './interface';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport type { IRegion } from '../region/interface';\n\nexport * from '../event/interface';\nexport * from '../theme/interface';\nexport * from '../model/interface';\n\nexport * from './interface';\nexport * from '../typings';\nexport type { IMarkGraphic, IGraphicContext } from '../mark/interface/';\n\n// some constants\nexport * from '../constant/base';\nexport * from '../constant/data';\nexport * from '../constant/layout';\nexport { AttributeLevel } from '../constant/attribute';\nexport { TransformLevel } from '../data/initialize';\nexport { STATE_VALUE_ENUM } from '../compile/mark/interface';\nexport { ChartEvent } from '../constant/event';\n\n/**\n * spec\n */\nexport * from '../typings/spec/index';\nexport * from '../typings/visual';\n\n// tooltip\nexport * from '../typings/tooltip';\n\n// theme\nexport * from '../theme/index';\n\n// vrender\nexport {\n vglobal,\n createGroup,\n createRichText,\n createText,\n createArc,\n createArea,\n createRect,\n createLine,\n createSymbol\n} from '@visactor/vrender-core';\nexport { ManualTicker, StreamLight } from '@visactor/vrender-animate';\n\n// utils\nexport * from '../util/space';\nexport { transformToGraphic } from '../util/style';\nexport { getSpecInfo } from '../component/util';\nexport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../data/register';\nexport { lookup } from '../data/transforms/lookup';\nexport { warn } from '../util/debug';\nexport { measureText } from '../util/text';\n"]}
@@ -114,6 +114,8 @@ export interface IVChart {
114
114
  setRuntimeSpec: (spec: any) => void;
115
115
  getSpec: () => any;
116
116
  getCurrentSize: () => IContainerSize;
117
+ rotate90WithTransform?: (rotateDom: HTMLElement) => void;
118
+ cancelTransform?: (rotateDom: HTMLElement) => void;
117
119
  }
118
120
  export interface IGlobalConfig {
119
121
  uniqueTooltip?: boolean;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { DataSet, IParserOptions } from '@visactor/vdataset';\nimport type {\n Datum,\n IDataValues,\n IInitOption,\n IMarkStateSpec,\n IPoint,\n IRegionQuerier,\n IShowTooltipOption,\n ISpec,\n ITooltipHandler,\n Maybe,\n MaybeArray,\n StringOrNumber\n} from '../typings';\nimport type { IMorphConfig } from '../animation/spec';\nimport type { IBoundsLike } from '@visactor/vutils';\nimport type { EventCallback, EventQuery, EventType, ExtendEventParam } from '../event/interface';\nimport type { IMark, IMarkDataTransform } from '../mark/interface';\nimport type { ISeries } from '../series/interface/series';\nimport type { ITheme } from '../theme/interface';\nimport type { IComponent } from '../component/interface';\nimport type { LayoutCallBack } from '../layout/interface';\nimport type { DimensionIndexOption, IChart, IChartSpecInfo } from '../chart/interface';\nimport type { IEventTarget, IStage } from '@visactor/vrender-core';\nimport type { IContainerSize } from '@visactor/vrender-components';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IUpdateSpecResult } from '../model/interface';\nimport type { ICompiler } from '../compile/interface';\n\nexport type DataLinkSeries = {\n /**\n * 关联的系列 id\n * the binding series id\n */\n seriesId?: StringOrNumber;\n /**\n * 关联的系列索引\n * the binding series index\n */\n seriesIndex?: number;\n};\n\nexport type DataLinkAxis = {\n /**\n * 关联的轴 id,目前仅支持直角坐标轴\n * the binding axis id\n */\n axisId?: StringOrNumber;\n /**\n * 关联的轴索引,目前仅支持直角坐标轴\n * the binding axis index\n */\n axisIndex?: number;\n};\n\nexport interface IVChartConstructor {\n new (spec: ISpec, options: IInitOption): IVChart;\n useRegisters: (comps: (() => void)[]) => any;\n}\n\nexport interface IVChart {\n readonly id: number;\n\n /**\n * **同步**渲染图表。\n * @param morphConfig 图表 morph 动画配置,可选\n * @returns VChart 实例\n */\n renderSync: (morphConfig?: IMorphConfig) => IVChart;\n\n /**\n * **异步**渲染图表。\n * @async\n * @param morphConfig 图表 morph 动画配置,可选\n * @returns VChart 实例\n */\n renderAsync: (morphConfig?: IMorphConfig) => Promise<IVChart>;\n\n /**\n * **异步**更新数据。\n * @async\n * @param id 数据 id\n * @param data 数据值\n * @param options 数据参数\n * @returns VChart 实例\n */\n updateData: (id: StringOrNumber, data: Datum[] | string, options?: IParserOptions) => Promise<IVChart>;\n\n /**\n * **异步**批量更新数据。\n * @async\n * @param list 待更新的数据列表\n * @returns VChart 实例\n */\n updateDataInBatches: (list: { id: string; data: Datum[]; options?: IParserOptions }[]) => Promise<IVChart>;\n\n /**\n * **同步**更新数据。\n * @param id 数据 id\n * @param data 数据值\n * @param options 数据参数\n * @returns VChart 实例\n */\n updateDataSync: (id: StringOrNumber, data: Datum[], options?: IParserOptions) => IVChart;\n\n /**\n * **同步方法** 更新数据\n * @async\n * @param data 图表配置结构中的数据对象\n * @returns VChart 实例\n */\n updateFullDataSync: (data: IDataValues | IDataValues[], reRender?: boolean) => IVChart;\n\n /**\n * **同步方法** 更新数据\n * @param data 图表配置结构中的数据对象\n * @returns VChart 实例\n */\n updateFullData: (data: IDataValues | IDataValues[], reRender?: boolean) => Promise<IVChart>;\n\n /**\n * **异步**spec 更新。\n * @sync\n * @param spec\n * @param forceMerge\n * @returns\n */\n updateSpec: (\n spec: ISpec,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig,\n userUpdateOptions?: IUpdateSpecResult\n ) => Promise<IVChart>;\n\n /**\n * **同步方法**spec 更新。\n * @param spec\n * @param forceMerge\n * @returns\n */\n updateSpecSync: (\n spec: ISpec,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig,\n userUpdateOptions?: IUpdateSpecResult\n ) => void;\n\n /**\n * **同步方法** 模块 spec 更新\n * @param filter\n * @param spec\n * @param forceMerge\n * @returns\n * @since 1.4.0\n */\n updateModelSpecSync: (\n filter: string | { type: string; index: number },\n spec: unknown,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig\n ) => IVChart;\n\n /**\n * **异步方法** 模块 spec 更新\n * @async\n * @param filter\n * @param spec\n * @param forceMerge\n * @returns\n * @since 1.4.0\n */\n updateModelSpec: (\n filter: string | { type: string; index: number },\n spec: unknown,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig\n ) => Promise<IVChart>;\n\n /** 更新 spec 并重新编译(不渲染),返回是否成功 */\n updateSpecAndRecompile: (spec: ISpec, forceMerge: boolean, option: IVChartRenderOption) => boolean;\n\n /**\n * 更新绘制区域。\n * @param viewBox 绘制区域\n * @param reRender 是否重新渲染,默认为 true\n * @returns\n */\n updateViewBox: (viewBox: IBoundsLike, reRender?: boolean) => IVChart;\n\n /**\n * **异步方法**,图表尺寸更新方法。\n * @async\n * @param width 宽度\n * @param height 高度\n * @returns VChart 当前实例\n */\n resize: (width: number, height: number) => Promise<IVChart>;\n\n /**\n * 销毁图表。\n */\n release: () => void;\n\n /**\n * 事件监听\n */\n on: ((eType: EventType, handler: EventCallback<ExtendEventParam>) => void) &\n ((eType: EventType, query: EventQuery, handler: EventCallback<ExtendEventParam>) => void);\n off: (eType: EventType, handler?: EventCallback<ExtendEventParam>) => void;\n\n /**\n * 更新或设置图元状态。\n * @param state 状态筛选器\n * @param filter 筛选器\n */\n updateState: (\n state: Record<string, Omit<IMarkStateSpec<unknown>, 'style'>>,\n filter?: (series: ISeries, mark: IMark, stateKey: string) => boolean //series + mark 筛选\n ) => void;\n\n /**\n * 更新图元选中状态。\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setSelected: (\n datum: MaybeArray<any> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 更新图元 hover 状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setHovered: (\n datum: MaybeArray<Datum> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 清除所有图元的状态\n * @param state 状态名\n *\n * @since 1.11.0\n */\n clearState: (state: string) => void;\n\n /**\n * 清除所有图元的选中状态\n *\n * @since 1.11.0\n */\n clearSelected: () => void;\n\n /**\n * 清除所有图元的hover状态\n *\n * @since 1.11.0\n */\n clearHovered: () => void;\n\n /**\n * 获取当前主题,会返回完整的主题配置(只能获取用户通过`setCurrentTheme`方法设置过的主题,默认值为`ThemeManager`统一设置的主题)\n * */\n getCurrentTheme: () => ITheme;\n\n /**\n * 获取当前主题名称(只能获取用户通过`setCurrentTheme`方法设置过的主题,默认值为`ThemeManager`统一设置的主题)\n */\n getCurrentThemeName: () => string;\n\n /**\n * **异步方法**, 设置当前主题。\n * @param name 主题名称\n * @returns\n */\n setCurrentTheme: (name: string) => Promise<IVChart>;\n\n /**\n * 自定义 TooltipHandler。\n * @param tooltipHandler\n */\n setTooltipHandler: (tooltipHandler: ITooltipHandler) => void;\n\n /**\n * 获取用户定义的 TooltipHandler\n * @returns ITooltipHandler\n */\n getTooltipHandlerByUser: () => ITooltipHandler | undefined;\n\n /**\n * 获取 TooltipHandler\n * @returns\n */\n getTooltipHandler: () => ITooltipHandler | undefined;\n\n /**\n * 手动调用展示 tooltip\n * @param datum 原始数据\n * @param options\n * @returns\n */\n showTooltip: (datum: Datum, options: IShowTooltipOption) => boolean;\n\n /**\n * 手动调用,关闭 tooltip\n * @returns\n */\n hideTooltip: () => boolean;\n\n // 图例相关 api\n /**\n * 根据图例组件 id 获取图例数据\n * @param id 组件 id\n * @returns\n */\n getLegendDataById: (id: string) => Datum[];\n\n /**\n * 根据图例组件索引获取图例数据\n * @param index 图例索引,默认为 0\n * @returns\n */\n getLegendDataByIndex: (index?: number) => Datum[];\n\n /**\n * 根据图例组件 id 获取当前图例的选中项\n * @param id 组件 id\n * @returns\n */\n getLegendSelectedDataById: (id: string) => StringOrNumber[];\n\n /**\n * 根据图例组件索引获取当前图例的选中项\n * @param index 图例索引,默认为 0\n * @returns\n */\n getLegendSelectedDataByIndex: (index?: number) => StringOrNumber[];\n\n /**\n * 根据图例组件 id 更新图例选中数据\n * @param id\n * @returns\n */\n setLegendSelectedDataById: (id: string, selectedData: StringOrNumber[]) => void;\n\n /**\n * 根据图例组件索引更新图例选中数据\n * @param index 图例索引,默认为 0\n * @returns\n */\n setLegendSelectedDataByIndex: (index: number, selectedData: StringOrNumber[]) => void;\n\n /**\n * **异步方法**返回一个包含图片展示的 data URI。\n * @returns data URI\n */\n getDataURL: () => Promise<any>;\n\n /**\n * **异步方法** 导出图表图片,只支持浏览器端。\n * @param name 保存的图片名称\n * @returns\n */\n exportImg: (name?: string) => Promise<void>;\n\n /**\n * 导出绘制了图表内容的 canvas\n * @returns HTMLCanvasElement\n * @since 1.5.2\n */\n exportCanvas: () => HTMLCanvasElement | undefined;\n\n /**\n * 目前仅支持 node 环境,用于 node 端的图片导出\n * @returns\n */\n getImageBuffer: () => void;\n /**\n * 设置自定义布局\n */\n setLayout: (layout: LayoutCallBack) => void;\n /**\n * 强制重新布局\n */\n reLayout: () => void;\n\n /**\n * 获取编译器实例\n * @returns\n */\n getCompiler: () => ICompiler;\n\n /**\n * Get the chart instance\n * 获取 Chart 图表实例。\n * @returns Chart 实例\n */\n getChart: () => Maybe<IChart>;\n\n /**\n * Get the renderer instance.\n * 获取渲染引擎实例。\n * @returns the instance of VRender Stage\n */\n getStage: () => IStage;\n\n /**\n * 获取 canvas dom\n * @returns HTMLCanvasElement | undefined\n */\n getCanvas: () => HTMLCanvasElement | undefined;\n\n /**\n * 获取图表的 dom 容器\n * @returns\n */\n getContainer: () => Maybe<HTMLElement>;\n\n /**\n * 获取图表所有的组件实例\n * @returns 组件实例\n */\n getComponents: () => IComponent[];\n\n /**\n * 获取图表的 DataSet 实例\n * @returns DataSet 实例\n */\n getDataSet: () => Maybe<DataSet>;\n\n /**\n * 获取图表的 Scale 实例\n * @param scaleId scale 的id\n * @returns Scale 实例\n * @since 1.10.4\n */\n getScale: (scaleId: string) => IBaseScale | null;\n\n /**\n * 手动调用触发 dimension 交互效果。\n * @param datum dimension 值\n * @param options 触发配置\n * @returns\n */\n setDimensionIndex: (value: StringOrNumber, options?: DimensionIndexOption) => void;\n\n // 数据转换相关的 api\n /**\n * Convert the data to coordinate position\n * @param datum the datum to convert\n * @param dataLinkInfo the data link info, could be seriesId or seriesIndex, default is { seriesIndex: 0 }\n * @param isRelativeToCanvas 是否相对画布坐标,默认为 false Whether relative to canvas coordinates, default is false\n * @param checkInViewData 是否检查数据对应的图元是否在视图中,如果不在视图中,返回 null\n * @returns\n */\n convertDatumToPosition: (\n datum: Datum,\n dataLinkInfo?: DataLinkSeries,\n isRelativeToCanvas?: boolean,\n checkInViewData?: boolean\n ) => IPoint | null;\n\n /**\n * Convert the value to coordinate position\n * @param value number | [number, number], the value to convert\n * @param dataLinkInfo the data link info, could be seriesId,seriesIndex,axisId,axisIndex\n * @param isRelativeToCanvas 是否相对画布坐标,默认为 false Whether relative to canvas coordinates, default is false\n * returns\n */\n convertValueToPosition: ((\n value: StringOrNumber,\n dataLinkInfo: DataLinkAxis,\n isRelativeToCanvas?: boolean\n ) => number | null) &\n ((\n value: [StringOrNumber, StringOrNumber],\n dataLinkInfo: DataLinkSeries,\n isRelativeToCanvas?: boolean\n ) => IPoint | null);\n\n /**\n * 根据 indicator 组件 id 更新 indicator 数据\n * @param id spec 中定义的 indicator id\n * @param datum 具体数据项\n * @since 1.11.7\n */\n updateIndicatorDataById: (id: string, datum?: Datum) => void;\n\n /**\n * 根据 indicator 组件 id 更新 indicator 数据\n * @param index indicator 索引下标\n * @param datum 具体数据项\n * @since 1.11.7\n */\n updateIndicatorDataByIndex: (index?: number, datum?: Datum) => void;\n\n /**\n * 地图缩放 API\n * @param [regionIndex=0] 根据索引顺序指定某个 region 区域的地图坐标系进行缩放\n * @param zoom 缩放比例\n * @param center 缩放中心\n * @since 1.11.10\n */\n geoZoomByIndex: (regionIndex: number, zoom: number, center?: { x: number; y: number }) => void;\n\n /**\n * 地图缩放 API\n * @param 根据 region id 指定某个 region 区域的地图坐标系进行缩放\n * @param zoom 缩放比例\n * @param center 缩放中心\n * @since 1.11.10\n */\n geoZoomById: (regionId: string | number, zoom: number, center?: { x: number; y: number }) => void;\n /**\n * @since 2.0.3\n * 当前图表是否开启了动画功能\n */\n isAnimationEnable: () => boolean;\n /** 停止正在进行的所有动画 */\n stopAnimation: () => void;\n\n /** 暂停正在进行的所有动画 */\n pauseAnimation: () => void;\n\n /** 恢复暂停时正在进行的所有动画 */\n resumeAnimation: () => void;\n\n /** 注册实例函数 */\n registerFunction: (key: string, fun: Function) => void;\n\n /** 注销实例函数 */\n unregisterFunction: (key: string) => void;\n\n /** 获取实例函数 */\n getFunction: (key: string) => Function | null;\n\n /** 获取实例函数列表 */\n getFunctionList: () => string[] | null;\n\n /** 获取图表 spec 详细信息 */\n getSpecInfo: () => IChartSpecInfo;\n\n /** 设置运行时 spec */\n setRuntimeSpec: (spec: any) => void;\n\n /** 获取运行时 spec */\n getSpec: () => any;\n\n /** 获取当前容器宽高 */\n getCurrentSize: () => IContainerSize;\n}\n\nexport interface IGlobalConfig {\n /** 是否全局显示唯一 tooltip */\n uniqueTooltip?: boolean;\n /** 是否监测图表 dom 变化自动 release */\n // TODO\n // autoRelease?: boolean;\n}\n\nexport interface IVChartRenderOption {\n /** morphing 动画 spec */\n morphConfig?: IMorphConfig;\n /** 是否重新转换图表 spec */\n transformSpec?: boolean;\n actionSource?: VChartRenderActionSource;\n}\n\nexport type VChartRenderActionSource =\n | 'render'\n | 'updateSpec'\n | 'updateModelSpec'\n | 'setCurrentTheme'\n | 'updateSpecAndRecompile';\n\nexport interface VRenderComponentOptions {\n skipDefault?: boolean;\n mode?: '2d' | '3d';\n}\n\nexport interface IStageEventPlugin<T> {\n new (taget: IEventTarget, cfg?: T): {\n release: () => void;\n };\n}\n\nexport interface GrammarTransformOption {\n /** 是否支持渐进流程 */\n canProgressive?: boolean;\n transform: IMarkDataTransform;\n runType?: 'beforeJoin' | 'afterEncode';\n}\n"]}
1
+ {"version":3,"sources":["../src/core/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { DataSet, IParserOptions } from '@visactor/vdataset';\nimport type {\n Datum,\n IDataValues,\n IInitOption,\n IMarkStateSpec,\n IPoint,\n IRegionQuerier,\n IShowTooltipOption,\n ISpec,\n ITooltipHandler,\n Maybe,\n MaybeArray,\n StringOrNumber\n} from '../typings';\nimport type { IMorphConfig } from '../animation/spec';\nimport type { IBoundsLike } from '@visactor/vutils';\nimport type { EventCallback, EventQuery, EventType, ExtendEventParam } from '../event/interface';\nimport type { IMark, IMarkDataTransform } from '../mark/interface';\nimport type { ISeries } from '../series/interface/series';\nimport type { ITheme } from '../theme/interface';\nimport type { IComponent } from '../component/interface';\nimport type { LayoutCallBack } from '../layout/interface';\nimport type { DimensionIndexOption, IChart, IChartSpecInfo } from '../chart/interface';\nimport type { IEventTarget, IStage } from '@visactor/vrender-core';\nimport type { IContainerSize } from '@visactor/vrender-components';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IUpdateSpecResult } from '../model/interface';\nimport type { ICompiler } from '../compile/interface';\n\nexport type DataLinkSeries = {\n /**\n * 关联的系列 id\n * the binding series id\n */\n seriesId?: StringOrNumber;\n /**\n * 关联的系列索引\n * the binding series index\n */\n seriesIndex?: number;\n};\n\nexport type DataLinkAxis = {\n /**\n * 关联的轴 id,目前仅支持直角坐标轴\n * the binding axis id\n */\n axisId?: StringOrNumber;\n /**\n * 关联的轴索引,目前仅支持直角坐标轴\n * the binding axis index\n */\n axisIndex?: number;\n};\n\nexport interface IVChartConstructor {\n new (spec: ISpec, options: IInitOption): IVChart;\n useRegisters: (comps: (() => void)[]) => any;\n}\n\nexport interface IVChart {\n readonly id: number;\n\n /**\n * **同步**渲染图表。\n * @param morphConfig 图表 morph 动画配置,可选\n * @returns VChart 实例\n */\n renderSync: (morphConfig?: IMorphConfig) => IVChart;\n\n /**\n * **异步**渲染图表。\n * @async\n * @param morphConfig 图表 morph 动画配置,可选\n * @returns VChart 实例\n */\n renderAsync: (morphConfig?: IMorphConfig) => Promise<IVChart>;\n\n /**\n * **异步**更新数据。\n * @async\n * @param id 数据 id\n * @param data 数据值\n * @param options 数据参数\n * @returns VChart 实例\n */\n updateData: (id: StringOrNumber, data: Datum[] | string, options?: IParserOptions) => Promise<IVChart>;\n\n /**\n * **异步**批量更新数据。\n * @async\n * @param list 待更新的数据列表\n * @returns VChart 实例\n */\n updateDataInBatches: (list: { id: string; data: Datum[]; options?: IParserOptions }[]) => Promise<IVChart>;\n\n /**\n * **同步**更新数据。\n * @param id 数据 id\n * @param data 数据值\n * @param options 数据参数\n * @returns VChart 实例\n */\n updateDataSync: (id: StringOrNumber, data: Datum[], options?: IParserOptions) => IVChart;\n\n /**\n * **同步方法** 更新数据\n * @async\n * @param data 图表配置结构中的数据对象\n * @returns VChart 实例\n */\n updateFullDataSync: (data: IDataValues | IDataValues[], reRender?: boolean) => IVChart;\n\n /**\n * **同步方法** 更新数据\n * @param data 图表配置结构中的数据对象\n * @returns VChart 实例\n */\n updateFullData: (data: IDataValues | IDataValues[], reRender?: boolean) => Promise<IVChart>;\n\n /**\n * **异步**spec 更新。\n * @sync\n * @param spec\n * @param forceMerge\n * @returns\n */\n updateSpec: (\n spec: ISpec,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig,\n userUpdateOptions?: IUpdateSpecResult\n ) => Promise<IVChart>;\n\n /**\n * **同步方法**spec 更新。\n * @param spec\n * @param forceMerge\n * @returns\n */\n updateSpecSync: (\n spec: ISpec,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig,\n userUpdateOptions?: IUpdateSpecResult\n ) => void;\n\n /**\n * **同步方法** 模块 spec 更新\n * @param filter\n * @param spec\n * @param forceMerge\n * @returns\n * @since 1.4.0\n */\n updateModelSpecSync: (\n filter: string | { type: string; index: number },\n spec: unknown,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig\n ) => IVChart;\n\n /**\n * **异步方法** 模块 spec 更新\n * @async\n * @param filter\n * @param spec\n * @param forceMerge\n * @returns\n * @since 1.4.0\n */\n updateModelSpec: (\n filter: string | { type: string; index: number },\n spec: unknown,\n forceMerge?: boolean,\n morphConfig?: IMorphConfig\n ) => Promise<IVChart>;\n\n /** 更新 spec 并重新编译(不渲染),返回是否成功 */\n updateSpecAndRecompile: (spec: ISpec, forceMerge: boolean, option: IVChartRenderOption) => boolean;\n\n /**\n * 更新绘制区域。\n * @param viewBox 绘制区域\n * @param reRender 是否重新渲染,默认为 true\n * @returns\n */\n updateViewBox: (viewBox: IBoundsLike, reRender?: boolean) => IVChart;\n\n /**\n * **异步方法**,图表尺寸更新方法。\n * @async\n * @param width 宽度\n * @param height 高度\n * @returns VChart 当前实例\n */\n resize: (width: number, height: number) => Promise<IVChart>;\n\n /**\n * 销毁图表。\n */\n release: () => void;\n\n /**\n * 事件监听\n */\n on: ((eType: EventType, handler: EventCallback<ExtendEventParam>) => void) &\n ((eType: EventType, query: EventQuery, handler: EventCallback<ExtendEventParam>) => void);\n off: (eType: EventType, handler?: EventCallback<ExtendEventParam>) => void;\n\n /**\n * 更新或设置图元状态。\n * @param state 状态筛选器\n * @param filter 筛选器\n */\n updateState: (\n state: Record<string, Omit<IMarkStateSpec<unknown>, 'style'>>,\n filter?: (series: ISeries, mark: IMark, stateKey: string) => boolean //series + mark 筛选\n ) => void;\n\n /**\n * 更新图元选中状态。\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setSelected: (\n datum: MaybeArray<any> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 更新图元 hover 状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setHovered: (\n datum: MaybeArray<Datum> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 清除所有图元的状态\n * @param state 状态名\n *\n * @since 1.11.0\n */\n clearState: (state: string) => void;\n\n /**\n * 清除所有图元的选中状态\n *\n * @since 1.11.0\n */\n clearSelected: () => void;\n\n /**\n * 清除所有图元的hover状态\n *\n * @since 1.11.0\n */\n clearHovered: () => void;\n\n /**\n * 获取当前主题,会返回完整的主题配置(只能获取用户通过`setCurrentTheme`方法设置过的主题,默认值为`ThemeManager`统一设置的主题)\n * */\n getCurrentTheme: () => ITheme;\n\n /**\n * 获取当前主题名称(只能获取用户通过`setCurrentTheme`方法设置过的主题,默认值为`ThemeManager`统一设置的主题)\n */\n getCurrentThemeName: () => string;\n\n /**\n * **异步方法**, 设置当前主题。\n * @param name 主题名称\n * @returns\n */\n setCurrentTheme: (name: string) => Promise<IVChart>;\n\n /**\n * 自定义 TooltipHandler。\n * @param tooltipHandler\n */\n setTooltipHandler: (tooltipHandler: ITooltipHandler) => void;\n\n /**\n * 获取用户定义的 TooltipHandler\n * @returns ITooltipHandler\n */\n getTooltipHandlerByUser: () => ITooltipHandler | undefined;\n\n /**\n * 获取 TooltipHandler\n * @returns\n */\n getTooltipHandler: () => ITooltipHandler | undefined;\n\n /**\n * 手动调用展示 tooltip\n * @param datum 原始数据\n * @param options\n * @returns\n */\n showTooltip: (datum: Datum, options: IShowTooltipOption) => boolean;\n\n /**\n * 手动调用,关闭 tooltip\n * @returns\n */\n hideTooltip: () => boolean;\n\n // 图例相关 api\n /**\n * 根据图例组件 id 获取图例数据\n * @param id 组件 id\n * @returns\n */\n getLegendDataById: (id: string) => Datum[];\n\n /**\n * 根据图例组件索引获取图例数据\n * @param index 图例索引,默认为 0\n * @returns\n */\n getLegendDataByIndex: (index?: number) => Datum[];\n\n /**\n * 根据图例组件 id 获取当前图例的选中项\n * @param id 组件 id\n * @returns\n */\n getLegendSelectedDataById: (id: string) => StringOrNumber[];\n\n /**\n * 根据图例组件索引获取当前图例的选中项\n * @param index 图例索引,默认为 0\n * @returns\n */\n getLegendSelectedDataByIndex: (index?: number) => StringOrNumber[];\n\n /**\n * 根据图例组件 id 更新图例选中数据\n * @param id\n * @returns\n */\n setLegendSelectedDataById: (id: string, selectedData: StringOrNumber[]) => void;\n\n /**\n * 根据图例组件索引更新图例选中数据\n * @param index 图例索引,默认为 0\n * @returns\n */\n setLegendSelectedDataByIndex: (index: number, selectedData: StringOrNumber[]) => void;\n\n /**\n * **异步方法**返回一个包含图片展示的 data URI。\n * @returns data URI\n */\n getDataURL: () => Promise<any>;\n\n /**\n * **异步方法** 导出图表图片,只支持浏览器端。\n * @param name 保存的图片名称\n * @returns\n */\n exportImg: (name?: string) => Promise<void>;\n\n /**\n * 导出绘制了图表内容的 canvas\n * @returns HTMLCanvasElement\n * @since 1.5.2\n */\n exportCanvas: () => HTMLCanvasElement | undefined;\n\n /**\n * 目前仅支持 node 环境,用于 node 端的图片导出\n * @returns\n */\n getImageBuffer: () => void;\n /**\n * 设置自定义布局\n */\n setLayout: (layout: LayoutCallBack) => void;\n /**\n * 强制重新布局\n */\n reLayout: () => void;\n\n /**\n * 获取编译器实例\n * @returns\n */\n getCompiler: () => ICompiler;\n\n /**\n * Get the chart instance\n * 获取 Chart 图表实例。\n * @returns Chart 实例\n */\n getChart: () => Maybe<IChart>;\n\n /**\n * Get the renderer instance.\n * 获取渲染引擎实例。\n * @returns the instance of VRender Stage\n */\n getStage: () => IStage;\n\n /**\n * 获取 canvas dom\n * @returns HTMLCanvasElement | undefined\n */\n getCanvas: () => HTMLCanvasElement | undefined;\n\n /**\n * 获取图表的 dom 容器\n * @returns\n */\n getContainer: () => Maybe<HTMLElement>;\n\n /**\n * 获取图表所有的组件实例\n * @returns 组件实例\n */\n getComponents: () => IComponent[];\n\n /**\n * 获取图表的 DataSet 实例\n * @returns DataSet 实例\n */\n getDataSet: () => Maybe<DataSet>;\n\n /**\n * 获取图表的 Scale 实例\n * @param scaleId scale 的id\n * @returns Scale 实例\n * @since 1.10.4\n */\n getScale: (scaleId: string) => IBaseScale | null;\n\n /**\n * 手动调用触发 dimension 交互效果。\n * @param datum dimension 值\n * @param options 触发配置\n * @returns\n */\n setDimensionIndex: (value: StringOrNumber, options?: DimensionIndexOption) => void;\n\n // 数据转换相关的 api\n /**\n * Convert the data to coordinate position\n * @param datum the datum to convert\n * @param dataLinkInfo the data link info, could be seriesId or seriesIndex, default is { seriesIndex: 0 }\n * @param isRelativeToCanvas 是否相对画布坐标,默认为 false Whether relative to canvas coordinates, default is false\n * @param checkInViewData 是否检查数据对应的图元是否在视图中,如果不在视图中,返回 null\n * @returns\n */\n convertDatumToPosition: (\n datum: Datum,\n dataLinkInfo?: DataLinkSeries,\n isRelativeToCanvas?: boolean,\n checkInViewData?: boolean\n ) => IPoint | null;\n\n /**\n * Convert the value to coordinate position\n * @param value number | [number, number], the value to convert\n * @param dataLinkInfo the data link info, could be seriesId,seriesIndex,axisId,axisIndex\n * @param isRelativeToCanvas 是否相对画布坐标,默认为 false Whether relative to canvas coordinates, default is false\n * returns\n */\n convertValueToPosition: ((\n value: StringOrNumber,\n dataLinkInfo: DataLinkAxis,\n isRelativeToCanvas?: boolean\n ) => number | null) &\n ((\n value: [StringOrNumber, StringOrNumber],\n dataLinkInfo: DataLinkSeries,\n isRelativeToCanvas?: boolean\n ) => IPoint | null);\n\n /**\n * 根据 indicator 组件 id 更新 indicator 数据\n * @param id spec 中定义的 indicator id\n * @param datum 具体数据项\n * @since 1.11.7\n */\n updateIndicatorDataById: (id: string, datum?: Datum) => void;\n\n /**\n * 根据 indicator 组件 id 更新 indicator 数据\n * @param index indicator 索引下标\n * @param datum 具体数据项\n * @since 1.11.7\n */\n updateIndicatorDataByIndex: (index?: number, datum?: Datum) => void;\n\n /**\n * 地图缩放 API\n * @param [regionIndex=0] 根据索引顺序指定某个 region 区域的地图坐标系进行缩放\n * @param zoom 缩放比例\n * @param center 缩放中心\n * @since 1.11.10\n */\n geoZoomByIndex: (regionIndex: number, zoom: number, center?: { x: number; y: number }) => void;\n\n /**\n * 地图缩放 API\n * @param 根据 region id 指定某个 region 区域的地图坐标系进行缩放\n * @param zoom 缩放比例\n * @param center 缩放中心\n * @since 1.11.10\n */\n geoZoomById: (regionId: string | number, zoom: number, center?: { x: number; y: number }) => void;\n /**\n * @since 2.0.3\n * 当前图表是否开启了动画功能\n */\n isAnimationEnable: () => boolean;\n /** 停止正在进行的所有动画 */\n stopAnimation: () => void;\n\n /** 暂停正在进行的所有动画 */\n pauseAnimation: () => void;\n\n /** 恢复暂停时正在进行的所有动画 */\n resumeAnimation: () => void;\n\n /** 注册实例函数 */\n registerFunction: (key: string, fun: Function) => void;\n\n /** 注销实例函数 */\n unregisterFunction: (key: string) => void;\n\n /** 获取实例函数 */\n getFunction: (key: string) => Function | null;\n\n /** 获取实例函数列表 */\n getFunctionList: () => string[] | null;\n\n /** 获取图表 spec 详细信息 */\n getSpecInfo: () => IChartSpecInfo;\n\n /** 设置运行时 spec */\n setRuntimeSpec: (spec: any) => void;\n\n /** 获取运行时 spec */\n getSpec: () => any;\n\n /** 获取当前容器宽高 */\n getCurrentSize: () => IContainerSize;\n\n /** 旋转图表 需要注册插件 */\n rotate90WithTransform?: (rotateDom: HTMLElement) => void;\n\n /** 取消图表旋转 */\n cancelTransform?: (rotateDom: HTMLElement) => void;\n}\n\nexport interface IGlobalConfig {\n /** 是否全局显示唯一 tooltip */\n uniqueTooltip?: boolean;\n /** 是否监测图表 dom 变化自动 release */\n // TODO\n // autoRelease?: boolean;\n}\n\nexport interface IVChartRenderOption {\n /** morphing 动画 spec */\n morphConfig?: IMorphConfig;\n /** 是否重新转换图表 spec */\n transformSpec?: boolean;\n actionSource?: VChartRenderActionSource;\n}\n\nexport type VChartRenderActionSource =\n | 'render'\n | 'updateSpec'\n | 'updateModelSpec'\n | 'setCurrentTheme'\n | 'updateSpecAndRecompile';\n\nexport interface VRenderComponentOptions {\n skipDefault?: boolean;\n mode?: '2d' | '3d';\n}\n\nexport interface IStageEventPlugin<T> {\n new (taget: IEventTarget, cfg?: T): {\n release: () => void;\n };\n}\n\nexport interface GrammarTransformOption {\n /** 是否支持渐进流程 */\n canProgressive?: boolean;\n transform: IMarkDataTransform;\n runType?: 'beforeJoin' | 'afterEncode';\n}\n"]}
@@ -5,7 +5,7 @@ import { RenderModeEnum } from '../typings/spec/common';
5
5
  import type { ISeriesConstructor } from '../series/interface';
6
6
  import { type DimensionIndexOption, type IChart, type IChartConstructor, type IChartOption, type IChartSpecInfo } from '../chart/interface';
7
7
  import type { IComponentConstructor } from '../component/interface';
8
- import type { EventCallback, EventQuery, EventType, ExtendEventParam } from '../event/interface';
8
+ import type { EventCallback, EventQuery, EventType, ExtendEventParam, IEvent } from '../event/interface';
9
9
  import type { IParserOptions, Transform } from '@visactor/vdataset';
10
10
  import { DataSet, DataView } from '@visactor/vdataset';
11
11
  import type { IStage } from '@visactor/vrender-core';
@@ -59,6 +59,7 @@ export declare class VChart implements IVChart {
59
59
  private _chartSpecTransformer;
60
60
  private _compiler;
61
61
  private _event;
62
+ get event(): IEvent;
62
63
  private _userEvents;
63
64
  private _eventDispatcher;
64
65
  private _dataSet;
@@ -77,6 +78,7 @@ export declare class VChart implements IVChart {
77
78
  private _context;
78
79
  private _isReleased;
79
80
  private _chartPlugin?;
81
+ private _vChartPlugin?;
80
82
  private _onResize?;
81
83
  constructor(spec: ISpec, options: IInitOption);
82
84
  private _setNewSpec;
@@ -114,6 +114,8 @@ import { registerElementHighlight } from "../interaction/triggers/element-highli
114
114
 
115
115
  import { registerElementSelect } from "../interaction/triggers/element-select";
116
116
 
117
+ import { VChartPluginService } from "../plugin/vchart/plugin-service";
118
+
117
119
  export class VChart {
118
120
  static useRegisters(comps) {
119
121
  comps.forEach((fn => {
@@ -187,6 +189,9 @@ export class VChart {
187
189
  getSpecInfo() {
188
190
  return this._specInfo;
189
191
  }
192
+ get event() {
193
+ return this._event;
194
+ }
190
195
  getDataSet() {
191
196
  return this._dataSet;
192
197
  }
@@ -933,6 +938,9 @@ export class VChart {
933
938
  const pluginList = Factory.getChartPlugins();
934
939
  pluginList.length > 0 && (this._chartPlugin = new ChartPluginService(this), this._chartPlugin.load(pluginList.map((p => new p))),
935
940
  this._chartPluginApply("onInit", this._spec));
941
+ const vChartPluginList = Factory.getVChartPlugins();
942
+ vChartPluginList.length > 0 && (this._vChartPlugin = new VChartPluginService(this),
943
+ this._vChartPlugin.load(vChartPluginList.map((p => new p))), this._vChartPlugin.onInit());
936
944
  }
937
945
  _chartPluginApply(funcName, ...args) {
938
946
  this._chartPlugin && this._chartPlugin[funcName] && this._chartPlugin[funcName].apply(this._chartPlugin, args);
@@ -981,4 +989,4 @@ export const registerVChartCore = () => {
981
989
  Factory.registerRegion("region", Region), Factory.registerLayout("base", Layout),
982
990
  registerGroupMark(), registerGesturePlugin(), registerElementHighlight(), registerElementSelect(),
983
991
  registerTheme(darkTheme.name, darkTheme);
984
- //# sourceMappingURL=vchart.js.map
992
+ //# sourceMappingURL=vchart.js.map