saloe 0.0.56 → 0.0.58

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.
@@ -149,16 +149,30 @@ const listener = ({
149
149
  if (closestButton) return closestButton;
150
150
  return srcElement;
151
151
  };
152
+ const cloneSrcElement = ({ srcElement }) => {
153
+ const newSrcElement = document.createElement(srcElement == null ? void 0 : srcElement.tagName);
154
+ console.log("--- srcElement =", srcElement);
155
+ console.log("--- srcElement.attributes =", srcElement.attributes);
156
+ srcElement == null ? void 0 : srcElement.attributes.forEach((attr) => {
157
+ if (attr.startsWith("on-")) return;
158
+ newSrcElement.setAttribute(attr.name, attr.value);
159
+ });
160
+ return newSrcElement;
161
+ };
152
162
  const fireAnchorClickListener = () => {
153
163
  const anchors = document.querySelectorAll("a[on-click]");
154
164
  anchors == null ? void 0 : anchors.forEach((anchor) => {
155
165
  anchor.addEventListener("click", async (e) => {
166
+ e.preventDefault();
156
167
  const srcElement = anchor;
157
168
  const event = "click";
158
169
  const listeners = await fetchListeners({ srcElement, event, e });
159
170
  executeListeners({ e, srcElement, listeners });
160
171
  if (srcElement == null ? void 0 : srcElement.removeAttribute) srcElement.removeAttribute(`on-${event}`);
161
- console.log("--- anchor.href =", anchor.href);
172
+ setTimeout(() => {
173
+ const newAnchor = cloneSrcElement({ srcElement });
174
+ newAnchor.click();
175
+ }, 1e3);
162
176
  });
163
177
  });
164
178
  };
@@ -147,16 +147,30 @@ const listener = ({
147
147
  if (closestButton) return closestButton;
148
148
  return srcElement;
149
149
  };
150
+ const cloneSrcElement = ({ srcElement }) => {
151
+ const newSrcElement = document.createElement(srcElement == null ? void 0 : srcElement.tagName);
152
+ console.log("--- srcElement =", srcElement);
153
+ console.log("--- srcElement.attributes =", srcElement.attributes);
154
+ srcElement == null ? void 0 : srcElement.attributes.forEach((attr) => {
155
+ if (attr.startsWith("on-")) return;
156
+ newSrcElement.setAttribute(attr.name, attr.value);
157
+ });
158
+ return newSrcElement;
159
+ };
150
160
  const fireAnchorClickListener = () => {
151
161
  const anchors = document.querySelectorAll("a[on-click]");
152
162
  anchors == null ? void 0 : anchors.forEach((anchor) => {
153
163
  anchor.addEventListener("click", async (e) => {
164
+ e.preventDefault();
154
165
  const srcElement = anchor;
155
166
  const event = "click";
156
167
  const listeners = await fetchListeners({ srcElement, event, e });
157
168
  executeListeners({ e, srcElement, listeners });
158
169
  if (srcElement == null ? void 0 : srcElement.removeAttribute) srcElement.removeAttribute(`on-${event}`);
159
- console.log("--- anchor.href =", anchor.href);
170
+ setTimeout(() => {
171
+ const newAnchor = cloneSrcElement({ srcElement });
172
+ newAnchor.click();
173
+ }, 1e3);
160
174
  });
161
175
  });
162
176
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "saloe",
3
- "version": "0.0.56",
3
+ "version": "0.0.58",
4
4
  "description": "Tools for making web development easy and efficient",
5
5
  "type": "module",
6
6
  "scripts": {
package/src/listener.js CHANGED
@@ -214,11 +214,24 @@ const listener = ({
214
214
  return srcElement
215
215
  }
216
216
 
217
+ const cloneSrcElement = ({ srcElement }) => {
218
+ const newSrcElement = document.createElement(srcElement?.tagName)
219
+ console.log('--- srcElement =', srcElement)
220
+ console.log('--- srcElement.attributes =', srcElement.attributes)
221
+
222
+ srcElement?.attributes.forEach((attr) => {
223
+ if (attr.startsWith('on-')) return
224
+ newSrcElement.setAttribute(attr.name, attr.value)
225
+ })
226
+
227
+ return newSrcElement
228
+ }
229
+
217
230
  const fireAnchorClickListener = () => {
218
231
  const anchors = document.querySelectorAll('a[on-click]')
219
232
  anchors?.forEach((anchor) => {
220
233
  anchor.addEventListener('click', async (e) => {
221
- // e.preventDefault()
234
+ e.preventDefault()
222
235
 
223
236
  const srcElement = anchor
224
237
  const event = 'click'
@@ -226,8 +239,11 @@ const listener = ({
226
239
 
227
240
  executeListeners({ e, srcElement, listeners })
228
241
  if (srcElement?.removeAttribute) srcElement.removeAttribute(`on-${event}`)
229
-
230
- console.log('--- anchor.href =', anchor.href)
242
+
243
+ setTimeout(() => {
244
+ const newAnchor = cloneSrcElement({ srcElement })
245
+ newAnchor.click()
246
+ }, 1_000)
231
247
 
232
248
  // location.href = anchor.href
233
249
  })