diff options
| author | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-13 23:17:25 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-13 23:17:25 +0530 |
| commit | 68777ec421d41be0da27013afd4165ae7d658d26 (patch) | |
| tree | 4c1cc6af7acfeac54b2e54372944344d3f5b9a26 /src/shared/modify-dom.ts | |
| parent | 20c3b38f24d79df8843f17985a7d13533d4e0d10 (diff) | |
| download | banglar-bhumi-utils-68777ec421d41be0da27013afd4165ae7d658d26.tar.gz banglar-bhumi-utils-68777ec421d41be0da27013afd4165ae7d658d26.zip | |
refactor: added linting with esling and also resolved warnings for it
Diffstat (limited to 'src/shared/modify-dom.ts')
| -rw-r--r-- | src/shared/modify-dom.ts | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/shared/modify-dom.ts b/src/shared/modify-dom.ts index b268ae2..41e8730 100644 --- a/src/shared/modify-dom.ts +++ b/src/shared/modify-dom.ts @@ -2,7 +2,7 @@ import { observeDOM } from "@/shared/observe-dom"; type DOMReplacements = { innerHTML?: string; - [key: string]: string | undefined | null; + [key: string]: string | undefined | null }; type DOMModificaitonRule = readonly [string, DOMReplacements]; type DOMModificationRules = (DOMModificaitonRule | null)[]; @@ -17,23 +17,25 @@ let domModificationFinishedCount = 0; */ observeDOM(() => { for (let i = 0; i < domModificationRules.length; i++) { - if (domModificationRules[i]) { - const element = document.querySelector(domModificationRules[i]![0]) as HTMLElement | null; + const rule = domModificationRules[i]; + if (rule?.[0]) { + const element = document.querySelector(rule[0]); if (element) { - const attributes = domModificationRules[i]![1]; + const attributes = rule[1]; if (attributes.innerHTML) { - element.innerHTML = attributes.innerHTML as string; + element.innerHTML = attributes.innerHTML; } delete attributes.innerHTML; - for (const attribute in attributes) { - if (attributes[attribute] === null) { - element.removeAttribute(attribute); + for (const attributeName in attributes) { + const attribute = attributes[attributeName]; + if (attribute) { + element.setAttribute(attributeName, attribute); } else { - element.setAttribute(attribute, attributes[attribute] as string); + element.removeAttribute(attributeName); } } @@ -59,6 +61,6 @@ observeDOM(() => { * * @param modificationRules - Array of `[selector, attributes]` rules. */ -export function modifyDOM(modificationRules: DOMModificationRules) { +export function modifyDOM(modificationRules: DOMModificationRules): void { domModificationRules = domModificationRules.concat(modificationRules); }; |
