@domql/element 2.5.136 → 2.5.137

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/set.js CHANGED
@@ -38,6 +38,7 @@ var import_create = __toESM(require("./create"), 1);
38
38
  var import_options = __toESM(require("./cache/options"), 1);
39
39
  var import_mixins = require("./mixins");
40
40
  var import_content = require("./mixins/content");
41
+ var import_event = require("@domql/event");
41
42
  const resetElement = (params, element, options) => {
42
43
  if (!options.preventRemove)
43
44
  (0, import_content.removeContent)(element, options);
@@ -62,6 +63,11 @@ const set = function(params, options = {}, el) {
62
63
  const { __ref: ref, content } = element;
63
64
  const __contentRef = content && content.__ref;
64
65
  const lazyLoad = element.props && element.props.lazyLoad;
66
+ if (!options.preventBeforeUpdateListener && !options.preventListeners) {
67
+ const beforeUpdateReturns = (0, import_event.triggerEventOnUpdate)("beforeUpdate", params, element, options);
68
+ if (beforeUpdateReturns === false)
69
+ return element;
70
+ }
65
71
  const hasCollection = element.$collection || element.$stateCollection || element.$propsCollection;
66
72
  if (options.preventContentUpdate === true && !hasCollection)
67
73
  return;
@@ -79,6 +85,8 @@ const set = function(params, options = {}, el) {
79
85
  } else
80
86
  resetElement(params, element, options);
81
87
  }
88
+ if (!options.preventUpdateListener)
89
+ (0, import_event.triggerEventOn)("update", element, options);
82
90
  return element;
83
91
  };
84
92
  var set_default = set;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@domql/element",
3
- "version": "2.5.136",
3
+ "version": "2.5.137",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "index.js",
@@ -31,7 +31,7 @@
31
31
  "@domql/state": "^2.5.134",
32
32
  "@domql/utils": "^2.5.134"
33
33
  },
34
- "gitHead": "3180ed884beb91ea31b5e5f5ddccfb06d850b172",
34
+ "gitHead": "304066eb30aef4652bc42aba6a97f4013118dab1",
35
35
  "devDependencies": {
36
36
  "@babel/core": "^7.12.0"
37
37
  }
package/set.js CHANGED
@@ -6,6 +6,7 @@ import create from './create'
6
6
  import OPTIONS from './cache/options'
7
7
  import { registry } from './mixins'
8
8
  import { removeContent } from './mixins/content'
9
+ import { triggerEventOn, triggerEventOnUpdate } from '@domql/event'
9
10
 
10
11
  export const resetElement = (params, element, options) => {
11
12
  if (!options.preventRemove) removeContent(element, options)
@@ -33,6 +34,11 @@ const set = function (params, options = {}, el) {
33
34
  const __contentRef = content && content.__ref
34
35
  const lazyLoad = element.props && element.props.lazyLoad
35
36
 
37
+ if (!options.preventBeforeUpdateListener && !options.preventListeners) {
38
+ const beforeUpdateReturns = triggerEventOnUpdate('beforeUpdate', params, element, options)
39
+ if (beforeUpdateReturns === false) return element
40
+ }
41
+
36
42
  const hasCollection = element.$collection || element.$stateCollection || element.$propsCollection
37
43
  if (options.preventContentUpdate === true && !hasCollection) return
38
44
 
@@ -50,6 +56,8 @@ const set = function (params, options = {}, el) {
50
56
  } else resetElement(params, element, options)
51
57
  }
52
58
 
59
+ if (!options.preventUpdateListener) triggerEventOn('update', element, options)
60
+
53
61
  return element
54
62
  }
55
63