@visactor/vrender-components 1.1.0-alpha.0 → 1.1.0-alpha.10
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.
- package/cjs/animation/axis-animate.js +7 -3
- package/cjs/animation/axis-animate.js.map +1 -1
- package/cjs/animation/static-truth.d.ts +2 -0
- package/cjs/animation/static-truth.js +25 -0
- package/cjs/animation/static-truth.js.map +1 -0
- package/cjs/axis/animate/group-transition.d.ts +2 -2
- package/cjs/axis/animate/group-transition.js +7 -3
- package/cjs/axis/animate/group-transition.js.map +1 -1
- package/cjs/axis/base.js +37 -36
- package/cjs/axis/base.js.map +1 -1
- package/cjs/axis/circle.js +3 -3
- package/cjs/axis/circle.js.map +1 -1
- package/cjs/axis/grid/base.js +5 -5
- package/cjs/axis/grid/base.js.map +1 -1
- package/cjs/axis/index.js +1 -2
- package/cjs/axis/line.js +6 -6
- package/cjs/axis/line.js.map +1 -1
- package/cjs/brush/brush.d.ts +1 -0
- package/cjs/brush/brush.js +24 -10
- package/cjs/brush/brush.js.map +1 -1
- package/cjs/brush/config.js +2 -1
- package/cjs/brush/type.d.ts +3 -1
- package/cjs/brush/type.js.map +1 -1
- package/cjs/core/base.js +2 -2
- package/cjs/core/base.js.map +1 -1
- package/cjs/crosshair/polygon.js +1 -2
- package/cjs/crosshair/rect.js +2 -1
- package/cjs/data-zoom/config.d.ts +10 -0
- package/cjs/data-zoom/config.js +10 -1
- package/cjs/data-zoom/config.js.map +1 -1
- package/cjs/data-zoom/interaction.js +1 -1
- package/cjs/data-zoom/interaction.js.map +1 -1
- package/cjs/data-zoom/renderer.js +44 -24
- package/cjs/data-zoom/renderer.js.map +1 -1
- package/cjs/empty-tip/empty-tip.js.map +1 -1
- package/cjs/empty-tip/type.js +1 -2
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/indicator/config.js +2 -1
- package/cjs/label/arc.js +1 -1
- package/cjs/label/base.js +30 -8
- package/cjs/label/base.js.map +1 -1
- package/cjs/label/type.d.ts +1 -1
- package/cjs/label/type.js.map +1 -1
- package/cjs/legend/base.js +2 -2
- package/cjs/legend/base.js.map +1 -1
- package/cjs/legend/discrete/discrete.js +22 -16
- package/cjs/legend/discrete/discrete.js.map +1 -1
- package/cjs/legend/size/size.js +3 -3
- package/cjs/legend/size/size.js.map +1 -1
- package/cjs/marker/animate/call-in.js +6 -2
- package/cjs/marker/animate/call-in.js.map +1 -1
- package/cjs/marker/animate/clip-in.js +6 -2
- package/cjs/marker/animate/clip-in.js.map +1 -1
- package/cjs/marker/animate/common.js +14 -5
- package/cjs/marker/animate/common.js.map +1 -1
- package/cjs/marker/arc-area.js +2 -2
- package/cjs/marker/arc-area.js.map +1 -1
- package/cjs/marker/area.js +2 -2
- package/cjs/marker/area.js.map +1 -1
- package/cjs/marker/base.js +4 -4
- package/cjs/marker/base.js.map +1 -1
- package/cjs/marker/point.d.ts +1 -1
- package/cjs/marker/point.js +6 -6
- package/cjs/marker/point.js.map +1 -1
- package/cjs/pager/pager.js +5 -5
- package/cjs/pager/pager.js.map +1 -1
- package/cjs/player/base-player.d.ts +1 -0
- package/cjs/player/base-player.js +3 -0
- package/cjs/player/base-player.js.map +1 -1
- package/cjs/poptip/index.d.ts +1 -1
- package/cjs/poptip/index.js +2 -11
- package/cjs/poptip/index.js.map +1 -1
- package/cjs/poptip/module.d.ts +2 -0
- package/cjs/poptip/module.js +16 -6
- package/cjs/poptip/module.js.map +1 -1
- package/cjs/poptip/poptip-plugin.js.map +1 -1
- package/cjs/poptip/register.js +1 -1
- package/cjs/poptip/register.js.map +1 -1
- package/cjs/scrollbar/module.d.ts +2 -0
- package/cjs/scrollbar/module.js +12 -4
- package/cjs/scrollbar/module.js.map +1 -1
- package/cjs/scrollbar/scrollbar.d.ts +1 -0
- package/cjs/scrollbar/scrollbar.js +12 -8
- package/cjs/scrollbar/scrollbar.js.map +1 -1
- package/cjs/scrollbar/type.d.ts +1 -0
- package/cjs/scrollbar/type.js.map +1 -1
- package/cjs/segment/arc-segment.js +2 -2
- package/cjs/segment/arc-segment.js.map +1 -1
- package/cjs/segment/segment.js +5 -5
- package/cjs/segment/segment.js.map +1 -1
- package/cjs/slider/slider.d.ts +2 -0
- package/cjs/slider/slider.js +32 -19
- package/cjs/slider/slider.js.map +1 -1
- package/cjs/slider/type.d.ts +14 -3
- package/cjs/slider/type.js.map +1 -1
- package/cjs/table-series-number/event-manager.js.map +1 -1
- package/cjs/timeline/timeline.js +35 -12
- package/cjs/timeline/timeline.js.map +1 -1
- package/cjs/util/graphic-creator.d.ts +14 -0
- package/cjs/util/graphic-creator.js +22 -0
- package/cjs/util/graphic-creator.js.map +1 -0
- package/cjs/util/text.js +3 -3
- package/cjs/util/text.js.map +1 -1
- package/dist/index.es.js +10940 -10326
- package/es/animation/axis-animate.js +8 -3
- package/es/animation/axis-animate.js.map +1 -1
- package/es/animation/static-truth.d.ts +2 -0
- package/es/animation/static-truth.js +18 -0
- package/es/animation/static-truth.js.map +1 -0
- package/es/axis/animate/group-transition.d.ts +2 -2
- package/es/axis/animate/group-transition.js +7 -2
- package/es/axis/animate/group-transition.js.map +1 -1
- package/es/axis/base.js +33 -28
- package/es/axis/base.js.map +1 -1
- package/es/axis/circle.js +1 -1
- package/es/axis/circle.js.map +1 -1
- package/es/axis/grid/base.js +1 -1
- package/es/axis/grid/base.js.map +1 -1
- package/es/axis/index.js +1 -2
- package/es/axis/line.js +1 -1
- package/es/axis/line.js.map +1 -1
- package/es/brush/brush.d.ts +1 -0
- package/es/brush/brush.js +23 -9
- package/es/brush/brush.js.map +1 -1
- package/es/brush/config.js +2 -1
- package/es/brush/type.d.ts +3 -1
- package/es/brush/type.js.map +1 -1
- package/es/core/base.js +2 -2
- package/es/core/base.js.map +1 -1
- package/es/crosshair/polygon.js +1 -2
- package/es/crosshair/rect.js +2 -1
- package/es/data-zoom/config.d.ts +10 -0
- package/es/data-zoom/config.js +11 -0
- package/es/data-zoom/config.js.map +1 -1
- package/es/data-zoom/interaction.js +1 -1
- package/es/data-zoom/interaction.js.map +1 -1
- package/es/data-zoom/renderer.js +45 -25
- package/es/data-zoom/renderer.js.map +1 -1
- package/es/empty-tip/empty-tip.js.map +1 -1
- package/es/empty-tip/type.js +1 -2
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/indicator/config.js +2 -1
- package/es/label/arc.js +1 -1
- package/es/label/base.js +33 -7
- package/es/label/base.js.map +1 -1
- package/es/label/type.d.ts +1 -1
- package/es/label/type.js.map +1 -1
- package/es/legend/base.js +1 -1
- package/es/legend/base.js.map +1 -1
- package/es/legend/discrete/discrete.js +15 -7
- package/es/legend/discrete/discrete.js.map +1 -1
- package/es/legend/size/size.js +1 -1
- package/es/legend/size/size.js.map +1 -1
- package/es/marker/animate/call-in.js +7 -2
- package/es/marker/animate/call-in.js.map +1 -1
- package/es/marker/animate/clip-in.js +7 -2
- package/es/marker/animate/clip-in.js.map +1 -1
- package/es/marker/animate/common.js +10 -2
- package/es/marker/animate/common.js.map +1 -1
- package/es/marker/arc-area.js +1 -1
- package/es/marker/arc-area.js.map +1 -1
- package/es/marker/area.js +1 -1
- package/es/marker/area.js.map +1 -1
- package/es/marker/base.js +1 -1
- package/es/marker/base.js.map +1 -1
- package/es/marker/point.d.ts +1 -1
- package/es/marker/point.js +1 -1
- package/es/marker/point.js.map +1 -1
- package/es/pager/pager.js +1 -1
- package/es/pager/pager.js.map +1 -1
- package/es/player/base-player.d.ts +1 -0
- package/es/player/base-player.js +3 -0
- package/es/player/base-player.js.map +1 -1
- package/es/poptip/index.d.ts +1 -1
- package/es/poptip/index.js +1 -1
- package/es/poptip/index.js.map +1 -1
- package/es/poptip/module.d.ts +2 -0
- package/es/poptip/module.js +14 -4
- package/es/poptip/module.js.map +1 -1
- package/es/poptip/poptip-plugin.js.map +1 -1
- package/es/poptip/register.js +0 -2
- package/es/poptip/register.js.map +1 -1
- package/es/scrollbar/module.d.ts +2 -0
- package/es/scrollbar/module.js +11 -3
- package/es/scrollbar/module.js.map +1 -1
- package/es/scrollbar/scrollbar.d.ts +1 -0
- package/es/scrollbar/scrollbar.js +9 -8
- package/es/scrollbar/scrollbar.js.map +1 -1
- package/es/scrollbar/type.d.ts +1 -0
- package/es/scrollbar/type.js.map +1 -1
- package/es/segment/arc-segment.js +1 -1
- package/es/segment/arc-segment.js.map +1 -1
- package/es/segment/segment.js +1 -1
- package/es/segment/segment.js.map +1 -1
- package/es/slider/slider.d.ts +2 -0
- package/es/slider/slider.js +24 -9
- package/es/slider/slider.js.map +1 -1
- package/es/slider/type.d.ts +14 -3
- package/es/slider/type.js.map +1 -1
- package/es/table-series-number/event-manager.js.map +1 -1
- package/es/timeline/timeline.js +36 -11
- package/es/timeline/timeline.js.map +1 -1
- package/es/util/graphic-creator.d.ts +14 -0
- package/es/util/graphic-creator.js +18 -0
- package/es/util/graphic-creator.js.map +1 -0
- package/es/util/text.js +3 -1
- package/es/util/text.js.map +1 -1
- package/package.json +11 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/animate/call-in.ts"],"names":[],"mappings":";;;AAGA,qCAAyC;
|
|
1
|
+
{"version":3,"sources":["../src/marker/animate/call-in.ts"],"names":[],"mappings":";;;AAGA,qCAAyC;AACzC,+DAA2E;AAE3E,SAAgB,WAAW,CACzB,QAAiB,EACjB,cAAqB,EACrB,IAAwC,EACxC,QAAgB,EAChB,KAAa,EACb,MAAkB;;IAElB,MAAM,mBAAmB,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,GAAG,QAAQ,CAAC;IACrC,MAAM,kBAAkB,GAAG,IAAI,GAAG,QAAQ,CAAC;IAC3C,MAAM,iBAAiB,GAAG,GAAG,GAAG,QAAQ,CAAC;IACzC,MAAM,aAAa,GAAG,GAAG,GAAG,QAAQ,CAAC;IAGrC,IAAA,sBAAa,EAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAGxE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,0CAA2B,EAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACtG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAClC,MAAM,YAAY,GAAG,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1D,CAAC,CAAC,OAAO,EAAE;aACR,IAAI,CAAC,KAAK,GAAG,mBAAmB,GAAG,KAAK,GAAG,YAAY,CAAC;aACxD,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAA,sBAAa,EAAC,cAAc,EAAE,KAAK,GAAG,mBAAmB,GAAG,YAAY,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAGtG,IAAA,sBAAa,EACX,QAAQ,CAAC,SAAS,EAClB,KAAK,GAAG,mBAAmB,GAAG,YAAY,GAAG,kBAAkB,EAC/D,iBAAiB,EACjB,MAAM,CACP,CAAC;IAEF,IAAI,MAAA,IAAI,CAAC,YAAY,oDAAI,EAAE;QAEzB,IAAA,sBAAa,EACX,IAAI,CAAC,YAAY,EAAE,EACnB,KAAK,GAAG,mBAAmB,GAAG,YAAY,GAAG,kBAAkB,GAAG,iBAAiB,EACnF,aAAa,EACb,MAAM,CACP,CAAC;QAGF,IAAA,sBAAa,EACX,IAAI,CAAC,SAAS,EAAE,EAChB,KAAK,GAAG,mBAAmB,GAAG,YAAY,GAAG,iBAAiB,EAC9D,aAAa,EACb,MAAM,CACP,CAAC;KACH;SAAM;QACL,IAAA,sBAAa,EAAC,IAAI,EAAE,KAAK,GAAG,mBAAmB,GAAG,YAAY,GAAG,iBAAiB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;KAC5G;AACH,CAAC;AAvDD,kCAuDC","file":"call-in.js","sourcesContent":["import type { EasingType, IImage, ILine, IRichText, ISymbol } from '@visactor/vrender-core';\nimport type { Segment } from '../../segment';\nimport type { Tag } from '../../tag';\nimport { graphicFadeIn } from './common';\nimport { commitUpdateAnimationTarget } from '../../animation/static-truth';\n\nexport function pointCallIn(\n itemLine: Segment,\n decorativeLine: ILine,\n item: Tag | IRichText | ISymbol | IImage,\n duration: number,\n delay: number,\n easing: EasingType\n) {\n const startSymbolDuration = 0.1 * duration;\n const lineDuration = 0.65 * duration;\n const decorativeDuration = 0.05 * duration;\n const endSymbolDuration = 0.1 * duration;\n const labelDuration = 0.1 * duration;\n\n // start symbol\n graphicFadeIn(itemLine.startSymbol, delay, startSymbolDuration, easing);\n\n // line\n itemLine.lines.forEach(line => commitUpdateAnimationTarget(line, { clipRange: 1 }, { clipRange: 0 }));\n itemLine.lines.forEach((l, index) => {\n const stepDuration = lineDuration / itemLine.lines.length;\n l.animate()\n .wait(delay + startSymbolDuration + index * stepDuration)\n .to({ clipRange: 1 }, stepDuration, easing);\n });\n\n graphicFadeIn(decorativeLine, delay + startSymbolDuration + lineDuration, decorativeDuration, easing);\n\n // end symbol\n graphicFadeIn(\n itemLine.endSymbol,\n delay + startSymbolDuration + lineDuration + decorativeDuration,\n endSymbolDuration,\n easing\n );\n\n if (item.getTextShape?.()) {\n // text\n graphicFadeIn(\n item.getTextShape(),\n delay + startSymbolDuration + lineDuration + decorativeDuration + endSymbolDuration,\n labelDuration,\n easing\n );\n\n // text background\n graphicFadeIn(\n item.getBgRect(),\n delay + startSymbolDuration + lineDuration + endSymbolDuration,\n labelDuration,\n easing\n );\n } else {\n graphicFadeIn(item, delay + startSymbolDuration + lineDuration + endSymbolDuration, labelDuration, easing);\n }\n}\n"]}
|
|
@@ -4,12 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.commonLineClipIn = void 0;
|
|
6
6
|
|
|
7
|
-
const common_1 = require("./common"), vutils_1 = require("@visactor/vutils");
|
|
7
|
+
const common_1 = require("./common"), vutils_1 = require("@visactor/vutils"), static_truth_1 = require("../../animation/static-truth");
|
|
8
8
|
|
|
9
9
|
function commonLineClipIn(line, label, duration, delay, easing) {
|
|
10
10
|
const startSymbolDuration = .1 * duration, lineDuration = .7 * duration, endSymbolDuration = .1 * duration, labelDuration = .1 * duration;
|
|
11
11
|
(0, common_1.graphicFadeIn)(line.startSymbol, delay, startSymbolDuration, easing),
|
|
12
|
-
line.lines.forEach((line =>
|
|
12
|
+
line.lines.forEach((line => (0, static_truth_1.commitUpdateAnimationTarget)(line, {
|
|
13
|
+
clipRange: 1
|
|
14
|
+
}, {
|
|
15
|
+
clipRange: 0
|
|
16
|
+
}))), line.lines.forEach(((l, index) => {
|
|
13
17
|
const stepDuration = lineDuration / line.lines.length;
|
|
14
18
|
l.animate().wait(delay + startSymbolDuration + index * stepDuration).to({
|
|
15
19
|
clipRange: 1
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/animate/clip-in.ts"],"names":[],"mappings":";;;AAGA,qCAAyC;AACzC,6CAAyC;
|
|
1
|
+
{"version":3,"sources":["../src/marker/animate/clip-in.ts"],"names":[],"mappings":";;;AAGA,qCAAyC;AACzC,6CAAyC;AACzC,+DAA2E;AAE3E,SAAgB,gBAAgB,CAC9B,IAA0B,EAC1B,KAAkB,EAClB,QAAgB,EAChB,KAAa,EACb,MAAkB;IAElB,MAAM,mBAAmB,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC3C,MAAM,YAAY,GAAG,GAAG,GAAG,QAAQ,CAAC;IACpC,MAAM,iBAAiB,GAAG,GAAG,GAAG,QAAQ,CAAC;IACzC,MAAM,aAAa,GAAG,GAAG,GAAG,QAAQ,CAAC;IAGrC,IAAA,sBAAa,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAGpE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,0CAA2B,EAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAC9B,MAAM,YAAY,GAAG,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QACtD,CAAC,CAAC,OAAO,EAAE;aACR,IAAI,CAAC,KAAK,GAAG,mBAAmB,GAAG,KAAK,GAAG,YAAY,CAAC;aACxD,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAGH,IAAA,sBAAa,EAAC,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,mBAAmB,GAAG,YAAY,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAGrG,IAAA,cAAK,EAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC/B,MAAM,SAAS,GAAG,KAAK,GAAG,mBAAmB,GAAG,YAAY,GAAG,iBAAiB,CAAC;QAEjF,IAAA,sBAAa,EAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAG1E,IAAA,sBAAa,EAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC;AApCD,4CAoCC","file":"clip-in.js","sourcesContent":["import type { EasingType } from '@visactor/vrender-core';\nimport type { ArcSegment, Segment } from '../../segment';\nimport type { Tag } from '../../tag';\nimport { graphicFadeIn } from './common';\nimport { array } from '@visactor/vutils';\nimport { commitUpdateAnimationTarget } from '../../animation/static-truth';\n\nexport function commonLineClipIn(\n line: Segment | ArcSegment,\n label: Tag | Tag[],\n duration: number,\n delay: number,\n easing: EasingType\n) {\n const startSymbolDuration = 0.1 * duration;\n const lineDuration = 0.7 * duration;\n const endSymbolDuration = 0.1 * duration;\n const labelDuration = 0.1 * duration;\n\n // start symbol\n graphicFadeIn(line.startSymbol, delay, startSymbolDuration, easing);\n\n // line\n line.lines.forEach(line => commitUpdateAnimationTarget(line, { clipRange: 1 }, { clipRange: 0 }));\n line.lines.forEach((l, index) => {\n const stepDuration = lineDuration / line.lines.length;\n l.animate()\n .wait(delay + startSymbolDuration + index * stepDuration)\n .to({ clipRange: 1 }, stepDuration, easing);\n });\n\n // end symbol\n graphicFadeIn(line.endSymbol, delay + startSymbolDuration + lineDuration, endSymbolDuration, easing);\n\n // label\n array(label).forEach(labelNode => {\n const delayTime = delay + startSymbolDuration + lineDuration + endSymbolDuration;\n // text\n graphicFadeIn(labelNode.getTextShape(), delayTime, labelDuration, easing);\n\n // text background\n graphicFadeIn(labelNode.getBgRect(), delayTime, labelDuration, easing);\n });\n}\n"]}
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.tagFadeOut = exports.segmentFadeOut = exports.graphicFadeOut = exports.tagFadeIn = exports.segmentFadeIn = exports.graphicFadeIn = void 0;
|
|
6
|
+
|
|
7
|
+
const static_truth_1 = require("../../animation/static-truth");
|
|
8
|
+
|
|
3
9
|
function graphicFadeIn(graphic, delay, duration, easing) {
|
|
4
10
|
var _a, _b, _c, _d, _e;
|
|
5
11
|
if (!graphic) return;
|
|
6
12
|
null === (_a = null == graphic ? void 0 : graphic.animates) || void 0 === _a || _a.forEach((a => a.stop("end")));
|
|
7
13
|
const fillOpacityConfig = null !== (_c = null === (_b = graphic.attribute) || void 0 === _b ? void 0 : _b.fillOpacity) && void 0 !== _c ? _c : 1, strokeOpacityConfig = null !== (_e = null === (_d = graphic.attribute) || void 0 === _d ? void 0 : _d.strokeOpacity) && void 0 !== _e ? _e : 1;
|
|
8
|
-
|
|
14
|
+
(0, static_truth_1.commitUpdateAnimationTarget)(graphic, {
|
|
15
|
+
fillOpacity: fillOpacityConfig,
|
|
16
|
+
strokeOpacity: strokeOpacityConfig
|
|
17
|
+
}, {
|
|
9
18
|
fillOpacity: 0,
|
|
10
19
|
strokeOpacity: 0
|
|
11
20
|
}), graphic.animate().wait(delay).to({
|
|
@@ -25,7 +34,10 @@ function tagFadeIn(tag, delay, duration, easing) {
|
|
|
25
34
|
|
|
26
35
|
function graphicFadeOut(graphic, delay, duration, easing) {
|
|
27
36
|
var _a, _b, _c, _d;
|
|
28
|
-
graphic && (
|
|
37
|
+
graphic && ((0, static_truth_1.commitUpdateAnimationTarget)(graphic, {
|
|
38
|
+
fillOpacity: 0,
|
|
39
|
+
strokeOpacity: 0
|
|
40
|
+
}, {
|
|
29
41
|
fillOpacity: null !== (_b = null === (_a = graphic.attribute) || void 0 === _a ? void 0 : _a.fillOpacity) && void 0 !== _b ? _b : 1,
|
|
30
42
|
strokeOpacity: null !== (_d = null === (_c = graphic.attribute) || void 0 === _c ? void 0 : _c.strokeOpacity) && void 0 !== _d ? _d : 1
|
|
31
43
|
}), graphic.animate().wait(delay).to({
|
|
@@ -43,9 +55,6 @@ function tagFadeOut(tag, delay, duration, easing) {
|
|
|
43
55
|
tag && (graphicFadeOut(tag.getTextShape(), delay, duration, easing), graphicFadeOut(tag.getBgRect(), delay, duration, easing));
|
|
44
56
|
}
|
|
45
57
|
|
|
46
|
-
Object.defineProperty(exports, "__esModule", {
|
|
47
|
-
value: !0
|
|
48
|
-
}), exports.tagFadeOut = exports.segmentFadeOut = exports.graphicFadeOut = exports.tagFadeIn = exports.segmentFadeIn = exports.graphicFadeIn = void 0,
|
|
49
58
|
exports.graphicFadeIn = graphicFadeIn, exports.segmentFadeIn = segmentFadeIn, exports.tagFadeIn = tagFadeIn,
|
|
50
59
|
exports.graphicFadeOut = graphicFadeOut, exports.segmentFadeOut = segmentFadeOut,
|
|
51
60
|
exports.tagFadeOut = tagFadeOut;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/animate/common.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../src/marker/animate/common.ts"],"names":[],"mappings":"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","file":"common.js","sourcesContent":["import type { EasingType, IGraphic } from '@visactor/vrender-core';\nimport type { ArcSegment, Segment } from '../../segment';\nimport type { Tag } from '../../tag';\nimport { commitUpdateAnimationTarget } from '../../animation/static-truth';\n\n/** fade-in */\nexport function graphicFadeIn(graphic: IGraphic, delay: number, duration: number, easing: EasingType) {\n if (!graphic) {\n return;\n }\n graphic?.animates?.forEach(a => a.stop('end'));\n const fillOpacityConfig = graphic.attribute?.fillOpacity ?? 1;\n const strokeOpacityConfig = graphic.attribute?.strokeOpacity ?? 1;\n\n commitUpdateAnimationTarget(\n graphic,\n {\n fillOpacity: fillOpacityConfig,\n strokeOpacity: strokeOpacityConfig\n },\n {\n fillOpacity: 0,\n strokeOpacity: 0\n }\n );\n\n graphic.animate().wait(delay).to(\n {\n fillOpacity: fillOpacityConfig,\n strokeOpacity: strokeOpacityConfig\n },\n duration,\n easing\n );\n}\n\nexport function segmentFadeIn(segment: Segment, delay: number, duration: number, easing: EasingType) {\n if (!segment) {\n return;\n }\n\n // start symbol\n graphicFadeIn(segment.startSymbol, delay, duration, easing);\n\n // line\n segment.lines.forEach(line => graphicFadeIn(line, delay, duration, easing));\n graphicFadeIn((segment as ArcSegment).line, delay, duration, easing);\n\n // end symbol\n graphicFadeIn(segment.endSymbol, delay, duration, easing);\n}\n\nexport function tagFadeIn(tag: Tag, delay: number, duration: number, easing: EasingType) {\n if (!tag) {\n return;\n }\n\n // text\n graphicFadeIn(tag.getTextShape(), delay, duration, easing);\n\n // text background\n graphicFadeIn(tag.getBgRect(), delay, duration, easing);\n}\n\n/** fade-out */\nexport function graphicFadeOut(graphic: IGraphic, delay: number, duration: number, easing: EasingType) {\n if (!graphic) {\n return;\n }\n\n commitUpdateAnimationTarget(\n graphic,\n {\n fillOpacity: 0,\n strokeOpacity: 0\n },\n {\n fillOpacity: graphic.attribute?.fillOpacity ?? 1,\n strokeOpacity: graphic.attribute?.strokeOpacity ?? 1\n }\n );\n\n graphic.animate().wait(delay).to({ fillOpacity: 0, strokeOpacity: 0 }, duration, easing);\n}\n\nexport function segmentFadeOut(segment: Segment | ArcSegment, delay: number, duration: number, easing: EasingType) {\n if (!segment) {\n return;\n }\n\n // start symbol\n graphicFadeOut(segment.startSymbol, delay, duration, easing);\n\n // line\n segment.lines.forEach(line => graphicFadeOut(line, delay, duration, easing));\n graphicFadeOut((segment as ArcSegment).line, delay, duration, easing);\n\n // end symbol\n graphicFadeOut(segment.endSymbol, delay, duration, easing);\n}\n\nexport function tagFadeOut(tag: Tag, delay: number, duration: number, easing: EasingType) {\n if (!tag) {\n return;\n }\n\n // text\n graphicFadeOut(tag.getTextShape(), delay, duration, easing);\n\n // text background\n graphicFadeOut(tag.getBgRect(), delay, duration, easing);\n}\n"]}
|
package/cjs/marker/arc-area.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.MarkArcArea = exports.registerMarkArcAreaAnimate = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const graphic_creator_1 = require("../util/graphic-creator"), vutils_1 = require("@visactor/vutils"), base_1 = require("./base"), config_1 = require("./config"), type_1 = require("./type"), limit_shape_1 = require("../util/limit-shape"), register_1 = require("./register"), constant_1 = require("../constant"), animate_1 = require("./animate/animate"), label_1 = require("./mixin/label");
|
|
8
8
|
|
|
9
9
|
function registerMarkArcAreaAnimate() {
|
|
10
10
|
MarkArcArea._animate = animate_1.markArcAreaAnimate;
|
|
@@ -86,7 +86,7 @@ class MarkArcArea extends base_1.Marker {
|
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
initMarker(container) {
|
|
89
|
-
const {center: center, innerRadius: innerRadius, outerRadius: outerRadius, startAngle: startAngle, endAngle: endAngle, areaStyle: areaStyle, state: state} = this.attribute, area =
|
|
89
|
+
const {center: center, innerRadius: innerRadius, outerRadius: outerRadius, startAngle: startAngle, endAngle: endAngle, areaStyle: areaStyle, state: state} = this.attribute, area = graphic_creator_1.graphicCreator.arc(Object.assign({
|
|
90
90
|
x: center.x,
|
|
91
91
|
y: center.y,
|
|
92
92
|
innerRadius: innerRadius,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/arc-area.ts"],"names":[],"mappings":"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","file":"arc-area.js","sourcesContent":["import type { IArc, IGroup } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { graphicCreator } from '@visactor/vrender-core';\nimport { merge, mixin } from '@visactor/vutils';\nimport type { TagAttributes } from '../tag';\n// eslint-disable-next-line no-duplicate-imports\nimport type { Tag } from '../tag';\nimport { Marker } from './base';\nimport { DEFAULT_MARK_ARC_AREA_THEME, DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP } from './config';\nimport type { CommonMarkAreaAnimationType, MarkerAnimationState, MarkerArcAreaLabelAttrs } from './type';\n// eslint-disable-next-line no-duplicate-imports\nimport { IMarkCommonArcLabelPosition, type MarkArcAreaAttrs } from './type';\nimport { limitShapeInBounds } from '../util/limit-shape';\nimport type { ComponentOptions } from '../interface';\nimport { loadMarkArcAreaComponent } from './register';\nimport { DEFAULT_STATES } from '../constant';\nimport { DefaultExitMarkerAnimation, DefaultUpdateMarkAreaAnimation, markArcAreaAnimate } from './animate/animate';\nimport { MarkLabelMixin } from './mixin/label';\n\nloadMarkArcAreaComponent();\n\nexport function registerMarkArcAreaAnimate() {\n MarkArcArea._animate = markArcAreaAnimate;\n}\n\nexport interface MarkArcArea\n extends Pick<MarkLabelMixin<MarkArcAreaAttrs>, '_addMarkLabels' | '_updateMarkLabels' | 'getLabel' | '_label'>,\n Marker<MarkArcAreaAttrs, CommonMarkAreaAnimationType> {}\n\nexport class MarkArcArea extends Marker<MarkArcAreaAttrs, CommonMarkAreaAnimationType> {\n name = 'markArcArea';\n static defaultAttributes = DEFAULT_MARK_ARC_AREA_THEME;\n private _area!: IArc;\n\n /** animate */\n defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation;\n defaultExitAnimation = DefaultExitMarkerAnimation;\n protected markerAnimate(state: MarkerAnimationState) {\n if (MarkArcArea._animate && this._animationConfig) {\n MarkArcArea._animate(this._area, this._label, this._animationConfig, state);\n }\n }\n\n getArea() {\n return this._area;\n }\n\n constructor(attributes: MarkArcAreaAttrs, options?: ComponentOptions) {\n // eslint-disable-next-line max-len\n super(options?.skipDefault ? attributes : merge({}, MarkArcArea.defaultAttributes, attributes));\n }\n\n protected getPointAttrByPosition(position: IMarkCommonArcLabelPosition, labelAttrs: MarkerArcAreaLabelAttrs) {\n const { center, innerRadius, outerRadius, startAngle, endAngle } = this.attribute as MarkArcAreaAttrs;\n const { refX = 0, refY = 0 } = labelAttrs;\n\n let radius;\n let angle;\n\n switch (position) {\n case IMarkCommonArcLabelPosition.center:\n radius = (innerRadius + outerRadius) / 2;\n angle = (startAngle + endAngle) / 2;\n break;\n case IMarkCommonArcLabelPosition.arcInnerStart:\n radius = innerRadius;\n angle = startAngle;\n break;\n case IMarkCommonArcLabelPosition.arcOuterStart:\n radius = outerRadius;\n angle = startAngle;\n break;\n case IMarkCommonArcLabelPosition.arcInnerEnd:\n radius = innerRadius;\n angle = endAngle;\n break;\n case IMarkCommonArcLabelPosition.arcOuterEnd:\n radius = outerRadius;\n angle = endAngle;\n break;\n case IMarkCommonArcLabelPosition.arcInnerMiddle:\n radius = innerRadius;\n angle = (startAngle + endAngle) / 2;\n break;\n case IMarkCommonArcLabelPosition.arcOuterMiddle:\n radius = outerRadius;\n angle = (startAngle + endAngle) / 2;\n break;\n default: // default arcInnerMiddle\n radius = innerRadius;\n angle = (startAngle + endAngle) / 2;\n }\n\n return {\n position: {\n x: center.x + (radius + refY) * Math.cos(angle) + refX * Math.cos(angle - Math.PI / 2),\n y: center.y + (radius + refY) * Math.sin(angle) + refX * Math.sin(angle - Math.PI / 2)\n },\n angle\n };\n }\n\n protected setLabelPos(labelNode: Tag, labelAttrs: MarkerArcAreaLabelAttrs) {\n if (this._area) {\n const { position: labelPosition = 'arcInnerMiddle', autoRotate } = labelAttrs;\n const labelAttr = this.getPointAttrByPosition(labelPosition as IMarkCommonArcLabelPosition, labelAttrs);\n\n labelNode.setAttributes({\n ...labelAttr.position,\n angle: autoRotate ? labelAttr.angle - Math.PI / 2 + (labelAttrs.refAngle ?? 0) : 0,\n textStyle: {\n ...DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP[labelPosition],\n ...labelAttrs.textStyle\n }\n });\n\n if (this.attribute.limitRect && labelAttrs.confine) {\n const { x, y, width, height } = this.attribute.limitRect;\n limitShapeInBounds(labelNode, {\n x1: x,\n y1: y,\n x2: x + width,\n y2: y + height\n });\n }\n }\n }\n\n protected initMarker(container: IGroup) {\n const { center, innerRadius, outerRadius, startAngle, endAngle, areaStyle, state } = this\n .attribute as MarkArcAreaAttrs;\n const area = graphicCreator.arc({\n x: center.x,\n y: center.y,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n ...areaStyle\n });\n area.states = merge({}, DEFAULT_STATES, state?.area);\n area.name = 'polar-mark-area-area';\n this._area = area;\n container.add(area);\n\n // add label\n this._addMarkLabels(container, 'mark-area-label', MarkArcArea.defaultAttributes.label as TagAttributes);\n }\n\n protected updateMarker() {\n const { center, innerRadius, outerRadius, startAngle, endAngle, areaStyle, label, state } = this\n .attribute as MarkArcAreaAttrs;\n if (this._area) {\n this._area.setAttributes({\n x: center.x,\n y: center.y,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n ...areaStyle\n });\n this._area.states = merge({}, DEFAULT_STATES, state?.area);\n }\n\n // update label\n this._updateMarkLabels(MarkArcArea.defaultAttributes.label as TagAttributes);\n }\n\n protected isValidPoints() {\n return true;\n }\n}\n\nmixin(MarkArcArea, MarkLabelMixin);\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/marker/arc-area.ts"],"names":[],"mappings":";;;AAEA,6DAAyD;AACzD,6CAAgD;AAIhD,iCAAgC;AAChC,qCAA4F;AAG5F,iCAA4E;AAC5E,qDAAyD;AAEzD,yCAAsD;AACtD,0CAA6C;AAC7C,+CAAmH;AACnH,yCAA+C;AAE/C,IAAA,mCAAwB,GAAE,CAAC;AAE3B,SAAgB,0BAA0B;IACxC,WAAW,CAAC,QAAQ,GAAG,4BAAkB,CAAC;AAC5C,CAAC;AAFD,gEAEC;AAMD,MAAa,WAAY,SAAQ,aAAqD;IAQ1E,aAAa,CAAC,KAA2B;QACjD,IAAI,WAAW,CAAC,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACjD,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;SAC7E;IACH,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,YAAY,UAA4B,EAAE,OAA0B;QAElE,KAAK,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAA,cAAK,EAAC,EAAE,EAAE,WAAW,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC;QAnBlG,SAAI,GAAG,aAAa,CAAC;QAKrB,2BAAsB,GAAG,wCAA8B,CAAC;QACxD,yBAAoB,GAAG,oCAA0B,CAAC;IAclD,CAAC;IAES,sBAAsB,CAAC,QAAqC,EAAE,UAAmC;QACzG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,SAA6B,CAAC;QACtG,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC;QAE1C,IAAI,MAAM,CAAC;QACX,IAAI,KAAK,CAAC;QAEV,QAAQ,QAAQ,EAAE;YAChB,KAAK,kCAA2B,CAAC,MAAM;gBACrC,MAAM,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;gBACzC,KAAK,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,kCAA2B,CAAC,aAAa;gBAC5C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,UAAU,CAAC;gBACnB,MAAM;YACR,KAAK,kCAA2B,CAAC,aAAa;gBAC5C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,UAAU,CAAC;gBACnB,MAAM;YACR,KAAK,kCAA2B,CAAC,WAAW;gBAC1C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,QAAQ,CAAC;gBACjB,MAAM;YACR,KAAK,kCAA2B,CAAC,WAAW;gBAC1C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,QAAQ,CAAC;gBACjB,MAAM;YACR,KAAK,kCAA2B,CAAC,cAAc;gBAC7C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,kCAA2B,CAAC,cAAc;gBAC7C,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM;YACR;gBACE,MAAM,GAAG,WAAW,CAAC;gBACrB,KAAK,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SACvC;QAED,OAAO;YACL,QAAQ,EAAE;gBACR,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;gBACtF,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;aACvF;YACD,KAAK;SACN,CAAC;IACJ,CAAC;IAES,WAAW,CAAC,SAAc,EAAE,UAAmC;;QACvE,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,gBAAgB,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC;YAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,aAA4C,EAAE,UAAU,CAAC,CAAC;YAExG,SAAS,CAAC,aAAa,iCAClB,SAAS,CAAC,QAAQ,KACrB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,MAAA,UAAU,CAAC,QAAQ,mCAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAClF,SAAS,kCACJ,4CAAmC,CAAC,aAAa,CAAC,GAClD,UAAU,CAAC,SAAS,KAEzB,CAAC;YAEH,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,UAAU,CAAC,OAAO,EAAE;gBAClD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;gBACzD,IAAA,gCAAkB,EAAC,SAAS,EAAE;oBAC5B,EAAE,EAAE,CAAC;oBACL,EAAE,EAAE,CAAC;oBACL,EAAE,EAAE,CAAC,GAAG,KAAK;oBACb,EAAE,EAAE,CAAC,GAAG,MAAM;iBACf,CAAC,CAAC;aACJ;SACF;IACH,CAAC;IAES,UAAU,CAAC,SAAiB;QACpC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI;aACtF,SAA6B,CAAC;QACjC,MAAM,IAAI,GAAG,gCAAc,CAAC,GAAG,iBAC7B,CAAC,EAAE,MAAM,CAAC,CAAC,EACX,CAAC,EAAE,MAAM,CAAC,CAAC,EACX,WAAW;YACX,WAAW;YACX,UAAU;YACV,QAAQ,IACL,SAAS,EACZ,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,IAAA,cAAK,EAAC,EAAE,EAAE,yBAAc,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAGpB,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,CAAC,iBAAiB,CAAC,KAAsB,CAAC,CAAC;IAC1G,CAAC;IAES,YAAY;QACpB,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI;aAC7F,SAA6B,CAAC;QACjC,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,KAAK,CAAC,aAAa,iBACtB,CAAC,EAAE,MAAM,CAAC,CAAC,EACX,CAAC,EAAE,MAAM,CAAC,CAAC,EACX,WAAW;gBACX,WAAW;gBACX,UAAU;gBACV,QAAQ,IACL,SAAS,EACZ,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAA,cAAK,EAAC,EAAE,EAAE,yBAAc,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC;SAC5D;QAGD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAsB,CAAC,CAAC;IAC/E,CAAC;IAES,aAAa;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;;AA9IH,kCA+IC;AA7IQ,6BAAiB,GAAG,oCAA2B,CAAC;AA+IzD,IAAA,cAAK,EAAC,WAAW,EAAE,sBAAc,CAAC,CAAC","file":"arc-area.js","sourcesContent":["import type { IArc, IGroup } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { graphicCreator } from '../util/graphic-creator';\nimport { merge, mixin } from '@visactor/vutils';\nimport type { TagAttributes } from '../tag';\n// eslint-disable-next-line no-duplicate-imports\nimport type { Tag } from '../tag';\nimport { Marker } from './base';\nimport { DEFAULT_MARK_ARC_AREA_THEME, DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP } from './config';\nimport type { CommonMarkAreaAnimationType, MarkerAnimationState, MarkerArcAreaLabelAttrs } from './type';\n// eslint-disable-next-line no-duplicate-imports\nimport { IMarkCommonArcLabelPosition, type MarkArcAreaAttrs } from './type';\nimport { limitShapeInBounds } from '../util/limit-shape';\nimport type { ComponentOptions } from '../interface';\nimport { loadMarkArcAreaComponent } from './register';\nimport { DEFAULT_STATES } from '../constant';\nimport { DefaultExitMarkerAnimation, DefaultUpdateMarkAreaAnimation, markArcAreaAnimate } from './animate/animate';\nimport { MarkLabelMixin } from './mixin/label';\n\nloadMarkArcAreaComponent();\n\nexport function registerMarkArcAreaAnimate() {\n MarkArcArea._animate = markArcAreaAnimate;\n}\n\nexport interface MarkArcArea\n extends Pick<MarkLabelMixin<MarkArcAreaAttrs>, '_addMarkLabels' | '_updateMarkLabels' | 'getLabel' | '_label'>,\n Marker<MarkArcAreaAttrs, CommonMarkAreaAnimationType> {}\n\nexport class MarkArcArea extends Marker<MarkArcAreaAttrs, CommonMarkAreaAnimationType> {\n name = 'markArcArea';\n static defaultAttributes = DEFAULT_MARK_ARC_AREA_THEME;\n private _area!: IArc;\n\n /** animate */\n defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation;\n defaultExitAnimation = DefaultExitMarkerAnimation;\n protected markerAnimate(state: MarkerAnimationState) {\n if (MarkArcArea._animate && this._animationConfig) {\n MarkArcArea._animate(this._area, this._label, this._animationConfig, state);\n }\n }\n\n getArea() {\n return this._area;\n }\n\n constructor(attributes: MarkArcAreaAttrs, options?: ComponentOptions) {\n // eslint-disable-next-line max-len\n super(options?.skipDefault ? attributes : merge({}, MarkArcArea.defaultAttributes, attributes));\n }\n\n protected getPointAttrByPosition(position: IMarkCommonArcLabelPosition, labelAttrs: MarkerArcAreaLabelAttrs) {\n const { center, innerRadius, outerRadius, startAngle, endAngle } = this.attribute as MarkArcAreaAttrs;\n const { refX = 0, refY = 0 } = labelAttrs;\n\n let radius;\n let angle;\n\n switch (position) {\n case IMarkCommonArcLabelPosition.center:\n radius = (innerRadius + outerRadius) / 2;\n angle = (startAngle + endAngle) / 2;\n break;\n case IMarkCommonArcLabelPosition.arcInnerStart:\n radius = innerRadius;\n angle = startAngle;\n break;\n case IMarkCommonArcLabelPosition.arcOuterStart:\n radius = outerRadius;\n angle = startAngle;\n break;\n case IMarkCommonArcLabelPosition.arcInnerEnd:\n radius = innerRadius;\n angle = endAngle;\n break;\n case IMarkCommonArcLabelPosition.arcOuterEnd:\n radius = outerRadius;\n angle = endAngle;\n break;\n case IMarkCommonArcLabelPosition.arcInnerMiddle:\n radius = innerRadius;\n angle = (startAngle + endAngle) / 2;\n break;\n case IMarkCommonArcLabelPosition.arcOuterMiddle:\n radius = outerRadius;\n angle = (startAngle + endAngle) / 2;\n break;\n default: // default arcInnerMiddle\n radius = innerRadius;\n angle = (startAngle + endAngle) / 2;\n }\n\n return {\n position: {\n x: center.x + (radius + refY) * Math.cos(angle) + refX * Math.cos(angle - Math.PI / 2),\n y: center.y + (radius + refY) * Math.sin(angle) + refX * Math.sin(angle - Math.PI / 2)\n },\n angle\n };\n }\n\n protected setLabelPos(labelNode: Tag, labelAttrs: MarkerArcAreaLabelAttrs) {\n if (this._area) {\n const { position: labelPosition = 'arcInnerMiddle', autoRotate } = labelAttrs;\n const labelAttr = this.getPointAttrByPosition(labelPosition as IMarkCommonArcLabelPosition, labelAttrs);\n\n labelNode.setAttributes({\n ...labelAttr.position,\n angle: autoRotate ? labelAttr.angle - Math.PI / 2 + (labelAttrs.refAngle ?? 0) : 0,\n textStyle: {\n ...DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP[labelPosition],\n ...labelAttrs.textStyle\n }\n });\n\n if (this.attribute.limitRect && labelAttrs.confine) {\n const { x, y, width, height } = this.attribute.limitRect;\n limitShapeInBounds(labelNode, {\n x1: x,\n y1: y,\n x2: x + width,\n y2: y + height\n });\n }\n }\n }\n\n protected initMarker(container: IGroup) {\n const { center, innerRadius, outerRadius, startAngle, endAngle, areaStyle, state } = this\n .attribute as MarkArcAreaAttrs;\n const area = graphicCreator.arc({\n x: center.x,\n y: center.y,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n ...areaStyle\n });\n area.states = merge({}, DEFAULT_STATES, state?.area);\n area.name = 'polar-mark-area-area';\n this._area = area;\n container.add(area);\n\n // add label\n this._addMarkLabels(container, 'mark-area-label', MarkArcArea.defaultAttributes.label as TagAttributes);\n }\n\n protected updateMarker() {\n const { center, innerRadius, outerRadius, startAngle, endAngle, areaStyle, label, state } = this\n .attribute as MarkArcAreaAttrs;\n if (this._area) {\n this._area.setAttributes({\n x: center.x,\n y: center.y,\n innerRadius,\n outerRadius,\n startAngle,\n endAngle,\n ...areaStyle\n });\n this._area.states = merge({}, DEFAULT_STATES, state?.area);\n }\n\n // update label\n this._updateMarkLabels(MarkArcArea.defaultAttributes.label as TagAttributes);\n }\n\n protected isValidPoints() {\n return true;\n }\n}\n\nmixin(MarkArcArea, MarkLabelMixin);\n"]}
|
package/cjs/marker/area.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.MarkArea = exports.registerMarkAreaAnimate = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const graphic_creator_1 = require("../util/graphic-creator"), vutils_1 = require("@visactor/vutils"), base_1 = require("./base"), config_1 = require("./config"), limit_shape_1 = require("../util/limit-shape"), register_1 = require("./register"), constant_1 = require("../constant"), animate_1 = require("./animate/animate"), label_1 = require("./mixin/label");
|
|
8
8
|
|
|
9
9
|
function registerMarkAreaAnimate() {
|
|
10
10
|
MarkArea._animate = animate_1.markAreaAnimate;
|
|
@@ -52,7 +52,7 @@ class MarkArea extends base_1.Marker {
|
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
initMarker(container) {
|
|
55
|
-
const {points: points, areaStyle: areaStyle, state: state} = this.attribute, area =
|
|
55
|
+
const {points: points, areaStyle: areaStyle, state: state} = this.attribute, area = graphic_creator_1.graphicCreator.polygon(Object.assign({
|
|
56
56
|
points: points
|
|
57
57
|
}, areaStyle));
|
|
58
58
|
area.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.area),
|
package/cjs/marker/area.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/area.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"sources":["../src/marker/area.ts"],"names":[],"mappings":"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","file":"area.js","sourcesContent":["import type { IGroup, IPolygon } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { graphicCreator } from '../util/graphic-creator';\nimport { isValidNumber, merge, mixin } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport type { Tag, TagAttributes } from '../tag';\nimport { Marker } from './base';\nimport { DEFAULT_CARTESIAN_MARK_AREA_TEXT_STYLE_MAP, DEFAULT_MARK_AREA_THEME } from './config';\nimport type {\n CommonMarkAreaAnimationType,\n IMarkAreaLabelPosition,\n MarkAreaAttrs,\n MarkerAnimationState,\n MarkerAreaLabelAttrs\n} from './type';\nimport { limitShapeInBounds } from '../util/limit-shape';\nimport type { ComponentOptions } from '../interface';\nimport { loadMarkAreaComponent } from './register';\nimport type { Point } from '../core/type';\nimport { DEFAULT_STATES } from '../constant';\nimport { DefaultExitMarkerAnimation, DefaultUpdateMarkAreaAnimation, markAreaAnimate } from './animate/animate';\nimport { MarkLabelMixin } from './mixin/label';\n\nloadMarkAreaComponent();\n\nexport function registerMarkAreaAnimate() {\n MarkArea._animate = markAreaAnimate;\n}\n\nexport interface MarkArea\n extends Pick<MarkLabelMixin<MarkAreaAttrs>, '_addMarkLabels' | '_updateMarkLabels' | 'getLabel' | '_label'>,\n Marker<MarkAreaAttrs, CommonMarkAreaAnimationType> {}\n\nexport class MarkArea extends Marker<MarkAreaAttrs, CommonMarkAreaAnimationType> {\n name = 'markArea';\n static defaultAttributes = DEFAULT_MARK_AREA_THEME;\n\n /** animate */\n defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation;\n defaultExitAnimation = DefaultExitMarkerAnimation;\n protected markerAnimate(state: MarkerAnimationState) {\n if (MarkArea._animate && this._animationConfig) {\n MarkArea._animate(this._area, this._label, this._animationConfig, state);\n }\n }\n\n private _area!: IPolygon;\n getArea() {\n return this._area;\n }\n\n constructor(attributes: MarkAreaAttrs, options?: ComponentOptions) {\n super(options?.skipDefault ? attributes : merge({}, MarkArea.defaultAttributes, attributes));\n }\n\n protected getPointAttrByPosition(position: IMarkAreaLabelPosition) {\n const { x1, x2, y1, y2 } = this._area.AABBBounds;\n const result = {\n x: (x1 + x2) / 2,\n y: (y1 + y2) / 2\n };\n\n if (position.includes('left') || position.includes('Left')) {\n result.x = x1;\n }\n if (position.includes('right') || position.includes('Right')) {\n result.x = x2;\n }\n if (position.includes('top') || position.includes('Top')) {\n result.y = y1;\n }\n if (position.includes('bottom') || position.includes('Bottom')) {\n result.y = y2;\n }\n\n return result;\n }\n\n protected setLabelPos(labelNode: Tag, labelAttrs: MarkerAreaLabelAttrs) {\n if (this._area) {\n const labelPosition = labelAttrs.position ?? 'middle';\n const labelPoint = this.getPointAttrByPosition(labelPosition as IMarkAreaLabelPosition);\n labelNode.setAttributes({\n ...labelPoint,\n textStyle: {\n ...DEFAULT_CARTESIAN_MARK_AREA_TEXT_STYLE_MAP[labelPosition],\n ...labelAttrs.textStyle\n }\n });\n\n if (this.attribute.limitRect && labelAttrs.confine) {\n const { x, y, width, height } = this.attribute.limitRect;\n limitShapeInBounds(labelNode, {\n x1: x,\n y1: y,\n x2: x + width,\n y2: y + height\n });\n }\n }\n }\n\n protected initMarker(container: IGroup) {\n const { points, areaStyle, state } = this.attribute as MarkAreaAttrs;\n const area = graphicCreator.polygon({\n points: points,\n ...areaStyle\n });\n area.states = merge({}, DEFAULT_STATES, state?.area);\n area.name = 'mark-area-polygon';\n this._area = area;\n container.add(area);\n\n // add label\n this._addMarkLabels(container, 'mark-area-label', MarkArea.defaultAttributes.label as TagAttributes);\n }\n\n protected updateMarker() {\n const { points, areaStyle, state } = this.attribute as MarkAreaAttrs;\n if (this._area) {\n this._area.setAttributes({\n points: points,\n ...areaStyle\n });\n this._area.states = merge({}, DEFAULT_STATES, state?.area);\n }\n\n // update label\n this._updateMarkLabels(MarkArea.defaultAttributes.label as TagAttributes);\n }\n\n protected isValidPoints() {\n const { points } = this.attribute as MarkAreaAttrs;\n if (!points || points.length < 3) {\n return false;\n }\n let validFlag = true;\n points.forEach((point: Point) => {\n if (!isValidNumber((point as Point).x) || !isValidNumber((point as Point).y)) {\n validFlag = false;\n return;\n }\n });\n return validFlag;\n }\n}\n\nmixin(MarkArea, MarkLabelMixin);\n"]}
|
package/cjs/marker/base.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.Marker = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const graphic_creator_1 = require("../util/graphic-creator"), base_1 = require("../core/base"), interaction_1 = require("../util/interaction"), vutils_1 = require("@visactor/vutils");
|
|
8
8
|
|
|
9
9
|
class Marker extends base_1.AbstractComponent {
|
|
10
10
|
constructor() {
|
|
@@ -49,16 +49,16 @@ class Marker extends base_1.AbstractComponent {
|
|
|
49
49
|
const {limitRect: limitRect = {}, clipInRange: clipInRange} = this.attribute;
|
|
50
50
|
let group;
|
|
51
51
|
if (clipInRange) {
|
|
52
|
-
const groupClip =
|
|
52
|
+
const groupClip = graphic_creator_1.graphicCreator.group(Object.assign(Object.assign({}, limitRect), {
|
|
53
53
|
clip: !0,
|
|
54
54
|
pickable: !1
|
|
55
55
|
}));
|
|
56
|
-
group =
|
|
56
|
+
group = graphic_creator_1.graphicCreator.group({
|
|
57
57
|
x: -(null !== (_a = limitRect.x) && void 0 !== _a ? _a : 0),
|
|
58
58
|
y: -(null !== (_b = limitRect.y) && void 0 !== _b ? _b : 0),
|
|
59
59
|
pickable: !1
|
|
60
60
|
}), groupClip.add(group), this._containerClip = groupClip, this.add(groupClip);
|
|
61
|
-
} else group =
|
|
61
|
+
} else group = graphic_creator_1.graphicCreator.group({
|
|
62
62
|
x: 0,
|
|
63
63
|
y: 0,
|
|
64
64
|
pickable: !1
|
package/cjs/marker/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/marker/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["import type { FederatedPointerEvent, IGraphic, IGroup, IImage, IRichText, ISymbol } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { graphicCreator } from '@visactor/vrender-core';\nimport { AbstractComponent } from '../core/base';\nimport type { Tag } from '../tag';\nimport type { MarkerAnimationState, MarkerAttrs, MarkerExitAnimation, MarkerUpdateAnimation } from './type';\nimport { dispatchClickState, dispatchHoverState, dispatchUnHoverState } from '../util/interaction';\nimport { isObject, merge } from '@visactor/vutils';\n\nexport abstract class Marker<T extends MarkerAttrs<AnimationAttr>, AnimationAttr> extends AbstractComponent<\n Required<T>\n> {\n name = 'marker';\n\n private _containerClip!: IGroup;\n protected _container!: IGroup;\n\n /** animate */\n static _animate?: (\n marker: any,\n label: (Tag | IRichText | ISymbol | IImage) | (Tag | IRichText | ISymbol | IImage)[],\n animationConfig: any,\n state: MarkerAnimationState\n ) => void;\n\n defaultUpdateAnimation!: MarkerUpdateAnimation<AnimationAttr>;\n defaultExitAnimation!: MarkerExitAnimation;\n\n protected _animationConfig?: {\n enter: MarkerUpdateAnimation<AnimationAttr>;\n exit: MarkerExitAnimation;\n update: MarkerUpdateAnimation<AnimationAttr>;\n };\n\n private _lastHover: IGraphic;\n private _lastSelect: IGraphic;\n\n protected abstract setLabelPos(labelNode: IGroup, labelAttrs: any): any;\n protected abstract initMarker(container: IGroup): any;\n protected abstract updateMarker(): any;\n protected abstract isValidPoints(): any;\n protected abstract markerAnimate(state: MarkerAnimationState): void;\n\n private transAnimationConfig(): void {\n if (this.attribute.animation !== false) {\n const animation = isObject(this.attribute.animation) ? this.attribute.animation : {};\n this._animationConfig = {\n enter: merge(\n {},\n this.defaultUpdateAnimation,\n animation,\n this.attribute.animationEnter ?? {}\n ) as MarkerUpdateAnimation<AnimationAttr>,\n exit: merge({}, this.defaultExitAnimation, animation, this.attribute.animationExit ?? {}),\n update: merge(\n {},\n this.defaultUpdateAnimation,\n animation,\n this.attribute.animationUpdate ?? {}\n ) as MarkerUpdateAnimation<AnimationAttr>\n };\n }\n }\n setAttribute(key: string, value: any, forceUpdateTag?: boolean | undefined): void {\n super.setAttribute(key, value, forceUpdateTag);\n if (key === 'visible') {\n this.render();\n }\n }\n\n private _bindEvent() {\n if (!this.attribute.interactive) {\n return;\n }\n const { hover, select } = this.attribute;\n\n if (hover) {\n this._container?.addEventListener('pointermove', this._onHover as EventListenerOrEventListenerObject);\n this._container?.addEventListener('pointerout', this._onUnHover as EventListenerOrEventListenerObject);\n }\n\n if (select) {\n this._container?.addEventListener('pointerdown', this._onClick as EventListenerOrEventListenerObject);\n }\n }\n\n private _releaseEvent() {\n this._container?.removeEventListener('pointermove', this._onHover as EventListenerOrEventListenerObject);\n this._container?.removeEventListener('pointerout', this._onUnHover as EventListenerOrEventListenerObject);\n this._container?.removeEventListener('pointerdown', this._onClick as EventListenerOrEventListenerObject);\n }\n\n private _onHover = (e: FederatedPointerEvent) => {\n this._lastHover = dispatchHoverState(e, this._container, this._lastHover);\n };\n\n private _onUnHover = (e: FederatedPointerEvent) => {\n this._lastHover = dispatchUnHoverState(e, this._container, this._lastHover);\n };\n\n private _onClick = (e: FederatedPointerEvent) => {\n this._lastSelect = dispatchClickState(e, this._container, this._lastSelect);\n };\n\n private _initContainer() {\n const { limitRect = {} as T['limitRect'], clipInRange } = this.attribute;\n let group;\n if (clipInRange) {\n // 如果用户配置了剪切\n const groupClip = graphicCreator.group({\n ...limitRect,\n clip: true,\n pickable: false\n });\n group = graphicCreator.group({\n x: -(limitRect.x ?? 0),\n y: -(limitRect.y ?? 0),\n pickable: false\n });\n groupClip.add(group);\n this._containerClip = groupClip;\n this.add(groupClip);\n } else {\n group = graphicCreator.group({\n x: 0,\n y: 0,\n pickable: false\n });\n this.add(group);\n }\n group.name = 'marker-container';\n this._container = group;\n }\n\n private _updateContainer() {\n const { limitRect = {} as T['limitRect'], clipInRange } = this.attribute;\n if (this._containerClip) {\n this._containerClip.setAttributes({\n ...limitRect\n });\n }\n\n this._container.setAttributes({\n x: clipInRange ? -(limitRect.x ?? 0) : 0,\n y: clipInRange ? -(limitRect.y ?? 0) : 0\n });\n }\n\n protected render() {\n this.transAnimationConfig();\n\n // 因为标注本身不规则,所以默认将组件的 group 设置为不可拾取\n this.setAttribute('pickable', false);\n\n const markerVisible = this.attribute.visible ?? true;\n if (this.attribute.interactive === false) {\n this.setAttribute('childrenPickable', false);\n }\n\n if (markerVisible && this.isValidPoints()) {\n if (!this._container) {\n this._initContainer();\n this.initMarker(this._container);\n this.markerAnimate('enter');\n } else {\n this._updateContainer();\n this.updateMarker();\n this.markerAnimate('update');\n }\n } else {\n this.markerAnimate('exit');\n this._container = null;\n this.removeAllChild(true);\n }\n\n // 先把之前的event都release掉,否则会重复触发\n this._releaseEvent();\n this._bindEvent();\n }\n\n release(): void {\n this.markerAnimate('exit');\n super.release();\n this._releaseEvent();\n this._container = null;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/marker/base.ts"],"names":[],"mappings":";;;AAEA,6DAAyD;AACzD,uCAAiD;AAGjD,qDAAmG;AACnG,6CAAmD;AAEnD,MAAsB,MAA4D,SAAQ,wBAEzF;IAFD;;QAGE,SAAI,GAAG,QAAQ,CAAC;QAgFR,aAAQ,GAAG,CAAC,CAAwB,EAAE,EAAE;YAC9C,IAAI,CAAC,UAAU,GAAG,IAAA,gCAAkB,EAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5E,CAAC,CAAC;QAEM,eAAU,GAAG,CAAC,CAAwB,EAAE,EAAE;YAChD,IAAI,CAAC,UAAU,GAAG,IAAA,kCAAoB,EAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9E,CAAC,CAAC;QAEM,aAAQ,GAAG,CAAC,CAAwB,EAAE,EAAE;YAC9C,IAAI,CAAC,WAAW,GAAG,IAAA,gCAAkB,EAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9E,CAAC,CAAC;IAoFJ,CAAC;IA/IS,oBAAoB;;QAC1B,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,KAAK,KAAK,EAAE;YACtC,MAAM,SAAS,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,IAAI,CAAC,gBAAgB,GAAG;gBACtB,KAAK,EAAE,IAAA,cAAK,EACV,EAAE,EACF,IAAI,CAAC,sBAAsB,EAC3B,SAAS,EACT,MAAA,IAAI,CAAC,SAAS,CAAC,cAAc,mCAAI,EAAE,CACI;gBACzC,IAAI,EAAE,IAAA,cAAK,EAAC,EAAE,EAAE,IAAI,CAAC,oBAAoB,EAAE,SAAS,EAAE,MAAA,IAAI,CAAC,SAAS,CAAC,aAAa,mCAAI,EAAE,CAAC;gBACzF,MAAM,EAAE,IAAA,cAAK,EACX,EAAE,EACF,IAAI,CAAC,sBAAsB,EAC3B,SAAS,EACT,MAAA,IAAI,CAAC,SAAS,CAAC,eAAe,mCAAI,EAAE,CACG;aAC1C,CAAC;SACH;IACH,CAAC;IACD,YAAY,CAAC,GAAW,EAAE,KAAU,EAAE,cAAoC;QACxE,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;QAC/C,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;IACH,CAAC;IAEO,UAAU;;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YAC/B,OAAO;SACR;QACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAEzC,IAAI,KAAK,EAAE;YACT,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,QAA8C,CAAC,CAAC;YACtG,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAgD,CAAC,CAAC;SACxG;QAED,IAAI,MAAM,EAAE;YACV,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,QAA8C,CAAC,CAAC;SACvG;IACH,CAAC;IAEO,aAAa;;QACnB,MAAA,IAAI,CAAC,UAAU,0CAAE,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,QAA8C,CAAC,CAAC;QACzG,MAAA,IAAI,CAAC,UAAU,0CAAE,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAgD,CAAC,CAAC;QAC1G,MAAA,IAAI,CAAC,UAAU,0CAAE,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,QAA8C,CAAC,CAAC;IAC3G,CAAC;IAcO,cAAc;;QACpB,MAAM,EAAE,SAAS,GAAG,EAAoB,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QACzE,IAAI,KAAK,CAAC;QACV,IAAI,WAAW,EAAE;YAEf,MAAM,SAAS,GAAG,gCAAc,CAAC,KAAK,iCACjC,SAAS,KACZ,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,KAAK,IACf,CAAC;YACH,KAAK,GAAG,gCAAc,CAAC,KAAK,CAAC;gBAC3B,CAAC,EAAE,CAAC,CAAC,MAAA,SAAS,CAAC,CAAC,mCAAI,CAAC,CAAC;gBACtB,CAAC,EAAE,CAAC,CAAC,MAAA,SAAS,CAAC,CAAC,mCAAI,CAAC,CAAC;gBACtB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;SACrB;aAAM;YACL,KAAK,GAAG,gCAAc,CAAC,KAAK,CAAC;gBAC3B,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACjB;QACD,KAAK,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAEO,gBAAgB;;QACtB,MAAM,EAAE,SAAS,GAAG,EAAoB,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QACzE,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,cAAc,CAAC,aAAa,mBAC5B,SAAS,EACZ,CAAC;SACJ;QAED,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;YAC5B,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAA,SAAS,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAA,SAAS,CAAC,CAAC,mCAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAES,MAAM;;QACd,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAG5B,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAErC,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,OAAO,mCAAI,IAAI,CAAC;QACrD,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,KAAK,KAAK,EAAE;YACxC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;SAC9C;QAED,IAAI,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACzC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACjC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;aAC7B;iBAAM;gBACL,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;aAC9B;SACF;aAAM;YACL,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SAC3B;QAGD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3B,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;CACF;AAjLD,wBAiLC","file":"base.js","sourcesContent":["import type { FederatedPointerEvent, IGraphic, IGroup, IImage, IRichText, ISymbol } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { graphicCreator } from '../util/graphic-creator';\nimport { AbstractComponent } from '../core/base';\nimport type { Tag } from '../tag';\nimport type { MarkerAnimationState, MarkerAttrs, MarkerExitAnimation, MarkerUpdateAnimation } from './type';\nimport { dispatchClickState, dispatchHoverState, dispatchUnHoverState } from '../util/interaction';\nimport { isObject, merge } from '@visactor/vutils';\n\nexport abstract class Marker<T extends MarkerAttrs<AnimationAttr>, AnimationAttr> extends AbstractComponent<\n Required<T>\n> {\n name = 'marker';\n\n private _containerClip!: IGroup;\n protected _container!: IGroup;\n\n /** animate */\n static _animate?: (\n marker: any,\n label: (Tag | IRichText | ISymbol | IImage) | (Tag | IRichText | ISymbol | IImage)[],\n animationConfig: any,\n state: MarkerAnimationState\n ) => void;\n\n defaultUpdateAnimation!: MarkerUpdateAnimation<AnimationAttr>;\n defaultExitAnimation!: MarkerExitAnimation;\n\n protected _animationConfig?: {\n enter: MarkerUpdateAnimation<AnimationAttr>;\n exit: MarkerExitAnimation;\n update: MarkerUpdateAnimation<AnimationAttr>;\n };\n\n private _lastHover: IGraphic;\n private _lastSelect: IGraphic;\n\n protected abstract setLabelPos(labelNode: IGroup, labelAttrs: any): any;\n protected abstract initMarker(container: IGroup): any;\n protected abstract updateMarker(): any;\n protected abstract isValidPoints(): any;\n protected abstract markerAnimate(state: MarkerAnimationState): void;\n\n private transAnimationConfig(): void {\n if (this.attribute.animation !== false) {\n const animation = isObject(this.attribute.animation) ? this.attribute.animation : {};\n this._animationConfig = {\n enter: merge(\n {},\n this.defaultUpdateAnimation,\n animation,\n this.attribute.animationEnter ?? {}\n ) as MarkerUpdateAnimation<AnimationAttr>,\n exit: merge({}, this.defaultExitAnimation, animation, this.attribute.animationExit ?? {}),\n update: merge(\n {},\n this.defaultUpdateAnimation,\n animation,\n this.attribute.animationUpdate ?? {}\n ) as MarkerUpdateAnimation<AnimationAttr>\n };\n }\n }\n setAttribute(key: string, value: any, forceUpdateTag?: boolean | undefined): void {\n super.setAttribute(key, value, forceUpdateTag);\n if (key === 'visible') {\n this.render();\n }\n }\n\n private _bindEvent() {\n if (!this.attribute.interactive) {\n return;\n }\n const { hover, select } = this.attribute;\n\n if (hover) {\n this._container?.addEventListener('pointermove', this._onHover as EventListenerOrEventListenerObject);\n this._container?.addEventListener('pointerout', this._onUnHover as EventListenerOrEventListenerObject);\n }\n\n if (select) {\n this._container?.addEventListener('pointerdown', this._onClick as EventListenerOrEventListenerObject);\n }\n }\n\n private _releaseEvent() {\n this._container?.removeEventListener('pointermove', this._onHover as EventListenerOrEventListenerObject);\n this._container?.removeEventListener('pointerout', this._onUnHover as EventListenerOrEventListenerObject);\n this._container?.removeEventListener('pointerdown', this._onClick as EventListenerOrEventListenerObject);\n }\n\n private _onHover = (e: FederatedPointerEvent) => {\n this._lastHover = dispatchHoverState(e, this._container, this._lastHover);\n };\n\n private _onUnHover = (e: FederatedPointerEvent) => {\n this._lastHover = dispatchUnHoverState(e, this._container, this._lastHover);\n };\n\n private _onClick = (e: FederatedPointerEvent) => {\n this._lastSelect = dispatchClickState(e, this._container, this._lastSelect);\n };\n\n private _initContainer() {\n const { limitRect = {} as T['limitRect'], clipInRange } = this.attribute;\n let group;\n if (clipInRange) {\n // 如果用户配置了剪切\n const groupClip = graphicCreator.group({\n ...limitRect,\n clip: true,\n pickable: false\n });\n group = graphicCreator.group({\n x: -(limitRect.x ?? 0),\n y: -(limitRect.y ?? 0),\n pickable: false\n });\n groupClip.add(group);\n this._containerClip = groupClip;\n this.add(groupClip);\n } else {\n group = graphicCreator.group({\n x: 0,\n y: 0,\n pickable: false\n });\n this.add(group);\n }\n group.name = 'marker-container';\n this._container = group;\n }\n\n private _updateContainer() {\n const { limitRect = {} as T['limitRect'], clipInRange } = this.attribute;\n if (this._containerClip) {\n this._containerClip.setAttributes({\n ...limitRect\n });\n }\n\n this._container.setAttributes({\n x: clipInRange ? -(limitRect.x ?? 0) : 0,\n y: clipInRange ? -(limitRect.y ?? 0) : 0\n });\n }\n\n protected render() {\n this.transAnimationConfig();\n\n // 因为标注本身不规则,所以默认将组件的 group 设置为不可拾取\n this.setAttribute('pickable', false);\n\n const markerVisible = this.attribute.visible ?? true;\n if (this.attribute.interactive === false) {\n this.setAttribute('childrenPickable', false);\n }\n\n if (markerVisible && this.isValidPoints()) {\n if (!this._container) {\n this._initContainer();\n this.initMarker(this._container);\n this.markerAnimate('enter');\n } else {\n this._updateContainer();\n this.updateMarker();\n this.markerAnimate('update');\n }\n } else {\n this.markerAnimate('exit');\n this._container = null;\n this.removeAllChild(true);\n }\n\n // 先把之前的event都release掉,否则会重复触发\n this._releaseEvent();\n this._bindEvent();\n }\n\n release(): void {\n this.markerAnimate('exit');\n super.release();\n this._releaseEvent();\n this._container = null;\n }\n}\n"]}
|
package/cjs/marker/point.d.ts
CHANGED
|
@@ -76,7 +76,7 @@ export declare class MarkPoint extends Marker<MarkPointAttrs, MarkPointAnimation
|
|
|
76
76
|
protected setItemAttributes(item: ISymbol | Tag | IImage | IRichText, itemContent: IItemContent, newPosition: Point, newItemPosition: Point, itemType: 'symbol' | 'text' | 'image' | 'richText' | 'custom'): void;
|
|
77
77
|
protected getItemDx(item: ISymbol | Tag | IImage | IRichText, position: keyof typeof IMarkPointItemPosition, style?: IImageGraphicAttribute | IRichTextGraphicAttribute): number;
|
|
78
78
|
protected getItemDy(item: ISymbol | Tag | IImage | IRichText, position: keyof typeof IMarkPointItemPosition, style?: IImageGraphicAttribute | IRichTextGraphicAttribute): number;
|
|
79
|
-
protected initItem(itemContent: IItemContent, newPosition: Point, newItemPosition: Point): IGroup | ISymbol |
|
|
79
|
+
protected initItem(itemContent: IItemContent, newPosition: Point, newItemPosition: Point): IGroup | ISymbol | IImage | IRichText | Tag;
|
|
80
80
|
protected getItemLineAttr(itemLine: IItemLine, newPosition: Point, newItemPosition: Point): {
|
|
81
81
|
points: Point[];
|
|
82
82
|
center: {
|
package/cjs/marker/point.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.MarkPoint = exports.registerMarkPointAnimate = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const graphic_creator_1 = require("../util/graphic-creator"), vutils_1 = require("@visactor/vutils"), segment_1 = require("../segment"), tag_1 = require("../tag"), base_1 = require("./base"), config_1 = require("./config"), type_1 = require("./type"), register_1 = require("./register"), limit_shape_1 = require("../util/limit-shape"), constant_1 = require("../constant"), animate_1 = require("./animate/animate"), util_1 = require("../util");
|
|
8
8
|
|
|
9
9
|
function registerMarkPointAnimate() {
|
|
10
10
|
MarkPoint._animate = animate_1.markPointAnimate;
|
|
@@ -66,14 +66,14 @@ class MarkPoint extends base_1.Marker {
|
|
|
66
66
|
initItem(itemContent, newPosition, newItemPosition) {
|
|
67
67
|
const {state: state} = this.attribute, {type: type = "text", style: style, renderCustomCallback: renderCustomCallback} = itemContent;
|
|
68
68
|
let item;
|
|
69
|
-
return "symbol" === type ? (item =
|
|
69
|
+
return "symbol" === type ? (item = graphic_creator_1.graphicCreator.symbol(Object.assign(Object.assign({}, newItemPosition), style)),
|
|
70
70
|
item.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)) : "text" === type ? item = new tag_1.Tag(Object.assign(Object.assign({}, newItemPosition), {
|
|
71
71
|
state: {
|
|
72
72
|
panel: (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.textBackground),
|
|
73
73
|
text: (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)
|
|
74
74
|
}
|
|
75
|
-
})) : "richText" === type ? (item =
|
|
76
|
-
item.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)) : "image" === type ? (item =
|
|
75
|
+
})) : "richText" === type ? (item = graphic_creator_1.graphicCreator.richtext(Object.assign(Object.assign({}, newItemPosition), style)),
|
|
76
|
+
item.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)) : "image" === type ? (item = graphic_creator_1.graphicCreator.image(Object.assign(Object.assign({}, newItemPosition), style)),
|
|
77
77
|
item.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)) : "custom" === type && renderCustomCallback && (item = renderCustomCallback(),
|
|
78
78
|
item.states = (0, vutils_1.merge)({}, constant_1.DEFAULT_STATES, null == state ? void 0 : state.itemContent)),
|
|
79
79
|
item.name = `mark-point-${type}`, this.setItemAttributes(item, itemContent, newPosition, newItemPosition, type),
|
|
@@ -233,12 +233,12 @@ class MarkPoint extends base_1.Marker {
|
|
|
233
233
|
endAngle: 0
|
|
234
234
|
});
|
|
235
235
|
line.name = "mark-point-line", this._line = line, container.add(line);
|
|
236
|
-
const decorativeLine =
|
|
236
|
+
const decorativeLine = graphic_creator_1.graphicCreator.line({
|
|
237
237
|
points: []
|
|
238
238
|
});
|
|
239
239
|
decorativeLine.name = "mark-point-decorativeLine", this._decorativeLine = decorativeLine,
|
|
240
240
|
container.add(decorativeLine);
|
|
241
|
-
const targetItem =
|
|
241
|
+
const targetItem = graphic_creator_1.graphicCreator.symbol({});
|
|
242
242
|
targetItem.name = "mark-point-targetItem", this._targetItem = targetItem, container.add(this._targetItem);
|
|
243
243
|
const item = this.initItem(itemContent, newPosition, newItemPosition);
|
|
244
244
|
this._item = item, container.add(item), this.setAllOfItemsAttr(newPosition, newItemPosition);
|