From 3a7e16e7e78e984f96eb3b87e39cbc402f9b8243 Mon Sep 17 00:00:00 2001 From: Ugljesa Jovanovic Date: Mon, 19 Jul 2021 20:01:28 +0200 Subject: [PATCH] Remove react from sample, force version 4 of webpack --- buildSrc/src/main/kotlin/Deps.kt | 16 +--- gradle.properties | 2 + sample/build.gradle.kts | 76 ++++++++----------- .../com/ionspin/kotlin/crypto/sample/App.kt | 34 --------- .../com/ionspin/kotlin/crypto/sample/Main.kt | 23 +----- 5 files changed, 41 insertions(+), 110 deletions(-) diff --git a/buildSrc/src/main/kotlin/Deps.kt b/buildSrc/src/main/kotlin/Deps.kt index cc032b0..a8fd195 100644 --- a/buildSrc/src/main/kotlin/Deps.kt +++ b/buildSrc/src/main/kotlin/Deps.kt @@ -83,21 +83,11 @@ object Deps { val ktorClientSerialization = "io.ktor:ktor-client-serialization-js:${Versions.ktor}" val ktorClientWebSockets = "io.ktor:ktor-client-websockets-js:${Versions.ktor}" - object React { - val react = "org.jetbrains.kotlin-wrappers:kotlin-react:${JsVersions.react}" - val reactDom = "org.jetbrains.kotlin-wrappers:kotlin-react-dom:${JsVersions.react}" - val styled = "org.jetbrains.kotlin-wrappers:kotlin-styled:${JsVersions.styled}" - - } - object Npm { - val libsodium = Pair("libsodium-wrappers-sumo", "0.7.8") + val libsodium = Pair("libsodium-wrappers-sumo", "0.7.9") //val libsodiumWrappers = Pair("libsodium-wrappers-sumo", "file:${getProjectPath()}/multiplatform-crypto-delegated/libsodium-wrappers-sumo-0.7.6.tgz") - val libsodiumWrappers = Pair("libsodium-wrappers-sumo", "0.7.8") - val reactPair = Pair("react", JsVersions.reactNpm) - val reactDomPair = Pair("react-dom", JsVersions.reactNpm) - val styledComponentsPair = Pair("styled-components", JsVersions.styledNpm) - val inlineStylePrefixesPair = Pair("inline-style-prefixer", "6.0.0") + val libsodiumWrappers = Pair("libsodium-wrappers-sumo", "0.7.9") + } } diff --git a/gradle.properties b/gradle.properties index 7f02a10..30499d4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -24,3 +24,5 @@ kotlin.native.disableCompilerDaemon=true org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=4096m android.useAndroidX=true + +kotlin.js.webpack.major.version=4 diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index f1e2905..5245b7a 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -60,28 +60,28 @@ kotlin { android() runningOnLinuxx86_64 { jvm() -// js(IR) { -// browser { -// webpackTask { -// -// } -// testTask { -// useKarma { -// useChrome() -// } -// } -// } -// nodejs { -// testTask { -// useMocha() { -// timeout = "10s" -// } -// } -// } + js(IR) { + browser { + webpackTask { -// binaries.executable() + } + testTask { + useKarma { + useChrome() + } + } + } + nodejs { + testTask { + useMocha() { + timeout = "10s" + } + } + } -// } + binaries.executable() + + } linuxX64("linux") { @@ -284,30 +284,18 @@ kotlin { implementation(kotlin(Deps.Jvm.reflection)) } } -// val jsMain by getting { -// dependencies { -// implementation(kotlin(Deps.Js.stdLib)) -// implementation(Deps.Js.coroutines) -// -// -// // React -// implementation(Deps.Js.React.react) -// implementation(Deps.Js.React.reactDom) -//// implementation(npm(Deps.Js.Npm.reactPair.first, Deps.Js.Npm.reactPair.second)) -//// implementation(npm(Deps.Js.Npm.reactDomPair.first, Deps.Js.Npm.reactDomPair.second)) -// -// // Styled -// implementation(Deps.Js.React.styled) -//// implementation(npm(Deps.Js.Npm.styledComponentsPair.first, Deps.Js.Npm.styledComponentsPair.second)) -//// implementation(npm(Deps.Js.Npm.inlineStylePrefixesPair.first, Deps.Js.Npm.inlineStylePrefixesPair.second)) -// -// } -// } -// val jsTest by getting { -// dependencies { -// implementation(kotlin(Deps.Js.test)) -// } -// } + val jsMain by getting { + dependencies { + implementation(kotlin(Deps.Js.stdLib)) + implementation(Deps.Js.coroutines) + + } + } + val jsTest by getting { + dependencies { + implementation(kotlin(Deps.Js.test)) + } + } val linuxMain by getting { dependsOn(nativeMain) diff --git a/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/App.kt b/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/App.kt index d752769..e69de29 100644 --- a/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/App.kt +++ b/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/App.kt @@ -1,34 +0,0 @@ -import com.ionspin.kotlin.crypto.hash.Hash -import com.ionspin.kotlin.crypto.util.encodeToUByteArray -import com.ionspin.kotlin.crypto.util.toHexString -import react.RBuilder -import react.RComponent -import react.RProps -import react.RState -import react.ReactElement -import react.dom.h1 - -external interface RAppState : RState { - var currentState: String -} - -external interface RAppProps : RProps { - -} - -class App(props: RAppProps) : RComponent(props) { - override fun RBuilder.render() { - val hash = Hash.sha512("123".encodeToUByteArray()) - h1 { - +"Hash (SHA512) of 123: ${hash.toHexString()}" - - } - } - -} - -fun RBuilder.app(handler: RAppProps.() -> Unit): ReactElement { - return child(App::class) { - this.attrs(handler) - } -} diff --git a/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/Main.kt b/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/Main.kt index f5e426d..ecc9d7b 100644 --- a/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/Main.kt +++ b/sample/src/jsMain/kotlin/com/ionspin/kotlin/crypto/sample/Main.kt @@ -2,28 +2,13 @@ import com.ionspin.kotlin.crypto.LibsodiumInitializer import com.ionspin.kotlin.crypto.hash.Hash -import com.ionspin.kotlin.crypto.util.LibsodiumRandom import com.ionspin.kotlin.crypto.util.encodeToUByteArray import com.ionspin.kotlin.crypto.util.toHexString -import react.dom.render -import kotlinx.browser.document -import kotlinx.browser.window fun main() { - val runningOnNode = jsTypeOf(window) == "undefined" -// if (!runningOnNode) = runTest { - LibsodiumInitializer.initializeWithCallback { - render(document.getElementById("root")) { - app { - - } - } - } -// } else = runTest { -// LibsodiumInitializer.initializeWithCallback { -// val hash = Hash.sha512("123".encodeToUByteArray()) -// println("Hash (SHA512) of 123: ${hash.toHexString()}") -// } -// } + LibsodiumInitializer.initializeWithCallback { + val hash = Hash.sha512("123".encodeToUByteArray()) + println("Hash (SHA512) of 123: ${hash.toHexString()}") + } }