add rowAttributes customizer for tables

This commit is contained in:
InsanusMokrassar 2022-01-21 20:28:19 +06:00
parent 484564e323
commit a2830e5e85
2 changed files with 9 additions and 1 deletions

View File

@ -2,6 +2,8 @@
## 0.0.12
* Add `rowAttributes` to table fun
## 0.0.11
* Upfill `Nav` and `UIKitNav`

View File

@ -3,6 +3,7 @@ package dev.inmo.jsuikit.elements
import androidx.compose.runtime.Composable
import androidx.compose.runtime.snapshots.SnapshotStateList
import dev.inmo.jsuikit.modifiers.*
import org.jetbrains.compose.web.attributes.AttrsBuilder
import org.jetbrains.compose.web.dom.*
import org.jetbrains.compose.web.dom.Text
import org.w3c.dom.*
@ -14,6 +15,7 @@ fun <T> DefaultTable(
vararg tableModifiers: UIKitModifier,
attributesCustomizer: AttrBuilderContext<HTMLTableElement> = {},
headingCustomizer: AttrBuilderContext<HTMLTableCellElement> = {},
rowAttributes: AttrsBuilder<HTMLTableRowElement>.(t: T) -> Unit = {},
cellFiller: @Composable (i: Int, t: T) -> Unit
) {
val headingIndexes = heading.indices
@ -39,7 +41,11 @@ fun <T> DefaultTable(
}
Tbody {
dataList.forEach {
Tr {
Tr(
{
rowAttributes(it)
}
) {
headingIndexes.forEach { i ->
Td {
cellFiller(i, it)