@domql/event 2.5.187 → 2.5.200

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.
@@ -0,0 +1,43 @@
1
+ 'use strict'
2
+
3
+ export const registerFrameListener = (el) => {
4
+ const { __ref: ref } = el
5
+ const { frameListeners } = ref.root.data
6
+
7
+ // Check if frameListeners exists and the element is not already in the Set
8
+ if (frameListeners && !frameListeners.has(el)) {
9
+ frameListeners.add(el) // Add the element to the Set
10
+ }
11
+ }
12
+
13
+ export const applyAnimationFrame = (element, options) => {
14
+ const { props, on, __ref: ref } = element
15
+ const { frameListeners } = ref.root.data
16
+ if (frameListeners && (on?.frame || props?.onFrame)) {
17
+ registerFrameListener(element)
18
+ }
19
+ }
20
+
21
+ export const initAnimationFrame = (ctx) => {
22
+ const frameListeners = new Set()
23
+
24
+ function requestFrame () {
25
+ // Iterate over frameListeners
26
+ for (const element of frameListeners) {
27
+ if (!element.parent.node.contains(element.node)) {
28
+ frameListeners.delete(element) // Remove if node has no parent
29
+ } else {
30
+ try {
31
+ (element.on.frame || element.props.onFrame)(element, element.state, element.context)
32
+ } catch (e) {
33
+ console.warn(e)
34
+ }
35
+ }
36
+ }
37
+ window.requestAnimationFrame(requestFrame)
38
+ }
39
+
40
+ requestFrame()
41
+
42
+ return frameListeners
43
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var animationFrame_exports = {};
20
+ __export(animationFrame_exports, {
21
+ applyAnimationFrame: () => applyAnimationFrame,
22
+ initAnimationFrame: () => initAnimationFrame,
23
+ registerFrameListener: () => registerFrameListener
24
+ });
25
+ module.exports = __toCommonJS(animationFrame_exports);
26
+ const registerFrameListener = (el) => {
27
+ const { __ref: ref } = el;
28
+ const { frameListeners } = ref.root.data;
29
+ if (frameListeners && !frameListeners.has(el)) {
30
+ frameListeners.add(el);
31
+ }
32
+ };
33
+ const applyAnimationFrame = (element, options) => {
34
+ const { props, on, __ref: ref } = element;
35
+ const { frameListeners } = ref.root.data;
36
+ if (frameListeners && ((on == null ? void 0 : on.frame) || (props == null ? void 0 : props.onFrame))) {
37
+ registerFrameListener(element);
38
+ }
39
+ };
40
+ const initAnimationFrame = (ctx) => {
41
+ const frameListeners = /* @__PURE__ */ new Set();
42
+ function requestFrame() {
43
+ for (const element of frameListeners) {
44
+ if (!element.parent.node.contains(element.node)) {
45
+ frameListeners.delete(element);
46
+ } else {
47
+ try {
48
+ (element.on.frame || element.props.onFrame)(element, element.state, element.context);
49
+ } catch (e) {
50
+ console.warn(e);
51
+ }
52
+ }
53
+ }
54
+ window.requestAnimationFrame(requestFrame);
55
+ }
56
+ requestFrame();
57
+ return frameListeners;
58
+ };
package/dist/cjs/index.js CHANGED
@@ -13,7 +13,8 @@ var __copyProps = (to, from, except, desc) => {
13
13
  };
14
14
  var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
15
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
- var event_exports = {};
17
- module.exports = __toCommonJS(event_exports);
18
- __reExport(event_exports, require("./on.js"), module.exports);
19
- __reExport(event_exports, require("./can.js"), module.exports);
16
+ var index_exports = {};
17
+ module.exports = __toCommonJS(index_exports);
18
+ __reExport(index_exports, require("./on.js"), module.exports);
19
+ __reExport(index_exports, require("./can.js"), module.exports);
20
+ __reExport(index_exports, require("./animationFrame.js"), module.exports);
package/dist/cjs/on.js CHANGED
@@ -18,7 +18,6 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var on_exports = {};
20
20
  __export(on_exports, {
21
- applyAnimationFrame: () => applyAnimationFrame,
22
21
  applyEvent: () => applyEvent,
23
22
  applyEventUpdate: () => applyEventUpdate,
24
23
  applyEventsOnNode: () => applyEventsOnNode,
@@ -46,32 +45,22 @@ const triggerEventOn = async (param, element, options) => {
46
45
  const applyEventUpdate = (param, updatedObj, element, state, context, options) => {
47
46
  return param.call(element, updatedObj, element, state || element.state, context || element.context, options);
48
47
  };
49
- const triggerEventOnUpdate = (param, updatedObj, element, options) => {
48
+ const triggerEventOnUpdate = async (param, updatedObj, element, options) => {
50
49
  const appliedFunction = getOnOrPropsEvent(param, element);
51
50
  if (appliedFunction) {
52
51
  const { state, context } = element;
53
- return applyEventUpdate(appliedFunction, updatedObj, element, state, context, options);
54
- }
55
- };
56
- const applyAnimationFrame = (element, options) => {
57
- const { props, on, __ref: ref } = element;
58
- const { frameListeners } = ref.root.data;
59
- if (frameListeners && ((on == null ? void 0 : on.frame) || (props == null ? void 0 : props.onFrame))) {
60
- const { registerFrameListener } = element.context.utils;
61
- if (registerFrameListener)
62
- registerFrameListener(element);
52
+ return await applyEventUpdate(appliedFunction, updatedObj, element, state, context, options);
63
53
  }
64
54
  };
65
55
  const applyEventsOnNode = (element, options) => {
66
56
  const { node, on } = element;
67
57
  for (const param in on) {
68
- if (param === "init" || param === "beforeClassAssign" || param === "render" || param === "renderRouter" || param === "attachNode" || param === "stateInit" || param === "stateCreated" || param === "beforeStateUpdate" || param === "stateUpdate" || param === "beforeUpdate" || param === "done" || param === "create" || param === "complete" || param === "frame" || param === "update")
69
- continue;
58
+ if (param === "init" || param === "beforeClassAssign" || param === "render" || param === "renderRouter" || param === "attachNode" || param === "stateInit" || param === "stateCreated" || param === "beforeStateUpdate" || param === "stateUpdate" || param === "beforeUpdate" || param === "done" || param === "create" || param === "complete" || param === "frame" || param === "update") continue;
70
59
  const appliedFunction = getOnOrPropsEvent(param, element);
71
60
  if ((0, import_utils.isFunction)(appliedFunction)) {
72
- node.addEventListener(param, (event) => {
61
+ node.addEventListener(param, async (event) => {
73
62
  const { state, context } = element;
74
- appliedFunction.call(element, event, element, state, context, options);
63
+ await appliedFunction.call(element, event, element, state, context, options);
75
64
  });
76
65
  }
77
66
  }
@@ -0,0 +1,38 @@
1
+ const registerFrameListener = (el) => {
2
+ const { __ref: ref } = el;
3
+ const { frameListeners } = ref.root.data;
4
+ if (frameListeners && !frameListeners.has(el)) {
5
+ frameListeners.add(el);
6
+ }
7
+ };
8
+ const applyAnimationFrame = (element, options) => {
9
+ const { props, on, __ref: ref } = element;
10
+ const { frameListeners } = ref.root.data;
11
+ if (frameListeners && ((on == null ? void 0 : on.frame) || (props == null ? void 0 : props.onFrame))) {
12
+ registerFrameListener(element);
13
+ }
14
+ };
15
+ const initAnimationFrame = (ctx) => {
16
+ const frameListeners = /* @__PURE__ */ new Set();
17
+ function requestFrame() {
18
+ for (const element of frameListeners) {
19
+ if (!element.parent.node.contains(element.node)) {
20
+ frameListeners.delete(element);
21
+ } else {
22
+ try {
23
+ (element.on.frame || element.props.onFrame)(element, element.state, element.context);
24
+ } catch (e) {
25
+ console.warn(e);
26
+ }
27
+ }
28
+ }
29
+ window.requestAnimationFrame(requestFrame);
30
+ }
31
+ requestFrame();
32
+ return frameListeners;
33
+ };
34
+ export {
35
+ applyAnimationFrame,
36
+ initAnimationFrame,
37
+ registerFrameListener
38
+ };
package/dist/esm/index.js CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from "./on.js";
2
2
  export * from "./can.js";
3
+ export * from "./animationFrame.js";
package/dist/esm/on.js CHANGED
@@ -18,38 +18,27 @@ const triggerEventOn = async (param, element, options) => {
18
18
  const applyEventUpdate = (param, updatedObj, element, state, context, options) => {
19
19
  return param.call(element, updatedObj, element, state || element.state, context || element.context, options);
20
20
  };
21
- const triggerEventOnUpdate = (param, updatedObj, element, options) => {
21
+ const triggerEventOnUpdate = async (param, updatedObj, element, options) => {
22
22
  const appliedFunction = getOnOrPropsEvent(param, element);
23
23
  if (appliedFunction) {
24
24
  const { state, context } = element;
25
- return applyEventUpdate(appliedFunction, updatedObj, element, state, context, options);
26
- }
27
- };
28
- const applyAnimationFrame = (element, options) => {
29
- const { props, on, __ref: ref } = element;
30
- const { frameListeners } = ref.root.data;
31
- if (frameListeners && ((on == null ? void 0 : on.frame) || (props == null ? void 0 : props.onFrame))) {
32
- const { registerFrameListener } = element.context.utils;
33
- if (registerFrameListener)
34
- registerFrameListener(element);
25
+ return await applyEventUpdate(appliedFunction, updatedObj, element, state, context, options);
35
26
  }
36
27
  };
37
28
  const applyEventsOnNode = (element, options) => {
38
29
  const { node, on } = element;
39
30
  for (const param in on) {
40
- if (param === "init" || param === "beforeClassAssign" || param === "render" || param === "renderRouter" || param === "attachNode" || param === "stateInit" || param === "stateCreated" || param === "beforeStateUpdate" || param === "stateUpdate" || param === "beforeUpdate" || param === "done" || param === "create" || param === "complete" || param === "frame" || param === "update")
41
- continue;
31
+ if (param === "init" || param === "beforeClassAssign" || param === "render" || param === "renderRouter" || param === "attachNode" || param === "stateInit" || param === "stateCreated" || param === "beforeStateUpdate" || param === "stateUpdate" || param === "beforeUpdate" || param === "done" || param === "create" || param === "complete" || param === "frame" || param === "update") continue;
42
32
  const appliedFunction = getOnOrPropsEvent(param, element);
43
33
  if (isFunction(appliedFunction)) {
44
- node.addEventListener(param, (event) => {
34
+ node.addEventListener(param, async (event) => {
45
35
  const { state, context } = element;
46
- appliedFunction.call(element, event, element, state, context, options);
36
+ await appliedFunction.call(element, event, element, state, context, options);
47
37
  });
48
38
  }
49
39
  }
50
40
  };
51
41
  export {
52
- applyAnimationFrame,
53
42
  applyEvent,
54
43
  applyEventUpdate,
55
44
  applyEventsOnNode,
package/index.js CHANGED
@@ -2,3 +2,4 @@
2
2
 
3
3
  export * from './on.js'
4
4
  export * from './can.js'
5
+ export * from './animationFrame.js'
package/on.js CHANGED
@@ -24,20 +24,11 @@ export const applyEventUpdate = (param, updatedObj, element, state, context, opt
24
24
  return param.call(element, updatedObj, element, state || element.state, context || element.context, options)
25
25
  }
26
26
 
27
- export const triggerEventOnUpdate = (param, updatedObj, element, options) => {
27
+ export const triggerEventOnUpdate = async (param, updatedObj, element, options) => {
28
28
  const appliedFunction = getOnOrPropsEvent(param, element)
29
29
  if (appliedFunction) {
30
30
  const { state, context } = element
31
- return applyEventUpdate(appliedFunction, updatedObj, element, state, context, options)
32
- }
33
- }
34
-
35
- export const applyAnimationFrame = (element, options) => {
36
- const { props, on, __ref: ref } = element
37
- const { frameListeners } = ref.root.data
38
- if (frameListeners && (on?.frame || props?.onFrame)) {
39
- const { registerFrameListener } = element.context.utils
40
- if (registerFrameListener) registerFrameListener(element)
31
+ return await applyEventUpdate(appliedFunction, updatedObj, element, state, context, options)
41
32
  }
42
33
  }
43
34
 
@@ -64,9 +55,9 @@ export const applyEventsOnNode = (element, options) => {
64
55
 
65
56
  const appliedFunction = getOnOrPropsEvent(param, element)
66
57
  if (isFunction(appliedFunction)) {
67
- node.addEventListener(param, event => {
58
+ node.addEventListener(param, async event => {
68
59
  const { state, context } = element
69
- appliedFunction.call(element, event, element, state, context, options)
60
+ await appliedFunction.call(element, event, element, state, context, options)
70
61
  })
71
62
  }
72
63
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@domql/event",
3
- "version": "2.5.187",
3
+ "version": "2.5.200",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "index.js",
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@domql/report": "^2.5.186",
32
- "@domql/utils": "^2.5.187"
32
+ "@domql/utils": "^2.5.200"
33
33
  },
34
- "gitHead": "c150bfbbdd51b19d25c93f10334d54175cea9d1d"
34
+ "gitHead": "0afb63ec375f0526f47ff300885de393138b01e8"
35
35
  }