@visactor/vrender-components 0.20.6-beta.0 → 0.20.6
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/axis/grid/base.d.ts +1 -0
- package/cjs/axis/grid/base.js +9 -3
- package/cjs/axis/grid/base.js.map +1 -1
- package/cjs/axis/grid/circle.d.ts +1 -0
- package/cjs/axis/grid/circle.js +4 -0
- package/cjs/axis/grid/circle.js.map +1 -1
- package/cjs/axis/grid/line.d.ts +2 -0
- package/cjs/axis/grid/line.js +9 -5
- package/cjs/axis/grid/line.js.map +1 -1
- package/cjs/axis/overlap/auto-hide.js +7 -13
- package/cjs/axis/overlap/auto-hide.js.map +1 -1
- package/cjs/axis/overlap/util.js +11 -10
- package/cjs/axis/overlap/util.js.map +1 -1
- package/cjs/brush/brush.js +1 -2
- package/cjs/brush/type.js +2 -1
- package/cjs/data-zoom/config.js +2 -1
- package/cjs/empty-tip/empty-tip.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/label/arc.js +1 -1
- package/cjs/label/arc.js.map +1 -1
- package/cjs/label/base.js +18 -29
- package/cjs/label/base.js.map +1 -1
- package/cjs/legend/discrete/discrete.js +3 -3
- package/cjs/legend/discrete/discrete.js.map +1 -1
- package/dist/index.es.js +174 -107
- package/es/axis/grid/base.d.ts +1 -0
- package/es/axis/grid/base.js +8 -4
- package/es/axis/grid/base.js.map +1 -1
- package/es/axis/grid/circle.d.ts +1 -0
- package/es/axis/grid/circle.js +4 -0
- package/es/axis/grid/circle.js.map +1 -1
- package/es/axis/grid/line.d.ts +2 -0
- package/es/axis/grid/line.js +9 -5
- package/es/axis/grid/line.js.map +1 -1
- package/es/axis/overlap/auto-hide.js +7 -12
- package/es/axis/overlap/auto-hide.js.map +1 -1
- package/es/axis/overlap/util.js +10 -10
- package/es/axis/overlap/util.js.map +1 -1
- package/es/brush/brush.js +1 -2
- package/es/brush/type.js +2 -1
- package/es/data-zoom/config.js +2 -1
- package/es/empty-tip/empty-tip.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/label/arc.js +1 -1
- package/es/label/arc.js.map +1 -1
- package/es/label/base.js +18 -29
- package/es/label/base.js.map +1 -1
- package/es/legend/discrete/discrete.js +3 -3
- package/es/legend/discrete/discrete.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/axis/grid/circle.ts"],"names":[],"mappings":"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","file":"circle.js","sourcesContent":["/**\n * @description 圆弧型坐标轴的网格线\n */\n\nimport { merge, mixin } from '@visactor/vutils';\nimport { BaseGrid } from './base';\nimport type { CircleAxisGridAttributes, GridItem } from './type';\nimport { POLAR_END_ANGLE, POLAR_START_ANGLE } from '../../constant';\nimport { CircleAxisMixin } from '../mixin/circle';\nimport type { ComponentOptions } from '../../interface';\nimport { loadCircleAxisGridComponent } from '../register';\n\nexport interface CircleAxisGrid\n extends Pick<CircleAxisMixin, 'isInValidValue' | 'getTickCoord' | 'getVerticalVector'>,\n BaseGrid<CircleAxisGridAttributes> {}\n\nloadCircleAxisGridComponent();\nexport class CircleAxisGrid extends BaseGrid<CircleAxisGridAttributes> {\n constructor(attributes: CircleAxisGridAttributes, options?: ComponentOptions) {\n super(options?.skipDefault ? attributes : merge({}, BaseGrid.defaultAttributes, attributes), options);\n }\n\n protected getGridAttribute(isSubGrid: boolean) {\n let gridAttribute;\n let items: GridItem[] = [];\n const {\n radius,\n innerRadius = 0,\n startAngle = POLAR_START_ANGLE,\n endAngle = POLAR_END_ANGLE,\n center,\n subGrid,\n ...grid\n } = this.attribute;\n const { alignWithLabel = true } = grid || {};\n\n const length = radius - innerRadius;\n const tickSegment = this._parseTickSegment();\n if (!isSubGrid) {\n gridAttribute = grid as CircleAxisGridAttributes;\n // 计算 grid Items\n const gridItems: GridItem[] = [];\n let data;\n if (Math.abs(endAngle - startAngle) % (Math.PI * 2) === 0) {\n data = [...this.data].concat(this.data[0]);\n } else {\n data = this.data;\n }\n\n data.forEach(item => {\n let { point } = item;\n if (!alignWithLabel) {\n // tickLine 不同 tick 对齐时需要调整 point\n const value = item.value - tickSegment / 2;\n if (this.isInValidValue(value)) {\n return;\n }\n point = this.getTickCoord(value);\n }\n const endPoint = this.getVerticalCoord(point, length as number, true);\n gridItems.push({\n id: item.id,\n points: [point, endPoint],\n datum: item\n });\n });\n items = gridItems;\n } else {\n // 渲染 subGrid\n gridAttribute = merge({}, grid, subGrid);\n // 计算 grid Items\n const subGridItems: GridItem[] = [];\n const { count: subCount = 4 } = subGrid || {};\n const tickLineCount = this.data.length;\n // 刻度线的数量大于 2 时,才绘制子刻度\n if (tickLineCount >= 2) {\n const points = this._getPointsOfSubGrid(tickSegment, alignWithLabel);\n\n for (let i = 0; i < tickLineCount; i++) {\n const pre = points[i];\n const next = points[i + 1];\n subGridItems.push({\n id: `sub-${i}-${0}`,\n points: [this.getTickCoord(pre.value), this.getVerticalCoord(this.getTickCoord(pre.value), length, true)],\n datum: {}\n });\n for (let j = 0; j < subCount; j++) {\n const percent = (j + 1) / (subCount + 1);\n const value =\n (1 - percent) * pre.value + percent * (next ? next.value : alignWithLabel ? 1 : pre.value + tickSegment);\n const point = this.getTickCoord(value);\n const endPoint = this.getVerticalCoord(point, length, true);\n subGridItems.push({\n id: `sub-${i}-${j + 1}`,\n points: [point, endPoint],\n // TODO: 这里也需要,后续考虑如何加上\n datum: {}\n });\n }\n }\n\n if (Math.abs(endAngle - startAngle) % (Math.PI * 2) === 0) {\n subGridItems.push(subGridItems[0]);\n }\n\n items = subGridItems;\n }\n }\n return {\n ...gridAttribute,\n items,\n center,\n type: 'line'\n };\n }\n}\n\nmixin(CircleAxisGrid, CircleAxisMixin);\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/axis/grid/circle.ts"],"names":[],"mappings":"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","file":"circle.js","sourcesContent":["/**\n * @description 圆弧型坐标轴的网格线\n */\n\nimport { merge, mixin } from '@visactor/vutils';\nimport { BaseGrid } from './base';\nimport type { CircleAxisGridAttributes, GridItem } from './type';\nimport { POLAR_END_ANGLE, POLAR_START_ANGLE } from '../../constant';\nimport { CircleAxisMixin } from '../mixin/circle';\nimport type { ComponentOptions } from '../../interface';\nimport { loadCircleAxisGridComponent } from '../register';\n\nexport interface CircleAxisGrid\n extends Pick<CircleAxisMixin, 'isInValidValue' | 'getTickCoord' | 'getVerticalVector'>,\n BaseGrid<CircleAxisGridAttributes> {}\n\nloadCircleAxisGridComponent();\nexport class CircleAxisGrid extends BaseGrid<CircleAxisGridAttributes> {\n constructor(attributes: CircleAxisGridAttributes, options?: ComponentOptions) {\n super(options?.skipDefault ? attributes : merge({}, BaseGrid.defaultAttributes, attributes), options);\n }\n\n protected getGridPointsByValue(value: number) {\n const basePoint = this.getTickCoord(value);\n const { radius, innerRadius = 0 } = this.attribute;\n\n return [basePoint, this.getVerticalCoord(basePoint, radius - innerRadius, true)];\n }\n\n protected getGridAttribute(isSubGrid: boolean) {\n let gridAttribute;\n let items: GridItem[] = [];\n const {\n radius,\n innerRadius = 0,\n startAngle = POLAR_START_ANGLE,\n endAngle = POLAR_END_ANGLE,\n center,\n subGrid,\n ...grid\n } = this.attribute;\n const { alignWithLabel = true } = grid || {};\n\n const length = radius - innerRadius;\n const tickSegment = this._parseTickSegment();\n if (!isSubGrid) {\n gridAttribute = grid as CircleAxisGridAttributes;\n // 计算 grid Items\n const gridItems: GridItem[] = [];\n let data;\n if (Math.abs(endAngle - startAngle) % (Math.PI * 2) === 0) {\n data = [...this.data].concat(this.data[0]);\n } else {\n data = this.data;\n }\n\n data.forEach(item => {\n let { point } = item;\n if (!alignWithLabel) {\n // tickLine 不同 tick 对齐时需要调整 point\n const value = item.value - tickSegment / 2;\n if (this.isInValidValue(value)) {\n return;\n }\n point = this.getTickCoord(value);\n }\n const endPoint = this.getVerticalCoord(point, length as number, true);\n gridItems.push({\n id: item.id,\n points: [point, endPoint],\n datum: item\n });\n });\n items = gridItems;\n } else {\n // 渲染 subGrid\n gridAttribute = merge({}, grid, subGrid);\n // 计算 grid Items\n const subGridItems: GridItem[] = [];\n const { count: subCount = 4 } = subGrid || {};\n const tickLineCount = this.data.length;\n // 刻度线的数量大于 2 时,才绘制子刻度\n if (tickLineCount >= 2) {\n const points = this._getPointsOfSubGrid(tickSegment, alignWithLabel);\n\n for (let i = 0; i < tickLineCount; i++) {\n const pre = points[i];\n const next = points[i + 1];\n subGridItems.push({\n id: `sub-${i}-${0}`,\n points: [this.getTickCoord(pre.value), this.getVerticalCoord(this.getTickCoord(pre.value), length, true)],\n datum: {}\n });\n for (let j = 0; j < subCount; j++) {\n const percent = (j + 1) / (subCount + 1);\n const value =\n (1 - percent) * pre.value + percent * (next ? next.value : alignWithLabel ? 1 : pre.value + tickSegment);\n const point = this.getTickCoord(value);\n const endPoint = this.getVerticalCoord(point, length, true);\n subGridItems.push({\n id: `sub-${i}-${j + 1}`,\n points: [point, endPoint],\n // TODO: 这里也需要,后续考虑如何加上\n datum: {}\n });\n }\n }\n\n if (Math.abs(endAngle - startAngle) % (Math.PI * 2) === 0) {\n subGridItems.push(subGridItems[0]);\n }\n\n items = subGridItems;\n }\n }\n return {\n ...gridAttribute,\n items,\n center,\n type: 'line'\n };\n }\n}\n\nmixin(CircleAxisGrid, CircleAxisMixin);\n"]}
|
package/es/axis/grid/line.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BaseGrid } from './base';
|
|
2
2
|
import type { LineAxisGridAttributes } from './type';
|
|
3
|
+
import type { Point } from '../../core/type';
|
|
3
4
|
import { LineAxisMixin } from '../mixin/line';
|
|
4
5
|
import type { ComponentOptions } from '../../interface';
|
|
5
6
|
export interface LineAxisGrid extends Pick<LineAxisMixin, 'isInValidValue' | 'getTickCoord' | 'getVerticalVector'>, BaseGrid<LineAxisGridAttributes> {
|
|
@@ -7,5 +8,6 @@ export interface LineAxisGrid extends Pick<LineAxisMixin, 'isInValidValue' | 'ge
|
|
|
7
8
|
export declare class LineAxisGrid extends BaseGrid<LineAxisGridAttributes> {
|
|
8
9
|
constructor(attributes: LineAxisGridAttributes, options?: ComponentOptions);
|
|
9
10
|
private _getGridPoint;
|
|
11
|
+
protected getGridPointsByValue(value: number): Point[];
|
|
10
12
|
protected getGridAttribute(isSubGrid: boolean): any;
|
|
11
13
|
}
|
package/es/axis/grid/line.js
CHANGED
|
@@ -27,32 +27,36 @@ export class LineAxisGrid extends BaseGrid {
|
|
|
27
27
|
}
|
|
28
28
|
return gridPoints;
|
|
29
29
|
}
|
|
30
|
+
getGridPointsByValue(value) {
|
|
31
|
+
const basePoint = this.getTickCoord(value);
|
|
32
|
+
return this._getGridPoint(this.attribute.type, basePoint);
|
|
33
|
+
}
|
|
30
34
|
getGridAttribute(isSubGrid) {
|
|
31
35
|
const {type: gridType, alignWithLabel: alignWithLabel = !0} = this.attribute, tickSegment = this._parseTickSegment();
|
|
32
36
|
let gridAttribute, items = [];
|
|
33
37
|
if (isSubGrid) {
|
|
34
38
|
gridAttribute = merge({}, this.attribute, this.attribute.subGrid);
|
|
35
|
-
const subGridItems = [], {count: subCount = 4} =
|
|
39
|
+
const subGridItems = [], {count: subCount = 4} = gridAttribute;
|
|
36
40
|
if (this.data.length >= 2) {
|
|
37
41
|
const points = this._getPointsOfSubGrid(tickSegment, alignWithLabel);
|
|
38
42
|
for (let i = 0; i < points.length - 1; i++) {
|
|
39
43
|
const pre = points[i], next = points[i + 1];
|
|
40
44
|
subGridItems.push({
|
|
41
45
|
id: `sub-${i}-0`,
|
|
42
|
-
points: this.
|
|
46
|
+
points: this.getGridPointsByValue(pre.value),
|
|
43
47
|
datum: {}
|
|
44
48
|
});
|
|
45
49
|
for (let j = 0; j < subCount; j++) {
|
|
46
|
-
const percent = (j + 1) / (subCount + 1), value = (1 - percent) * pre.value + percent * next.value
|
|
50
|
+
const percent = (j + 1) / (subCount + 1), value = (1 - percent) * pre.value + percent * next.value;
|
|
47
51
|
subGridItems.push({
|
|
48
52
|
id: `sub-${i}-${j + 1}`,
|
|
49
|
-
points: this.
|
|
53
|
+
points: this.getGridPointsByValue(value),
|
|
50
54
|
datum: {}
|
|
51
55
|
});
|
|
52
56
|
}
|
|
53
57
|
i === points.length - 2 && subGridItems.push({
|
|
54
58
|
id: `sub-${i}-${subCount + 1}`,
|
|
55
|
-
points: this.
|
|
59
|
+
points: this.getGridPointsByValue(next.value),
|
|
56
60
|
datum: {}
|
|
57
61
|
});
|
|
58
62
|
}
|
package/es/axis/grid/line.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/axis/grid/line.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,KAAK,
|
|
1
|
+
{"version":3,"sources":["../src/axis/grid/line.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQlC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAM1C,yBAAyB,EAAE,CAAC;AAC5B,MAAM,OAAO,YAAa,SAAQ,QAAgC;IAChE,YAAY,UAAkC,EAAE,OAA0B;QACxE,KAAK,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IACxG,CAAC;IAEO,aAAa,CAAC,QAAgB,EAAE,KAAiB;QACvD,IAAI,UAAU,CAAC;QACf,IAAI,QAAQ,KAAK,MAAM,EAAE;YACvB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAyC,CAAC;YAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAgB,EAAE,IAAI,CAAC,CAAC;YAEtE,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;SAChC;aAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1D,MAAM,EACJ,MAAM,EACN,KAAK,GAAG,CAAC,EACT,UAAU,GAAG,iBAAiB,EAC9B,QAAQ,GAAG,eAAe,EAC3B,GAAG,IAAI,CAAC,SAA0C,CAAC;YACpD,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,MAAe,EAAE,KAAK,CAAC,CAAC;YACjE,UAAU,GAAG,eAAe,CAAC,MAAe,EAAE,KAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;SAChG;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAES,oBAAoB,CAAC,KAAa;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAE3C,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAES,gBAAgB,CAAC,SAAkB;QAC3C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjE,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE7C,IAAI,aAAa,CAAC;QAClB,IAAI,KAAK,GAAe,EAAE,CAAC;QAC3B,IAAI,CAAC,SAAS,EAAE;YACd,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;YAE/B,MAAM,SAAS,GAAe,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;gBAErB,IAAI,CAAC,cAAc,EAAE;oBAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,WAAW,GAAG,CAAC,CAAC;oBAC3C,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;wBAC9B,OAAO;qBACR;oBACD,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;iBAClC;gBAED,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,IAAI,CAAC,KAAK;oBACd,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC;iBAC5C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,KAAK,GAAG,SAAS,CAAC;SACnB;aAAM;YAEL,aAAa,GAAG,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAElE,MAAM,YAAY,GAAe,EAAE,CAAC;YACpC,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,aAAa,CAAC;YAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAEvC,IAAI,aAAa,IAAI,CAAC,EAAE;gBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBAErE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACtB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3B,YAAY,CAAC,IAAI,CAAC;wBAChB,EAAE,EAAE,OAAO,CAAC,IAAI;wBAChB,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC;wBAE5C,KAAK,EAAE,EAAE;qBACV,CAAC,CAAC;oBACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;wBACjC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;wBACzC,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;wBAC/D,YAAY,CAAC,IAAI,CAAC;4BAChB,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;4BACvB,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;4BAExC,KAAK,EAAE,EAAE;yBACV,CAAC,CAAC;qBACJ;oBACD,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC3B,YAAY,CAAC,IAAI,CAAC;4BAChB,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE;4BAC9B,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;4BAE7C,KAAK,EAAE,EAAE;yBACV,CAAC,CAAC;qBACJ;iBACF;gBACD,KAAK,GAAG,YAAY,CAAC;aACtB;SACF;QAED,uCACK,aAAa,KAChB,KAAK,IACL;IACJ,CAAC;CACF;AAED,KAAK,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC","file":"line.js","sourcesContent":["/**\n * @description 直线型坐标轴的网格线\n * - `type: 'line'` 用于直角坐标系下的坐标轴网格线绘制\n * - `type: 'circle'` 或者 `type: 'polygon'` 用于极坐标半径轴的网格线绘制\n */\nimport type { IPointLike } from '@visactor/vutils';\nimport { PointService, merge, mixin } from '@visactor/vutils';\nimport { BaseGrid } from './base';\nimport type {\n GridItem,\n LineAxisGridAttributes,\n LineGridOfLineAxisAttributes,\n PolarGridOfLineAxisAttributes\n} from './type';\nimport type { Point } from '../../core/type';\nimport { POLAR_START_ANGLE, POLAR_END_ANGLE } from '../../constant';\nimport { LineAxisMixin } from '../mixin/line';\nimport type { ComponentOptions } from '../../interface';\nimport { loadLineAxisGridComponent } from '../register';\nimport { getCirclePoints } from '../util';\n\nexport interface LineAxisGrid\n extends Pick<LineAxisMixin, 'isInValidValue' | 'getTickCoord' | 'getVerticalVector'>,\n BaseGrid<LineAxisGridAttributes> {}\n\nloadLineAxisGridComponent();\nexport class LineAxisGrid extends BaseGrid<LineAxisGridAttributes> {\n constructor(attributes: LineAxisGridAttributes, options?: ComponentOptions) {\n super(options?.skipDefault ? attributes : merge({}, BaseGrid.defaultAttributes, attributes), options);\n }\n\n private _getGridPoint(gridType: string, point: IPointLike): Point[] {\n let gridPoints;\n if (gridType === 'line') {\n const { length } = this.attribute as LineGridOfLineAxisAttributes;\n const endPoint = this.getVerticalCoord(point, length as number, true);\n\n gridPoints = [point, endPoint];\n } else if (gridType === 'circle' || gridType === 'polygon') {\n const {\n center,\n sides = 6,\n startAngle = POLAR_START_ANGLE,\n endAngle = POLAR_END_ANGLE\n } = this.attribute as PolarGridOfLineAxisAttributes;\n const distance = PointService.distancePP(center as Point, point);\n gridPoints = getCirclePoints(center as Point, sides as number, distance, startAngle, endAngle);\n }\n\n return gridPoints;\n }\n\n protected getGridPointsByValue(value: number) {\n const basePoint = this.getTickCoord(value);\n\n return this._getGridPoint(this.attribute.type, basePoint);\n }\n\n protected getGridAttribute(isSubGrid: boolean) {\n const { type: gridType, alignWithLabel = true } = this.attribute;\n\n const tickSegment = this._parseTickSegment();\n\n let gridAttribute;\n let items: GridItem[] = [];\n if (!isSubGrid) {\n gridAttribute = this.attribute;\n // 计算 grid Items\n const gridItems: GridItem[] = [];\n this.data.forEach(item => {\n let { point } = item;\n\n if (!alignWithLabel) {\n // tickLine 不同 tick 对齐时需要调整 point\n const value = item.value - tickSegment / 2;\n if (this.isInValidValue(value)) {\n return;\n }\n point = this.getTickCoord(value);\n }\n\n gridItems.push({\n id: item.label,\n datum: item,\n points: this._getGridPoint(gridType, point)\n });\n });\n items = gridItems;\n } else {\n // 渲染 subGrid\n gridAttribute = merge({}, this.attribute, this.attribute.subGrid);\n // 计算 grid Items\n const subGridItems: GridItem[] = [];\n const { count: subCount = 4 } = gridAttribute;\n const tickLineCount = this.data.length;\n // 刻度线的数量大于 2 时,才绘制子刻度\n if (tickLineCount >= 2) {\n const points = this._getPointsOfSubGrid(tickSegment, alignWithLabel);\n\n for (let i = 0; i < points.length - 1; i++) {\n const pre = points[i];\n const next = points[i + 1];\n subGridItems.push({\n id: `sub-${i}-0`,\n points: this.getGridPointsByValue(pre.value),\n // TODO: 其实这里也需要,后续需要考虑怎么挂上 data\n datum: {}\n });\n for (let j = 0; j < subCount; j++) {\n const percent = (j + 1) / (subCount + 1);\n const value = (1 - percent) * pre.value + percent * next.value;\n subGridItems.push({\n id: `sub-${i}-${j + 1}`,\n points: this.getGridPointsByValue(value),\n // TODO: 其实这里也需要,后续需要考虑怎么挂上 data\n datum: {}\n });\n }\n if (i === points.length - 2) {\n subGridItems.push({\n id: `sub-${i}-${subCount + 1}`,\n points: this.getGridPointsByValue(next.value),\n // TODO: 其实这里也需要,后续需要考虑怎么挂上 data\n datum: {}\n });\n }\n }\n items = subGridItems;\n }\n }\n\n return {\n ...gridAttribute,\n items\n };\n }\n}\n\nmixin(LineAxisGrid, LineAxisMixin);\n"]}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import { isEmpty, isFunction,
|
|
2
|
-
|
|
3
|
-
import { genRotateBounds } from "./util";
|
|
4
|
-
|
|
5
|
-
function itemIntersect(item1, item2) {
|
|
6
|
-
return isRectIntersect(item1.AABBBounds, item2.AABBBounds, !1) && (!item1.rotatedBounds || !item2.rotatedBounds || isRotateAABBIntersect(item1.rotatedBounds, item2.rotatedBounds, !0));
|
|
7
|
-
}
|
|
1
|
+
import { isEmpty, isFunction, last } from "@visactor/vutils";
|
|
8
2
|
|
|
9
3
|
const methods = {
|
|
10
4
|
parity: function(items) {
|
|
@@ -18,8 +12,9 @@ const methods = {
|
|
|
18
12
|
};
|
|
19
13
|
|
|
20
14
|
function intersect(textA, textB, sep) {
|
|
21
|
-
|
|
22
|
-
return
|
|
15
|
+
let a = textA.OBBBounds, b = textB.OBBBounds;
|
|
16
|
+
return a && b && !a.empty() && !b.empty() ? a.intersects(b) : (a = textA.AABBBounds,
|
|
17
|
+
b = textB.AABBBounds, sep > Math.max(b.x1 - a.x2, a.x1 - b.x2, b.y1 - a.y2, a.y1 - b.y2));
|
|
23
18
|
}
|
|
24
19
|
|
|
25
20
|
function hasOverlap(items, pad) {
|
|
@@ -27,8 +22,8 @@ function hasOverlap(items, pad) {
|
|
|
27
22
|
}
|
|
28
23
|
|
|
29
24
|
function hasBounds(item) {
|
|
30
|
-
|
|
31
|
-
return
|
|
25
|
+
let bounds;
|
|
26
|
+
return bounds = item.OBBBounds.empty() ? item.AABBBounds : item.OBBBounds, bounds.width() > 1 && bounds.height() > 1;
|
|
32
27
|
}
|
|
33
28
|
|
|
34
29
|
function reset(items) {
|
|
@@ -40,7 +35,7 @@ export function autoHide(labels, config) {
|
|
|
40
35
|
const source = labels.filter(hasBounds);
|
|
41
36
|
if (isEmpty(source)) return;
|
|
42
37
|
let items;
|
|
43
|
-
items = reset(source)
|
|
38
|
+
items = reset(source);
|
|
44
39
|
const {method: method = "parity", separation: sep = 0} = config, reduce = isFunction(method) ? method : methods[method] || methods.parity;
|
|
45
40
|
if (items.length >= 3 && hasOverlap(items, sep)) {
|
|
46
41
|
do {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/axis/overlap/auto-hide.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"sources":["../src/axis/overlap/auto-hide.ts"],"names":[],"mappings":"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","file":"auto-hide.js","sourcesContent":["/**\n * @description 自动隐藏\n */\n\nimport type { IText } from '@visactor/vrender-core';\nimport type { IBounds } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isEmpty, isFunction, last } from '@visactor/vutils';\nimport type { CustomMethod } from '../type';\n\nconst methods = {\n parity: function (items: IText[]) {\n return items.filter((item, i) => (i % 2 ? item.setAttribute('opacity', 0) : 1));\n },\n greedy: function (items: IText[], sep: number) {\n let a: IText;\n return items.filter((b, i) => {\n if (!i || !intersect(a, b, sep)) {\n a = b;\n return 1;\n }\n return b.setAttribute('opacity', 0);\n });\n }\n};\n\nfunction intersect(textA: IText, textB: IText, sep: number) {\n let a: IBounds = textA.OBBBounds;\n let b: IBounds = textB.OBBBounds;\n if (a && b && !a.empty() && !b.empty()) {\n return a.intersects(b);\n }\n a = textA.AABBBounds;\n b = textB.AABBBounds;\n return sep > Math.max(b.x1 - a.x2, a.x1 - b.x2, b.y1 - a.y2, a.y1 - b.y2);\n}\n\nfunction hasOverlap(items: IText[], pad: number) {\n for (let i = 1, n = items.length, a = items[0], b; i < n; a = b, ++i) {\n if (intersect(a, (b = items[i]), pad)) {\n return true;\n }\n }\n}\n\nfunction hasBounds(item: IText) {\n let bounds;\n if (!item.OBBBounds.empty()) {\n bounds = item.OBBBounds;\n } else {\n bounds = item.AABBBounds;\n }\n return bounds.width() > 1 && bounds.height() > 1;\n}\n\n// reset all items to be fully opaque\nfunction reset(items: IText[]) {\n items.forEach(item => item.setAttribute('opacity', 1));\n return items;\n}\n\ntype HideConfig = {\n /**\n * 轴的方向\n */\n orient: string;\n /**\n * 防重叠策略。\n * - 'parity': 奇偶校验,使用删除所有其他标签的策略(这对于标准线性轴非常有效)。\n * - 'greedy': 将执行标签的线性扫描,并删除与最后一个可见标签重叠的所有标签。\n * - 也可以传入函数用于自定义策略\n */\n method?: 'parity' | 'greedy' | CustomMethod;\n /**\n * 设置文本之间的间隔距离,单位 px\n */\n separation?: number;\n /**\n * 保证最后的label展示\n */\n lastVisible?: boolean;\n};\n\nexport function autoHide(labels: IText[], config: HideConfig) {\n if (isEmpty(labels)) {\n return;\n }\n\n const source = labels.filter(hasBounds);\n if (isEmpty(source)) {\n return;\n }\n\n let items;\n\n items = reset(source);\n\n const { method = 'parity', separation: sep = 0 } = config;\n\n const reduce = isFunction(method) ? method : methods[method] || methods.parity;\n\n if (items.length >= 3 && hasOverlap(items, sep)) {\n do {\n items = reduce(items, sep);\n } while (items.length >= 3 && hasOverlap(items, sep));\n /**\n * 0.17.10 之前,当最后label个数小于3 的时候,才做最后的label强制显示的策略\n */\n const checkLast = items.length < 3 || config.lastVisible;\n\n if (checkLast) {\n const lastSourceItem = last(source);\n\n if (!lastSourceItem.attribute.opacity) {\n const remainLength = items.length;\n if (remainLength > 1) {\n lastSourceItem.setAttribute('opacity', 1);\n\n for (let i = remainLength - 1; i >= 0; i--) {\n if (intersect(items[i], lastSourceItem, sep)) {\n items[i].setAttribute('opacity', 0);\n } else {\n // 当遇到第一个不相交的label的时候,就可以停止了\n break;\n }\n }\n }\n }\n }\n }\n\n source.forEach(item => {\n item.setAttribute('visible', !!item.attribute.opacity);\n });\n}\n"]}
|
package/es/axis/overlap/util.js
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
import { isNil, isRectIntersect, isRotateAABBIntersect } from "@visactor/vutils";
|
|
2
|
-
|
|
3
|
-
function rotate(x, y, deg, originX, originY) {
|
|
4
|
-
return {
|
|
5
|
-
x: (x - originX) * Math.cos(deg) + (y - originY) * Math.sin(deg) + originX,
|
|
6
|
-
y: (x - originX) * Math.sin(deg) + (originY - y) * Math.cos(deg) + originY
|
|
7
|
-
};
|
|
8
|
-
}
|
|
1
|
+
import { isNil, isRectIntersect, isRotateAABBIntersect, rotatePoint } from "@visactor/vutils";
|
|
9
2
|
|
|
10
3
|
function genNormalBounds(item) {
|
|
11
4
|
const bounds = item.AABBBounds;
|
|
@@ -23,14 +16,21 @@ function genNormalBounds(item) {
|
|
|
23
16
|
export function genRotateBounds(items) {
|
|
24
17
|
items.forEach((item => {
|
|
25
18
|
if (item.rotatedBounds || !item.attribute.angle) return;
|
|
26
|
-
const bounds = genNormalBounds(item), rotatedCenter =
|
|
19
|
+
const bounds = genNormalBounds(item), rotatedCenter = rotatePoint({
|
|
20
|
+
x: item.attribute.x,
|
|
21
|
+
y: item.attribute.y
|
|
22
|
+
}, bounds.angle, {
|
|
23
|
+
x: bounds.centerX,
|
|
24
|
+
y: bounds.centerY
|
|
25
|
+
}), deltaX = rotatedCenter.x - bounds.centerX, deltaY = rotatedCenter.y - bounds.centerY;
|
|
27
26
|
bounds.x1 += deltaX, bounds.x2 += deltaX, bounds.y1 += deltaY, bounds.y2 += deltaY,
|
|
28
27
|
bounds.centerX += deltaX, bounds.centerY += deltaY, item.rotatedBounds = bounds;
|
|
29
28
|
}));
|
|
30
29
|
}
|
|
31
30
|
|
|
32
31
|
export function itemIntersect(item1, item2) {
|
|
33
|
-
|
|
32
|
+
var _a, _b;
|
|
33
|
+
return (null === (_a = item1.OBBBounds) || void 0 === _a ? void 0 : _a.empty()) || (null === (_b = item2.OBBBounds) || void 0 === _b ? void 0 : _b.empty()) ? isRectIntersect(item1.AABBBounds, item2.AABBBounds, !1) && (!item1.rotatedBounds || !item2.rotatedBounds || isRotateAABBIntersect(item1.rotatedBounds, item2.rotatedBounds, !0)) : item1.OBBBounds.intersects(item2.OBBBounds);
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
const DELTA_ANGLE = Math.sin(Math.PI / 10);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/axis/overlap/util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"sources":["../src/axis/overlap/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["import type { IText } from '@visactor/vrender-core';\nimport { isNil, isRectIntersect, isRotateAABBIntersect, rotatePoint } from '@visactor/vutils';\n\n// 计算水平情况下的包围盒\nfunction genNormalBounds(item: IText) {\n const bounds = item.AABBBounds;\n\n return {\n x1: bounds.x1,\n x2: bounds.x2,\n y1: bounds.y1,\n y2: bounds.y2,\n centerX: item.attribute.x,\n centerY: item.attribute.y,\n angle: item.attribute.angle\n };\n}\n\nexport function genRotateBounds(items: IText[]) {\n items.forEach(item => {\n if (item.rotatedBounds || !item.attribute.angle) {\n return;\n }\n // 计算水平情况下的包围盒\n const bounds = genNormalBounds(item);\n const rotatedCenter = rotatePoint({ x: item.attribute.x, y: item.attribute.y }, bounds.angle, {\n x: bounds.centerX,\n y: bounds.centerY\n });\n\n const deltaX = rotatedCenter.x - bounds.centerX;\n const deltaY = rotatedCenter.y - bounds.centerY;\n bounds.x1 += deltaX;\n bounds.x2 += deltaX;\n bounds.y1 += deltaY;\n bounds.y2 += deltaY;\n bounds.centerX += deltaX;\n bounds.centerY += deltaY;\n item.rotatedBounds = bounds;\n });\n}\n\nexport function itemIntersect(item1: IText, item2: IText) {\n if (!item1.OBBBounds?.empty() && !item2.OBBBounds?.empty()) {\n return item1.OBBBounds.intersects(item2.OBBBounds);\n }\n return (\n isRectIntersect(item1.AABBBounds, item2.AABBBounds, false) &&\n (item1.rotatedBounds && item2.rotatedBounds\n ? isRotateAABBIntersect(item1.rotatedBounds, item2.rotatedBounds, true)\n : true)\n );\n}\n\nconst DELTA_ANGLE = Math.sin(Math.PI / 10);\nexport function isAngleVertical(angle: number) {\n const hasAngle = !isNil(angle) && angle !== 0;\n const cos = hasAngle ? Math.cos(angle) : 1;\n return hasAngle && Math.abs(cos) <= DELTA_ANGLE;\n}\n\nexport function isAngleHorizontal(angle: number) {\n const hasAngle = !isNil(angle) && angle !== 0;\n const sin = hasAngle ? Math.sin(angle) : 0;\n return !hasAngle || Math.abs(sin) <= DELTA_ANGLE;\n}\n"]}
|
package/es/brush/brush.js
CHANGED
package/es/brush/type.js
CHANGED
|
@@ -4,4 +4,5 @@ export var IOperateType;
|
|
|
4
4
|
IOperateType.drawStart = "drawStart", IOperateType.drawEnd = "drawEnd", IOperateType.drawing = "drawing",
|
|
5
5
|
IOperateType.moving = "moving", IOperateType.moveStart = "moveStart", IOperateType.moveEnd = "moveEnd",
|
|
6
6
|
IOperateType.brushClear = "brushClear";
|
|
7
|
-
}(IOperateType || (IOperateType = {}));
|
|
7
|
+
}(IOperateType || (IOperateType = {}));
|
|
8
|
+
//# sourceMappingURL=type.js.map
|
package/es/data-zoom/config.js
CHANGED
package/es/index.d.ts
CHANGED
package/es/index.js
CHANGED
package/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAEhC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC","file":"index.js","sourcesContent":["// 导出版本号\nexport const version = \"0.20.6\";\n\nexport * from './core/base';\nexport * from './core/type';\nexport * from './scrollbar';\nexport * from './tag';\nexport * from './poptip';\nexport * from './crosshair';\nexport * from './label';\nexport * from './axis';\nexport * from './axis/grid';\nexport * from './segment';\nexport * from './data-zoom';\nexport * from './marker';\nexport * from './pager';\nexport * from './legend';\nexport * from './title';\nexport * from './indicator';\nexport * from './slider';\nexport * from './link-path';\nexport * from './player';\nexport * from './brush';\nexport * from './tooltip';\nexport * from './timeline';\nexport * from './interface';\nexport * from './jsx';\nexport * from './checkbox';\nexport * from './radio';\nexport * from './empty-tip';\nexport * from './util';\n"]}
|
package/es/label/arc.js
CHANGED
|
@@ -219,7 +219,7 @@ export class ArcLabel extends LabelBase {
|
|
|
219
219
|
y: NaN
|
|
220
220
|
}, labelPosition.x = NaN, arc.labelLimit = 0);
|
|
221
221
|
const radius = this.computeRadius(radiusRatio, attribute.width, attribute.height), flag = isQuadrantLeft(quadrant) ? -1 : 1;
|
|
222
|
-
let cx = 0, limit = (flag > 0 ? plotLayout_x2 - pointB.x : pointB.x - plotLayout_x1) - this._line2MinLength - spaceWidth;
|
|
222
|
+
let cx = 0, limit = (flag > 0 ? plotLayout_x2 - pointB.x + this._alignOffset : pointB.x - plotLayout_x1 - this._alignOffset) - this._line2MinLength - spaceWidth;
|
|
223
223
|
"labelLine" === labelLayoutAlign && (cx = (radius + line1MinLength + this._line2MinLength) * flag + center.x,
|
|
224
224
|
limit = (flag > 0 ? plotLayout_x2 - cx : cx - plotLayout_x1) - spaceWidth);
|
|
225
225
|
const text = this._getFormatLabelText(arc.refDatum, limit);
|