Skip to content
This repository was archived by the owner on Aug 10, 2024. It is now read-only.

Commit 72bf50d

Browse files
committed
remove trimIndent to reduce memory usage
1 parent cf587e9 commit 72bf50d

File tree

1 file changed

+42
-45
lines changed

1 file changed

+42
-45
lines changed

src/main/kotlin/kweb/ElementCreator.kt

Lines changed: 42 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -94,29 +94,27 @@ open class ElementCreator<out PARENT_TYPE : Element>(
9494
element.browser.isCatchingOutbound() != null -> {
9595
//language=JavaScript
9696
val createElementJs = """
97-
console.log("Creating new element")
98-
let tag = {};
99-
let attributes = {};
100-
let myId = {};
101-
let parentId = {};
102-
let insertBefore = {};
103-
console.log("insertBefore = " + insertBefore)
104-
let newEl = $createElementStatement
105-
newEl.setAttribute("id", myId);
106-
for (const key in attributes) {
107-
if ( key !== "id") {
108-
newEl.setAttribute(key, attributes[key]);
109-
}
110-
}
111-
let parentElement = document.getElementById(parentId);
112-
let startNode = document.getElementById(insertBefore)
113-
114-
if (insertBefore !== undefined) {
115-
parentElement.insertBefore(newEl, startNode)
116-
} else {
117-
parentElement.appendChild(newEl);
118-
}
119-
""".trimIndent()
97+
let tag = {};
98+
let attributes = {};
99+
let myId = {};
100+
let parentId = {};
101+
let insertBefore = {};
102+
let newEl = $createElementStatement
103+
newEl.setAttribute("id", myId);
104+
for (const key in attributes) {
105+
if ( key !== "id") {
106+
newEl.setAttribute(key, attributes[key]);
107+
}
108+
}
109+
let parentElement = document.getElementById(parentId);
110+
let startNode = document.getElementById(insertBefore)
111+
112+
if (insertBefore !== undefined) {
113+
parentElement.insertBefore(newEl, startNode)
114+
} else {
115+
parentElement.appendChild(newEl);
116+
}
117+
"""
120118
browser.callJsFunction(
121119
createElementJs, JsonPrimitive(tag), JsonObject(mutAttributes), id.json,
122120
JsonPrimitive(element.id), JsonPrimitive(insertBefore ?: ""), JsonPrimitive(elementsCreatedCount)
@@ -127,28 +125,27 @@ open class ElementCreator<out PARENT_TYPE : Element>(
127125
//The way I have written this function, instead of attributes.get(), we now use attributes[].
128126
//language=JavaScript
129127
val createElementJs = """
130-
console.log("Creating new element in other place")
131-
let tag = {};
132-
let attributes = {};
133-
let myId = {};
134-
let parentId = {};
135-
let insertBefore = {};
136-
let newEl = document.createElement(tag);
137-
if (attributes["id"] === undefined) {
138-
newEl.setAttribute("id", myId);
139-
}
140-
for (const key in attributes) {
141-
newEl.setAttribute(key, attributes[key]);
142-
}
143-
let parentElement = document.getElementById(parentId);
144-
let startNode = document.getElementById(insertBefore)
145-
146-
if (insertBefore !== undefined) {
147-
parentElement.insertBefore(newEl, startNode)
148-
} else {
149-
parentElement.appendChild(newEl);
150-
}
151-
""".trimIndent()
128+
let tag = {};
129+
let attributes = {};
130+
let myId = {};
131+
let parentId = {};
132+
let insertBefore = {};
133+
let newEl = document.createElement(tag);
134+
if (attributes["id"] === undefined) {
135+
newEl.setAttribute("id", myId);
136+
}
137+
for (const key in attributes) {
138+
newEl.setAttribute(key, attributes[key]);
139+
}
140+
let parentElement = document.getElementById(parentId);
141+
let startNode = document.getElementById(insertBefore)
142+
143+
if (insertBefore !== undefined) {
144+
parentElement.insertBefore(newEl, startNode)
145+
} else {
146+
parentElement.appendChild(newEl);
147+
}
148+
"""
152149
element.browser.callJsFunction(
153150
createElementJs, tag.json, JsonObject(mutAttributes), id.json,
154151
element.id.json, JsonPrimitive(insertBefore ?: ""), JsonPrimitive(elementsCreatedCount)

0 commit comments

Comments
 (0)