@visactor/vrender-components 0.17.2-alpha.3 → 0.17.2

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 (75) hide show
  1. package/cjs/axis/base.js +2 -12
  2. package/cjs/axis/base.js.map +1 -1
  3. package/cjs/brush/brush.d.ts +3 -12
  4. package/cjs/brush/brush.js +29 -28
  5. package/cjs/brush/brush.js.map +1 -1
  6. package/cjs/checkbox/checkbox.js +4 -8
  7. package/cjs/checkbox/checkbox.js.map +1 -1
  8. package/cjs/core/base.d.ts +2 -0
  9. package/cjs/core/base.js +6 -0
  10. package/cjs/core/base.js.map +1 -1
  11. package/cjs/data-zoom/config.d.ts +18 -0
  12. package/cjs/data-zoom/config.js +19 -1
  13. package/cjs/data-zoom/config.js.map +1 -1
  14. package/cjs/data-zoom/data-zoom.d.ts +4 -3
  15. package/cjs/data-zoom/data-zoom.js +130 -113
  16. package/cjs/data-zoom/data-zoom.js.map +1 -1
  17. package/cjs/data-zoom/type.d.ts +6 -2
  18. package/cjs/data-zoom/type.js.map +1 -1
  19. package/cjs/index.d.ts +1 -1
  20. package/cjs/index.js +1 -1
  21. package/cjs/index.js.map +1 -1
  22. package/cjs/legend/discrete/discrete.d.ts +1 -1
  23. package/cjs/legend/discrete/discrete.js +33 -37
  24. package/cjs/legend/discrete/discrete.js.map +1 -1
  25. package/cjs/pager/pager.js +4 -9
  26. package/cjs/pager/pager.js.map +1 -1
  27. package/cjs/player/base-player.js +2 -5
  28. package/cjs/player/base-player.js.map +1 -1
  29. package/cjs/player/controller/controller.d.ts +0 -1
  30. package/cjs/player/controller/controller.js +5 -16
  31. package/cjs/player/controller/controller.js.map +1 -1
  32. package/cjs/scrollbar/scrollbar.d.ts +0 -1
  33. package/cjs/scrollbar/scrollbar.js +4 -10
  34. package/cjs/scrollbar/scrollbar.js.map +1 -1
  35. package/cjs/slider/slider.js +2 -4
  36. package/cjs/slider/slider.js.map +1 -1
  37. package/dist/index.js +206 -197
  38. package/dist/index.min.js +1 -1
  39. package/es/axis/base.js +2 -12
  40. package/es/axis/base.js.map +1 -1
  41. package/es/brush/brush.d.ts +3 -12
  42. package/es/brush/brush.js +31 -30
  43. package/es/brush/brush.js.map +1 -1
  44. package/es/checkbox/checkbox.js +5 -9
  45. package/es/checkbox/checkbox.js.map +1 -1
  46. package/es/core/base.d.ts +2 -0
  47. package/es/core/base.js +7 -1
  48. package/es/core/base.js.map +1 -1
  49. package/es/data-zoom/config.d.ts +18 -0
  50. package/es/data-zoom/config.js +19 -0
  51. package/es/data-zoom/config.js.map +1 -1
  52. package/es/data-zoom/data-zoom.d.ts +4 -3
  53. package/es/data-zoom/data-zoom.js +131 -114
  54. package/es/data-zoom/data-zoom.js.map +1 -1
  55. package/es/data-zoom/type.d.ts +6 -2
  56. package/es/data-zoom/type.js.map +1 -1
  57. package/es/index.d.ts +1 -1
  58. package/es/index.js +1 -1
  59. package/es/index.js.map +1 -1
  60. package/es/legend/discrete/discrete.d.ts +1 -1
  61. package/es/legend/discrete/discrete.js +33 -38
  62. package/es/legend/discrete/discrete.js.map +1 -1
  63. package/es/pager/pager.js +5 -10
  64. package/es/pager/pager.js.map +1 -1
  65. package/es/player/base-player.js +1 -6
  66. package/es/player/base-player.js.map +1 -1
  67. package/es/player/controller/controller.d.ts +0 -1
  68. package/es/player/controller/controller.js +5 -18
  69. package/es/player/controller/controller.js.map +1 -1
  70. package/es/scrollbar/scrollbar.d.ts +0 -1
  71. package/es/scrollbar/scrollbar.js +5 -11
  72. package/es/scrollbar/scrollbar.js.map +1 -1
  73. package/es/slider/slider.js +3 -5
  74. package/es/slider/slider.js.map +1 -1
  75. package/package.json +6 -6
@@ -1,5 +1,6 @@
1
1
  import type { IGroupGraphicAttribute } from '@visactor/vrender-core';
2
2
  import { Group } from '@visactor/vrender-core';
3
+ import type { Dict } from '@visactor/vutils';
3
4
  import type { ComponentOptions } from '../interface';
4
5
  export declare abstract class AbstractComponent<T extends IGroupGraphicAttribute = IGroupGraphicAttribute> extends Group {
5
6
  attribute: Partial<T>;
@@ -12,4 +13,5 @@ export declare abstract class AbstractComponent<T extends IGroupGraphicAttribute
12
13
  protected bindEvents(): void;
13
14
  protected abstract render(): void;
14
15
  protected _getNodeId(id: string): string;
16
+ protected _dispatchEvent(eventName: string, details?: Dict<any>): void;
15
17
  }
package/cjs/core/base.js CHANGED
@@ -43,6 +43,12 @@ class AbstractComponent extends vrender_core_1.Group {
43
43
  _getNodeId(id) {
44
44
  return `${this.id}-${this.name}-${id}`;
45
45
  }
46
+ _dispatchEvent(eventName, details) {
47
+ var _a;
48
+ const changeEvent = new vrender_core_1.CustomEvent(eventName, details);
49
+ changeEvent.manager = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventSystem.manager,
50
+ this.dispatchEvent(changeEvent);
51
+ }
46
52
  }
47
53
 
48
54
  exports.AbstractComponent = AbstractComponent;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/core/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["/**\n * @description 组件基类\n */\nimport type { IGroupGraphicAttribute } from '@visactor/vrender-core';\nimport { Group } from '@visactor/vrender-core';\nimport { merge, isFunction, isPlainObject, isNil } from '@visactor/vutils';\nimport type { ComponentOptions } from '../interface';\n\nconst GROUP_ATTRIBUTES = [\n 'x',\n 'y',\n 'dx',\n 'dy',\n 'scaleX',\n 'scaleY',\n 'angle',\n 'anchor',\n 'postMatrix',\n 'visible',\n 'clip',\n 'pickable',\n 'childrenPickable',\n 'zIndex',\n 'cursor'\n];\n\nexport abstract class AbstractComponent<T extends IGroupGraphicAttribute = IGroupGraphicAttribute> extends Group {\n declare attribute: Partial<T>;\n\n protected mode?: '2d' | '3d';\n\n protected skipDefault?: boolean;\n\n constructor(attributes: T, options?: ComponentOptions) {\n super(attributes);\n\n if (options?.mode) {\n this.mode = options.mode;\n\n this.setMode(options.mode);\n }\n\n if (options?.skipDefault) {\n this.skipDefault = true;\n }\n // 组件需要精准 bounds,所以将这个 strokeBoundsBuffer 设置为 0,否则会影响包围盒的获取\n this.setTheme({\n common: {\n strokeBoundsBuffer: 0\n }\n });\n this.attribute = attributes;\n // 这里调用渲染和事件绑定逻辑\n this.onSetStage(() => {\n this.render();\n this.bindEvents();\n });\n }\n\n /**\n * @override\n * 更新单个属性值\n * @param key\n * @param value\n * @param forceUpdateTag\n */\n // @ts-ignore\n setAttribute(key: keyof T, value: any, forceUpdateTag?: boolean | undefined): void {\n // overwrite when previous or next attribute is function\n if (\n isPlainObject(this.attribute[key]) &&\n isPlainObject(value) &&\n !isFunction(this.attribute[key]) &&\n !isFunction(value)\n ) {\n merge(this.attribute[key], value);\n } else {\n this.attribute[key] = value;\n }\n\n // HACK: 待优化\n if (!GROUP_ATTRIBUTES.includes(key as string)) {\n this.render();\n }\n\n this.valid = this.isValid();\n if (!this.updateShapeAndBoundsTagSetted() && (forceUpdateTag || this.needUpdateTag(key as string))) {\n this.addUpdateShapeAndBoundsTag();\n } else {\n this.addUpdateBoundTag();\n }\n this.addUpdatePositionTag();\n this.onAttributeUpdate();\n }\n\n // @ts-ignore\n setAttributes(params: Partial<T>, forceUpdateTag?: boolean | undefined): void {\n const keys = Object.keys(params) as (keyof T)[];\n this._mergeAttributes(params, keys);\n\n // HACK: 待优化\n if (!keys.every(key => GROUP_ATTRIBUTES.includes(key as string))) {\n this.render();\n }\n\n this.valid = this.isValid();\n // 没有设置shape&bounds的tag\n if (!this.updateShapeAndBoundsTagSetted() && (forceUpdateTag || this.needUpdateTags(keys as string[]))) {\n this.addUpdateShapeAndBoundsTag();\n } else {\n this.addUpdateBoundTag();\n }\n this.addUpdatePositionTag();\n this.onAttributeUpdate();\n }\n\n protected _mergeAttributes(params: Partial<T>, keys?: (keyof T)[]) {\n if (isNil(keys)) {\n keys = Object.keys(params) as (keyof T)[];\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i] as keyof Partial<T>;\n // overwrite when previous or next attribute is function\n if (isPlainObject(this.attribute[key]) && !isFunction(this.attribute[key]) && !isFunction(params[key])) {\n merge(this.attribute[key], params[key]);\n } else {\n this.attribute[key] = params[key];\n }\n }\n }\n\n protected bindEvents() {\n // please override\n }\n\n protected abstract render(): void;\n\n // 图形元素 id\n protected _getNodeId(id: string) {\n return `${this.id}-${this.name}-${id}`;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/core/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["/**\n * @description 组件基类\n */\nimport type { IGroupGraphicAttribute } from '@visactor/vrender-core';\nimport { Group, CustomEvent } from '@visactor/vrender-core';\nimport type { Dict } from '@visactor/vutils';\nimport { merge, isFunction, isPlainObject, isNil } from '@visactor/vutils';\nimport type { ComponentOptions } from '../interface';\n\nconst GROUP_ATTRIBUTES = [\n 'x',\n 'y',\n 'dx',\n 'dy',\n 'scaleX',\n 'scaleY',\n 'angle',\n 'anchor',\n 'postMatrix',\n 'visible',\n 'clip',\n 'pickable',\n 'childrenPickable',\n 'zIndex',\n 'cursor'\n];\n\nexport abstract class AbstractComponent<T extends IGroupGraphicAttribute = IGroupGraphicAttribute> extends Group {\n declare attribute: Partial<T>;\n\n protected mode?: '2d' | '3d';\n\n protected skipDefault?: boolean;\n\n constructor(attributes: T, options?: ComponentOptions) {\n super(attributes);\n\n if (options?.mode) {\n this.mode = options.mode;\n\n this.setMode(options.mode);\n }\n\n if (options?.skipDefault) {\n this.skipDefault = true;\n }\n // 组件需要精准 bounds,所以将这个 strokeBoundsBuffer 设置为 0,否则会影响包围盒的获取\n this.setTheme({\n common: {\n strokeBoundsBuffer: 0\n }\n });\n this.attribute = attributes;\n // 这里调用渲染和事件绑定逻辑\n this.onSetStage(() => {\n this.render();\n this.bindEvents();\n });\n }\n\n /**\n * @override\n * 更新单个属性值\n * @param key\n * @param value\n * @param forceUpdateTag\n */\n // @ts-ignore\n setAttribute(key: keyof T, value: any, forceUpdateTag?: boolean | undefined): void {\n // overwrite when previous or next attribute is function\n if (\n isPlainObject(this.attribute[key]) &&\n isPlainObject(value) &&\n !isFunction(this.attribute[key]) &&\n !isFunction(value)\n ) {\n merge(this.attribute[key], value);\n } else {\n this.attribute[key] = value;\n }\n\n // HACK: 待优化\n if (!GROUP_ATTRIBUTES.includes(key as string)) {\n this.render();\n }\n\n this.valid = this.isValid();\n if (!this.updateShapeAndBoundsTagSetted() && (forceUpdateTag || this.needUpdateTag(key as string))) {\n this.addUpdateShapeAndBoundsTag();\n } else {\n this.addUpdateBoundTag();\n }\n this.addUpdatePositionTag();\n this.onAttributeUpdate();\n }\n\n // @ts-ignore\n setAttributes(params: Partial<T>, forceUpdateTag?: boolean | undefined): void {\n const keys = Object.keys(params) as (keyof T)[];\n this._mergeAttributes(params, keys);\n\n // HACK: 待优化\n if (!keys.every(key => GROUP_ATTRIBUTES.includes(key as string))) {\n this.render();\n }\n\n this.valid = this.isValid();\n // 没有设置shape&bounds的tag\n if (!this.updateShapeAndBoundsTagSetted() && (forceUpdateTag || this.needUpdateTags(keys as string[]))) {\n this.addUpdateShapeAndBoundsTag();\n } else {\n this.addUpdateBoundTag();\n }\n this.addUpdatePositionTag();\n this.onAttributeUpdate();\n }\n\n protected _mergeAttributes(params: Partial<T>, keys?: (keyof T)[]) {\n if (isNil(keys)) {\n keys = Object.keys(params) as (keyof T)[];\n }\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i] as keyof Partial<T>;\n // overwrite when previous or next attribute is function\n if (isPlainObject(this.attribute[key]) && !isFunction(this.attribute[key]) && !isFunction(params[key])) {\n merge(this.attribute[key], params[key]);\n } else {\n this.attribute[key] = params[key];\n }\n }\n }\n\n protected bindEvents() {\n // please override\n }\n\n protected abstract render(): void;\n\n // 图形元素 id\n protected _getNodeId(id: string) {\n return `${this.id}-${this.name}-${id}`;\n }\n\n // 用于 emit 组件自己的事件\n protected _dispatchEvent(eventName: string, details?: Dict<any>) {\n // 封装事件\n const changeEvent = new CustomEvent(eventName, details);\n // FIXME: 需要在 vrender 的事件系统支持\n // @ts-ignore\n changeEvent.manager = this.stage?.eventSystem.manager;\n\n this.dispatchEvent(changeEvent);\n }\n}\n"]}
@@ -68,6 +68,7 @@ export declare const DEFAULT_DATA_ZOOM_ATTRIBUTES: {
68
68
  };
69
69
  startHandlerStyle: {
70
70
  visible: boolean;
71
+ triggerMinSize: number;
71
72
  symbolType: string;
72
73
  fill: string;
73
74
  stroke: string;
@@ -75,6 +76,7 @@ export declare const DEFAULT_DATA_ZOOM_ATTRIBUTES: {
75
76
  };
76
77
  endHandlerStyle: {
77
78
  visible: boolean;
79
+ triggerMinSize: number;
78
80
  symbolType: string;
79
81
  fill: string;
80
82
  stroke: string;
@@ -95,3 +97,19 @@ export declare const DEFAULT_DATA_ZOOM_ATTRIBUTES: {
95
97
  };
96
98
  };
97
99
  };
100
+ export declare const DEFAULT_HANDLER_ATTR_MAP: {
101
+ horizontal: {
102
+ angle: number;
103
+ strokeBoundsBuffer: number;
104
+ boundsPadding: number;
105
+ pickMode: string;
106
+ cursor: string;
107
+ };
108
+ vertical: {
109
+ angle: number;
110
+ cursor: string;
111
+ boundsPadding: number;
112
+ pickMode: string;
113
+ strokeBoundsBuffer: number;
114
+ };
115
+ };
@@ -2,7 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
- }), exports.DEFAULT_DATA_ZOOM_ATTRIBUTES = void 0, exports.DEFAULT_DATA_ZOOM_ATTRIBUTES = {
5
+ }), exports.DEFAULT_HANDLER_ATTR_MAP = exports.DEFAULT_DATA_ZOOM_ATTRIBUTES = void 0,
6
+ exports.DEFAULT_DATA_ZOOM_ATTRIBUTES = {
6
7
  orient: "bottom",
7
8
  showDetail: "auto",
8
9
  brushSelect: !0,
@@ -72,6 +73,7 @@ Object.defineProperty(exports, "__esModule", {
72
73
  },
73
74
  startHandlerStyle: {
74
75
  visible: !0,
76
+ triggerMinSize: 40,
75
77
  symbolType: "M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z",
76
78
  fill: "white",
77
79
  stroke: "#B0C8F9",
@@ -79,6 +81,7 @@ Object.defineProperty(exports, "__esModule", {
79
81
  },
80
82
  endHandlerStyle: {
81
83
  visible: !0,
84
+ triggerMinSize: 40,
82
85
  symbolType: "M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z",
83
86
  fill: "white",
84
87
  stroke: "#B0C8F9",
@@ -98,4 +101,19 @@ Object.defineProperty(exports, "__esModule", {
98
101
  fill: "#6F6F6F"
99
102
  }
100
103
  }
104
+ }, exports.DEFAULT_HANDLER_ATTR_MAP = {
105
+ horizontal: {
106
+ angle: 0,
107
+ strokeBoundsBuffer: 0,
108
+ boundsPadding: 2,
109
+ pickMode: "imprecise",
110
+ cursor: "ew-resize"
111
+ },
112
+ vertical: {
113
+ angle: Math.PI / 180 * 90,
114
+ cursor: "ns-resize",
115
+ boundsPadding: 2,
116
+ pickMode: "imprecise",
117
+ strokeBoundsBuffer: 0
118
+ }
101
119
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/data-zoom/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG;IAC1C,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,UAAU;IACrB,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE;QACf,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;KAChB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,GAAG;KACjB;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;YACZ,IAAI,EAAE,SAAS;SAChB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;SACb;KACF;IACD,uBAAuB,EAAE;QACvB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,GAAG;KACjB;IACD,4BAA4B,EAAE;QAC5B,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;YACZ,IAAI,EAAE,SAAS;SAChB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;SACb;KACF;IACD,kBAAkB,EAAE;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE;YACV,IAAI,EAAE,CAAC;YACP,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,SAAS;gBACjB,YAAY,EAAE,CAAC;aAChB;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,SAAS;YACjB,UAAU,EAER,8PAA8P;YAChQ,SAAS,EAAE,GAAG;SACf;KACF;IACD,iBAAiB,EAAE;QACjB,OAAO,EAAE,IAAI;QACb,UAAU,EAER,yiBAAyiB;QAE3iB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,GAAG;KACf;IACD,eAAe,EAAE;QACf,OAAO,EAAE,IAAI;QACb,UAAU,EAER,yiBAAyiB;QAE3iB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,GAAG;KACf;IACD,cAAc,EAAE;QACd,OAAO,EAAE,CAAC;QACV,SAAS,EAAE;YACT,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;SAChB;KACF;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,CAAC;QACV,SAAS,EAAE;YACT,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;SAChB;KACF;CACF,CAAC","file":"config.js","sourcesContent":["export const DEFAULT_DATA_ZOOM_ATTRIBUTES = {\n orient: 'bottom',\n showDetail: 'auto',\n brushSelect: true,\n zoomLock: false,\n minSpan: 0,\n maxSpan: 1,\n delayType: 'throttle',\n delayTime: 0,\n realTime: true,\n backgroundStyle: {\n fill: 'white',\n stroke: '#D1DBEE',\n lineWidth: 1,\n cornerRadius: 2\n },\n dragMaskStyle: {\n fill: '#B0C8F9',\n fillOpacity: 0.2\n },\n backgroundChartStyle: {\n area: {\n visible: true,\n stroke: '#D1DBEE',\n lineWidth: 1,\n fill: '#F6F8FC'\n },\n line: {\n visible: true,\n stroke: '#D1DBEE',\n lineWidth: 1\n }\n },\n selectedBackgroundStyle: {\n fill: '#B0C8F9',\n fillOpacity: 0.5\n },\n selectedBackgroundChartStyle: {\n area: {\n visible: true,\n stroke: '#B0C8F9',\n lineWidth: 1,\n fill: '#fbb934'\n },\n line: {\n visible: true,\n stroke: '#fbb934',\n lineWidth: 1\n }\n },\n middleHandlerStyle: {\n visible: true,\n background: {\n size: 8,\n style: {\n fill: 'white',\n stroke: '#B0C8F9',\n cornerRadius: 2\n }\n },\n icon: {\n size: 6,\n fill: 'white',\n stroke: '#B0C8F9',\n symbolType:\n // eslint-disable-next-line max-len\n 'M 0.3 -0.5 C 0.41 -0.5 0.5 -0.41 0.5 -0.3 C 0.5 -0.3 0.5 0.3 0.5 0.3 C 0.5 0.41 0.41 0.5 0.3 0.5 C 0.3 0.5 -0.3 0.5 -0.3 0.5 C -0.41 0.5 -0.5 0.41 -0.5 0.3 C -0.5 0.3 -0.5 -0.3 -0.5 -0.3 C -0.5 -0.41 -0.41 -0.5 -0.3 -0.5 C -0.3 -0.5 0.3 -0.5 0.3 -0.5 Z',\n lineWidth: 0.5\n }\n },\n startHandlerStyle: {\n visible: true,\n symbolType:\n // eslint-disable-next-line max-len\n 'M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z',\n // size: 40,\n fill: 'white',\n stroke: '#B0C8F9',\n lineWidth: 0.5\n },\n endHandlerStyle: {\n visible: true,\n symbolType:\n // eslint-disable-next-line max-len\n 'M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z',\n // size: 40,\n fill: 'white',\n stroke: '#B0C8F9',\n lineWidth: 0.5\n },\n startTextStyle: {\n padding: 4,\n textStyle: {\n fontSize: 10,\n fill: '#6F6F6F'\n }\n },\n endTextStyle: {\n padding: 4,\n textStyle: {\n fontSize: 10,\n fill: '#6F6F6F'\n }\n }\n};\n"]}
1
+ {"version":3,"sources":["../src/data-zoom/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG;IAC1C,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,UAAU;IACrB,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE;QACf,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;KAChB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,GAAG;KACjB;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;YACZ,IAAI,EAAE,SAAS;SAChB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;SACb;KACF;IACD,uBAAuB,EAAE;QACvB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,GAAG;KACjB;IACD,4BAA4B,EAAE;QAC5B,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;YACZ,IAAI,EAAE,SAAS;SAChB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,CAAC;SACb;KACF;IACD,kBAAkB,EAAE;QAClB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE;YACV,IAAI,EAAE,CAAC;YACP,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,SAAS;gBACjB,YAAY,EAAE,CAAC;aAChB;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,SAAS;YACjB,UAAU,EAER,8PAA8P;YAChQ,SAAS,EAAE,GAAG;SACf;KACF;IACD,iBAAiB,EAAE;QACjB,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,EAAE;QAClB,UAAU,EAER,yiBAAyiB;QAE3iB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,GAAG;KACf;IACD,eAAe,EAAE;QACf,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,EAAE;QAClB,UAAU,EAER,yiBAAyiB;QAE3iB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,GAAG;KACf;IACD,cAAc,EAAE;QACd,OAAO,EAAE,CAAC;QACV,SAAS,EAAE;YACT,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;SAChB;KACF;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,CAAC;QACV,SAAS,EAAE;YACT,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;SAChB;KACF;CACF,CAAC;AAEW,QAAA,wBAAwB,GAAG;IACtC,UAAU,EAAE;QACV,KAAK,EAAE,CAAC;QACR,kBAAkB,EAAE,CAAC;QACrB,aAAa,EAAE,CAAC;QAChB,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,WAAW;KACpB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;QAC3B,MAAM,EAAE,WAAW;QACnB,aAAa,EAAE,CAAC;QAChB,QAAQ,EAAE,WAAW;QACrB,kBAAkB,EAAE,CAAC;KACtB;CACF,CAAC","file":"config.js","sourcesContent":["export const DEFAULT_DATA_ZOOM_ATTRIBUTES = {\n orient: 'bottom',\n showDetail: 'auto',\n brushSelect: true,\n zoomLock: false,\n minSpan: 0,\n maxSpan: 1,\n delayType: 'throttle',\n delayTime: 0,\n realTime: true,\n backgroundStyle: {\n fill: 'white',\n stroke: '#D1DBEE',\n lineWidth: 1,\n cornerRadius: 2\n },\n dragMaskStyle: {\n fill: '#B0C8F9',\n fillOpacity: 0.2\n },\n backgroundChartStyle: {\n area: {\n visible: true,\n stroke: '#D1DBEE',\n lineWidth: 1,\n fill: '#F6F8FC'\n },\n line: {\n visible: true,\n stroke: '#D1DBEE',\n lineWidth: 1\n }\n },\n selectedBackgroundStyle: {\n fill: '#B0C8F9',\n fillOpacity: 0.5\n },\n selectedBackgroundChartStyle: {\n area: {\n visible: true,\n stroke: '#B0C8F9',\n lineWidth: 1,\n fill: '#fbb934'\n },\n line: {\n visible: true,\n stroke: '#fbb934',\n lineWidth: 1\n }\n },\n middleHandlerStyle: {\n visible: true,\n background: {\n size: 8,\n style: {\n fill: 'white',\n stroke: '#B0C8F9',\n cornerRadius: 2\n }\n },\n icon: {\n size: 6,\n fill: 'white',\n stroke: '#B0C8F9',\n symbolType:\n // eslint-disable-next-line max-len\n 'M 0.3 -0.5 C 0.41 -0.5 0.5 -0.41 0.5 -0.3 C 0.5 -0.3 0.5 0.3 0.5 0.3 C 0.5 0.41 0.41 0.5 0.3 0.5 C 0.3 0.5 -0.3 0.5 -0.3 0.5 C -0.41 0.5 -0.5 0.41 -0.5 0.3 C -0.5 0.3 -0.5 -0.3 -0.5 -0.3 C -0.5 -0.41 -0.41 -0.5 -0.3 -0.5 C -0.3 -0.5 0.3 -0.5 0.3 -0.5 Z',\n lineWidth: 0.5\n }\n },\n startHandlerStyle: {\n visible: true,\n triggerMinSize: 40,\n symbolType:\n // eslint-disable-next-line max-len\n 'M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z',\n // size: 40,\n fill: 'white',\n stroke: '#B0C8F9',\n lineWidth: 0.5\n },\n endHandlerStyle: {\n visible: true,\n triggerMinSize: 40,\n symbolType:\n // eslint-disable-next-line max-len\n 'M -0.0544 0.25 C -0.0742 0.25 -0.0901 0.234 -0.0901 0.2143 L -0.0901 -0.1786 C -0.0901 -0.1983 -0.0742 -0.2143 -0.0544 -0.2143 L -0.0187 -0.2143 L -0.0187 -0.5 L 0.017 -0.5 L 0.017 -0.2143 L 0.0527 -0.2143 C 0.0724 -0.2143 0.0884 -0.1983 0.0884 -0.1786 L 0.0884 0.2143 C 0.0884 0.234 0.0724 0.25 0.0527 0.25 L 0.017 0.25 L 0.017 0.5 L -0.0187 0.5 L -0.0187 0.25 L -0.0544 0.25 Z M -0.0187 -0.1429 L -0.0544 -0.1429 L -0.0544 0.1786 L -0.0187 0.1786 L -0.0187 -0.1429 Z M 0.0527 -0.1429 L 0.017 -0.1429 L 0.017 0.1786 L 0.0527 0.1786 L 0.0527 -0.1429 Z',\n // size: 40,\n fill: 'white',\n stroke: '#B0C8F9',\n lineWidth: 0.5\n },\n startTextStyle: {\n padding: 4,\n textStyle: {\n fontSize: 10,\n fill: '#6F6F6F'\n }\n },\n endTextStyle: {\n padding: 4,\n textStyle: {\n fontSize: 10,\n fill: '#6F6F6F'\n }\n }\n};\n\nexport const DEFAULT_HANDLER_ATTR_MAP = {\n horizontal: {\n angle: 0,\n strokeBoundsBuffer: 0,\n boundsPadding: 2,\n pickMode: 'imprecise',\n cursor: 'ew-resize'\n },\n vertical: {\n angle: 90 * (Math.PI / 180),\n cursor: 'ns-resize',\n boundsPadding: 2,\n pickMode: 'imprecise',\n strokeBoundsBuffer: 0\n }\n};\n"]}
@@ -78,6 +78,7 @@ export declare class DataZoom extends AbstractComponent<Required<DataZoomAttribu
78
78
  };
79
79
  startHandlerStyle: {
80
80
  visible: boolean;
81
+ triggerMinSize: number;
81
82
  symbolType: string;
82
83
  fill: string;
83
84
  stroke: string;
@@ -85,6 +86,7 @@ export declare class DataZoom extends AbstractComponent<Required<DataZoomAttribu
85
86
  };
86
87
  endHandlerStyle: {
87
88
  visible: boolean;
89
+ triggerMinSize: number;
88
90
  symbolType: string;
89
91
  fill: string;
90
92
  stroke: string;
@@ -108,9 +110,11 @@ export declare class DataZoom extends AbstractComponent<Required<DataZoomAttribu
108
110
  private _isHorizontal;
109
111
  private _background;
110
112
  private _container;
113
+ private _startHandlerMask;
111
114
  private _startHandler;
112
115
  private _middleHandlerSymbol;
113
116
  private _middleHandlerRect;
117
+ private _endHandlerMask;
114
118
  private _endHandler;
115
119
  private _selectedBackground;
116
120
  private _dragMask;
@@ -148,7 +152,6 @@ export declare class DataZoom extends AbstractComponent<Required<DataZoomAttribu
148
152
  private _previewPointsY;
149
153
  private _previewPointsX1;
150
154
  private _previewPointsY1;
151
- private _updateStateCallback;
152
155
  private _statePointToData;
153
156
  private _layoutAttrFromConfig;
154
157
  constructor(attributes: DataZoomAttributes, options?: ComponentOptions);
@@ -179,14 +182,12 @@ export declare class DataZoom extends AbstractComponent<Required<DataZoomAttribu
179
182
  protected setPreviewAttributes(type: 'line' | 'area', group: IGroup): void;
180
183
  protected setSelectedPreviewAttributes(type: 'area' | 'line', group: IGroup): void;
181
184
  protected maybeAddLabel(container: IGroup, attributes: TagAttributes, name: string): Tag;
182
- private _dispatchChangeEvent;
183
185
  setStartAndEnd(start?: number, end?: number): void;
184
186
  setPreviewData(data: any[]): void;
185
187
  setText(text: string, tag: 'start' | 'end'): void;
186
188
  getStartValue(): string | number;
187
189
  getEndTextValue(): string | number;
188
190
  getMiddleHandlerSize(): number;
189
- setUpdateStateCallback(callback: (start: number, end: number, trigger?: DataZoomActiveTag) => void): void;
190
191
  setPreviewPointsX(callback: (d: any) => number): void;
191
192
  setPreviewPointsY(callback: (d: any) => number): void;
192
193
  setPreviewPointsX1(callback: (d: any) => number): void;
@@ -42,14 +42,18 @@ class DataZoom extends base_1.AbstractComponent {
42
42
  end: 1
43
43
  }, this._statePointToData = state => state, this._onHandlerPointerDown = (e, tag) => {
44
44
  e.stopPropagation(), "start" === tag ? (this._activeTag = type_1.DataZoomActiveTag.startHandler,
45
- this._activeItem = this._startHandler) : "end" === tag ? (this._activeTag = type_1.DataZoomActiveTag.endHandler,
46
- this._activeItem = this._endHandler) : "middleRect" === tag ? (this._activeTag = type_1.DataZoomActiveTag.middleHandler,
45
+ this._activeItem = this._startHandlerMask) : "end" === tag ? (this._activeTag = type_1.DataZoomActiveTag.endHandler,
46
+ this._activeItem = this._endHandlerMask) : "middleRect" === tag ? (this._activeTag = type_1.DataZoomActiveTag.middleHandler,
47
47
  this._activeItem = this._middleHandlerRect) : "middleSymbol" === tag ? (this._activeTag = type_1.DataZoomActiveTag.middleHandler,
48
48
  this._activeItem = this._middleHandlerSymbol) : "background" === tag && (this._activeTag = type_1.DataZoomActiveTag.background,
49
49
  this._activeItem = this._background), this._activeState = !0, this._activeCache.startPos = this.eventPosToStagePos(e),
50
- this._activeCache.lastPos = this.eventPosToStagePos(e);
51
- }, this._onHandlerPointerMove = e => {
52
- var _a;
50
+ this._activeCache.lastPos = this.eventPosToStagePos(e), "browser" === vrender_core_1.vglobal.env && (vrender_core_1.vglobal.addEventListener("pointermove", this._onHandlerPointerMove, {
51
+ capture: !0
52
+ }), vrender_core_1.vglobal.addEventListener("pointerup", this._onHandlerPointerUp.bind(this))),
53
+ this.addEventListener("pointermove", this._onHandlerPointerMove, {
54
+ capture: !0
55
+ });
56
+ }, this._onHandlerPointerMove = delayMap[this.attribute.delayType]((e => {
53
57
  e.stopPropagation();
54
58
  const {start: startAttr, end: endAttr, brushSelect: brushSelect, realTime: realTime = !0} = this.attribute, pos = this.eventPosToStagePos(e), {attPos: attPos, max: max} = this._layoutCache, dis = (pos[attPos] - this._activeCache.lastPos[attPos]) / max;
55
59
  let {start: start, end: end} = this.state;
@@ -58,9 +62,12 @@ class DataZoom extends base_1.AbstractComponent {
58
62
  start = end + dis, this._activeTag = type_1.DataZoomActiveTag.startHandler) : end += dis),
59
63
  this._activeCache.lastPos = pos, brushSelect && this.renderDragMask()), start = Math.min(Math.max(start, 0), 1),
60
64
  end = Math.min(Math.max(end, 0), 1), startAttr === start && endAttr === end || (this.setStateAttr(start, end, !0),
61
- realTime && (null === (_a = this._updateStateCallback) || void 0 === _a || _a.call(this, start, end, this._activeTag)),
62
- this._dispatchChangeEvent(start, end));
63
- };
65
+ this._dispatchEvent("change", {
66
+ start: start,
67
+ end: end,
68
+ tag: this._activeTag
69
+ }));
70
+ }), this.attribute.delayTime);
64
71
  const {start: start, end: end, size: size, orient: orient, showDetail: showDetail, position: position, previewData: previewData, previewPointsX: previewPointsX, previewPointsY: previewPointsY, previewPointsX1: previewPointsX1, previewPointsY1: previewPointsY1, updateStateCallback: updateStateCallback} = this.attribute, {width: width, height: height} = size;
65
72
  start && (this.state.start = start), end && (this.state.end = end), this._spanCache = this.state.end - this.state.start,
66
73
  this._isHorizontal = "top" === orient || "bottom" === orient, this._layoutCache.max = this._isHorizontal ? width : height,
@@ -69,14 +76,13 @@ class DataZoom extends base_1.AbstractComponent {
69
76
  previewData && (this._previewData = previewData), (0, vutils_1.isFunction)(previewPointsX) && (this._previewPointsX = previewPointsX),
70
77
  (0, vutils_1.isFunction)(previewPointsY) && (this._previewPointsY = previewPointsY),
71
78
  (0, vutils_1.isFunction)(previewPointsX1) && (this._previewPointsX1 = previewPointsX1),
72
- (0, vutils_1.isFunction)(previewPointsY1) && (this._previewPointsY1 = previewPointsY1),
73
- (0, vutils_1.isFunction)(updateStateCallback) && (this._updateStateCallback = updateStateCallback);
79
+ (0, vutils_1.isFunction)(previewPointsY1) && (this._previewPointsY1 = previewPointsY1);
74
80
  }
75
81
  bindEvents() {
76
82
  if (this.attribute.disableTriggerEvent) return;
77
- const {showDetail: showDetail, brushSelect: brushSelect, delayType: delayType = "throttle", delayTime: delayTime = 0} = this.attribute;
78
- this._startHandler && this._startHandler.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "start"))),
79
- this._endHandler && this._endHandler.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "end"))),
83
+ const {showDetail: showDetail, brushSelect: brushSelect} = this.attribute;
84
+ this._startHandlerMask && this._startHandlerMask.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "start"))),
85
+ this._endHandlerMask && this._endHandlerMask.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "end"))),
80
86
  this._middleHandlerSymbol && this._middleHandlerSymbol.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "middleSymbol"))),
81
87
  this._middleHandlerRect && this._middleHandlerRect.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "middleRect")));
82
88
  const selectedTag = brushSelect ? "background" : "middleRect";
@@ -84,12 +90,7 @@ class DataZoom extends base_1.AbstractComponent {
84
90
  brushSelect && this._background && this._background.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "background"))),
85
91
  brushSelect && this._previewGroup && this._previewGroup.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, "background"))),
86
92
  this._selectedPreviewGroup && this._selectedPreviewGroup.addEventListener("pointerdown", (e => this._onHandlerPointerDown(e, selectedTag))),
87
- "browser" === vrender_core_1.vglobal.env && (vrender_core_1.vglobal.addEventListener("pointermove", delayMap[delayType](this._onHandlerPointerMove.bind(this), delayTime), {
88
- capture: !0
89
- }), vrender_core_1.vglobal.addEventListener("pointerup", this._onHandlerPointerUp.bind(this))),
90
- this.addEventListener("pointermove", delayMap[delayType](this._onHandlerPointerMove, delayTime), {
91
- capture: !0
92
- }), this.addEventListener("pointerup", this._onHandlerPointerUp), this.addEventListener("pointerupoutside", this._onHandlerPointerUp),
93
+ this.addEventListener("pointerup", this._onHandlerPointerUp), this.addEventListener("pointerupoutside", this._onHandlerPointerUp),
93
94
  "auto" === showDetail && (this.addEventListener("pointerenter", this._onHandlerPointerEnter),
94
95
  this.addEventListener("pointerleave", this._onHandlerPointerLeave));
95
96
  }
@@ -106,15 +107,14 @@ class DataZoom extends base_1.AbstractComponent {
106
107
  }));
107
108
  }
108
109
  eventPosToStagePos(e) {
109
- var _a, _b, _c;
110
- const stagePosition = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.window.getBoundingClientRect();
110
+ var _a, _b;
111
+ const {x: x, y: y} = vrender_core_1.vglobal.mapToCanvasPoint(e);
111
112
  return {
112
- x: e.clientX - ((null == stagePosition ? void 0 : stagePosition.left) || 0) - ((null === (_b = this.stage) || void 0 === _b ? void 0 : _b.x) || 0),
113
- y: e.clientY - ((null == stagePosition ? void 0 : stagePosition.top) || 0) - ((null === (_c = this.stage) || void 0 === _c ? void 0 : _c.y) || 0)
113
+ x: x - ((null === (_a = this.stage) || void 0 === _a ? void 0 : _a.x) || 0),
114
+ y: y - ((null === (_b = this.stage) || void 0 === _b ? void 0 : _b.y) || 0)
114
115
  };
115
116
  }
116
117
  _onHandlerPointerUp(e) {
117
- var _a;
118
118
  e.preventDefault();
119
119
  const {start: start, end: end, brushSelect: brushSelect, realTime: realTime = !0} = this.attribute;
120
120
  if (this._activeState && this._activeTag === type_1.DataZoomActiveTag.background) {
@@ -122,8 +122,16 @@ class DataZoom extends base_1.AbstractComponent {
122
122
  this.backgroundDragZoom(this._activeCache.startPos, pos);
123
123
  }
124
124
  this._activeState = !1, brushSelect && this.renderDragMask(), realTime && start === this.state.start && end === this.state.end || (this.setStateAttr(this.state.start, this.state.end, !0),
125
- null === (_a = this._updateStateCallback) || void 0 === _a || _a.call(this, this.state.start, this.state.end, this._activeTag),
126
- this._dispatchChangeEvent(this.state.start, this.state.end));
125
+ this._dispatchEvent("change", {
126
+ start: this.state.start,
127
+ end: this.state.end,
128
+ tag: this._activeTag
129
+ })), "browser" === vrender_core_1.vglobal.env && (vrender_core_1.vglobal.removeEventListener("pointermove", this._onHandlerPointerMove, {
130
+ capture: !0
131
+ }), vrender_core_1.vglobal.removeEventListener("pointerup", this._onHandlerPointerUp.bind(this))),
132
+ this.removeEventListener("pointermove", this._onHandlerPointerMove, {
133
+ capture: !0
134
+ });
127
135
  }
128
136
  _onHandlerPointerEnter(e) {
129
137
  e.stopPropagation(), this._showText = !0, this.renderText();
@@ -236,17 +244,17 @@ class DataZoom extends base_1.AbstractComponent {
236
244
  }, this._layoutAttrFromConfig;
237
245
  }
238
246
  render() {
239
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
247
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
240
248
  this._layoutAttrFromConfig = null;
241
- const {orient: orient, backgroundStyle: backgroundStyle, backgroundChartStyle: backgroundChartStyle, selectedBackgroundStyle: selectedBackgroundStyle, selectedBackgroundChartStyle: selectedBackgroundChartStyle, middleHandlerStyle: middleHandlerStyle, startHandlerStyle: startHandlerStyle, endHandlerStyle: endHandlerStyle, brushSelect: brushSelect} = this.attribute, {start: start, end: end} = this.state, {position: position, width: width, height: height} = this.getLayoutAttrFromConfig(), group = this.createOrUpdateChild("dataZoom-container", {}, "group");
242
- this._container = group, this._background = group.createOrUpdateChild("background", Object.assign({
249
+ const {orient: orient, backgroundStyle: backgroundStyle, backgroundChartStyle: backgroundChartStyle, selectedBackgroundStyle: selectedBackgroundStyle, selectedBackgroundChartStyle: selectedBackgroundChartStyle, middleHandlerStyle: middleHandlerStyle, startHandlerStyle: startHandlerStyle, endHandlerStyle: endHandlerStyle, brushSelect: brushSelect} = this.attribute, {start: start, end: end} = this.state, {position: position, width: width, height: height} = this.getLayoutAttrFromConfig(), startHandlerMinSize = null !== (_a = startHandlerStyle.triggerMinSize) && void 0 !== _a ? _a : 40, endHandlerMinSize = null !== (_b = endHandlerStyle.triggerMinSize) && void 0 !== _b ? _b : 40, group = this.createOrUpdateChild("dataZoom-container", {}, "group");
250
+ if (this._container = group, this._background = group.createOrUpdateChild("background", Object.assign({
243
251
  x: position.x,
244
252
  y: position.y,
245
253
  width: width,
246
254
  height: height,
247
255
  cursor: brushSelect ? "crosshair" : "auto"
248
- }, backgroundStyle), "rect"), (null === (_a = null == backgroundChartStyle ? void 0 : backgroundChartStyle.line) || void 0 === _a ? void 0 : _a.visible) && this.setPreviewAttributes("line", group),
249
- (null === (_b = null == backgroundChartStyle ? void 0 : backgroundChartStyle.area) || void 0 === _b ? void 0 : _b.visible) && this.setPreviewAttributes("area", group),
256
+ }, backgroundStyle), "rect"), (null === (_c = null == backgroundChartStyle ? void 0 : backgroundChartStyle.line) || void 0 === _c ? void 0 : _c.visible) && this.setPreviewAttributes("line", group),
257
+ (null === (_d = null == backgroundChartStyle ? void 0 : backgroundChartStyle.area) || void 0 === _d ? void 0 : _d.visible) && this.setPreviewAttributes("area", group),
250
258
  brushSelect && this.renderDragMask(), this._isHorizontal ? this._selectedBackground = group.createOrUpdateChild("selectedBackground", Object.assign({
251
259
  x: position.x + start * width,
252
260
  y: position.y,
@@ -259,73 +267,92 @@ class DataZoom extends base_1.AbstractComponent {
259
267
  width: width,
260
268
  height: (end - start) * height,
261
269
  cursor: brushSelect ? "crosshair" : "move"
262
- }, selectedBackgroundStyle), "rect"), (null === (_c = null == selectedBackgroundChartStyle ? void 0 : selectedBackgroundChartStyle.line) || void 0 === _c ? void 0 : _c.visible) && this.setSelectedPreviewAttributes("line", group),
263
- (null === (_d = null == selectedBackgroundChartStyle ? void 0 : selectedBackgroundChartStyle.area) || void 0 === _d ? void 0 : _d.visible) && this.setSelectedPreviewAttributes("area", group),
264
- this._showText && this.renderText(), this._isHorizontal ? (this._startHandler = group.createOrUpdateChild("startHandler", Object.assign({
265
- x: position.x + start * width,
266
- y: position.y + height / 2,
267
- size: height,
268
- angle: 0,
269
- symbolType: null !== (_e = null == startHandlerStyle ? void 0 : startHandlerStyle.symbolType) && void 0 !== _e ? _e : "square",
270
- cursor: "ew-resize",
271
- strokeBoundsBuffer: 0,
272
- boundsPadding: 2,
273
- pickMode: "imprecise"
274
- }, startHandlerStyle), "symbol"), this._endHandler = group.createOrUpdateChild("endHandler", Object.assign({
275
- x: position.x + end * width,
276
- y: position.y + height / 2,
277
- size: height,
278
- angle: 0,
279
- symbolType: null !== (_f = null == endHandlerStyle ? void 0 : endHandlerStyle.symbolType) && void 0 !== _f ? _f : "square",
280
- cursor: "ew-resize",
281
- strokeBoundsBuffer: 0,
282
- boundsPadding: 2,
283
- pickMode: "imprecise"
284
- }, endHandlerStyle), "symbol"), (null == middleHandlerStyle ? void 0 : middleHandlerStyle.visible) && (this._middleHandlerRect = group.createOrUpdateChild("middleHandlerRect", Object.assign({
285
- x: position.x + start * width,
286
- y: position.y - ((null === (_g = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _g ? void 0 : _g.size) || 10),
287
- width: (end - start) * width,
288
- height: (null === (_h = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _h ? void 0 : _h.size) || 10
289
- }, null === (_j = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _j ? void 0 : _j.style), "rect"),
290
- this._middleHandlerSymbol = group.createOrUpdateChild("middleHandlerSymbol", Object.assign({
291
- x: position.x + (start + end) / 2 * width,
292
- y: position.y - ((null === (_k = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _k ? void 0 : _k.size) || 10) / 2,
293
- strokeBoundsBuffer: 0,
294
- angle: 0,
295
- symbolType: null !== (_m = null === (_l = null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon) || void 0 === _l ? void 0 : _l.symbolType) && void 0 !== _m ? _m : "square"
296
- }, null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon), "symbol"))) : (this._startHandler = group.createOrUpdateChild("startHandler", Object.assign({
297
- x: position.x + width / 2,
298
- y: position.y + start * height,
299
- size: width,
300
- angle: Math.PI / 180 * 90,
301
- symbolType: null !== (_o = null == startHandlerStyle ? void 0 : startHandlerStyle.symbolType) && void 0 !== _o ? _o : "square",
302
- cursor: "ns-resize",
303
- boundsPadding: 2,
304
- pickMode: "imprecise",
305
- strokeBoundsBuffer: 0
306
- }, startHandlerStyle), "symbol"), (null == middleHandlerStyle ? void 0 : middleHandlerStyle.visible) && (this._middleHandlerRect = group.createOrUpdateChild("middleHandlerRect", Object.assign({
307
- x: "left" === orient ? position.x - ((null === (_p = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _p ? void 0 : _p.size) || 10) : position.x + width,
308
- y: position.y + start * height,
309
- width: (null === (_q = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _q ? void 0 : _q.size) || 10,
310
- height: (end - start) * height
311
- }, null === (_r = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _r ? void 0 : _r.style), "rect"),
312
- this._middleHandlerSymbol = group.createOrUpdateChild("middleHandlerSymbol", Object.assign({
313
- x: "left" === orient ? position.x - ((null === (_s = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _s ? void 0 : _s.size) || 10) / 2 : position.x + width + ((null === (_t = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _t ? void 0 : _t.size) || 10) / 2,
314
- y: position.y + (start + end) / 2 * height,
315
- angle: Math.PI / 180 * 90,
316
- symbolType: null !== (_v = null === (_u = null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon) || void 0 === _u ? void 0 : _u.symbolType) && void 0 !== _v ? _v : "square",
317
- strokeBoundsBuffer: 0
318
- }, null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon), "symbol")), this._endHandler = group.createOrUpdateChild("endHandler", Object.assign({
319
- x: position.x + width / 2,
320
- y: position.y + end * height,
321
- size: width,
322
- angle: Math.PI / 180 * 90,
323
- symbolType: null !== (_w = null == endHandlerStyle ? void 0 : endHandlerStyle.symbolType) && void 0 !== _w ? _w : "square",
324
- cursor: "ns-resize",
325
- boundsPadding: 2,
326
- pickMode: "imprecise",
327
- strokeBoundsBuffer: 0
328
- }, endHandlerStyle), "symbol"));
270
+ }, selectedBackgroundStyle), "rect"), (null === (_e = null == selectedBackgroundChartStyle ? void 0 : selectedBackgroundChartStyle.line) || void 0 === _e ? void 0 : _e.visible) && this.setSelectedPreviewAttributes("line", group),
271
+ (null === (_f = null == selectedBackgroundChartStyle ? void 0 : selectedBackgroundChartStyle.area) || void 0 === _f ? void 0 : _f.visible) && this.setSelectedPreviewAttributes("area", group),
272
+ this._showText && this.renderText(), this._isHorizontal) {
273
+ this._startHandler = group.createOrUpdateChild("startHandler", Object.assign(Object.assign({
274
+ x: position.x + start * width,
275
+ y: position.y + height / 2,
276
+ size: height,
277
+ symbolType: null !== (_g = null == startHandlerStyle ? void 0 : startHandlerStyle.symbolType) && void 0 !== _g ? _g : "square"
278
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.horizontal), startHandlerStyle), "symbol"),
279
+ this._endHandler = group.createOrUpdateChild("endHandler", Object.assign(Object.assign({
280
+ x: position.x + end * width,
281
+ y: position.y + height / 2,
282
+ size: height,
283
+ symbolType: null !== (_h = null == endHandlerStyle ? void 0 : endHandlerStyle.symbolType) && void 0 !== _h ? _h : "square"
284
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.horizontal), endHandlerStyle), "symbol");
285
+ const startHandlerWidth = Math.max(this._startHandler.AABBBounds.width(), startHandlerMinSize), startHandlerHeight = Math.max(this._startHandler.AABBBounds.height(), startHandlerMinSize), endHandlerWidth = Math.max(this._endHandler.AABBBounds.width(), endHandlerMinSize), endHandlerHeight = Math.max(this._endHandler.AABBBounds.height(), endHandlerMinSize);
286
+ this._startHandlerMask = group.createOrUpdateChild("startHandlerMask", Object.assign({
287
+ x: position.x + start * width - startHandlerWidth / 2,
288
+ y: position.y + height / 2 - startHandlerHeight / 2,
289
+ width: startHandlerWidth,
290
+ height: startHandlerHeight,
291
+ fill: "white",
292
+ fillOpacity: 0
293
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.horizontal), "rect"), this._endHandlerMask = group.createOrUpdateChild("endHandlerMask", Object.assign({
294
+ x: position.x + end * width - endHandlerWidth / 2,
295
+ y: position.y + height / 2 - endHandlerHeight / 2,
296
+ width: endHandlerWidth,
297
+ height: endHandlerHeight,
298
+ fill: "white",
299
+ fillOpacity: 0
300
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.horizontal), "rect"), (null == middleHandlerStyle ? void 0 : middleHandlerStyle.visible) && (this._middleHandlerRect = group.createOrUpdateChild("middleHandlerRect", Object.assign({
301
+ x: position.x + start * width,
302
+ y: position.y - ((null === (_j = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _j ? void 0 : _j.size) || 10),
303
+ width: (end - start) * width,
304
+ height: (null === (_k = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _k ? void 0 : _k.size) || 10
305
+ }, null === (_l = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _l ? void 0 : _l.style), "rect"),
306
+ this._middleHandlerSymbol = group.createOrUpdateChild("middleHandlerSymbol", Object.assign({
307
+ x: position.x + (start + end) / 2 * width,
308
+ y: position.y - ((null === (_m = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _m ? void 0 : _m.size) || 10) / 2,
309
+ strokeBoundsBuffer: 0,
310
+ angle: 0,
311
+ symbolType: null !== (_p = null === (_o = null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon) || void 0 === _o ? void 0 : _o.symbolType) && void 0 !== _p ? _p : "square"
312
+ }, null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon), "symbol"));
313
+ } else {
314
+ this._startHandler = group.createOrUpdateChild("startHandler", Object.assign(Object.assign({
315
+ x: position.x + width / 2,
316
+ y: position.y + start * height,
317
+ size: width,
318
+ symbolType: null !== (_q = null == startHandlerStyle ? void 0 : startHandlerStyle.symbolType) && void 0 !== _q ? _q : "square"
319
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.vertical), startHandlerStyle), "symbol"), this._endHandler = group.createOrUpdateChild("endHandler", Object.assign(Object.assign({
320
+ x: position.x + width / 2,
321
+ y: position.y + end * height,
322
+ size: width,
323
+ symbolType: null !== (_r = null == endHandlerStyle ? void 0 : endHandlerStyle.symbolType) && void 0 !== _r ? _r : "square"
324
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.vertical), endHandlerStyle), "symbol");
325
+ const startHandlerWidth = Math.max(this._startHandler.AABBBounds.width(), startHandlerMinSize), startHandlerHeight = Math.max(this._startHandler.AABBBounds.height(), startHandlerMinSize), endHandlerWidth = Math.max(this._endHandler.AABBBounds.width(), endHandlerMinSize), endHandlerHeight = Math.max(this._endHandler.AABBBounds.height(), endHandlerMinSize);
326
+ this._startHandlerMask = group.createOrUpdateChild("startHandlerMask", Object.assign({
327
+ x: position.x + width / 2 - startHandlerWidth / 2,
328
+ y: position.y + start * height - startHandlerHeight / 2,
329
+ width: startHandlerWidth,
330
+ height: startHandlerHeight,
331
+ symbolType: "rect",
332
+ fill: "white",
333
+ fillOpacity: 0
334
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.vertical), "symbol"), this._endHandlerMask = group.createOrUpdateChild("endHandlerMask", Object.assign({
335
+ x: position.x + width / 2 - endHandlerWidth / 2,
336
+ y: position.y + end * height - endHandlerHeight / 2,
337
+ width: endHandlerWidth,
338
+ height: endHandlerHeight,
339
+ symbolType: "rect",
340
+ fill: "white",
341
+ fillOpacity: 0
342
+ }, config_1.DEFAULT_HANDLER_ATTR_MAP.vertical), "symbol"), (null == middleHandlerStyle ? void 0 : middleHandlerStyle.visible) && (this._middleHandlerRect = group.createOrUpdateChild("middleHandlerRect", Object.assign({
343
+ x: "left" === orient ? position.x - ((null === (_s = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _s ? void 0 : _s.size) || 10) : position.x + width,
344
+ y: position.y + start * height,
345
+ width: (null === (_t = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _t ? void 0 : _t.size) || 10,
346
+ height: (end - start) * height
347
+ }, null === (_u = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _u ? void 0 : _u.style), "rect"),
348
+ this._middleHandlerSymbol = group.createOrUpdateChild("middleHandlerSymbol", Object.assign({
349
+ x: "left" === orient ? position.x - ((null === (_v = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _v ? void 0 : _v.size) || 10) / 2 : position.x + width + ((null === (_w = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _w ? void 0 : _w.size) || 10) / 2,
350
+ y: position.y + (start + end) / 2 * height,
351
+ angle: Math.PI / 180 * 90,
352
+ symbolType: null !== (_y = null === (_x = null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon) || void 0 === _x ? void 0 : _x.symbolType) && void 0 !== _y ? _y : "square",
353
+ strokeBoundsBuffer: 0
354
+ }, null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon), "symbol"));
355
+ }
329
356
  }
330
357
  computeBasePoints() {
331
358
  const {orient: orient} = this.attribute, {position: position, width: width, height: height} = this.getLayoutAttrFromConfig();
@@ -427,22 +454,15 @@ class DataZoom extends base_1.AbstractComponent {
427
454
  return labelShape ? labelShape.setAttributes(attributes) : (labelShape = new tag_1.Tag(attributes),
428
455
  labelShape.name = name), container.add(labelShape), labelShape;
429
456
  }
430
- _dispatchChangeEvent(start, end) {
431
- var _a;
432
- const changeEvent = new vrender_core_1.CustomEvent("change", {
433
- start: start,
434
- end: end
435
- });
436
- changeEvent.manager = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventSystem.manager,
437
- this.dispatchEvent(changeEvent);
438
- }
439
457
  setStartAndEnd(start, end) {
440
- var _a;
441
458
  const {start: startAttr, end: endAttr} = this.attribute;
442
459
  (0, vutils_1.isValid)(start) && (0, vutils_1.isValid)(end) && (start !== this.state.start || end !== this.state.end) && (this.state.start = start,
443
460
  this.state.end = end, startAttr === this.state.start && endAttr === this.state.end || (this.setStateAttr(start, end, !0),
444
- null === (_a = this._updateStateCallback) || void 0 === _a || _a.call(this, start, end, this._activeTag),
445
- this._dispatchChangeEvent(start, end)));
461
+ this._dispatchEvent("change", {
462
+ start: start,
463
+ end: end,
464
+ tag: this._activeTag
465
+ })));
446
466
  }
447
467
  setPreviewData(data) {
448
468
  this._previewData = data;
@@ -461,9 +481,6 @@ class DataZoom extends base_1.AbstractComponent {
461
481
  const {middleHandlerStyle: middleHandlerStyle} = this.attribute, middleHandlerRectSize = null !== (_b = null === (_a = null == middleHandlerStyle ? void 0 : middleHandlerStyle.background) || void 0 === _a ? void 0 : _a.size) && void 0 !== _b ? _b : 10, middleHandlerSymbolSize = null !== (_d = null === (_c = null == middleHandlerStyle ? void 0 : middleHandlerStyle.icon) || void 0 === _c ? void 0 : _c.size) && void 0 !== _d ? _d : 10;
462
482
  return Math.max(middleHandlerRectSize, ...(0, vutils_1.array)(middleHandlerSymbolSize));
463
483
  }
464
- setUpdateStateCallback(callback) {
465
- (0, vutils_1.isFunction)(callback) && (this._updateStateCallback = callback);
466
- }
467
484
  setPreviewPointsX(callback) {
468
485
  (0, vutils_1.isFunction)(callback) && (this._previewPointsX = callback);
469
486
  }