Reuben Firmin
02/16/2024, 5:10 PMturansky
02/16/2024, 5:13 PMReuben Firmin
02/16/2024, 5:15 PMfun addHelpers() {
window.asDynamic().clearModals = ::hideBackdrop
}
fun hideBackdrop() {
val maybeBackdrop = document.body!!.lastChild!!
if (maybeBackdrop is HTMLElement) {
if (maybeBackdrop.nodeName.lowercase() == "div" && maybeBackdrop.hasAttribute("modal-backdrop")) {
maybeBackdrop.remove()
}
}
}
Backend (kotlinx.html):
script {
unsafe {
raw("""
window.clearModals();
""".trimIndent())
}
}
Reuben Firmin
02/16/2024, 5:17 PMReuben Firmin
02/18/2024, 10:57 AMturansky
02/18/2024, 11:27 AMReuben Firmin
02/18/2024, 11:46 AMReuben Firmin
02/18/2024, 11:55 AMturansky
02/18/2024, 12:12 PMReuben Firmin
02/18/2024, 12:32 PMturansky
02/19/2024, 2:16 AMexpect/actual
In Java it will generate JS code (string)Reuben Firmin
02/23/2024, 6:07 PMturansky
02/23/2024, 6:18 PMactual class A {
fun do()
}
// Java
expected class A {
fun do() = "<http://window.do|window.do>()"
}
//JS
expected class A {
fun do() { your code }
}
fun main() {
install(A())
}
turansky
02/23/2024, 6:20 PMReuben Firmin
02/23/2024, 6:23 PM