26 lines
751 B
Kotlin
26 lines
751 B
Kotlin
package dev.inmo.jsuikit.elements
|
|
|
|
import androidx.compose.runtime.Composable
|
|
import dev.inmo.jsuikit.modifiers.UIKitBadge
|
|
import dev.inmo.jsuikit.modifiers.include
|
|
import org.jetbrains.compose.web.dom.AttrBuilderContext
|
|
import org.jetbrains.compose.web.dom.ContentBuilder
|
|
import org.jetbrains.compose.web.dom.Span
|
|
import org.jetbrains.compose.web.dom.Text
|
|
import org.w3c.dom.HTMLSpanElement
|
|
|
|
@Composable
|
|
fun Badge(
|
|
text: String,
|
|
onAfterText: ContentBuilder<HTMLSpanElement>? = null,
|
|
onBeforeText: ContentBuilder<HTMLSpanElement>? = null,
|
|
attrs: AttrBuilderContext<HTMLSpanElement>? = null
|
|
) = Span({
|
|
include(UIKitBadge)
|
|
attrs ?.invoke(this)
|
|
}) {
|
|
onAfterText ?.invoke(this)
|
|
Text(text)
|
|
onBeforeText ?.invoke(this)
|
|
}
|