diff options
author | Robert Jaros <rjaros@finn.pl> | 2020-03-11 16:18:17 +0100 |
---|---|---|
committer | Robert Jaros <rjaros@finn.pl> | 2020-03-11 16:18:17 +0100 |
commit | 9e243a469ae6544e8cf523ad09b959f541c3f565 (patch) | |
tree | be9c7447e221af49180c9e98434df7f988b940b8 /kvision-modules/kvision-bootstrap | |
parent | ec6084c42c13a621e17b17bd40d90b5c7879f0ec (diff) | |
download | kvision-9e243a469ae6544e8cf523ad09b959f541c3f565.tar.gz kvision-9e243a469ae6544e8cf523ad09b959f541c3f565.tar.bz2 kvision-9e243a469ae6544e8cf523ad09b959f541c3f565.zip |
Upgrade to Kotlin 1.3.70 + other dependencies (Coroutinse, Serialization, Spring Boot)
Major refactoring of build architecture.
Diffstat (limited to 'kvision-modules/kvision-bootstrap')
7 files changed, 68 insertions, 21 deletions
diff --git a/kvision-modules/kvision-bootstrap/build.gradle b/kvision-modules/kvision-bootstrap/build.gradle deleted file mode 100644 index 3d964668..00000000 --- a/kvision-modules/kvision-bootstrap/build.gradle +++ /dev/null @@ -1,12 +0,0 @@ -apply from: "../shared.gradle" - -kotlinFrontend { - - npm { - dependency("popper.js", "1.16.1") - dependency("bootstrap", "4.4.1") - dependency("awesome-bootstrap-checkbox", "1.0.1") - dependency("element-resize-event", "3.0.3") - } - -} diff --git a/kvision-modules/kvision-bootstrap/build.gradle.kts b/kvision-modules/kvision-bootstrap/build.gradle.kts new file mode 100644 index 00000000..bed8be05 --- /dev/null +++ b/kvision-modules/kvision-bootstrap/build.gradle.kts @@ -0,0 +1,49 @@ +buildscript { + extra.set("production", (findProperty("prod") ?: findProperty("production") ?: "false") == "true") +} + +plugins { + kotlin("js") + id("maven-publish") +} + +repositories() + +kotlin { + kotlinJsTargets() +} + +dependencies { + implementation(kotlin("stdlib-js")) + api(rootProject) + implementation(npm("popper.js", "1.16.1")) + implementation(npm("bootstrap", "4.4.1")) + implementation(npm("awesome-bootstrap-checkbox", "1.0.1")) + implementation(npm("element-resize-event", "3.0.3")) + testImplementation(kotlin("test-js")) +} + +val sourcesJar by tasks.registering(Jar::class) { + archiveClassifier.set("sources") + from(kotlin.sourceSets.main.get().kotlin) +} + +publishing { + publications { + create<MavenPublication>("kotlin") { + from(components["kotlin"]) + artifact(tasks["sourcesJar"]) + pom { + defaultPom() + } + } + } +} + +setupPublication() + +tasks { + getByName("JsJar", Jar::class) { + from("${rootProject.buildDir}/js/packages/kvision-${project.name}/package.json") + } +} diff --git a/kvision-modules/kvision-bootstrap/package.json.d/project.info b/kvision-modules/kvision-bootstrap/package.json.d/project.info deleted file mode 100644 index e77a0f47..00000000 --- a/kvision-modules/kvision-bootstrap/package.json.d/project.info +++ /dev/null @@ -1,3 +0,0 @@ -{ - "description": "KVision Bootstrap module" -} diff --git a/kvision-modules/kvision-bootstrap/src/main/kotlin/pl/treksoft/kvision/panel/TabPanel.kt b/kvision-modules/kvision-bootstrap/src/main/kotlin/pl/treksoft/kvision/panel/TabPanel.kt index 44c0a243..36967e2b 100644 --- a/kvision-modules/kvision-bootstrap/src/main/kotlin/pl/treksoft/kvision/panel/TabPanel.kt +++ b/kvision-modules/kvision-bootstrap/src/main/kotlin/pl/treksoft/kvision/panel/TabPanel.kt @@ -216,6 +216,7 @@ open class TabPanel( } content.remove(content.getChildren()[index]) activeIndex = content.activeIndex + @Suppress("UnsafeCastFromDynamic") this@TabPanel.dispatchEvent("tabChange", obj { detail = obj { data = activeIndex } }) return this } diff --git a/kvision-modules/kvision-bootstrap/webpack.config.d/bootstrap.js b/kvision-modules/kvision-bootstrap/webpack.config.d/bootstrap.js index 32a7c4d0..35b28e6a 100644 --- a/kvision-modules/kvision-bootstrap/webpack.config.d/bootstrap.js +++ b/kvision-modules/kvision-bootstrap/webpack.config.d/bootstrap.js @@ -1,4 +1,3 @@ config.module.rules.push({test: /\.(woff|woff2)(\?v=\d+\.\d+\.\d+)?$/, loader: 'url-loader?limit=10000&mimetype=application/font-woff'}); config.module.rules.push({test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: 'url-loader?limit=10000&mimetype=application/octet-stream'}); config.module.rules.push({test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file-loader'}); -config.module.rules.push({test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, loader: 'url-loader?limit=10000&mimetype=image/svg+xml'}); diff --git a/kvision-modules/kvision-bootstrap/webpack.config.d/file.js b/kvision-modules/kvision-bootstrap/webpack.config.d/file.js new file mode 100644 index 00000000..653ca21f --- /dev/null +++ b/kvision-modules/kvision-bootstrap/webpack.config.d/file.js @@ -0,0 +1,9 @@ +config.module.rules.push( + { + test: /\.(jpe?g|png|gif|svg)$/i, + loader: 'file-loader', + options: { + esModule: false, + }, + } +); diff --git a/kvision-modules/kvision-bootstrap/webpack.config.d/jquery.js b/kvision-modules/kvision-bootstrap/webpack.config.d/jquery.js index bf5a1a20..e6c6b219 100644 --- a/kvision-modules/kvision-bootstrap/webpack.config.d/jquery.js +++ b/kvision-modules/kvision-bootstrap/webpack.config.d/jquery.js @@ -1,5 +1,9 @@ -config.plugins.push(new webpack.ProvidePlugin({ - $: "jquery", - jQuery: "jquery", - "window.jQuery": "jquery" -})); +;(function() { + const webpack = require('webpack') + + config.plugins.push(new webpack.ProvidePlugin({ + $: "jquery", + jQuery: "jquery", + "window.jQuery": "jquery" + })); +})(); |