diff --git a/CHANGELOG.md b/CHANGELOG.md index 6785495..d410155 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,8 @@ ## 0.0.53 -Improvements in `UIKitPadding` +* Improvements in `UIKitPadding` +* Add support of UIKit lists ## 0.0.52 diff --git a/src/jsMain/kotlin/dev/inmo/jsuikit/modifiers/UIKitList.kt b/src/jsMain/kotlin/dev/inmo/jsuikit/modifiers/UIKitList.kt new file mode 100644 index 0000000..b9e7497 --- /dev/null +++ b/src/jsMain/kotlin/dev/inmo/jsuikit/modifiers/UIKitList.kt @@ -0,0 +1,46 @@ +package dev.inmo.jsuikit.modifiers + +sealed class UIKitList( + vararg classes: String, + override val otherAttrs: Map = emptyMap() +) : UIKitModifier { + @Suppress("UNCHECKED_CAST") + override val classes: Array = classes as Array + + sealed class Style(vararg classes: String) : UIKitList(*classes) { + + object Disc : Style("uk-list-disc") + object Circle : Style("uk-list-circle") + object Square : Style("uk-list-square") + object Decimal : Style("uk-list-decimal") + object Hyphen : Style("uk-list-hyphen") + + } + + sealed class Size(vararg classes: String) : UIKitList(*classes) { + + object Large : Size("uk-list-large") + object Collapse : Size("uk-list-collapse") + + } + + sealed class Color(vararg classes: String) : UIKitList(*classes) { + + object Muted : Color("uk-list-muted") + object Emphasis : Color("uk-list-emphasis") + object Primary : Color("uk-list-primary") + object Secondary : Color("uk-list-secondary") + companion object { + val Bullet = UIKitList.Bullet + } + + } + + object Bullet: UIKitList("uk-list-bullet") + + object Divider: UIKitList("uk-list-divider") + + object Striped: UIKitList("uk-list-striped") + + companion object : UIKitList("uk-list") +}