123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.data = exports.setData = exports.getData = void 0;
- const string_1 = require("../string");
- const dataset = new WeakMap();
- function getData(elem, name) {
- const key = string_1.StringExt.camelCase(name);
- const cache = dataset.get(elem);
- if (cache) {
- return cache[key];
- }
- }
- exports.getData = getData;
- function setData(elem, name, value) {
- const key = string_1.StringExt.camelCase(name);
- const cache = dataset.get(elem);
- if (cache) {
- cache[key] = value;
- }
- else {
- dataset.set(elem, {
- [key]: value,
- });
- }
- }
- exports.setData = setData;
- function data(elem, name, value) {
- if (!name) {
- const datas = {};
- Object.keys(dataset).forEach((key) => {
- datas[key] = getData(elem, key);
- });
- return datas;
- }
- if (typeof name === 'string') {
- if (value === undefined) {
- return getData(elem, name);
- }
- setData(elem, name, value);
- return;
- }
- // eslint-disable-next-line
- for (const key in name) {
- data(elem, key, name[key]);
- }
- }
- exports.data = data;
- //# sourceMappingURL=data.js.map
|