blob: c1437728c10abc1240dda8ee5090adbdcd9dc06b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// Store data values on svg nodes
export function data (a, v, r) {
if (typeof a === 'object') {
for (v in a) {
this.data(v, a[v])
}
} else if (arguments.length < 2) {
try {
return JSON.parse(this.attr('data-' + a))
} catch (e) {
return this.attr('data-' + a)
}
} else {
this.attr('data-' + a,
v === null ? null
: r === true || typeof v === 'string' || typeof v === 'number' ? v
: JSON.stringify(v)
)
}
return this
}
|