NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/@antv/g/lib/renderers/svg/getShape.js

33 lines
621 B
Java
Raw Normal View History

2023-09-14 14:47:11 +08:00
var TAG_MAP = {
svg: 'svg',
circle: 'circle',
rect: 'rect',
text: 'text',
path: 'path',
foreignObject: 'foreignObject',
polygon: 'polygon',
ellipse: 'ellipse',
image: 'image'
};
module.exports = function getShape(x, y, e) {
var target = e.target || e.srcElement;
if (!TAG_MAP[target.tagName]) {
var parent = target.parentNode;
while (parent && !TAG_MAP[parent.tagName]) {
parent = parent.parentNode;
}
target = parent;
}
if (this._cfg.el === target) {
return this;
}
return this.find(function (item) {
return item._cfg && item._cfg.el === target;
});
};