aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/pl/treksoft/kvision/KVManager.kt
diff options
context:
space:
mode:
authorRobert Jaros <rjaros@finn.pl>2019-10-03 19:03:21 +0200
committerRobert Jaros <rjaros@finn.pl>2019-10-03 19:03:21 +0200
commit6b53324c97bfc80ed14dfca6a5dbc879950715b9 (patch)
tree55c7bb7d06e37470795a93e1f542e51ef3f1ace6 /src/main/kotlin/pl/treksoft/kvision/KVManager.kt
parent22a8d5c35db97d65a90b21d97e6835380191845d (diff)
downloadkvision-6b53324c97bfc80ed14dfca6a5dbc879950715b9.tar.gz
kvision-6b53324c97bfc80ed14dfca6a5dbc879950715b9.tar.bz2
kvision-6b53324c97bfc80ed14dfca6a5dbc879950715b9.zip
Upgrade to Bootstrap 4.
Upgrade to Font Awesome 5. Restructure modules.
Diffstat (limited to 'src/main/kotlin/pl/treksoft/kvision/KVManager.kt')
-rw-r--r--src/main/kotlin/pl/treksoft/kvision/KVManager.kt57
1 files changed, 22 insertions, 35 deletions
diff --git a/src/main/kotlin/pl/treksoft/kvision/KVManager.kt b/src/main/kotlin/pl/treksoft/kvision/KVManager.kt
index d1a4a8be..d3d00851 100644
--- a/src/main/kotlin/pl/treksoft/kvision/KVManager.kt
+++ b/src/main/kotlin/pl/treksoft/kvision/KVManager.kt
@@ -30,8 +30,6 @@ import com.github.snabbdom.eventListenersModule
import com.github.snabbdom.propsModule
import com.github.snabbdom.styleModule
import org.w3c.dom.HTMLElement
-import pl.treksoft.kvision.core.Component
-import pl.treksoft.kvision.utils.isIE11
import kotlin.browser.document
import kotlin.dom.clear
@@ -44,20 +42,25 @@ external fun require(name: String): dynamic
/**
* Internal singleton object which initializes and configures KVision framework.
*/
-@Suppress("EmptyCatchBlock", "TooGenericExceptionCaught", "LargeClass")
-internal object KVManager {
- private val kvisionBootstrap = try {
- require("kvision-bootstrap").pl.treksoft.kvision.KVManagerBootstrap
- } catch (e: Throwable) {
- }
- private val elementResizeEvent = try {
- require("element-resize-event")
- } catch (e: Throwable) {
- }
- private val resizable = try {
+@Suppress("EmptyCatchBlock", "TooGenericExceptionCaught")
+object KVManager {
+ init {
+ try {
+ require("kvision-bootstrap").pl.treksoft.kvision.KVManagerBootstrap
+ } catch (e: Throwable) {
+ }
+ try {
+ require("kvision-bootstrap-css").pl.treksoft.kvision.KVManagerBootstrapCss
+ } catch (e: Throwable) {
+ }
+ try {
+ require("kvision-fontawesome").pl.treksoft.kvision.KVManagerFontAwesome
+ } catch (e: Throwable) {
+ }
+ require("./css/style.css")
require("jquery-resizable-dom")
- } catch (e: Throwable) {
}
+
internal val fecha = require("fecha")
private val sdPatch = Snabbdom.init(
arrayOf(
@@ -81,28 +84,12 @@ internal object KVManager {
return sdPatch(oldVNode, newVNode)
}
+ /**
+ * @suppress
+ * Internal function.
+ */
@Suppress("UnsafeCastFromDynamic")
- internal fun virtualize(html: String): VNode {
+ fun virtualize(html: String): VNode {
return sdVirtualize(html)
}
-
- @Suppress("UnsafeCastFromDynamic")
- internal fun setResizeEvent(component: Component, callback: () -> Unit) {
- if (!isIE11()) {
- component.getElement()?.let {
- elementResizeEvent(it, callback)
- }
- }
- }
-
- @Suppress("UnsafeCastFromDynamic")
- internal fun clearResizeEvent(component: Component) {
- if (!isIE11()) {
- if (component.getElement()?.asDynamic()?.__resizeTrigger__?.contentDocument != null) {
- component.getElement()?.let {
- elementResizeEvent.unbind(it)
- }
- }
- }
- }
}