UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

50 lines (44 loc) 1.63 kB
import { isFunction, isNumber, isObject, isValid } from "@visactor/vutils"; export const getActualTooltipPositionValue = (position, event) => { let result; if (isValid(position)) if (isNumber(position)) result = position; else if (isFunction(position)) { const tooltipPosition = position(event); isNumber(tooltipPosition) && (result = tooltipPosition); } return result; }; export const positionType = { left: [ -2, 0 ], right: [ 2, 0 ], top: [ 0, -2 ], bottom: [ 0, 2 ], insideTop: [ 0, -1.5 ], insideBottom: [ 0, 1.5 ], insideLeft: [ -1.5, 0 ], insideRight: [ 1.5, 0 ], insideTopLeft: [ -1.5, -1.5 ], insideTopRight: [ 1.5, -1.5 ], insideBottomLeft: [ -1.5, 1.5 ], insideBottomRight: [ 1.5, 1.5 ], lt: [ -2, -2 ], tl: [ -2, -2 ], rt: [ 2, -2 ], tr: [ 2, -2 ], bl: [ -2, 2 ], lb: [ -2, 2 ], br: [ 2, 2 ], rb: [ 2, 2 ], inside: [ 0, 0 ], center: [ 0, 0 ], centerBottom: [ 0, 1 ], centerTop: [ 0, -1 ], centerLeft: [ -1, 0 ], centerRight: [ 1, 0 ] }; export const getPositionType = (position, dim, defaultCase = 2) => { var _a, _b; return null !== (_b = null === (_a = positionType[position]) || void 0 === _a ? void 0 : _a["x" === dim ? 0 : 1]) && void 0 !== _b ? _b : defaultCase; }; export const isGlobalTooltipPositionPattern = obj => isObject(obj) && (isValid(obj.left) || isValid(obj.right) || isValid(obj.top) || isValid(obj.bottom)); export const isFixedTooltipPositionPattern = obj => isObject(obj) && (isValid(obj.x) || isValid(obj.y)); //# sourceMappingURL=position.js.map