2017-08-21 09:11:37 +02:00
|
|
|
/**
|
|
|
|
* --------------------------------------------------------------------------
|
2019-02-12 12:47:34 +02:00
|
|
|
* Bootstrap (v4.3.1): dom/data.js
|
2017-08-21 09:11:37 +02:00
|
|
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
|
|
|
* --------------------------------------------------------------------------
|
|
|
|
*/
|
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
/**
|
|
|
|
* ------------------------------------------------------------------------
|
|
|
|
* Constants
|
|
|
|
* ------------------------------------------------------------------------
|
|
|
|
*/
|
2017-08-21 09:11:37 +02:00
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
const mapData = (() => {
|
|
|
|
const storeData = {}
|
|
|
|
let id = 1
|
|
|
|
return {
|
|
|
|
set(element, key, data) {
|
|
|
|
if (typeof element.key === 'undefined') {
|
|
|
|
element.key = {
|
|
|
|
key,
|
|
|
|
id
|
2017-09-20 14:19:10 +02:00
|
|
|
}
|
2018-09-14 14:27:30 +02:00
|
|
|
id++
|
|
|
|
}
|
2017-09-20 14:19:10 +02:00
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
storeData[element.key.id] = data
|
|
|
|
},
|
|
|
|
get(element, key) {
|
|
|
|
if (!element || typeof element.key === 'undefined') {
|
2017-08-21 09:11:37 +02:00
|
|
|
return null
|
|
|
|
}
|
2017-08-27 00:00:50 +02:00
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
const keyProperties = element.key
|
|
|
|
if (keyProperties.key === key) {
|
|
|
|
return storeData[keyProperties.id]
|
|
|
|
}
|
2019-02-26 13:20:34 +02:00
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
return null
|
2017-09-20 14:19:10 +02:00
|
|
|
},
|
2018-09-14 14:27:30 +02:00
|
|
|
delete(element, key) {
|
|
|
|
if (typeof element.key === 'undefined') {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
const keyProperties = element.key
|
|
|
|
if (keyProperties.key === key) {
|
|
|
|
delete storeData[keyProperties.id]
|
|
|
|
delete element.key
|
|
|
|
}
|
2017-08-21 09:11:37 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
})()
|
|
|
|
|
2018-09-14 14:27:30 +02:00
|
|
|
const Data = {
|
|
|
|
setData(instance, key, data) {
|
|
|
|
mapData.set(instance, key, data)
|
|
|
|
},
|
|
|
|
getData(instance, key) {
|
|
|
|
return mapData.get(instance, key)
|
|
|
|
},
|
|
|
|
removeData(instance, key) {
|
|
|
|
mapData.delete(instance, key)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-21 09:11:37 +02:00
|
|
|
export default Data
|