Package not found. Please check the package name and try again.

saloe 0.0.77 → 0.0.79

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.
@@ -16,15 +16,18 @@ const listener = ({
16
16
  "focus",
17
17
  "invalid"
18
18
  ];
19
- const addListener = ({ srcElement, eventName, listeners }) => {
19
+ const addListener = ({ srcElement, eventName, listeners, afterExecuteListeners }) => {
20
20
  srcElement == null ? void 0 : srcElement.addEventListener(eventName, (e) => {
21
- executeListeners({ e, srcElement, listeners });
21
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners });
22
22
  });
23
23
  };
24
- const executeListeners = ({ e, srcElement, listeners }) => {
25
- listeners == null ? void 0 : listeners.forEach((listener2) => {
26
- if (listener2) listener2({ e, srcElement });
27
- });
24
+ const executeListeners = async ({ e, srcElement, listeners, afterExecuteListeners }) => {
25
+ await Promise.all(
26
+ listeners == null ? void 0 : listeners.map((listener2) => {
27
+ if (listener2) return listener2({ e, srcElement });
28
+ })
29
+ );
30
+ await afterExecuteListeners();
28
31
  };
29
32
  const getListenerFromScript = ({ script, eventName }) => {
30
33
  var _a;
@@ -149,19 +152,23 @@ const listener = ({
149
152
  if (closestButton) return closestButton;
150
153
  return srcElement;
151
154
  };
152
- const isAnchorClicked = ({ srcElement, eventName }) => {
155
+ const isAnchorBeingClicked = ({ srcElement, eventName }) => {
153
156
  return (srcElement == null ? void 0 : srcElement.tagName) === "A" && eventName === "click";
154
157
  };
155
158
  const fireListeners = () => {
156
159
  EVENTS.forEach((eventName) => {
157
160
  document.body[`on${eventName}`] = async (e) => {
158
- if (isAnchorClicked({ srcElement, eventName })) e.preventDefault();
159
161
  const srcElement = getSrcElement({ srcElement: e == null ? void 0 : e.srcElement, eventName });
162
+ const isAnchorClicked = isAnchorBeingClicked({ srcElement, eventName });
163
+ if (isAnchorClicked) e.preventDefault();
160
164
  console.log("--- document.body ~ srcElement =", srcElement);
161
165
  console.log("--- document.body ~ eventName =", eventName);
162
166
  const listeners = await fetchListeners({ srcElement, eventName, e });
163
- executeListeners({ e, srcElement, listeners });
164
- addListener({ srcElement, eventName, listeners });
167
+ const afterExecuteListeners = isAnchorClicked ? () => {
168
+ console.log("$$$ clickDefaultAnchor");
169
+ } : null;
170
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners });
171
+ addListener({ srcElement, eventName, listeners, afterExecuteListeners });
165
172
  if (srcElement == null ? void 0 : srcElement.removeAttribute) srcElement.removeAttribute(`on-${eventName}`);
166
173
  };
167
174
  });
@@ -14,15 +14,18 @@ const listener = ({
14
14
  "focus",
15
15
  "invalid"
16
16
  ];
17
- const addListener = ({ srcElement, eventName, listeners }) => {
17
+ const addListener = ({ srcElement, eventName, listeners, afterExecuteListeners }) => {
18
18
  srcElement == null ? void 0 : srcElement.addEventListener(eventName, (e) => {
19
- executeListeners({ e, srcElement, listeners });
19
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners });
20
20
  });
21
21
  };
22
- const executeListeners = ({ e, srcElement, listeners }) => {
23
- listeners == null ? void 0 : listeners.forEach((listener2) => {
24
- if (listener2) listener2({ e, srcElement });
25
- });
22
+ const executeListeners = async ({ e, srcElement, listeners, afterExecuteListeners }) => {
23
+ await Promise.all(
24
+ listeners == null ? void 0 : listeners.map((listener2) => {
25
+ if (listener2) return listener2({ e, srcElement });
26
+ })
27
+ );
28
+ await afterExecuteListeners();
26
29
  };
27
30
  const getListenerFromScript = ({ script, eventName }) => {
28
31
  var _a;
@@ -147,19 +150,23 @@ const listener = ({
147
150
  if (closestButton) return closestButton;
148
151
  return srcElement;
149
152
  };
150
- const isAnchorClicked = ({ srcElement, eventName }) => {
153
+ const isAnchorBeingClicked = ({ srcElement, eventName }) => {
151
154
  return (srcElement == null ? void 0 : srcElement.tagName) === "A" && eventName === "click";
152
155
  };
153
156
  const fireListeners = () => {
154
157
  EVENTS.forEach((eventName) => {
155
158
  document.body[`on${eventName}`] = async (e) => {
156
- if (isAnchorClicked({ srcElement, eventName })) e.preventDefault();
157
159
  const srcElement = getSrcElement({ srcElement: e == null ? void 0 : e.srcElement, eventName });
160
+ const isAnchorClicked = isAnchorBeingClicked({ srcElement, eventName });
161
+ if (isAnchorClicked) e.preventDefault();
158
162
  console.log("--- document.body ~ srcElement =", srcElement);
159
163
  console.log("--- document.body ~ eventName =", eventName);
160
164
  const listeners = await fetchListeners({ srcElement, eventName, e });
161
- executeListeners({ e, srcElement, listeners });
162
- addListener({ srcElement, eventName, listeners });
165
+ const afterExecuteListeners = isAnchorClicked ? () => {
166
+ console.log("$$$ clickDefaultAnchor");
167
+ } : null;
168
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners });
169
+ addListener({ srcElement, eventName, listeners, afterExecuteListeners });
163
170
  if (srcElement == null ? void 0 : srcElement.removeAttribute) srcElement.removeAttribute(`on-${eventName}`);
164
171
  };
165
172
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "saloe",
3
- "version": "0.0.77",
3
+ "version": "0.0.79",
4
4
  "description": "Tools for making web development easy and efficient",
5
5
  "type": "module",
6
6
  "scripts": {
package/src/listener.js CHANGED
@@ -16,16 +16,32 @@ const listener = ({
16
16
  'invalid',
17
17
  ]
18
18
 
19
- const addListener = ({ srcElement, eventName, listeners }) => {
19
+ // const addListener = ({ srcElement, eventName, listeners }) => {
20
+ // srcElement?.addEventListener(eventName, (e) => {
21
+ // executeListeners({ e, srcElement, listeners })
22
+ // })
23
+ // }
24
+
25
+ const addListener = ({ srcElement, eventName, listeners, afterExecuteListeners }) => {
20
26
  srcElement?.addEventListener(eventName, (e) => {
21
- executeListeners({ e, srcElement, listeners })
27
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners })
22
28
  })
23
29
  }
24
30
 
25
- const executeListeners = ({ e, srcElement, listeners }) => {
26
- listeners?.forEach((listener) => {
27
- if (listener) listener({ e, srcElement })
28
- })
31
+ // const executeListeners = async ({ e, srcElement, listeners }) => {
32
+ // listeners?.forEach((listener) => {
33
+ // if (listener) listener({ e, srcElement })
34
+ // })
35
+ // }
36
+
37
+ const executeListeners = async ({ e, srcElement, listeners, afterExecuteListeners }) => {
38
+ await Promise.all(
39
+ listeners?.map((listener) => {
40
+ if (listener) return listener({ e, srcElement })
41
+ })
42
+ )
43
+
44
+ await afterExecuteListeners()
29
45
  }
30
46
 
31
47
  const getListenerFromScript = ({ script, eventName }) => {
@@ -225,46 +241,65 @@ const listener = ({
225
241
  return newSrcElement
226
242
  }
227
243
 
228
- const fireAnchorClickListener = () => {
229
- const anchors = document.querySelectorAll('a[on-click]')
230
- anchors?.forEach(async (anchor) => {
231
- const srcElement = anchor
232
- const eventName = 'click'
233
- const listeners = await fetchListeners({ srcElement, eventName })
244
+ // const fireAnchorClickListener = () => {
245
+ // const anchors = document.querySelectorAll('a[on-click]')
246
+ // anchors?.forEach(async (anchor) => {
247
+ // const srcElement = anchor
248
+ // const eventName = 'click'
249
+ // const listeners = await fetchListeners({ srcElement, eventName })
234
250
 
235
- anchor.addEventListener(eventName, (e) => {
236
- e.preventDefault()
251
+ // anchor.addEventListener(eventName, (e) => {`
252
+ // e.preventDefault()
237
253
 
238
- // executeListeners({ e, srcElement, listeners })
254
+ // // executeListeners({ e, srcElement, listeners })
239
255
 
240
- console.log('--- anchor ~ srcElement =', srcElement)
241
- console.log('--- anchor ~ eventName =', eventName)
256
+ // console.log('--- anchor ~ srcElement =', srcElement)
257
+ // console.log('--- anchor ~ eventName =', eventName)
242
258
 
243
- // const newAnchor = cloneSrcElement({ srcElement })
244
- // newAnchor.click()
245
- })
259
+ // // const newAnchor = cloneSrcElement({ srcElement })
260
+ // // newAnchor.click()
261
+ // })
246
262
 
247
- if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${eventName}`)
248
- })
249
- }
263
+ // if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${eventName}`)
264
+ // })
265
+ // }
250
266
 
251
- const isAnchorClicked = ({ srcElement, eventName }) => {
267
+ const isAnchorBeingClicked = ({ srcElement, eventName }) => {
252
268
  return srcElement?.tagName === 'A' && eventName === 'click'
253
269
  }
254
270
 
271
+ const clickDefaultAnchor = ({ srcElement }) => {
272
+ const newAnchor = cloneSrcElement({ srcElement })
273
+ newAnchor.click()
274
+ }
275
+
255
276
  const fireListeners = () => {
256
277
  EVENTS.forEach((eventName) => {
257
278
  document.body[`on${eventName}`] = async (e) => {
258
- if (isAnchorClicked({ srcElement, eventName })) e.preventDefault()
259
-
260
279
  const srcElement = getSrcElement({ srcElement: e?.srcElement, eventName })
280
+ const isAnchorClicked = isAnchorBeingClicked({ srcElement, eventName })
281
+
282
+ if (isAnchorClicked) e.preventDefault()
283
+
261
284
  console.log('--- document.body ~ srcElement =', srcElement)
262
285
  console.log('--- document.body ~ eventName =', eventName)
263
286
 
264
287
  const listeners = await fetchListeners({ srcElement, eventName, e })
265
- executeListeners({ e, srcElement, listeners })
266
- addListener({ srcElement, eventName, listeners })
267
288
 
289
+ // executeListeners({ e, srcElement, listeners })
290
+ // addListener({ srcElement, eventName, listeners })
291
+ // if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${eventName}`)
292
+
293
+ const afterExecuteListeners = isAnchorClicked
294
+ ? () => {
295
+ // return clickDefaultAnchor({ srcElement })
296
+ console.log('$$$ clickDefaultAnchor')
297
+ }
298
+ : null
299
+
300
+ executeListeners({ e, srcElement, listeners, afterExecuteListeners })
301
+ addListener({ srcElement, eventName, listeners, afterExecuteListeners })
302
+
268
303
  if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${eventName}`)
269
304
  }
270
305
  })