File size: 746 Bytes
af6912c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
var createAnalysis = require('./create-analysis');

function findSelectableElement(event) {
	var selectable = event
	while (selectable && selectable.attributes && selectable.tagName.toLowerCase() !== 'svg' && !selectable.attributes.selectable) {
		selectable = selectable.parentNode
	}
	if (selectable && selectable.attributes && selectable.attributes.selectable) {
		var index = selectable.attributes['data-index'].nodeValue
		if (index) {
			index = parseInt(index, 10)
			if (index >= 0 && index < this.selectables.length) {
				var element = this.selectables[index]
				var ret = createAnalysis(element, event)
				ret.index = index
				ret.element = element
				return ret
			}
		}
	}
	return null
}

module.exports = findSelectableElement;