I'm trying to use an npm react module that needs c...
# javascript
d
I'm trying to use an npm react module that needs css for it to work... the html renders with my wrapper... but no css.
🧵 1
I'm trying :
Copy code
require("@primereact/resources/themes/saga-blue/theme.css")
	require("@primereact/resources/primereact.css")
in my fun main()
And my wrapper is:
Copy code
@file:Suppress("INTERFACE_WITH_SUPERCLASS", "OVERRIDING_FINAL_MEMBER", "RETURN_TYPE_MISMATCH_ON_OVERRIDE", "CONFLICTING_OVERLOADS")

@file:JsModule("primereact/rating")
@file:JsNonModule

import kotlin.js.*
import react.Component
import react.RProps
import react.RState
import react.ReactElement

external interface RatingProps : RProps {
	var id: String?
		get() = definedExternally
		set(value) = definedExternally
	var value: Number?
		get() = definedExternally
		set(value) = definedExternally
	var disabled: Boolean?
		get() = definedExternally
		set(value) = definedExternally
	var readOnly: Boolean?
		get() = definedExternally
		set(value) = definedExternally
	var stars: Number?
		get() = definedExternally
		set(value) = definedExternally
	var cancel: Boolean?
		get() = definedExternally
		set(value) = definedExternally
	var style: Any?
		get() = definedExternally
		set(value) = definedExternally
	var className: String?
		get() = definedExternally
		set(value) = definedExternally
	var tooltip: Any?
		get() = definedExternally
		set(value) = definedExternally
	var tooltipOptions: Any?
		get() = definedExternally
		set(value) = definedExternally
	val onChange: ((e: `T$1`) -> Unit)?
}

external class Rating : Component<RatingProps, RState> {
	override fun render(): ReactElement?
}
r
Do you have any custom configuration in
webpack.config.d
?
d
Nope
Just followed the kotlin js tutorial, and wanted to see how to add this. I also switched to ir
r
What dependency have you added to your gradle build?
If it's
primereact
why do you
require("@primereact/...")
?
d
Copy code
implementation(npm("primereact", "~6.0.2"))
implementation(npm("primeicons", "~4.1.0"))
implementation(npm("primeflex", "~2.0.0"))
But primereact doesn't have an index.d.ts... so it seems like each component is it's own module..
in rating.d.ts:
Copy code
export * from './components/rating/Rating';
In the root of the primereact module there's a bunch of those...
Ok, it needed some extra configs in webpackconfig.d