add YEvent
This commit is contained in:
parent
b7defc32e8
commit
0310500c4e
27
src/Util/YEvent.js
Normal file
27
src/Util/YEvent.js
Normal file
@ -0,0 +1,27 @@
|
||||
|
||||
export default class YEvent {
|
||||
constructor (target) {
|
||||
this.target = target
|
||||
}
|
||||
get path () {
|
||||
const path = []
|
||||
let type = this.target
|
||||
const y = type._y
|
||||
while (type._parent !== y) {
|
||||
let parent = type._parent
|
||||
if (type._parentSub !== null) {
|
||||
path.push(type._parentSub)
|
||||
} else {
|
||||
// parent is array-ish
|
||||
for (let [i, child] of parent) {
|
||||
if (child === type) {
|
||||
path.push(i)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
type = parent
|
||||
}
|
||||
return path
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user