mirror of
https://github.com/InsanusMokrassar/JSUIKitKBindings.git
synced 2024-12-22 16:47:24 +00:00
45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
# JSUIKit Kotlin
|
|
|
|
**IMPORTANT NOTICE**: ___Currently it is possible that you will have issues with `vararg` arguments passing to the functions.
|
|
Use `arrayOf(...)` instead___
|
|
|
|
Hello :) This library is a wrapper for JavaScript/CSS [UIKit](https://getuikit.com) framework. It uses the same
|
|
structure as in [UIKit Docs](https://getuikit.com/docs/introduction) and in most cases you may use it.
|
|
|
|
The main target of this wrapper is a [JetBrains Compose JS](https://github.com/JetBrains/compose-jb) and will be useful
|
|
for you in case you are using it too.
|
|
|
|
## How to include
|
|
|
|
Last version: [![Maven Central](https://maven-badges.herokuapp.com/maven-central/dev.inmo/jsuikitkotlin/badge.svg)](https://maven-badges.herokuapp.com/maven-central/dev.inmo/jsuikitkotlin)
|
|
|
|
```groovy
|
|
implementation "dev.inmo:jsuikitkotlin:$jsuikitkotlin_version"
|
|
```
|
|
|
|
**THIS LIBRARY DO NOT ADD ANY JS OR CSS**. So, you must download and include UIKit js/css by yourself. See
|
|
[UIKit installation instructions](https://getuikit.com/docs/installation)
|
|
|
|
## How to use
|
|
|
|
In this library there are two main entities:
|
|
|
|
* Builder functions - buttons, spinners, icons, grids, etc.
|
|
* Modifiers - `UIKitAlign`, `UIKitAnimation`, etc.
|
|
|
|
For example, if you want to add table in your html, you will use next code:
|
|
|
|
```kotlin
|
|
DefaultTable(
|
|
listOf("Heading 1", "Heading 2", "Heading 3"),
|
|
data, // SnapshotStateList<T>
|
|
UIKitTable.Divider // modifier, add dividers
|
|
) { i, item -> // i - number of heading, item - item from data; composable callback
|
|
when (i) {
|
|
0 -> Text(item.toString())
|
|
1 -> Text("data 2")
|
|
2 -> Text("data 3")
|
|
}
|
|
}
|
|
```
|