mirror of
https://github.com/InsanusMokrassar/JSUIKitKBindings.git
synced 2025-11-14 19:10:24 +00:00
Improve support of navbars
This commit is contained in:
@@ -1,11 +1,25 @@
|
||||
package dev.inmo.jsuikit.elements
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import dev.inmo.jsuikit.modifiers.UIKitModifier
|
||||
import dev.inmo.jsuikit.modifiers.include
|
||||
import dev.inmo.jsuikit.modifiers.*
|
||||
import org.jetbrains.compose.web.dom.*
|
||||
import org.w3c.dom.HTMLElement
|
||||
|
||||
@Composable
|
||||
fun Navbar(
|
||||
attributesCustomizer: AttrBuilderContext<HTMLElement> = {},
|
||||
contentBuilder: ContentBuilder<HTMLElement>
|
||||
) {
|
||||
Nav(
|
||||
{
|
||||
include(UIKitNavbar, UIKitNavbar.Container)
|
||||
attributesCustomizer()
|
||||
}
|
||||
) {
|
||||
contentBuilder
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun Navbar(
|
||||
leftBuilder: NavbarNavBuilder? = null,
|
||||
@@ -14,22 +28,20 @@ fun Navbar(
|
||||
vararg navModifiers: UIKitModifier,
|
||||
attributesCustomizer: AttrBuilderContext<HTMLElement> = {},
|
||||
) {
|
||||
Nav(
|
||||
Navbar(
|
||||
{
|
||||
attr("uk-navbar", "")
|
||||
classes("uk-navbar-container", "uk-navbar")
|
||||
include(*navModifiers)
|
||||
attributesCustomizer()
|
||||
}
|
||||
) {
|
||||
leftBuilder ?.let {
|
||||
Div({ classes("uk-navbar-left") }) { it.draw() }
|
||||
Div({ include(UIKitNavbar.Alignment.Left) }) { it.draw() }
|
||||
}
|
||||
centerBuilder ?.let {
|
||||
Div({ classes("uk-navbar-center") }) { it.draw() }
|
||||
Div({ include(UIKitNavbar.Alignment.Center) }) { it.draw() }
|
||||
}
|
||||
rightBuilder ?.let {
|
||||
Div({ classes("uk-navbar-right") }) { it.draw() }
|
||||
Div({ include(UIKitNavbar.Alignment.Right) }) { it.draw() }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
package dev.inmo.jsuikit.elements
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import dev.inmo.jsuikit.modifiers.UIKitModifier
|
||||
import dev.inmo.jsuikit.modifiers.include
|
||||
import dev.inmo.jsuikit.modifiers.*
|
||||
import org.jetbrains.compose.web.attributes.AttrsScope
|
||||
import org.jetbrains.compose.web.dom.*
|
||||
import org.w3c.dom.HTMLLIElement
|
||||
@@ -46,8 +45,7 @@ class NavbarNavBuilder(
|
||||
fun draw() {
|
||||
Ul(
|
||||
{
|
||||
classes("uk-navbar-nav")
|
||||
include(*modifiers)
|
||||
include(UIKitNavbar.Nav, *modifiers)
|
||||
attributesCustomizer()
|
||||
}
|
||||
) {
|
||||
|
||||
Reference in New Issue
Block a user