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

Commit e675c71

Browse files
committed
Revert "support SSR for addClasses()"
This reverts commit 6d86656.
1 parent 6d86656 commit e675c71

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+12
-22
lines changed

.gitignore

100644100755
File mode changed.

.travis.yml

100644100755
File mode changed.

LICENSE

100644100755
File mode changed.

README.md

100644100755
File mode changed.

gradle.properties

100644100755
File mode changed.

gradle/wrapper/gradle-wrapper.jar

100644100755
File mode changed.

gradle/wrapper/gradle-wrapper.properties

100644100755
File mode changed.

gradlew

100644100755
File mode changed.

gradlew.bat

100644100755
File mode changed.

jitpack.yml

100644100755
File mode changed.

notes/transport_optimization.md

100644100755
File mode changed.

scripts/do-release.sh

100644100755
File mode changed.

settings.gradle

100644100755
File mode changed.

src/main/kotlin/kweb/CookieReceiver.kt

100644100755
File mode changed.

src/main/kotlin/kweb/Element.kt

+12-22
Original file line numberDiff line numberDiff line change
@@ -256,29 +256,19 @@ open class Element(
256256
*/
257257
fun addClasses(vararg classes: String, onlyIf: Boolean = true): Element {
258258
if (onlyIf) {
259-
val jsoupDoc = browser.htmlDocument.get()
260-
when {
261-
jsoupDoc != null && (browser.isCatchingOutbound() == null || browser.isCatchingOutbound() == RENDER) -> {
262-
val thisEl = jsoupDoc.getElementById(this.id)!!
263-
val existingClasses = thisEl.attr("class").split(" ")
264-
val newClasses = existingClasses + classes
265-
thisEl.attr("class", newClasses.joinToString(separator = " "))
266-
}
267-
else -> {
268-
for (class_ in classes) {
269-
if (class_.contains(' ')) {
270-
error("Class names must not contain spaces")
271-
}
272-
//language=JavaScript
273-
callJsFunction("""
274-
let id = {};
275-
let className = {};
276-
let el = document.getElementById(id);
277-
if (el.classList) el.classList.add(className);
278-
else if (!hasClass(el, className)) el.className += " " + className;
279-
""".trimIndent(), id.json, JsonPrimitive(class_))
259+
for (class_ in classes) {
260+
if (class_.contains(' ')) {
261+
error("Class names must not contain spaces")
280262
}
281-
}
263+
//language=JavaScript
264+
callJsFunction("""
265+
let id = {};
266+
let className = {};
267+
let el = document.getElementById(id);
268+
if (el.classList) el.classList.add(className);
269+
else if (!hasClass(el, className)) el.className += " " + className;
270+
""".trimIndent(), id.json, JsonPrimitive(class_))
271+
}
282272
}
283273
return this
284274
}

src/main/kotlin/kweb/ElementCreator.kt

100644100755
File mode changed.

src/main/kotlin/kweb/Kweb.kt

100644100755
File mode changed.

src/main/kotlin/kweb/WebBrowser.kt

100644100755
File mode changed.

src/main/kotlin/kweb/attributes.kt

100644100755
File mode changed.

src/main/kotlin/kweb/client/Client2ServerMessage.kt

100644100755
File mode changed.

src/main/kotlin/kweb/client/ClientConnection.kt

100644100755
File mode changed.

src/main/kotlin/kweb/client/HttpRequestInfo.kt

100644100755
File mode changed.

src/main/kotlin/kweb/client/RemoteClientState.kt

100644100755
File mode changed.

src/main/kotlin/kweb/client/Server2ClientMessage.kt

100644100755
File mode changed.

src/main/kotlin/kweb/demos/todo/TodoApp.kt

100644100755
File mode changed.

src/main/kotlin/kweb/html/Document.kt

100644100755
File mode changed.

src/main/kotlin/kweb/html/ElementReader.kt

100644100755
File mode changed.

src/main/kotlin/kweb/html/StorageReceiver.kt

100644100755
File mode changed.

src/main/kotlin/kweb/html/style/style.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/KwebPlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/fomanticUI/FomanticUIClasses.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/fomanticUI/FomanticUIPlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/fomanticUI/jquery.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/jqueryCore/JQueryCorePlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/jqueryCore/jqueryExtensions.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/jqueryCore/jqueryevents.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/staticFiles/StaticFilesPlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/tablesort/TablesortPlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/plugins/viewport/ViewportPlugin.kt

100644100755
File mode changed.

src/main/kotlin/kweb/routing/routing.kt

100644100755
File mode changed.

src/main/kotlin/kweb/state/KVal.kt

100644100755
File mode changed.

src/main/kotlin/kweb/state/KVar.kt

100644100755
File mode changed.

src/main/kotlin/kweb/state/ReversibleFunction.kt

100644100755
File mode changed.

src/main/kotlin/kweb/state/render.kt

100644100755
File mode changed.

src/main/kotlin/kweb/table.kt

100644100755
File mode changed.

src/main/kotlin/kweb/util/misc.kt

100644100755
File mode changed.

src/main/resources/hotswap-agent.properties

100644100755
File mode changed.

src/test/kotlin/kweb/demos/todo/TodoDemoTest.kt

100644100755
File mode changed.

src/test/kotlin/kweb/routing/RoutingSpec.kt

100644100755
File mode changed.

src/test/kotlin/kweb/routing/RoutingTest.kt

100644100755
File mode changed.

src/test/kotlin/kweb/state/KVarSpec.kt

100644100755
File mode changed.

src/test/kotlin/kweb/state/StateSpec.kt

100644100755
File mode changed.

src/test/kotlin/kweb/state/persistent/PersistentSpec.kt

100644100755
File mode changed.

src/test/kotlin/kweb/state/render/RenderCleanupTest.kt

100644100755
File mode changed.

src/test/kotlin/kweb/state/render/RenderTest.kt

100644100755
File mode changed.

src/test/resources/kweb/phantomInit.js

100644100755
File mode changed.

0 commit comments

Comments
 (0)