@visactor/vstory 0.0.5-alpha.2 → 0.0.5-alpha.3

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 (55) hide show
  1. package/cjs/animate/util/paths.js +1 -1
  2. package/cjs/animate/util/util.js +1 -1
  3. package/cjs/dsl/story-chart/area.js +1 -2
  4. package/cjs/dsl/story-executor/index.js +2 -0
  5. package/cjs/dsl/story-processor/processor.js +1 -1
  6. package/cjs/dsl/types/Datum.js +2 -1
  7. package/cjs/dsl/types/index.js +1 -1
  8. package/cjs/dsl/utils/datum.js +1 -1
  9. package/cjs/dsl/utils/flicker.js +1 -1
  10. package/cjs/edit/edit-component/image-selection.js +1 -1
  11. package/cjs/edit/edit-component/index.js +1 -1
  12. package/cjs/edit/edit-component/layer-edit.js +0 -2
  13. package/cjs/edit/edit-component/rect-selection.js +1 -1
  14. package/cjs/edit/edit-component/richtext-selection-common.js +1 -1
  15. package/cjs/edit/edit-component/richtext-selection.js +1 -1
  16. package/cjs/edit/edit-component/shape-selection.js +1 -1
  17. package/cjs/edit/edit-component/text-selection.js +1 -1
  18. package/cjs/story/character/chart/graphic/vchart-graphic.js +2 -2
  19. package/cjs/story/character/chart/graphic/vchart-graphic.js.map +1 -1
  20. package/cjs/story/interface/runtime-interface.d.ts +1 -0
  21. package/cjs/story/interface/runtime-interface.js.map +1 -1
  22. package/cjs/story/story.d.ts +1 -0
  23. package/cjs/story/story.js +3 -0
  24. package/cjs/story/story.js.map +1 -1
  25. package/cjs/story/utils/chart.js +13 -2
  26. package/cjs/story/utils/chart.js.map +1 -1
  27. package/dist/index.js +8 -5
  28. package/dist/index.min.js +3 -3
  29. package/es/animate/util/paths.js +1 -1
  30. package/es/animate/util/util.js +1 -1
  31. package/es/dsl/story-chart/area.js +1 -2
  32. package/es/dsl/story-executor/index.js +2 -0
  33. package/es/dsl/story-processor/processor.js +1 -1
  34. package/es/dsl/types/Datum.js +2 -1
  35. package/es/dsl/types/index.js +1 -1
  36. package/es/dsl/utils/datum.js +1 -1
  37. package/es/dsl/utils/flicker.js +1 -1
  38. package/es/edit/edit-component/image-selection.js +1 -1
  39. package/es/edit/edit-component/index.js +1 -1
  40. package/es/edit/edit-component/layer-edit.js +0 -2
  41. package/es/edit/edit-component/rect-selection.js +1 -1
  42. package/es/edit/edit-component/richtext-selection-common.js +1 -1
  43. package/es/edit/edit-component/richtext-selection.js +1 -1
  44. package/es/edit/edit-component/shape-selection.js +1 -1
  45. package/es/edit/edit-component/text-selection.js +1 -1
  46. package/es/story/character/chart/graphic/vchart-graphic.js +2 -2
  47. package/es/story/character/chart/graphic/vchart-graphic.js.map +1 -1
  48. package/es/story/interface/runtime-interface.d.ts +1 -0
  49. package/es/story/interface/runtime-interface.js.map +1 -1
  50. package/es/story/story.d.ts +1 -0
  51. package/es/story/story.js +3 -0
  52. package/es/story/story.js.map +1 -1
  53. package/es/story/utils/chart.js +13 -2
  54. package/es/story/utils/chart.js.map +1 -1
  55. package/package.json +1 -1
@@ -365,4 +365,4 @@ exports.bezierToPoints = bezierToPoints, exports.flatPointsToSegment = flatPoint
365
365
  exports.pointsToSegment = pointsToSegment, exports.simplifyPoints = simplifyPoints,
366
366
  exports.getClosestData = getClosestData, exports.subdivideSegmentNear = subdivideSegmentNear,
367
367
  exports.rawPathToString = rawPathToString;
368
- //# sourceMappingURL=paths.js.map
368
+ //# sourceMappingURL=paths.js.map
@@ -116,4 +116,4 @@ class CustomEase {
116
116
  }
117
117
 
118
118
  exports.CustomEase = CustomEase, _getGSAP() && gsap.registerPlugin(CustomEase);
119
- //# sourceMappingURL=util.js.map
119
+ //# sourceMappingURL=util.js.map
@@ -12,5 +12,4 @@ class StoryArea extends chart_1.StoryChart {
12
12
  }
13
13
  }
14
14
 
15
- exports.StoryArea = StoryArea;
16
- //# sourceMappingURL=area.js.map
15
+ exports.StoryArea = StoryArea;
@@ -1 +1,3 @@
1
+
2
+
1
3
  //# sourceMappingURL=index.js.map
@@ -67,4 +67,4 @@ class ActionProcessor {
67
67
  }
68
68
 
69
69
  exports.ActionProcessor = ActionProcessor, ActionProcessor._instance = null;
70
- //# sourceMappingURL=processor.js.map
70
+ //# sourceMappingURL=processor.js.map
@@ -2,4 +2,5 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
- });
5
+ });
6
+ //# sourceMappingURL=Datum.js.map
@@ -19,4 +19,4 @@ Object.defineProperty(exports, "__esModule", {
19
19
  value: !0
20
20
  }), __exportStar(require("./common"), exports), __exportStar(require("./chart"), exports),
21
21
  __exportStar(require("./graphic"), exports);
22
- //# sourceMappingURL=index.js.map
22
+ //# sourceMappingURL=index.js.map
@@ -13,4 +13,4 @@ const vutils_1 = require("@visactor/vutils"), isDatumEqual = (source, target) =>
13
13
  };
14
14
 
15
15
  exports.isDatumEqual = isDatumEqual;
16
- //# sourceMappingURL=datum.js.map
16
+ //# sourceMappingURL=datum.js.map
@@ -15,4 +15,4 @@ const flickerEffect = group => {
15
15
  };
16
16
 
17
17
  exports.flickerEffect = flickerEffect;
18
- //# sourceMappingURL=flicker.js.map
18
+ //# sourceMappingURL=flicker.js.map
@@ -13,4 +13,4 @@ class ImageSelection extends rect_selection_1.RectSelection {
13
13
  }
14
14
 
15
15
  exports.ImageSelection = ImageSelection;
16
- //# sourceMappingURL=image-selection.js.map
16
+ //# sourceMappingURL=image-selection.js.map
@@ -13,4 +13,4 @@ function loadAllSelection() {
13
13
  }
14
14
 
15
15
  exports.loadAllSelection = loadAllSelection;
16
- //# sourceMappingURL=index.js.map
16
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1 @@
1
-
2
-
3
1
  //# sourceMappingURL=layer-edit.js.map
@@ -27,4 +27,4 @@ class RectSelection extends richtext_selection_common_1.RichTextSelectionCommon
27
27
  }
28
28
 
29
29
  exports.RectSelection = RectSelection;
30
- //# sourceMappingURL=rect-selection.js.map
30
+ //# sourceMappingURL=rect-selection.js.map
@@ -32,4 +32,4 @@ class RichTextSelectionCommon extends base_selection_1.BaseSelection {
32
32
  }
33
33
 
34
34
  exports.RichTextSelectionCommon = RichTextSelectionCommon, (0, vutils_1.mixin)(RichTextSelectionCommon, richtext_1.RichTextMixin);
35
- //# sourceMappingURL=richtext-selection-common.js.map
35
+ //# sourceMappingURL=richtext-selection-common.js.map
@@ -30,4 +30,4 @@ class RichTextSelection extends base_selection_1.BaseSelection {
30
30
  }
31
31
 
32
32
  exports.RichTextSelection = RichTextSelection;
33
- //# sourceMappingURL=richtext-selection.js.map
33
+ //# sourceMappingURL=richtext-selection.js.map
@@ -33,4 +33,4 @@ class ShapeSelection extends rect_selection_1.RectSelection {
33
33
  }
34
34
 
35
35
  exports.ShapeSelection = ShapeSelection;
36
- //# sourceMappingURL=shape-selection.js.map
36
+ //# sourceMappingURL=shape-selection.js.map
@@ -20,4 +20,4 @@ class TextSelection extends base_selection_1.BaseSelection {
20
20
  }
21
21
 
22
22
  exports.TextSelection = TextSelection;
23
- //# sourceMappingURL=text-selection.js.map
23
+ //# sourceMappingURL=text-selection.js.map
@@ -109,7 +109,7 @@ class Chart extends vrender_1.Group {
109
109
  }
110
110
  _updateViewBox() {
111
111
  if (!this._vchart) return;
112
- this._boundsChangeTag = !0;
112
+ this._boundsChangeTag = !0, this._vchart.resize(this._globalViewBox.x2 - this._globalViewBox.x1, this._globalViewBox.y2 - this._globalViewBox.y1);
113
113
  const rootBounds = this._getVChartRootMarkBounds();
114
114
  this._vchart.getStage().defaultLayer.translateTo(-rootBounds.x1, -rootBounds.y1),
115
115
  this._BoundsViewBox = rootBounds;
@@ -122,7 +122,7 @@ class Chart extends vrender_1.Group {
122
122
  }), this._localViewBox.x1 = -rootBounds.x1, this._localViewBox.y1 = -rootBounds.y1,
123
123
  this._localViewBox.x2 += -rootBounds.x1, this._localViewBox.y2 += -rootBounds.y1,
124
124
  viewBox.x2 -= viewBox.x1, viewBox.y2 -= viewBox.y1, viewBox.x1 = 0, viewBox.y1 = 0,
125
- this._vchart.resize(viewBox.x2 - viewBox.x1, viewBox.y2 - viewBox.y1), this._vchart.updateViewBox(viewBox);
125
+ this._vchart.updateViewBox(viewBox);
126
126
  const renderViewBox = Object.assign({}, rootBounds);
127
127
  renderViewBox.x2 -= renderViewBox.x1, renderViewBox.y2 -= renderViewBox.y1, renderViewBox.x1 = 0,
128
128
  renderViewBox.y1 = 0, this._vchart._compiler._view.renderer.setViewBox(renderViewBox, !0);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/character/chart/graphic/vchart-graphic.ts"],"names":[],"mappings":"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","file":"vchart-graphic.js","sourcesContent":["import type { IVisactorGraphic } from '../../visactor/interface';\nimport { Bounds, type AABBBounds, type IAABBBounds, type IBoundsLike } from '@visactor/vutils';\nimport type { IInitOption, ISpec, IVChart } from '@visactor/vchart';\nimport type { GraphicType, IGroupGraphicAttribute, ITicker } from '@visactor/vrender';\nimport { genNumberType, Group } from '@visactor/vrender';\nimport { isPointInBounds } from '../../../../util/space';\nimport { mergeChartOption } from '../../../utils/chart';\n\nexport interface IChartGraphicAttribute extends IGroupGraphicAttribute {\n renderCanvas: HTMLCanvasElement;\n spec: any;\n ClassType: any;\n vchart: IVChart;\n mode: IInitOption['mode'];\n modeParams?: any;\n dpr: number;\n interactive: boolean;\n animation: boolean;\n disableTriggerEvent: boolean;\n disableDirtyBounds: boolean;\n viewBox: IBoundsLike;\n ticker?: ITicker;\n autoRender?: boolean;\n chartInitOptions?: any;\n}\n\nexport const CHART_NUMBER_TYPE = genNumberType();\n\n// @ts-ignore\nexport class Chart extends Group implements IVisactorGraphic {\n type: GraphicType = 'chart' as any;\n declare attribute: IChartGraphicAttribute;\n protected _vchart: IVChart;\n // 是否试一次空render,目的是只生成场景树,不会真实渲染\n // protected _emptyRenderCall: boolean;\n protected declare _AABBBounds: AABBBounds;\n declare valid: boolean;\n get vchart() {\n return this._vchart;\n }\n get vProduct() {\n return this._vchart;\n }\n\n // 设置的 viewBox 是全局值\n private _globalViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n // 设置的 viewBox 相对于 vchart-graphic 的位置\n private _localViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n private _BoundsViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n\n drawTag = false;\n protected _boundsChangeTag: boolean = true;\n\n private _getVChartRootMarkBounds() {\n const stage = this._vchart.getStage();\n return stage.defaultLayer.getChildByName('root').AABBBounds.clone();\n }\n\n doUpdateAABBBounds(full?: boolean): IAABBBounds {\n if (!this._vchart) {\n return super.doUpdateAABBBounds();\n }\n const b = new Bounds();\n b.x1 = this.attribute.x;\n b.x2 = this.attribute.x + this.attribute.width;\n b.y1 = this.attribute.y;\n b.y2 = this.attribute.y + this.attribute.height;\n return b;\n }\n\n constructor(params: IChartGraphicAttribute) {\n super(params);\n this.numberType = CHART_NUMBER_TYPE;\n\n // 创建chart\n if (!params.vchart) {\n params.vchart = this._vchart = new params.ClassType(\n params.spec,\n mergeChartOption(\n {\n renderCanvas: params.renderCanvas,\n mode: params.mode,\n modeParams: params.modeParams,\n canvasControled: false,\n // viewBox: params.vi\n dpr: params.dpr,\n interactive: params.interactive,\n animation: false,\n autoFit: false,\n disableTriggerEvent: params.disableTriggerEvent,\n disableDirtyBounds: params.disableDirtyBounds,\n // @ts-ignore\n ticker: params.ticker,\n beforeRender: () => {\n if (!this.stage) {\n return;\n }\n const chartStage = this._vchart.getStage();\n if (!(chartStage as any)._editor_needRender) {\n chartStage.pauseRender();\n this.stage.dirtyBounds?.union(this.globalAABBBounds);\n this.stage.renderNextFrame();\n }\n },\n afterRender: () => {\n if (!this._vchart) {\n return;\n }\n if (!this.stage) {\n return;\n }\n // @ts-ignore\n this._vchart.getStage()._editor_needRender = false;\n this._vchart.getStage().stage.resumeRender();\n }\n },\n params.chartInitOptions ?? {}\n )\n );\n } else {\n this._vchart = params.vchart;\n }\n // 背景设置为false后,不会擦除画布内容,可以实现元素正常堆叠绘制\n const stage = this._vchart.getStage();\n stage.stage.pauseRender();\n this._vchart.renderSync();\n stage.stage.resumeRender();\n if (stage) {\n stage.background = false as any;\n // 关闭交互\n // stage.pauseTriggerEvent();\n }\n if (params.viewBox) {\n this.updateViewBox(params.viewBox);\n }\n }\n\n /**\n * 判定点是否在VChart中,可能点在Character里,但不在VChart里\n * @param canvasX\n * @param canvasY\n */\n pointInVChart(canvasX: number, canvasY: number): boolean {\n const vchart = this._vchart;\n if (!vchart) {\n return false;\n }\n const target = { x: 0, y: 0 };\n this.globalTransMatrix.transformPoint({ x: canvasX, y: canvasY }, target);\n // 判断点是否在viewBox中\n return isPointInBounds(target, vchart.getStage().viewBox);\n }\n\n /**\n * 判定点是否在设置 viewBox 内。设置 viewBox 会小于展示 bounds\n * @param canvasX\n * @param canvasY\n */\n pointInViewBox(canvasX: number, canvasY: number): boolean {\n const target = { x: 0, y: 0 };\n this.globalTransMatrix.transformPoint({ x: canvasX, y: canvasY }, target);\n return isPointInBounds(target, this._localViewBox);\n }\n\n updateSpec(spec: ISpec, viewBox?: IBoundsLike, forceMerge = false, morphConfig = false) {\n this._boundsChangeTag = true;\n viewBox && this.updateViewBox(viewBox);\n this._vchart.updateSpecSync(spec, forceMerge, { reuse: false, morph: morphConfig });\n this._updateViewBox();\n }\n\n updateViewBox(viewBox: IBoundsLike) {\n // 图表的设置大小\n this._globalViewBox = { ...viewBox };\n this._localViewBox = { x1: 0, y1: 0, x2: viewBox.x2 - viewBox.x1, y2: viewBox.y2 - viewBox.y1 };\n\n this._updateViewBox();\n }\n\n private _updateViewBox() {\n if (!this._vchart) {\n return;\n }\n this._boundsChangeTag = true;\n const rootBounds = this._getVChartRootMarkBounds();\n this._vchart.getStage().defaultLayer.translateTo(-rootBounds.x1, -rootBounds.y1);\n this._BoundsViewBox = rootBounds;\n\n const viewBox = { ...this._globalViewBox };\n this.setAttributes({\n x: viewBox.x1 + rootBounds.x1,\n y: viewBox.y1 + rootBounds.y1,\n width: rootBounds.x2 - rootBounds.x1,\n height: rootBounds.y2 - rootBounds.y1\n });\n // viewBox 在展示 bounds 下的位置\n this._localViewBox.x1 = -rootBounds.x1;\n this._localViewBox.y1 = -rootBounds.y1;\n this._localViewBox.x2 += -rootBounds.x1;\n this._localViewBox.y2 += -rootBounds.y1;\n //\n viewBox.x2 -= viewBox.x1;\n viewBox.y2 -= viewBox.y1;\n viewBox.x1 = 0;\n viewBox.y1 = 0;\n this._vchart.resize(viewBox.x2 - viewBox.x1, viewBox.y2 - viewBox.y1);\n this._vchart.updateViewBox(viewBox);\n const renderViewBox = { ...rootBounds };\n renderViewBox.x2 -= renderViewBox.x1;\n renderViewBox.y2 -= renderViewBox.y1;\n renderViewBox.x1 = 0;\n renderViewBox.y1 = 0;\n // @ts-ignore\n this._vchart._compiler._view.renderer.setViewBox(renderViewBox, true);\n }\n\n release() {\n this._vchart && this._vchart.release();\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/story/character/chart/graphic/vchart-graphic.ts"],"names":[],"mappings":"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","file":"vchart-graphic.js","sourcesContent":["import type { IVisactorGraphic } from '../../visactor/interface';\nimport { Bounds, type AABBBounds, type IAABBBounds, type IBoundsLike } from '@visactor/vutils';\nimport type { IInitOption, ISpec, IVChart } from '@visactor/vchart';\nimport type { GraphicType, IGroupGraphicAttribute, ITicker } from '@visactor/vrender';\nimport { genNumberType, Group } from '@visactor/vrender';\nimport { isPointInBounds } from '../../../../util/space';\nimport { mergeChartOption } from '../../../utils/chart';\n\nexport interface IChartGraphicAttribute extends IGroupGraphicAttribute {\n renderCanvas: HTMLCanvasElement;\n spec: any;\n ClassType: any;\n vchart: IVChart;\n mode: IInitOption['mode'];\n modeParams?: any;\n dpr: number;\n interactive: boolean;\n animation: boolean;\n disableTriggerEvent: boolean;\n disableDirtyBounds: boolean;\n viewBox: IBoundsLike;\n ticker?: ITicker;\n autoRender?: boolean;\n chartInitOptions?: any;\n}\n\nexport const CHART_NUMBER_TYPE = genNumberType();\n\n// @ts-ignore\nexport class Chart extends Group implements IVisactorGraphic {\n type: GraphicType = 'chart' as any;\n declare attribute: IChartGraphicAttribute;\n protected _vchart: IVChart;\n // 是否试一次空render,目的是只生成场景树,不会真实渲染\n // protected _emptyRenderCall: boolean;\n protected declare _AABBBounds: AABBBounds;\n declare valid: boolean;\n get vchart() {\n return this._vchart;\n }\n get vProduct() {\n return this._vchart;\n }\n\n // 设置的 viewBox 是全局值\n private _globalViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n // 设置的 viewBox 相对于 vchart-graphic 的位置\n private _localViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n private _BoundsViewBox: IBoundsLike = { x1: 0, y1: 0, x2: 100, y2: 100 };\n\n drawTag = false;\n protected _boundsChangeTag: boolean = true;\n\n private _getVChartRootMarkBounds() {\n const stage = this._vchart.getStage();\n return stage.defaultLayer.getChildByName('root').AABBBounds.clone();\n }\n\n doUpdateAABBBounds(full?: boolean): IAABBBounds {\n if (!this._vchart) {\n return super.doUpdateAABBBounds();\n }\n const b = new Bounds();\n b.x1 = this.attribute.x;\n b.x2 = this.attribute.x + this.attribute.width;\n b.y1 = this.attribute.y;\n b.y2 = this.attribute.y + this.attribute.height;\n return b;\n }\n\n constructor(params: IChartGraphicAttribute) {\n super(params);\n this.numberType = CHART_NUMBER_TYPE;\n\n // 创建chart\n if (!params.vchart) {\n params.vchart = this._vchart = new params.ClassType(\n params.spec,\n mergeChartOption(\n {\n renderCanvas: params.renderCanvas,\n mode: params.mode,\n modeParams: params.modeParams,\n canvasControled: false,\n // viewBox: params.vi\n dpr: params.dpr,\n interactive: params.interactive,\n animation: false,\n autoFit: false,\n disableTriggerEvent: params.disableTriggerEvent,\n disableDirtyBounds: params.disableDirtyBounds,\n // @ts-ignore\n ticker: params.ticker,\n beforeRender: () => {\n if (!this.stage) {\n return;\n }\n const chartStage = this._vchart.getStage();\n if (!(chartStage as any)._editor_needRender) {\n chartStage.pauseRender();\n this.stage.dirtyBounds?.union(this.globalAABBBounds);\n this.stage.renderNextFrame();\n }\n },\n afterRender: () => {\n if (!this._vchart) {\n return;\n }\n if (!this.stage) {\n return;\n }\n // @ts-ignore\n this._vchart.getStage()._editor_needRender = false;\n this._vchart.getStage().stage.resumeRender();\n }\n },\n params.chartInitOptions ?? {}\n )\n );\n } else {\n this._vchart = params.vchart;\n }\n // 背景设置为false后,不会擦除画布内容,可以实现元素正常堆叠绘制\n const stage = this._vchart.getStage();\n stage.stage.pauseRender();\n this._vchart.renderSync();\n stage.stage.resumeRender();\n if (stage) {\n stage.background = false as any;\n // 关闭交互\n // stage.pauseTriggerEvent();\n }\n if (params.viewBox) {\n this.updateViewBox(params.viewBox);\n }\n }\n\n /**\n * 判定点是否在VChart中,可能点在Character里,但不在VChart里\n * @param canvasX\n * @param canvasY\n */\n pointInVChart(canvasX: number, canvasY: number): boolean {\n const vchart = this._vchart;\n if (!vchart) {\n return false;\n }\n const target = { x: 0, y: 0 };\n this.globalTransMatrix.transformPoint({ x: canvasX, y: canvasY }, target);\n // 判断点是否在viewBox中\n return isPointInBounds(target, vchart.getStage().viewBox);\n }\n\n /**\n * 判定点是否在设置 viewBox 内。设置 viewBox 会小于展示 bounds\n * @param canvasX\n * @param canvasY\n */\n pointInViewBox(canvasX: number, canvasY: number): boolean {\n const target = { x: 0, y: 0 };\n this.globalTransMatrix.transformPoint({ x: canvasX, y: canvasY }, target);\n return isPointInBounds(target, this._localViewBox);\n }\n\n updateSpec(spec: ISpec, viewBox?: IBoundsLike, forceMerge = false, morphConfig = false) {\n this._boundsChangeTag = true;\n viewBox && this.updateViewBox(viewBox);\n this._vchart.updateSpecSync(spec, forceMerge, { reuse: false, morph: morphConfig });\n this._updateViewBox();\n }\n\n updateViewBox(viewBox: IBoundsLike) {\n // 图表的设置大小\n this._globalViewBox = { ...viewBox };\n this._localViewBox = { x1: 0, y1: 0, x2: viewBox.x2 - viewBox.x1, y2: viewBox.y2 - viewBox.y1 };\n\n this._updateViewBox();\n }\n\n private _updateViewBox() {\n if (!this._vchart) {\n return;\n }\n this._boundsChangeTag = true;\n this._vchart.resize(\n this._globalViewBox.x2 - this._globalViewBox.x1,\n this._globalViewBox.y2 - this._globalViewBox.y1\n );\n const rootBounds = this._getVChartRootMarkBounds();\n this._vchart.getStage().defaultLayer.translateTo(-rootBounds.x1, -rootBounds.y1);\n this._BoundsViewBox = rootBounds;\n\n const viewBox = { ...this._globalViewBox };\n this.setAttributes({\n x: viewBox.x1 + rootBounds.x1,\n y: viewBox.y1 + rootBounds.y1,\n width: rootBounds.x2 - rootBounds.x1,\n height: rootBounds.y2 - rootBounds.y1\n });\n // viewBox 在展示 bounds 下的位置\n this._localViewBox.x1 = -rootBounds.x1;\n this._localViewBox.y1 = -rootBounds.y1;\n this._localViewBox.x2 += -rootBounds.x1;\n this._localViewBox.y2 += -rootBounds.y1;\n //\n viewBox.x2 -= viewBox.x1;\n viewBox.y2 -= viewBox.y1;\n viewBox.x1 = 0;\n viewBox.y1 = 0;\n // this._vchart.resize(viewBox.x2 - viewBox.x1, viewBox.y2 - viewBox.y1);\n this._vchart.updateViewBox(viewBox);\n const renderViewBox = { ...rootBounds };\n renderViewBox.x2 -= renderViewBox.x1;\n renderViewBox.y2 -= renderViewBox.y1;\n renderViewBox.x1 = 0;\n renderViewBox.y1 = 0;\n // @ts-ignore\n this._vchart._compiler._view.renderer.setViewBox(renderViewBox, true);\n }\n\n release() {\n this._vchart && this._vchart.release();\n }\n}\n"]}
@@ -20,6 +20,7 @@ export interface IStoryCanvas {
20
20
  export interface IStory {
21
21
  readonly id: string;
22
22
  readonly player: IPlayer;
23
+ readonly characterTree: ICharacterTree;
23
24
  canvas: IStoryCanvas;
24
25
  getCharacters: () => {
25
26
  [key: string]: ICharacter;
@@ -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 canvasX?: number;\n canvasY?: number;\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 readonly characterTree: ICharacterTree;\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"]}
@@ -11,6 +11,7 @@ export declare class Story implements IStory {
11
11
  protected _spec: IStorySpec;
12
12
  get canvas(): IStoryCanvas;
13
13
  get player(): IPlayer;
14
+ get characterTree(): ICharacterTree;
14
15
  constructor(spec: IStorySpec, option: IStoryInitOption);
15
16
  load(spec: IStorySpec): void;
16
17
  getCharacters(): {
@@ -41,6 +41,9 @@ class Story {
41
41
  get player() {
42
42
  return this._player;
43
43
  }
44
+ get characterTree() {
45
+ return this._characterTree;
46
+ }
44
47
  constructor(spec, option) {
45
48
  this.id = "test-mvp_" + Story._id_++, this._canvas = new canvas_1.StoryCanvas(this, (0,
46
49
  vutils_1.isString)(option.dom) ? document.getElementById(option.dom) : option.dom),
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/story/story.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,6CAA4C;AAG5C,4CAA8C;AAG9C,+CAAmE;AACnE,oEAAgE;AAEhE,6CAA0C;AAG1C,uBAAa,CAAC,WAAW,CAAC,yBAAe,CAAC,CAAC;AAE3C,MAAa,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,oBAAW,CAC5B,IAAI,EACJ,IAAA,iBAAQ,EAAC,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,eAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,GAAG,IAAI,8BAAa,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;;AAjFH,sBAkFC;AAjFQ,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
+ {"version":3,"sources":["../src/story/story.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,6CAA4C;AAG5C,4CAA8C;AAG9C,+CAAmE;AACnE,oEAAgE;AAEhE,6CAA0C;AAG1C,uBAAa,CAAC,WAAW,CAAC,yBAAe,CAAC,CAAC;AAE3C,MAAa,KAAK;IAahB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,YAAY,IAAgB,EAAE,MAAwB;QACpD,IAAI,CAAC,EAAE,GAAG,WAAW,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAW,CAC5B,IAAI,EACJ,IAAA,iBAAQ,EAAC,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,eAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,GAAG,IAAI,8BAAa,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;;AArFH,sBAsFC;AArFQ,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 get characterTree() {\n return this._characterTree;\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,5 +1,15 @@
1
1
  "use strict";
2
2
 
3
+ var __rest = this && this.__rest || function(s, e) {
4
+ var t = {};
5
+ for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0 && (t[p] = s[p]);
6
+ if (null != s && "function" == typeof Object.getOwnPropertySymbols) {
7
+ var i = 0;
8
+ for (p = Object.getOwnPropertySymbols(s); i < p.length; i++) e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]) && (t[p[i]] = s[p[i]]);
9
+ }
10
+ return t;
11
+ };
12
+
3
13
  Object.defineProperty(exports, "__esModule", {
4
14
  value: !0
5
15
  }), exports.mergeChartOption = exports.findChartSpec = exports.mergeSpec = exports.isModelInfoMatchSpec = void 0;
@@ -78,8 +88,9 @@ function mergeChartOption(target, ...sources) {
78
88
  }));
79
89
  }
80
90
  return target.performanceHook && pushHookToTemp(target.performanceHook), sources.forEach((source => {
81
- source && source.performanceHook && (pushHookToTemp(source.performanceHook), delete source.performanceHook,
82
- (0, vutils_1.merge)(target, source));
91
+ if (!source) return;
92
+ const {performanceHook: performanceHook} = source, rest = __rest(source, [ "performanceHook" ]);
93
+ performanceHook && pushHookToTemp(performanceHook), (0, vutils_1.merge)(target, rest);
83
94
  })), target.performanceHook = {}, Object.keys(performanceHook).forEach((k => {
84
95
  target.performanceHook[k] = (...args) => {
85
96
  performanceHook[k].forEach((f => f(...args)));
@@ -1 +1 @@
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] = (...args) => {\n // @ts-ignore\n performanceHook[k].forEach(f => f(...args));\n };\n });\n return target;\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 const { performanceHook, ...rest } = source;\n if (performanceHook) {\n pushHookToTemp(performanceHook);\n }\n merge(target, rest);\n });\n target.performanceHook = {};\n Object.keys(performanceHook).forEach(k => {\n // @ts-ignore\n target.performanceHook[k] = (...args) => {\n // @ts-ignore\n performanceHook[k].forEach(f => f(...args));\n };\n });\n return target;\n}\n"]}
package/dist/index.js CHANGED
@@ -28019,11 +28019,11 @@
28019
28019
  if (!source) {
28020
28020
  return;
28021
28021
  }
28022
- if (source.performanceHook) {
28023
- pushHookToTemp(source.performanceHook);
28024
- delete source.performanceHook;
28025
- merge(target, source);
28022
+ const { performanceHook } = source, rest = __rest$4(source, ["performanceHook"]);
28023
+ if (performanceHook) {
28024
+ pushHookToTemp(performanceHook);
28026
28025
  }
28026
+ merge(target, rest);
28027
28027
  });
28028
28028
  target.performanceHook = {};
28029
28029
  Object.keys(performanceHook).forEach(k => {
@@ -28148,6 +28148,7 @@
28148
28148
  return;
28149
28149
  }
28150
28150
  this._boundsChangeTag = true;
28151
+ this._vchart.resize(this._globalViewBox.x2 - this._globalViewBox.x1, this._globalViewBox.y2 - this._globalViewBox.y1);
28151
28152
  const rootBounds = this._getVChartRootMarkBounds();
28152
28153
  this._vchart.getStage().defaultLayer.translateTo(-rootBounds.x1, -rootBounds.y1);
28153
28154
  this._BoundsViewBox = rootBounds;
@@ -28166,7 +28167,6 @@
28166
28167
  viewBox.y2 -= viewBox.y1;
28167
28168
  viewBox.x1 = 0;
28168
28169
  viewBox.y1 = 0;
28169
- this._vchart.resize(viewBox.x2 - viewBox.x1, viewBox.y2 - viewBox.y1);
28170
28170
  this._vchart.updateViewBox(viewBox);
28171
28171
  const renderViewBox = Object.assign({}, rootBounds);
28172
28172
  renderViewBox.x2 -= renderViewBox.x1;
@@ -50503,6 +50503,9 @@
50503
50503
  get player() {
50504
50504
  return this._player;
50505
50505
  }
50506
+ get characterTree() {
50507
+ return this._characterTree;
50508
+ }
50506
50509
  constructor(spec, option) {
50507
50510
  this.id = 'test-mvp_' + Story._id_++;
50508
50511
  this._canvas = new StoryCanvas(this, isString$1(option.dom) ? document.getElementById(option.dom) : option.dom);