aboutsummaryrefslogtreecommitdiff
path: root/docs/api/pl.treksoft.kvision.html
diff options
context:
space:
mode:
authorRobert Jaros <rjaros@finn.pl>2018-02-12 10:51:45 +0100
committerRobert Jaros <rjaros@finn.pl>2018-02-12 10:51:45 +0100
commit4191287261b46b95908469c2ec3fa9d886681861 (patch)
treea7a63d27fed328f84fddc862ac56f7811631d557 /docs/api/pl.treksoft.kvision.html
parentbafcdb6fc3f1d4ec4f1a0f4fcce776ba10d8136c (diff)
downloadkvision-4191287261b46b95908469c2ec3fa9d886681861.tar.gz
kvision-4191287261b46b95908469c2ec3fa9d886681861.tar.bz2
kvision-4191287261b46b95908469c2ec3fa9d886681861.zip
Updated API doc
Diffstat (limited to 'docs/api/pl.treksoft.kvision.html')
-rw-r--r--docs/api/pl.treksoft.kvision.html/-button/button.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-button/index.html14
-rw-r--r--docs/api/pl.treksoft.kvision.html/-image/image.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-image/index.html14
-rw-r--r--docs/api/pl.treksoft.kvision.html/-label/index.html14
-rw-r--r--docs/api/pl.treksoft.kvision.html/-label/label.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-link/index.html14
-rw-r--r--docs/api/pl.treksoft.kvision.html/-link/link.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-list-tag/-init-.html8
-rw-r--r--docs/api/pl.treksoft.kvision.html/-list-tag/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-list-tag/list-tag.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-tag/-init-.html8
-rw-r--r--docs/api/pl.treksoft.kvision.html/-tag/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.html/-tag/tag.html16
14 files changed, 192 insertions, 8 deletions
diff --git a/docs/api/pl.treksoft.kvision.html/-button/button.html b/docs/api/pl.treksoft.kvision.html/-button/button.html
new file mode 100644
index 00000000..70f921d9
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-button/button.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>Button.button - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Button</a>&nbsp;/&nbsp;<a href="./button.html">button</a><br/>
+<br/>
+<h1>button</h1>
+<a name="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">button</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/icon">icon</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/style">style</span><span class="symbol">:</span>&nbsp;<a href="../-b-u-t-t-o-n-s-t-y-l-e/index.html"><span class="identifier">BUTTONSTYLE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;BUTTONSTYLE.DEFAULT<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/disabled">disabled</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Button</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-button/index.html b/docs/api/pl.treksoft.kvision.html/-button/index.html
index aa2f1884..f63ced71 100644
--- a/docs/api/pl.treksoft.kvision.html/-button/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-button/index.html
@@ -360,5 +360,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="button.html">button</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">button</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/icon">icon</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/style">style</span><span class="symbol">:</span>&nbsp;<a href="../-b-u-t-t-o-n-s-t-y-l-e/index.html"><span class="identifier">BUTTONSTYLE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;BUTTONSTYLE.DEFAULT<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/disabled">disabled</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Button.Companion$button(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.html.BUTTONSTYLE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Button, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Button</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
</BODY>
</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-image/image.html b/docs/api/pl.treksoft.kvision.html/-image/image.html
new file mode 100644
index 00000000..80f873c1
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-image/image.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>Image.image - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Image</a>&nbsp;/&nbsp;<a href="./image.html">image</a><br/>
+<br/>
+<h1>image</h1>
+<a name="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">image</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/src">src</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-res-string.html"><span class="identifier">ResString</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/alt">alt</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/responsive">responsive</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/shape">shape</span><span class="symbol">:</span>&nbsp;<a href="../-i-m-a-g-e-s-h-a-p-e/index.html"><span class="identifier">IMAGESHAPE</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/centered">centered</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Image</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-image/index.html b/docs/api/pl.treksoft.kvision.html/-image/index.html
index 1d9f3520..dfd09e4e 100644
--- a/docs/api/pl.treksoft.kvision.html/-image/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-image/index.html
@@ -333,5 +333,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="image.html">image</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">image</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/src">src</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-res-string.html"><span class="identifier">ResString</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/alt">alt</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/responsive">responsive</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/shape">shape</span><span class="symbol">:</span>&nbsp;<a href="../-i-m-a-g-e-s-h-a-p-e/index.html"><span class="identifier">IMAGESHAPE</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/centered">centered</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Image.Companion$image(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.IMAGESHAPE, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Image, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Image</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
</BODY>
</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-label/index.html b/docs/api/pl.treksoft.kvision.html/-label/index.html
index 1a4a21f5..168cc09c 100644
--- a/docs/api/pl.treksoft.kvision.html/-label/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-label/index.html
@@ -86,5 +86,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="label.html">label</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">label</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Label</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
</BODY>
</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-label/label.html b/docs/api/pl.treksoft.kvision.html/-label/label.html
new file mode 100644
index 00000000..e076da7c
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-label/label.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>Label.label - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Label</a>&nbsp;/&nbsp;<a href="./label.html">label</a><br/>
+<br/>
+<h1>label</h1>
+<a name="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">label</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Label.Companion$label(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.html.Label, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Label</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-link/index.html b/docs/api/pl.treksoft.kvision.html/-link/index.html
index 427355c4..14c28526 100644
--- a/docs/api/pl.treksoft.kvision.html/-link/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-link/index.html
@@ -154,5 +154,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="link.html">link</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">link</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/label">label</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/icon">icon</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/image">image</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-res-string.html"><span class="identifier">ResString</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Link</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
</BODY>
</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-link/link.html b/docs/api/pl.treksoft.kvision.html/-link/link.html
new file mode 100644
index 00000000..7afa79bf
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-link/link.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>Link.link - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Link</a>&nbsp;/&nbsp;<a href="./link.html">link</a><br/>
+<br/>
+<h1>link</h1>
+<a name="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">link</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/label">label</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/url">url</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/icon">icon</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/image">image</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-res-string.html"><span class="identifier">ResString</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Link.Companion$link(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, kotlin.String, kotlin.String, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Link, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Link</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-list-tag/-init-.html b/docs/api/pl.treksoft.kvision.html/-list-tag/-init-.html
index 6d1f3f95..b7f2acfa 100644
--- a/docs/api/pl.treksoft.kvision.html/-list-tag/-init-.html
+++ b/docs/api/pl.treksoft.kvision.html/-list-tag/-init-.html
@@ -8,17 +8,19 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">ListTag</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.html.ListTag$&lt;init&gt;(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">ListTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">)</span></code>
+<a name="pl.treksoft.kvision.html.ListTag$&lt;init&gt;(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))"></a>
+<code><span class="identifier">ListTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">ListTag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
<h3>Parameters</h3>
<p><a name="type"></a>
<code>type</code> - list type</p>
<p><a name="elements"></a>
<code>elements</code> - optional list of elements</p>
<p><a name="rich"></a>
-<code>rich</code> - determines if <a href="-init-.html#pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/elements">elements</a> can contain HTML code</p>
+<code>rich</code> - determines if <a href="-init-.html#pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/elements">elements</a> can contain HTML code</p>
<p><a name="classes"></a>
<code>classes</code> - a set of CSS class names</p>
+<p><a name="init"></a>
+<code>init</code> - an initializer extension function</p>
<p><strong>Constructor</strong><br/>
</p>
</BODY>
diff --git a/docs/api/pl.treksoft.kvision.html/-list-tag/index.html b/docs/api/pl.treksoft.kvision.html/-list-tag/index.html
index caf61974..d081c2eb 100644
--- a/docs/api/pl.treksoft.kvision.html/-list-tag/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-list-tag/index.html
@@ -20,7 +20,7 @@ any <a href="../../pl.treksoft.kvision.core/-component/index.html">Component</a>
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">ListTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">)</span></code></td>
+<code><span class="identifier">ListTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag$<init>(pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">ListTag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code></td>
</tr>
</tbody>
</table>
@@ -147,5 +147,19 @@ any <a href="../../pl.treksoft.kvision.core/-component/index.html">Component</a>
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="list-tag.html">listTag</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">listTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">ListTag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
</BODY>
</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-list-tag/list-tag.html b/docs/api/pl.treksoft.kvision.html/-list-tag/list-tag.html
new file mode 100644
index 00000000..ef68bfe7
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-list-tag/list-tag.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>ListTag.listTag - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">ListTag</a>&nbsp;/&nbsp;<a href="./list-tag.html">listTag</a><br/>
+<br/>
+<h1>listTag</h1>
+<a name="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">listTag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-l-i-s-t-t-y-p-e/index.html"><span class="identifier">LISTTYPE</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/elements">elements</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html"><span class="identifier">List</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.ListTag.Companion$listTag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.LISTTYPE, kotlin.collections.List((kotlin.String)), kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.ListTag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">ListTag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>
diff --git a/docs/api/pl.treksoft.kvision.html/-tag/-init-.html b/docs/api/pl.treksoft.kvision.html/-tag/-init-.html
index e2271c89..a2ded020 100644
--- a/docs/api/pl.treksoft.kvision.html/-tag/-init-.html
+++ b/docs/api/pl.treksoft.kvision.html/-tag/-init-.html
@@ -8,19 +8,21 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Tag</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.html.Tag$&lt;init&gt;(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">Tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">)</span></code>
+<a name="pl.treksoft.kvision.html.Tag$&lt;init&gt;(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))"></a>
+<code><span class="identifier">Tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Tag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code>
<h3>Parameters</h3>
<p><a name="type"></a>
<code>type</code> - tag type</p>
<p><a name="text"></a>
<code>text</code> - text content of the tag</p>
<p><a name="rich"></a>
-<code>rich</code> - determines if <a href="-init-.html#pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/text">text</a> can contain HTML code</p>
+<code>rich</code> - determines if <a href="-init-.html#pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/text">text</a> can contain HTML code</p>
<p><a name="align"></a>
<code>align</code> - text align</p>
<p><a name="classes"></a>
<code>classes</code> - a set of CSS class names</p>
+<p><a name="init"></a>
+<code>init</code> - an initializer extension function</p>
<p><strong>Constructor</strong><br/>
</p>
</BODY>
diff --git a/docs/api/pl.treksoft.kvision.html/-tag/index.html b/docs/api/pl.treksoft.kvision.html/-tag/index.html
index 11dacc66..0a0565c6 100644
--- a/docs/api/pl.treksoft.kvision.html/-tag/index.html
+++ b/docs/api/pl.treksoft.kvision.html/-tag/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">Tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">)</span></code></td>
+<code><span class="identifier">Tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag$<init>(pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Tag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span></code></td>
</tr>
</tbody>
</table>
@@ -154,6 +154,20 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="tag.html">tag</a></p>
+</td>
+<td>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Tag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+</td>
+</tr>
+</tbody>
+</table>
<h3>Inheritors</h3>
<table>
<tbody>
diff --git a/docs/api/pl.treksoft.kvision.html/-tag/tag.html b/docs/api/pl.treksoft.kvision.html/-tag/tag.html
new file mode 100644
index 00000000..c095c82c
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.html/-tag/tag.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>Tag.tag - kvision</title>
+<link rel="stylesheet" href="../../../style.css">
+</HEAD>
+<BODY>
+<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.html</a>&nbsp;/&nbsp;<a href="index.html">Tag</a>&nbsp;/&nbsp;<a href="./tag.html">tag</a><br/>
+<br/>
+<h1>tag</h1>
+<a name="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))"></a>
+<code><span class="keyword">fun </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a><span class="symbol">.</span><span class="identifier">tag</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/type">type</span><span class="symbol">:</span>&nbsp;<a href="../-t-a-g/index.html"><span class="identifier">TAG</span></a><span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/text">text</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/rich">rich</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html"><span class="identifier">Boolean</span></a>&nbsp;<span class="symbol">=</span>&nbsp;false<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../-a-l-i-g-n/index.html"><span class="identifier">ALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/classes">classes</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html"><span class="identifier">Set</span></a><span class="symbol">&lt;</span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html"><span class="identifier">String</span></a><span class="symbol">&gt;</span>&nbsp;<span class="symbol">=</span>&nbsp;setOf()<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.html.Tag.Companion$tag(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.html.TAG, kotlin.String, kotlin.Boolean, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.html.Tag, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Tag</span></a><span class="symbol">.</span><span class="symbol">(</span><span class="symbol">)</span>&nbsp;<span class="symbol">-&gt;</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">)</span><span class="symbol">: </span><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html"><span class="identifier">Unit</span></a></code>
+<p>DSL builder extension function</p>
+<p>It takes the same parameters as the constructor of the built component.</p>
+</BODY>
+</HTML>