@domql/element 2.5.113 → 2.5.114
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/methods/index.js +37 -1
- package/dist/cjs/methods/set.js +1 -0
- package/dist/cjs/mixins/registry.js +1 -0
- package/dist/cjs/set.js +1 -0
- package/methods/index.js +33 -1
- package/methods/set.js +2 -0
- package/mixins/registry.js +1 -0
- package/package.json +2 -2
- package/set.js +1 -0
|
@@ -34,7 +34,8 @@ __export(methods_exports, {
|
|
|
34
34
|
remove: () => remove,
|
|
35
35
|
setNodeStyles: () => setNodeStyles,
|
|
36
36
|
setProps: () => setProps,
|
|
37
|
-
spotByPath: () => spotByPath
|
|
37
|
+
spotByPath: () => spotByPath,
|
|
38
|
+
variables: () => variables
|
|
38
39
|
});
|
|
39
40
|
module.exports = __toCommonJS(methods_exports);
|
|
40
41
|
var import_utils = require("@domql/utils");
|
|
@@ -237,6 +238,40 @@ const previousElement = function(el) {
|
|
|
237
238
|
const currentIndex = __children.indexOf(key);
|
|
238
239
|
return parent[__children[currentIndex - 1]];
|
|
239
240
|
};
|
|
241
|
+
const variables = function(obj = {}) {
|
|
242
|
+
const element = this;
|
|
243
|
+
if (!element.data)
|
|
244
|
+
element.data = {};
|
|
245
|
+
if (!element.data.varCaches)
|
|
246
|
+
element.data.varCaches = {};
|
|
247
|
+
const varCaches = element.data.varCaches;
|
|
248
|
+
const changes = {};
|
|
249
|
+
let changed;
|
|
250
|
+
for (const key in obj) {
|
|
251
|
+
if (obj[key] !== varCaches[key]) {
|
|
252
|
+
changed = true;
|
|
253
|
+
changes[key] = obj[key];
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return {
|
|
257
|
+
changed: (cb) => {
|
|
258
|
+
if (!changed)
|
|
259
|
+
return;
|
|
260
|
+
cb(changes, (0, import_utils.deepClone)(varCaches));
|
|
261
|
+
for (const key in changes) {
|
|
262
|
+
varCaches[key] = changes[key];
|
|
263
|
+
}
|
|
264
|
+
},
|
|
265
|
+
timeout: (cb, timeout) => {
|
|
266
|
+
if (!changed)
|
|
267
|
+
return;
|
|
268
|
+
const t = setTimeout(() => {
|
|
269
|
+
cb(changes);
|
|
270
|
+
clearTimeout(t);
|
|
271
|
+
}, timeout);
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
};
|
|
240
275
|
const METHODS = [
|
|
241
276
|
"set",
|
|
242
277
|
"reset",
|
|
@@ -253,6 +288,7 @@ const METHODS = [
|
|
|
253
288
|
"parse",
|
|
254
289
|
"setProps",
|
|
255
290
|
"parseDeep",
|
|
291
|
+
"variables",
|
|
256
292
|
"if",
|
|
257
293
|
"log",
|
|
258
294
|
"nextElement",
|
package/dist/cjs/methods/set.js
CHANGED
|
@@ -41,6 +41,7 @@ const addMethods = (element, parent) => {
|
|
|
41
41
|
set: import_set.default.bind(element),
|
|
42
42
|
reset: import_set.reset.bind(element),
|
|
43
43
|
update: import_update.default.bind(element),
|
|
44
|
+
variables: import__.variables.bind(element),
|
|
44
45
|
remove: import__.remove.bind(element),
|
|
45
46
|
updateContent: import_content.updateContent.bind(element),
|
|
46
47
|
removeContent: import_content.removeContent.bind(element),
|
package/dist/cjs/set.js
CHANGED
|
@@ -66,6 +66,7 @@ const set = function(params, options = {}, el) {
|
|
|
66
66
|
if (options.preventContentUpdate === true && !hasCollection)
|
|
67
67
|
return;
|
|
68
68
|
if (ref.__noCollectionDifference || __contentRef && __contentRef.__cached && (0, import_utils.deepContains)(params, content)) {
|
|
69
|
+
console.log((0, import_utils.deepContains)(params, content));
|
|
69
70
|
if (content == null ? void 0 : content.update)
|
|
70
71
|
content.update();
|
|
71
72
|
return;
|
package/methods/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict'
|
|
2
2
|
|
|
3
|
-
import { isDefined, isObject, isFunction, isObjectLike, isProduction, removeValueFromArray } from '@domql/utils'
|
|
3
|
+
import { isDefined, isObject, isFunction, isObjectLike, isProduction, removeValueFromArray, deepClone } from '@domql/utils'
|
|
4
4
|
import { TREE } from '../tree'
|
|
5
5
|
import { parseFilters, registry } from '../mixins'
|
|
6
6
|
|
|
@@ -210,6 +210,37 @@ export const previousElement = function (el) {
|
|
|
210
210
|
return parent[__children[currentIndex - 1]]
|
|
211
211
|
}
|
|
212
212
|
|
|
213
|
+
export const variables = function (obj = {}) {
|
|
214
|
+
const element = this
|
|
215
|
+
if (!element.data) element.data = {}
|
|
216
|
+
if (!element.data.varCaches) element.data.varCaches = {}
|
|
217
|
+
const varCaches = element.data.varCaches
|
|
218
|
+
const changes = {}
|
|
219
|
+
let changed
|
|
220
|
+
for (const key in obj) {
|
|
221
|
+
if (obj[key] !== varCaches[key]) {
|
|
222
|
+
changed = true
|
|
223
|
+
changes[key] = obj[key]
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
return {
|
|
227
|
+
changed: (cb) => {
|
|
228
|
+
if (!changed) return
|
|
229
|
+
cb(changes, deepClone(varCaches))
|
|
230
|
+
for (const key in changes) {
|
|
231
|
+
varCaches[key] = changes[key]
|
|
232
|
+
}
|
|
233
|
+
},
|
|
234
|
+
timeout: (cb, timeout) => {
|
|
235
|
+
if (!changed) return
|
|
236
|
+
const t = setTimeout(() => {
|
|
237
|
+
cb(changes)
|
|
238
|
+
clearTimeout(t)
|
|
239
|
+
}, timeout)
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
213
244
|
export const METHODS = [
|
|
214
245
|
'set',
|
|
215
246
|
'reset',
|
|
@@ -226,6 +257,7 @@ export const METHODS = [
|
|
|
226
257
|
'parse',
|
|
227
258
|
'setProps',
|
|
228
259
|
'parseDeep',
|
|
260
|
+
'variables',
|
|
229
261
|
'if',
|
|
230
262
|
'log',
|
|
231
263
|
'nextElement',
|
package/methods/set.js
CHANGED
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
remove,
|
|
15
15
|
spotByPath,
|
|
16
16
|
log,
|
|
17
|
+
variables,
|
|
17
18
|
keys,
|
|
18
19
|
parse,
|
|
19
20
|
parseDeep,
|
|
@@ -28,6 +29,7 @@ export const addMethods = (element, parent) => {
|
|
|
28
29
|
set: set.bind(element),
|
|
29
30
|
reset: reset.bind(element),
|
|
30
31
|
update: update.bind(element),
|
|
32
|
+
variables: variables.bind(element),
|
|
31
33
|
remove: remove.bind(element),
|
|
32
34
|
updateContent: updateContent.bind(element),
|
|
33
35
|
removeContent: removeContent.bind(element),
|
package/mixins/registry.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@domql/element",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.114",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "index.js",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@domql/state": "latest",
|
|
32
32
|
"@domql/utils": "latest"
|
|
33
33
|
},
|
|
34
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "61b7ecee05aaf0d6682e5f3cdb11f0091e880f3d",
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@babel/core": "^7.12.0"
|
|
37
37
|
}
|
package/set.js
CHANGED
|
@@ -37,6 +37,7 @@ const set = function (params, options = {}, el) {
|
|
|
37
37
|
if (options.preventContentUpdate === true && !hasCollection) return
|
|
38
38
|
|
|
39
39
|
if (ref.__noCollectionDifference || (__contentRef && __contentRef.__cached && deepContains(params, content))) {
|
|
40
|
+
console.log(deepContains(params, content))
|
|
40
41
|
if (content?.update) content.update()
|
|
41
42
|
return
|
|
42
43
|
}
|