zeugederunity
07/07/2020, 11:13 AMexport type
thing, i dont get how to wrap this for KotlinJS)turansky
07/07/2020, 12:21 PM// TS
type X = string
// Kotlin
typealias X = String
turansky
07/07/2020, 12:25 PM// TS
type Z = 'a' | 'b' | 'c'
// Kotlin
@JsName("String")
external sealed class Z
object Zs {
val A: Z = "a".unsafeCast<Z>()
val B: Z = "b".unsafeCast<Z>()
val C: Z = "c".unsafeCast<Z>()
}
zeugederunity
07/07/2020, 12:32 PMturansky
07/07/2020, 2:06 PM// Kotlin
@JsName("String")
external sealed class Z
private fun Z(source:String) =
unsafeCast<Z>()
object Zs {
val A: Z = Z("a")
val B: Z = Z("b")
val C: Z = Z("c")
}
zeugederunity
07/07/2020, 3:08 PMJSX.Element
do you know a way to map it? (or do i need to implement it by myself?)zeugederunity
07/07/2020, 3:11 PMReactElement
does not seem to workturansky
07/07/2020, 3:14 PMBecauseIn which cases?does not seem to workReactElement
zeugederunity
07/07/2020, 3:16 PM@file: JsModule("react-wordcloud")
@file: JsNonModule
package react.wordcloud
import react.*
external interface Props {
var callbacks: Callbacks
var maxWords: Number?
var minSize: MinMaxPair
var options: Options
var size: MinMaxPair
var words: List<Word>
}
external fun ReactWordcloud(props: Props): ReactElement
Maybe i'm using it in a wrong way, i have only little experience with JavaScript in general.zeugederunity
07/07/2020, 3:16 PMzeugederunity
07/07/2020, 3:18 PMzeugederunity
07/07/2020, 3:19 PMUncaught TypeError: ReactWordcloud is not a function
at reactWordCloud (webpack-internal:///./kotlin/firmensuche.js:11542)
at AppComponent.render_ss14n$ (webpack-internal:///./kotlin/firmensuche.js:10772)
at eval (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:601)
at buildElements (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:221)
at AppComponent.RComponent.render (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:606)
at finishClassComponent (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:17160)
at updateClassComponent (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:17110)
at beginWork (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:18620)
at HTMLUnknownElement.callCallback (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:188)
at Object.invokeGuardedCallbackDev (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:237)
webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:19527 The above error occurred in the <AppComponent> component:
in AppComponent (created by Context.Consumer)
in Route (created by RootComponent)
in Switch (created by RootComponent)
in Router (created by BrowserRouter)
in BrowserRouter (created by RootComponent)
in RootComponent
Consider adding an error boundary to your tree to customize error handling behavior.
Visit <https://fb.me/react-error-boundaries> to learn more about error boundaries.
Uncaught TypeError: ReactWordcloud is not a function
at reactWordCloud (webpack-internal:///./kotlin/firmensuche.js:11542)
at AppComponent.render_ss14n$ (webpack-internal:///./kotlin/firmensuche.js:10772)
at eval (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:601)
at buildElements (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:221)
at AppComponent.RComponent.render (webpack-internal:///../../packages_imported/kotlin-react/0.0.0/kotlin-react.js:606)
at finishClassComponent (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:17160)
at updateClassComponent (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:17110)
at beginWork (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:18620)
at HTMLUnknownElement.callCallback (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:188)
at Object.invokeGuardedCallbackDev (webpack-internal:///../../node_modules/react-dom/cjs/react-dom.development.js:237)
turansky
07/07/2020, 3:26 PMzeugederunity
07/07/2020, 5:02 PMUncaught Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
Check the render method of `ReactWordCloud`.
at createFiberFromTypeAndProps (react-dom.development.js?18e1:23965)
at createFiberFromElement (react-dom.development.js?18e1:23988)
at reconcileSingleElement (react-dom.development.js?18e1:14233)
at reconcileChildFibers (react-dom.development.js?18e1:14293)
at reconcileChildren (react-dom.development.js?18e1:16762)
at finishClassComponent (react-dom.development.js?18e1:17180)
at updateClassComponent (react-dom.development.js?18e1:17110)
at beginWork (react-dom.development.js?18e1:18620)
at HTMLUnknownElement.callCallback (react-dom.development.js?18e1:188)
at Object.invokeGuardedCallbackDev (react-dom.development.js?18e1:237)
I did some trial and error, but it didn't change the result.zeugederunity
07/07/2020, 5:03 PMturansky
07/07/2020, 6:51 PMturansky
07/07/2020, 6:53 PMReactWordcloud
) ?zeugederunity
07/08/2020, 6:47 AMReactWordcloud
.
In the original code it is defined as export default function ReactWordcloud(props: Props): JSX.Element;
(see https://github.com/chrisrzhou/react-wordcloud/blob/master/src/index.d.ts)zeugederunity
07/08/2020, 7:14 AMturansky
07/08/2020, 10:10 AM@JsModule("react-wordcloud")
external val ReactWordcloud:FunctionalComponent<WordcloudProps>
zeugederunity
07/08/2020, 11:23 AMReactWordcloud
to
@JsModule("react-wordcloud")
@JsNonModule
external val ReactWordcloud: FunctionalComponent<WordCloudProps>
and tired to call it in my application with
child(ReactWordcloud){
attrs {
words = listOf(
WordImpl("Test1", 1),
WordImpl("Test2", 2),
WordImpl("Test3", 3)
)
}
}
But unfortunalety, the error does not change
ncaught Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
Check the render method of `AppComponent`.
at createFiberFromTypeAndProps (react-dom.development.js?18e1:23965)
at createFiberFromElement (react-dom.development.js?18e1:23988)
at createChild (react-dom.development.js?18e1:13628)
at reconcileChildrenArray (react-dom.development.js?18e1:13900)
at reconcileChildFibers (react-dom.development.js?18e1:14305)
at reconcileChildren (react-dom.development.js?18e1:16762)
at updateHostComponent (react-dom.development.js?18e1:17302)
at beginWork (react-dom.development.js?18e1:18627)
at HTMLUnknownElement.callCallback (react-dom.development.js?18e1:188)
at Object.invokeGuardedCallbackDev (react-dom.development.js?18e1:237)
Is there maybe a problem with kotlin and TypeScript?turansky
07/08/2020, 11:27 AM1.4-M3
?zeugederunity
07/08/2020, 11:28 AM1.3.72
zeugederunity
07/08/2020, 11:31 AM1.4-M3
Kotlin-Plugin, but i've configured i my gradle kotlin("multiplatform") version "1.3.72"
turansky
07/08/2020, 11:34 AM@file:JsModule("react-wordcloud")
@JsName("default")
external val ReactWordcloud:FunctionalComponent<WordcloudProps>
turansky
07/08/2020, 11:35 AMzeugederunity
07/08/2020, 3:31 PMzeugederunity
07/08/2020, 3:32 PMzeugederunity
07/08/2020, 3:32 PMturansky
07/08/2020, 5:25 PMturansky
07/08/2020, 5:27 PMzeugederunity
07/08/2020, 5:49 PMturansky
07/08/2020, 6:28 PMzeugederunity
07/08/2020, 7:58 PMzeugederunity
07/09/2020, 11:02 AMWarning
(Compiler or IDE doesn't matter)zeugederunity
07/09/2020, 11:05 AMturansky
07/09/2020, 12:30 PM