saloe 0.0.78 → 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.
- package/dist/listener.cjs.js +17 -10
- package/dist/listener.es.js +17 -10
- package/package.json +1 -1
- package/src/listener.js +62 -27
package/dist/listener.cjs.js
CHANGED
|
@@ -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
|
-
|
|
26
|
-
|
|
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
|
|
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
161
|
const srcElement = getSrcElement({ srcElement: e == null ? void 0 : e.srcElement, eventName });
|
|
159
|
-
|
|
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
|
-
|
|
164
|
-
|
|
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
|
});
|
package/dist/listener.es.js
CHANGED
|
@@ -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
|
-
|
|
24
|
-
|
|
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
|
|
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
159
|
const srcElement = getSrcElement({ srcElement: e == null ? void 0 : e.srcElement, eventName });
|
|
157
|
-
|
|
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
|
-
|
|
162
|
-
|
|
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
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
|
-
|
|
27
|
-
|
|
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
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
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
|
-
|
|
236
|
-
|
|
251
|
+
// anchor.addEventListener(eventName, (e) => {`
|
|
252
|
+
// e.preventDefault()
|
|
237
253
|
|
|
238
|
-
|
|
254
|
+
// // executeListeners({ e, srcElement, listeners })
|
|
239
255
|
|
|
240
|
-
|
|
241
|
-
|
|
256
|
+
// console.log('--- anchor ~ srcElement =', srcElement)
|
|
257
|
+
// console.log('--- anchor ~ eventName =', eventName)
|
|
242
258
|
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
259
|
+
// // const newAnchor = cloneSrcElement({ srcElement })
|
|
260
|
+
// // newAnchor.click()
|
|
261
|
+
// })
|
|
246
262
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
}
|
|
263
|
+
// if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${eventName}`)
|
|
264
|
+
// })
|
|
265
|
+
// }
|
|
250
266
|
|
|
251
|
-
const
|
|
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
279
|
const srcElement = getSrcElement({ srcElement: e?.srcElement, eventName })
|
|
259
|
-
|
|
280
|
+
const isAnchorClicked = isAnchorBeingClicked({ srcElement, eventName })
|
|
281
|
+
|
|
282
|
+
if (isAnchorClicked) e.preventDefault()
|
|
260
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
|
})
|