Skip to content

Commit 7bf7406

Browse files
committed
q
1 parent 9276bfd commit 7bf7406

2 files changed

Lines changed: 10 additions & 35 deletions

File tree

pages/html/input/handleInput.js

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,34 +16,23 @@ function handleInput(parentToBind, event, options = {}) {
1616
}
1717
}
1818
const unbind = [];
19-
for (const event2 of events) {
20-
parentToBind.addEventListener(event2, handler);
19+
for (const eventName of events) {
20+
parentToBind.addEventListener(eventName, handler);
2121
unbind.push(() => {
22-
parentToBind.removeEventListener(event2, handler);
22+
parentToBind.removeEventListener(eventName, handler);
2323
});
2424
}
2525
let observer = null;
2626
if (observeMutations) {
2727
observer = new MutationObserver((mutations) => {
2828
const inputs = /* @__PURE__ */ new Set();
2929
for (const mutation of mutations) {
30-
for (const node of mutation.addedNodes) {
30+
for (const node of [...mutation.addedNodes, ...mutation.removedNodes]) {
3131
if (!(node instanceof HTMLElement)) continue;
3232
if (detectElement(node)) {
3333
inputs.add(node);
3434
}
35-
[...findInputs(node)].forEach((el) => {
36-
if (detectElement(el)) {
37-
inputs.add(el);
38-
}
39-
});
40-
}
41-
for (const node of mutation.removedNodes) {
42-
if (!(node instanceof HTMLElement)) continue;
43-
if (detectElement(node)) {
44-
inputs.add(node);
45-
}
46-
[...findInputs(node)].forEach((el) => {
35+
findInputs(node).forEach((el) => {
4736
if (detectElement(el)) {
4837
inputs.add(el);
4938
}

pages/html/input/handleInput.ts

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,10 @@ export default function handleInput(
3434
}
3535

3636
const unbind: (() => void)[] = [];
37-
for (const event of events) {
38-
parentToBind.addEventListener(event, handler);
37+
for (const eventName of events) {
38+
parentToBind.addEventListener(eventName, handler);
3939
unbind.push(() => {
40-
parentToBind.removeEventListener(event, handler);
40+
parentToBind.removeEventListener(eventName, handler);
4141
});
4242
}
4343

@@ -48,28 +48,14 @@ export default function handleInput(
4848
const inputs = new Set<HTMLInputElement>();
4949

5050
for (const mutation of mutations) {
51-
for (const node of mutation.addedNodes) {
51+
for (const node of [...mutation.addedNodes, ...mutation.removedNodes]) {
5252
if (!(node instanceof HTMLElement)) continue;
5353

5454
if (detectElement(node)) {
5555
inputs.add(node as HTMLInputElement);
5656
}
5757

58-
[...findInputs(node)].forEach((el) => {
59-
if (detectElement(el as HTMLElement)) {
60-
inputs.add(el as HTMLInputElement);
61-
}
62-
});
63-
}
64-
65-
for (const node of mutation.removedNodes) {
66-
if (!(node instanceof HTMLElement)) continue;
67-
68-
if (detectElement(node)) {
69-
inputs.add(node as HTMLInputElement);
70-
}
71-
72-
[...findInputs(node)].forEach((el) => {
58+
findInputs(node).forEach((el) => {
7359
if (detectElement(el as HTMLElement)) {
7460
inputs.add(el as HTMLInputElement);
7561
}

0 commit comments

Comments
 (0)