aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJoris2025-04-09 22:34:08 +0200
committerJoris2025-04-09 22:34:08 +0200
commitb20c50b4beafa2bd3ebc8be6cab66f6012bc59ef (patch)
tree24efcd256315f2ae82a6b623decf555b8aece703 /src
parent6b59fe02b72f2bcd034ffb405e0d4b0ccedd8920 (diff)
Use correct element in setAttribute
Diffstat (limited to 'src')
-rw-r--r--src/rx.ts12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/rx.ts b/src/rx.ts
index 3c8e290..5af56d5 100644
--- a/src/rx.ts
+++ b/src/rx.ts
@@ -485,9 +485,9 @@ function appendChild(state: State, element: Element, child: Html, lastAdded?: No
const cancelAttributes = Object.entries(attributes).map(([key, value]) => {
if (isRx<AttributeValue>(value)) {
- return rxRun(state, value, newValue => setAttribute(state, setAttr, element, key, newValue))
+ return rxRun(state, value, newValue => setAttribute(setAttr, childElement, key, newValue))
} else {
- setAttribute(state, setAttr, element, key, value)
+ setAttribute(setAttr, childElement, key, value)
}
})
@@ -659,7 +659,7 @@ function appendChild(state: State, element: Element, child: Html, lastAdded?: No
}
}
-const svgElements = ['svg', 'circle', 'polygon', 'line', 'rect', 'ellipse', 'text']
+const svgElements = ['svg', 'circle', 'polygon', 'line', 'rect', 'ellipse', 'text', 'path']
function isSvg(tagName: string): boolean {
return !(svgElements.indexOf(tagName) === -1)
}
@@ -700,16 +700,14 @@ function appendNode(base: Element, node: Node, lastAdded?: Node) {
}
}
-function setAttribute(state: State, setAttr: (key: any, value: any) => void, element: Element, key: string, attribute: AttributeValue) {
+function setAttribute(setAttr: (key: any, value: any) => void, element: Element, key: string, attribute: AttributeValue) {
if (attribute === undefined) {
// Do nothing
} else if (attribute === true) {
setAttr(key, 'true')
} else if (attribute === false) {
// @ts-ignore
- if (key in element) {
- setAttr(key, false)
- }
+ if (key in element) setAttr(key, false)
} else if (typeof attribute === "number") {
setAttr(key, attribute.toString())
} else if (typeof attribute === "string") {